- play_arrow Overview
- play_arrow Managing Group Membership
- play_arrow Configuring IGMP and MLD
- play_arrow Configuring IGMP Snooping
- IGMP Snooping Overview
- Overview of Multicast Forwarding with IGMP Snooping or MLD Snooping in an EVPN-VXLAN Environment
- Configuring IGMP Snooping on Switches
- Example: Configuring IGMP Snooping on Switches
- Example: Configuring IGMP Snooping on EX Series Switches
- Verifying IGMP Snooping on EX Series Switches
- Changing the IGMP Snooping Group Timeout Value on Switches
- Monitoring IGMP Snooping
- Example: Configuring IGMP Snooping
- Example: Configuring IGMP Snooping on SRX Series Devices
- Configuring Point-to-Multipoint LSP with IGMP Snooping
- play_arrow Configuring MLD Snooping
- Understanding MLD Snooping
- Configuring MLD Snooping on an EX Series Switch VLAN (CLI Procedure)
- Configuring MLD Snooping on a Switch VLAN with ELS Support (CLI Procedure)
- Example: Configuring MLD Snooping on EX Series Switches
- Example: Configuring MLD Snooping on SRX Series Devices
- Configuring MLD Snooping Tracing Operations on EX Series Switches (CLI Procedure)
- Configuring MLD Snooping Tracing Operations on EX Series Switch VLANs (CLI Procedure)
- Example: Configuring MLD Snooping on EX Series Switches
- Example: Configuring MLD Snooping on Switches with ELS Support
- Verifying MLD Snooping on EX Series Switches (CLI Procedure)
- Verifying MLD Snooping on Switches
- play_arrow Configuring Multicast VLAN Registration
-
- play_arrow Configuring Protocol Independent Multicast
- play_arrow Understanding PIM
- play_arrow Configuring PIM Basics
- Configuring Different PIM Modes
- Configuring Multiple Instances of PIM
- Changing the PIM Version
- Optimizing the Number of Multicast Flows on QFabric Systems
- Modifying the PIM Hello Interval
- Preserving Multicast Performance by Disabling Response to the ping Utility
- Configuring PIM Trace Options
- Configuring BFD for PIM
- Configuring BFD Authentication for PIM
- play_arrow Routing Content to Densely Clustered Receivers with PIM Dense Mode
- play_arrow Routing Content to Larger, Sparser Groups with PIM Sparse Mode
- Understanding PIM Sparse Mode
- Examples: Configuring PIM Sparse Mode
- Configuring Static RP
- Example: Configuring Anycast RP
- Configuring PIM Bootstrap Router
- Understanding PIM Auto-RP
- Configuring All PIM Anycast Non-RP Routers
- Configuring a PIM Anycast RP Router with MSDP
- Configuring Embedded RP
- Configuring PIM Filtering
- Examples: Configuring PIM RPT and SPT Cutover
- Disabling PIM
- play_arrow Configuring Designated Routers
- play_arrow Receiving Content Directly from the Source with SSM
- Understanding PIM Source-Specific Mode
- Example: Configuring Source-Specific Multicast
- Example: Configuring PIM SSM on a Network
- Example: Configuring an SSM-Only Domain
- Example: Configuring SSM Mapping
- Example: Configuring Source-Specific Multicast Groups with Any-Source Override
- Example: Configuring SSM Maps for Different Groups to Different Sources
- play_arrow Minimizing Routing State Information with Bidirectional PIM
- play_arrow Rapidly Detecting Communication Failures with PIM and the BFD Protocol
- play_arrow Configuring PIM Options
- play_arrow Verifying PIM Configurations
-
- play_arrow Configuring Multicast Routing Protocols
- play_arrow Connecting Routing Domains Using MSDP
- play_arrow Handling Session Announcements with SAP and SDP
- play_arrow Facilitating Multicast Delivery Across Unicast-Only Networks with AMT
- play_arrow Routing Content to Densely Clustered Receivers with DVMRP
-
- play_arrow Configuring Multicast VPNs
- play_arrow Configuring Draft-Rosen Multicast VPNs
- Draft-Rosen Multicast VPNs Overview
- Example: Configuring Any-Source Draft-Rosen 6 Multicast VPNs
- Example: Configuring a Specific Tunnel for IPv4 Multicast VPN Traffic (Using Draft-Rosen MVPNs)
- Example: Configuring Source-Specific Draft-Rosen 7 Multicast VPNs
- Understanding Data MDTs
- Example: Configuring Data MDTs and Provider Tunnels Operating in Any-Source Multicast Mode
- Example: Configuring Data MDTs and Provider Tunnels Operating in Source-Specific Multicast Mode
- Examples: Configuring Data MDTs
- play_arrow Configuring Next-Generation Multicast VPNs
- Understanding Next-Generation MVPN Network Topology
- Understanding Next-Generation MVPN Concepts and Terminology
- Understanding Next-Generation MVPN Control Plane
- Next-Generation MVPN Data Plane Overview
- Enabling Next-Generation MVPN Services
- Generating Next-Generation MVPN VRF Import and Export Policies Overview
- Multiprotocol BGP MVPNs Overview
- Configuring Multiprotocol BGP Multicast VPNs
- BGP-MVPN Inter-AS Option B Overview
- ACX Support for BGP MVPN
- Example: Configuring MBGP MVPN Extranets
- Understanding Redundant Virtual Tunnel Interfaces in MBGP MVPNs
- Example: Configuring Redundant Virtual Tunnel Interfaces in MBGP MVPNs
- Understanding Sender-Based RPF in a BGP MVPN with RSVP-TE Point-to-Multipoint Provider Tunnels
- Example: Configuring Sender-Based RPF in a BGP MVPN with RSVP-TE Point-to-Multipoint Provider Tunnels
- Example: Configuring Sender-Based RPF in a BGP MVPN with MLDP Point-to-Multipoint Provider Tunnels
- Configuring MBGP MVPN Wildcards
- Distributing C-Multicast Routes Overview
- Exchanging C-Multicast Routes
- Generating Source AS and Route Target Import Communities Overview
- Originating Type 1 Intra-AS Autodiscovery Routes Overview
- Signaling Provider Tunnels and Data Plane Setup
- Anti-spoofing support for MPLS labels in BGP/MPLS IP VPNs (Inter-AS Option B)
- BGP-MVPN SD-WAN Overlay
- play_arrow Configuring PIM Join Load Balancing
- Use Case for PIM Join Load Balancing
- Configuring PIM Join Load Balancing
- PIM Join Load Balancing on Multipath MVPN Routes Overview
- Example: Configuring PIM Join Load Balancing on Draft-Rosen Multicast VPN
- Example: Configuring PIM Join Load Balancing on Next-Generation Multicast VPN
- Example: Configuring PIM Make-Before-Break Join Load Balancing
- Example: Configuring PIM State Limits
-
- play_arrow Troubleshooting
- play_arrow Knowledge Base
-
- play_arrow Configuration Statements and Operational Commands
Examples: Configuring the Multicast Forwarding Cache
Understanding the Multicast Forwarding Cache
IP multicast protocols can create numerous entries in the multicast forwarding cache. If the forwarding cache fills up with entries that prevent the addition of higher-priority entries, applications and protocols might not function properly. You can manage the multicast forwarding cache properties by limiting the size of the cache and by controlling the length of time that entries remain in the cache. By managing timeout values, you can give preference to more important forwarding cache entries while removing other less important entries.
Example: Configuring the Multicast Forwarding Cache
When a routing device receives multicast traffic, it places the (S,G) route information in the multicast forwarding cache, inet.1. This example shows how to configure multicast forwarding cache limits to prevent the cache from filling up with entries.
Requirements
Before you begin:
Configure the router interfaces.
Configure an interior gateway protocol. See the Junos OS Routing Protocols Library for Routing Devices.
Configure a multicast protocol. This feature works with the following multicast protocols:
DVMRP
PIM-DM
PIM-SM
PIM-SSM
Overview
This example includes the following statements:
forwarding-cache—Specifies how forwarding entries are aged out and how the number of entries is controlled.
timeout—Specifies an idle period after which entries are aged out and removed from inet.1. You can specify a timeout in the range from 1 through 720 minutes.
threshold—Enables you to specify threshold values on the forwarding cache to suppress (suspend) entries from being added when the cache entries reach a certain maximum and begin adding entries to the cache when the number falls to another threshold value. By default, no threshold values are enabled on the routing device.
The suppress threshold suspends the addition of new multicast forwarding cache entries. If you do not specify a suppress value, multicast forwarding cache entries are created as necessary. If you specify a suppress threshold, you can optionally specify a reuse threshold, which sets the point at which the device resumes adding new multicast forwarding cache entries. During suspension, forwarding cache entries time out. After a certain number of entries time out, the reuse threshold is reached, and new entries are added. The range for both thresholds is from 1 through 200,000. If configured, the reuse value must be less than the suppression value. If you do not specify a reuse value, the number of multicast forwarding cache entries is limited to the suppression value. A new entry is created as soon as the number of multicast forwarding cache entries falls below the suppression value.
Topology
Configuration
Procedure
CLI Quick Configuration
To quickly configure this example, copy the
following commands, paste them into a text file, remove any line breaks,
change any details necessary to match your network configuration,
copy and paste the commands into the CLI at the [edit]
hierarchy
level, and then enter commit
from configuration mode.
set routing-options multicast forwarding-cache threshold suppress 150000 set routing-options multicast forwarding-cache threshold reuse 34 set routing-options multicast forwarding-cache timeout 60
Step-by-Step Procedure
The following example requires you to navigate various levels in the configuration hierarchy. For information about navigating the CLI, see Using the CLI Editor in Configuration Mode in the Junos OS CLI User Guide.
To configure the multicast forwarding cache:
Configure the maximum size of the forwarding cache.
content_copy zoom_out_map[edit routing-options multicast forwarding-cache] user@host# set threshold suppress 150000
Configure the amount of time (in minutes) entries can remain idle before being removed.
content_copy zoom_out_map[edit routing-options multicast forwarding-cache] user@host# set timeout 60
Configure the size of the forwarding cache when suppression stops and new entries can be added.
content_copy zoom_out_map[edit routing-options multicast forwarding-cache] user@host# set threshold reuse 70000
Results
Confirm your configuration by entering the show routing-options command.
user@host# show routing-options multicast { forwarding-cache { threshold { suppress 150000; reuse 70000; } timeout 60; } }
Verification
To verify the configuration, run the show multicast route extensive command.
user@host> show multicast route extensive Family: INET Group: 232.0.0.1 Source: 11.11.11.11/32 Upstream interface: fe-0/2/0.200 Downstream interface list: fe-0/2/1.210 Downstream interface list rejected by CAC: fe-0/2/1.220 Session description: Source specific multicast Statistics: 0 kBps, 0 pps, 0 packets Next-hop ID: 337 Upstream protocol: PIM Route state: Active Forwarding state: Forwarding Cache lifetime/timeout: 60 minutes Wrong incoming interface notifications: 0
Example: Configuring a Multicast Flow Map
This example shows how to configure a flow map to prevent certain forwarding cache entries from aging out, thus allowing for faster failover from one source to another. Flow maps enable you to configure bandwidth variables and multicast forwarding cache timeout values for entries defined by the flow map policy.
Requirements
Before you begin:
Configure the router interfaces.
Configure an interior gateway protocol. See the Junos OS Routing Protocols Library for Routing Devices.
Configure a multicast protocol. This feature works with the following multicast protocols:
DVMRP
PIM-DM
PIM-SM
PIM-SSM
Overview
Flow maps are typically used for fast multicast source failover when there are multiple sources for the same group. For example, when one video source is actively sending the traffic, the forwarding states for other video sources are timed out after a few minutes. Later, when a new source starts sending the traffic again, it takes time to install a new forwarding state for the new source if the forwarding state is not already there. This switchover delay is worsened when there are many video streams. Using flow maps with longer timeout values or permanent cache entries helps reduce this switchover delay.
The permanent forwarding state must exist on all routing devices in the path for fast source switchover to function properly.
This example includes the following statements:
bandwidth—Specifies the bandwidth for each flow that is defined by a flow map to ensure that an interface is not oversubscribed for multicast traffic. If adding one more flow would cause overall bandwidth to exceed the allowed bandwidth for the interface, the request is rejected. A rejected request means that traffic might not be delivered out of some or all of the expected outgoing interfaces. You can define the bandwidth associated with multicast flows that match a flow map by specifying a bandwidth in bits per second or by specifying that the bandwidth is measured and adaptively modified.
When you use the adaptive option, the bandwidth adjusts based on measurements made at 5-second intervals. The flow uses the maximum bandwidth value from the last 12 measured values (1 minute).
When you configure a bandwidth value with the adaptive option, the bandwidth value acts as the starting bandwidth for the flow. The bandwidth then changes based on subsequent measured bandwidth values. If you do not specify a bandwidth value with the adaptive option, the starting bandwidth defaults to 2 megabits per second (Mbps).
For example, the bandwidth 2m adaptive statement is equivalent to the bandwidth adaptive statement because they both use the same starting bandwidth (2 Mbps, the default). If the actual flow bandwidth is 4 Mbps, the measured flow bandwidth changes to 4 Mbps after reaching the first measuring point (5 seconds). However, if the actual flow bandwidth rate is 1 Mbps, the measured flow bandwidth remains at 2 Mbps for the first 12 measurement cycles (1 minute) and then changes to the measured 1 Mbps value.
flow-map—Defines a flow map that controls the forwarding cache timeout of specified source and group addresses, controls the bandwidth for each flow, and specifies redundant sources. If a flow can match multiple flow maps, the first flow map applies.
forwarding-cache—Enables you to configure the forwarding cache properties of entries defined by a flow map. You can specify a timeout of never to make the forwarding entries permanent, or you can specify a timeout in the range from 1 through 720 minutes. If you set the value to never, you can specify the non-discard-entry-only option to make an exception for entries that are in the pruned state. In other words, the never non-discard-entry-only statement allows entries in the pruned state to time out, while entries in the forwarding state never time out.
policy—Specifies source and group addresses to which the flow map applies.
redundant-sources—Specify redundant (backup) sources for flows identified by a flow map. Outbound interfaces that are admitted for one of the forwarding entries are automatically admitted for any other entries identified by the redundant source configuration. in the example that follows, the two forwarding entries, (10.11.11.11) and (10.11.11.12,) match the flow map defined for flowMap1. If an outbound interface is admitted for entry (10.11.11.11), it is also automatically admitted for entry (10.11.11.12) so one source or the other can send traffic at any time.
Configuration
Procedure
CLI Quick Configuration
To quickly configure this example, copy the
following commands, paste them into a text file, remove any line breaks,
change any details necessary to match your network configuration,
copy and paste the commands into the CLI at the [edit]
hierarchy
level, and then enter commit
from configuration mode.
set policy-options prefix-list permanentEntries1 232.1.1.0/24 set policy-options policy-statement policyForFlow1 from source-address-filter 11.11.11.11/32 exact set policy-options policy-statement policyForFlow1 from prefix-list-filter permanentEntries1 orlonger set policy-options policy-statement policyForFlow1 then accept set routing-options multicast flow-map flowMap1 policy policyForFlow1 set routing-options multicast flow-map flowMap1 bandwidth 2m set routing-options multicast flow-map flowMap1 bandwidth adaptive set routing-options multicast flow-map flowMap1 redundant-sources 10.11.11.11 set routing-options multicast flow-map flowMap1 redundant-sources 10.11.11.12 set routing-options multicast flow-map flowMap1 forwarding-cache timeout never non-discard-entry-only
Step-by-Step Procedure
Multicast flow maps enable you to manage a subset of multicast forwarding table entries. For example, you can specify that certain forwarding cache entries be permanent or have a different timeout value from other multicast flows that are not associated with the flow map policy.
The following example requires you to navigate various levels in the configuration hierarchy. For information about navigating the CLI, see Using the CLI Editor in Configuration Mode in the Junos OS CLI User Guide.
To configure a flow map:
Configure the flow map policy. This step creates a flow map policy called policyForFlow1. The policy statement matches the source address using the source-address-filter statement, and matches the group address using the prefix-list-filter. The addresses must match the configured policy for flow mapping to occur.
content_copy zoom_out_map[edit policy-options] user@host# set prefix-list permanentEntries1 232.1.1.0/24 user@host# set policy policyForFlow1 from source-address-filter 11.11.11.11/32 exact user@host# set policy policyForFlow1 from prefix-list-filter permanentEntries1 orlonger user@host# set policy policyForFlow1 then accept
Define a flow map, flowMap1, that references the flow map policy, policyForFlow1, we just created.
content_copy zoom_out_map[edit routing-options] user@host# set multicast flow-map flowMap1 policy policyForFlow1
Configure permanent forwarding entries (that is, entries that never time out), and enable entries in the pruned state to time out.
content_copy zoom_out_map[edit routing-options] user@host# set multicast flow-map flowMap1 forwarding-cache timeout never non-discard-entry-only
Configure the flow map bandwidth to be adaptive with a default starting bandwidth of 2 Mbps.
content_copy zoom_out_map[edit routing-options] user@host# set multicast flow-map flowMap1 bandwidth 2m adaptive
Specify backup sources.
content_copy zoom_out_map[edit routing-options] user@host# set multicast flow-map flowMap1 redundant-sources [ 10.11.11.11 10.11.11.12 ]
Commit the configuration.
content_copy zoom_out_mapuser@host# commit
Results
Confirm your configuration by entering the show policy-options and show routing-options commands.
user@host# show policy-options prefix-list permanentEntries1 { 232.1.1.0/24; } policy-statement policyForFlow1 { from { source-address-filter 11.11.11.11/32 exact; prefix-list-filter permanentEntries1 orlonger; } then accept; }
user@host# show routing-options multicast { flow-map flowMap1 { policy policyForFlow1; bandwidth 2m adaptive; redundant-sources [ 10.11.11.11 10.11.11.12 ]; forwarding-cache { timeout never non-discard-entry-only; } } }
Verification
To verify the configuration, run the following commands:
show multicast flow-map
show multicast route extensive