Table Of Contents
Multicast Distributed Switching
Multicast Distributed Switching
Description
Prior to multicast distributed switching (MDS), IP multicast traffic was always switched at the Route Processor (RP) in the Route Switch Processor (RSP)-based platforms. With Cisco IOS Release 11.2 GS, IP multicast traffic can be distributed switched on RSP-based platforms with VIPs. Furthermore, MDS is the only multicast switching method on the Cisco 12000 Gigabit Switched Router (GSR), starting with Cisco IOS Release 11.2(11) GS.
Switching multicast traffic at the RP had disadvantages:
•
The load on the RP increased. This affected important route updates and calculations (for BGP, among others) and could stall the router if the multicast load was significant.
•
The net multicast performance was limited to what a single RP could switch.
MDS solves these problems by performing distributed switching of multicast packets received at the line cards (VIPs in the case of RSP, and line cards in the case of GSR). The line card is the interface card that houses the VIPs (in the case of RSP) and the GSR line card (in the case of GSR). MDS is accomplished using a forwarding data structure called a Multicast Forwarding Information Base (MFIB), which is a subset of the routing table. A copy of MFIB runs on each line card and is always kept up to date with the RP's MFIB table.
In the case of RSP, packets received on non-VIP IPs are switched by the RP.
MDS can work in conjunction with Cisco Express Forwarding (CEF), unicast distributed fast switching (DFS), or flow switching.
Benefits
The multicast switching load is kept off the RP, improving the performance of the router.
Platforms
This feature is supported on these platforms:
•
Cisco 7500
•
Cisco 12000 Gigabit Switch Router (GSR)
Configuration Tasks
This section describes the tasks to configure MDS. The first task is required.
Enable MDS
To enable MDS, you must enable it globally and on at least one interface because MDS is an attribute of the interface. Perform the following tasks beginning in global configuration mode:
Note
When you enable an interface to perform distributed switching of incoming multicast packets, you are configuring the physical interface, not the logical interface (subinterface). All subinterfaces are included in the physical interface.
Monitor and Maintain MDS
To maintain MDS on the line cards, perform the following task in EXEC mode:
Task CommandClear the line card's MFIB table and resynchronize with the RP.
clear ip mds forwarding
To maintain MDS on the RP, perform the following tasks in EXEC mode:
Task CommandClear multicast routes and counts.
clear ip mroute {* | group [source]}
Clear all packet counts on the line cards.
clear ip pim interface count
To monitor MDS on the line cards, perform the following tasks in EXEC mode. Remember that to reach a line card's console, enter attach slot#, using the slot number where the line card resides.
Task CommandDisplay the MFIB table, forwarding information, related flags, and counts.
show ip mds forwarding [group-address] [source-address]
Display a summary of the MFIB.
show ip mds summary
To monitor MDS on the RP, perform the following tasks in EXEC mode:
Configuration Example
The following example enables MDS. The command ip route-cache distributed is needed on the RSP only, not on the GSR.
ip multicast-routing distributedinterface pos 1/0/0ip route-cache distributedip mroute-cache distributedCommand Reference
This section documents new or modified commands. All other commands used with this feature are documented in the Cisco IOS Release 11.2 command references.
clear ip mds forwarding
To clear all routes from a line card's MFIB table and resynchronize it with the RP, use the clear ip mds forwarding EXEC command.
clear ip mds forwarding
Syntax Description
This command has no arguments or keywords.
Command Mode
EXEC
Usage Guidelines
This command first appeared in Cisco IOS Release 11.2(11) GS.
Use this command on a line card of a Cisco 7500 or Cisco 12000.
Example
The following example clears the line card's MFIB table:
clear ip mds forwardingRelated Commands
clear ip pim interface count
To clear all line card counts or packet counts, use the clear ip pim interface count EXEC command.
clear ip pim interface count
Syntax Description
This command has no arguments or keywords.
Command Mode
EXEC
Usage Guidelines
This command first appeared in Cisco IOS Release 11.2(11) GS.
Use this command on an RP to delete all multicast distributed switching (MDS) statistics for the entire router.
Example
The following example clears all the line card packets counts:
clear ip pim interface countRelated Commands
ip mroute-cache
To configure IP multicast fast switching or multicast distributed switching (MDS), use the ip mroute-cache interface configuration command. To disable either of these features, use the no form of this command.
ip mroute-cache [distributed]
no ip mroute-cache [distributed]Syntax Description
Default
On the RSP, IP multicast fast switching is enabled; MDS is disabled.
On the GSR, MDS is disabled.Command Mode
Interface configuration
Usage Guidelines
This command first appeared in Cisco IOS Release 11.0. The distributed keyword first appeared in Release 11.2(11) GS.
On the RSP
If multicast fast switching is disabled on an incoming interface for a multicast routing table entry, the packet will be sent at process level for all interfaces in the outgoing interface list.
If multicast fast switching is disabled on an outgoing interface for a multicast routing table entry, the packet is process level switched for that interface, but may be fast-switched for other interfaces in the outgoing interface list.
When multicast fast switching is enabled (like unicast routing), debug messages are not logged. If you want to log debug messages, disable fast switching.
If MDS is not enabled on an incoming interface that is capable of MDS, incoming multicast packets will not be distributed switched; they will be fast-switched at the RP as before. Also, if the incoming interface is not capable of MDS, packets will get fast-switched or process-switched at the RP as before.
If MDS is enabled on the incoming interface, but at least one of the outgoing interfaces cannot fast-switch, packets will be process-switched. So it is a good idea not to disable fast switching on any interface when MDS is enabled.
On the GSR
On the GSR, all interfaces should be configured for MDS because that is the only switching mode.
Examples
The following example enables IP multicast fast switching on the interface:
ip mroute-cacheThe following example disables IP multicast fast switching on the interface:
no ip mroute-cacheThe following example enables MDS on the interface:
ip mroute-cache distributedThe following example disables MDS and IP multicast fast switching on the interface:
no ip mroute-cache distributedip multicast-routing
To enable IP multicast routing or multicast distributed switching (MDS), use the ip multicast-routing global configuration command. To disable IP multicast routing and MDS, use the no form of this command.
ip multicast-routing [distributed]
no ip multicast-routingSyntax Description
Default
Disabled
Command Mode
Global configuration
Usage Guidelines
This command first appeared in Cisco IOS Release 10.0. The distributed keyword first appeared in Release 11.2(11) GS.
When IP multicast routing is disabled, the Cisco IOS software does not forward any multicast packets.
Examples
The following example enables IP multicast routing:
ip multicast-routingThe following example disables IP multicast routing and MDS:
no ip multicast-routingRelated Commands
You can use the master indexes or search online to find documentation of related commands.
ip pim
show interface stats
To display numbers of packets that were process switched, fast switched, and distributed switched, use the show interface stats EXEC command.
show interface type number stats
Syntax Description
Command Mode
EXEC
Usage Guidelines
This command first appeared in Cisco IOS Release 11.0.
Use this command on the RP.
Sample Display
The following is sample output from the show interface stats command:
Router# show interface fddi 3/0/0 statsFddi3/0/0Switching path Pkts In Chars In Pkts Out Chars OutProcessor 3459994 1770812197 4141096 1982257456Route cache 10372326 3693920448 439872 103743545Distributed cache 19257912 1286172104 86887377 1184358085Total 33090232 2455937453 91468345 3270359086describes the fields in the display.
show ip mcache
To display the contents of the IP multicast fast-switching cache, use the show ip mcache EXEC command.
show ip mcache [group [source]]
Syntax Description
Command Mode
EXEC
Usage Guidelines
This command first appeared in Cisco IOS Release 11.0.
Use this command on the RP.
Sample Displays
The following is sample output from the show ip mcache command. This entry shows a specific source (wrn-source 204.62.246.73) sending to the World Radio Network group (224.2.143.24).
Router> show ip mcache wrn wrn-sourceIP Multicast Fast-Switching Cache(204.62.246.73/32, 224.2.143.24), Fddi0, Last used: 00:00:00Ethernet0 MAC Header: 01005E028F1800000C1883D30800Ethernet1 MAC Header: 01005E028F1800000C1883D60800Ethernet2 MAC Header: 01005E028F1800000C1883D40800Ethernet3 MAC Header: 01005E028F1800000C1883D70800describes the significant fields in the display.
The following is sample output from the show ip mcache command when MDS is in effect.
Router# show ip mcacheIP Multicast Fast-Switching Cache(*, 224.2.170.73), Fddi3/0/0, Last used: mdsTunnel3 MAC Header: 5000602F9C150000603E473F60AAAA030000000800 (Fddi3/0/0)Tunnel0 MAC Header: 5000602F9C150000603E473F60AAAA030000000800 (Fddi3/0/0)Tunnel1 MAC Header: 5000602F9C150000603E473F60AAAA030000000800 (Fddi3/0/0)show ip mds forwarding
On a line card, to display the MFIB table and forwarding information for multicast distributed switching (MDS), use the show ip mds forwarding EXEC command.
show ip mds forwarding [group-address] [source-address]
Syntax Description
Command Mode
EXEC
Usage Guidelines
This command first appeared in Cisco IOS Release 11.2(11) GS.
Use this command on the line card. This command displays the MFIB table, forwarding information and related flags and counts.
Note
To reach a line card's console, enter attach slot# (slot number where the line card resides).
On a GSR only, line card commands can be executed from the RP using the following syntax: execute [slot slot-number | all] command
The command is any of the line card show commands, such as show ip mds summary and show ip mds forward.
Sample Display
The following is sample output from the show ip mds forwarding command:
Router# show ip mds forwarding IP multicast MDFS forwarding information and statistics:Flags: N - Not MDFS switchable, F - Not all MDFS switchable, O - OIF NullR - In-ratelimit, A - In-access, M - MTU mismatch, P - Register setInterface state: Interface, Next-Hop, Mac header(*, 224.2.170.73),Incoming interface: NullPkts: 0, last used: never, Kbps: 0, fast-flags: NOutgoing interface list: Null(128.97.62.86, 224.2.170.73) [31]Incoming interface: Fddi3/0/0Pkts: 3034, last used: 00:00:00, Kbps: 0, fast-flags: MOutgoing interface list:describes the significant fields in the display.
show ip mds interface
To display the status of multicast distributed switching (MDS) interfaces, use the show ip mds interface EXEC command.
show ip mds interface
Syntax Description
This command has no arguments or keywords.
Command Mode
EXEC
Usage Guidelines
This command first appeared in Cisco IOS Release 11.2(11) GS.
Use this command on the RP.
Sample Display
The following is sample output from the show ip mds interface command:
Router# show ip mds interfaceEthernet1/0/0 is up, line protocol is upEthernet1/0/1 is up, line protocol is upFddi3/0/0 is up, line protocol is upFastEthernet3/1/0 is up, line protocol is updescribes the fields in the display.
Table 4 Show IP MDS Interface Field Descriptions
Field DescriptionEthernet1/0/0 is up
Status of interface.
line protocol is up
Status of line protocol.
show ip mds stats
To display switching statistics or line card statistics for multicast distributed switching (MDS), use the show ip mds stats EXEC command.
show ip mds stats [switching | linecard]
Syntax Description
switching
(Optional) Displays switching statistics.
linecard
(Optional) Displays line card statistics.
Command Mode
EXEC
Usage Guidelines
This command first appeared in Cisco IOS Release 11.2(11) GS.
Use this command on the RP.
Sample Display
The following is sample output from the show ip mds stats command with the switching keyword:
Router# show ip mds stats switchingSlot Total Switched Drops RPF Punts Failures(switch/clone)1 0 0 0 0 4 0/03 20260925 18014717 253 93 2247454 1/0describes the fields in the display.
.
The following is sample output from the show ip mds stats command with the linecard keyword:
Router# show ip mds stats linecardSlot Status IPC(seq/max) Q(high/route) Reloads1 active 10560/10596 0/0 93 active 11055/11091 0/0 9describes the fields in the display.
.
show ip mds summary
To display a summary of the MFIB table for multicast distributed switching (MDS), use the show ip mds summary EXEC command.
show ip mds summary
Syntax Description
This command has no arguments or keywords.
Command Mode
EXEC
Usage Guidelines
This command first appeared in Cisco IOS Release 11.2(11) GS.
Use this command on a line card. On a GSR only, line card commands can be executed from the RP using the following syntax:
execute [slot slot-number | all] command
The command is any of the line card show commands, such as show ip mds summary and show ip mds forward.
Sample Display
The following is sample output from the show ip mds summary command:
Router# show ip mds summaryIP multicast MDFS forwarding information and statistics:Flags: N - Not MDFS switchable, F - Not all MDFS switchable, O - OIF NullR - In-ratelimit, A - In-access, M - MTU mismatch, P - Register setInterface state: Interface, Next-Hop, Mac header(*, 224.2.170.73),Incoming interface: NullPkts: 0, last used: never, Kbps: 0, fast-flags: N(128.97.62.86, 224.2.170.73) [31]Incoming interface: Fddi3/0/0Pkts: 3045, last used: 00:00:03, Kbps: 0, fast-flags: M(128.223.3.7, 224.2.170.73) [334]Incoming interface: Fddi3/0/0Pkts: 0, last used: never, Kbps: 0, fast-flags: Mdescribes the fields in the display.
show ip pim interface count
To display switching counts for multicast distributed switching (MDS) and other fast switching statistics, use the show ip pim interface count EXEC command.
show ip pim interface [type number] count
Syntax Description
type number
(Optional) Interface type and number. If these arguments are specified, information is displayed about that interface only.
Command Mode
EXEC
Usage Guidelines
This command first appeared in Cisco IOS Release 11.2(11) GS.
Use this command on the RP.
Sample Display
The following is sample output from the show ip pim interface count command:
Router# show ip pim interface countAddress Interface FS Mpackets In/Out128.223.224.8 Ethernet1/0/0 D 4/0128.223.225.1 Ethernet1/0/1 D 0/0128.223.222.8 Fddi3/0/0 D 20182993/56931128.223.156.1 FastEthernet3/1/0 D 59991/462385137.39.26.98 Tunnel0 * 394681/10686513128.223.90.13 Tunnel1 * 517821/7185605128.223.90.25 Tunnel3 * 26282/20027641128.223.90.29 Tunnel4 * 2415/8688961describes the fields in the display.
Debug Commands
This section documents the following debug commands:
debug ip mds ipc
To debug MDS interprocessor communication, that is, synchronization between the MFIB on the line card and the multicast routing table in the RP, use the debug ip mds ipc EXEC command.
[no] debug ip mds ipc {event | packet}
Syntax Description
Command Mode
EXEC
Usage Guidelines
This command first appeared in Cisco IOS Release 11.2(11) GS.
Use this command on the line card or RP.
Sample Display
shows sample debug ip mds ipc packet output.
Figure 1 Sample Debug IP MDS IPC Packet Output
VIP-Slot0# debug ip mds ipc packetMDFS ipc packet debugging is onVIP-Slot0#MDFS: LC sending statistics message to RP with code 0 of size 36MDFS: LC sending statistics message to RP with code 1 of size 680MDFS: LC sending statistics message to RP with code 2 of size 200MDFS: LC sending statistics message to RP with code 3 of size 152MDFS: LC sending window message to RP with code 36261 of size 8MDFS: LC received IPC packet of size 60 sequence 36212shows sample debug ip mds ipc event output.
Figure 2 Sample Debug IP MDS IPC Event Output
VIP-Slot0# debug ip mds ipc eventMDFS: LC received invalid sequence 21 while expecting 20debug ip mds mevent
To debug MFIB route creation, route updates, and so on, use the debug ip mds mevent EXEC command.
[no] debug ip mds mevent
Command Mode
EXEC
Usage Guidelines
This command first appeared in Cisco IOS Release 11.2(11) GS.
Use this command on the line card.
Sample Display
shows sample debug ip mds mevent output.
Figure 3 Sample Debug IP MDS Mevent Output
VIP-Slot0# debug ip mds meventMDFS mroute event debugging is onVIP-Slot0#clear ip mdfs for *VIP-Slot0#MDFS: Create (*, 239.255.255.255)MDFS: Create (192.168.1.1/32, 239.255.255.255), RPF POS2/0/0MDFS: Add OIF for mroute (192.168.1.1/239.255.255.255) on Fddi0/0/0MDFS: Create (*, 224.2.127.254)MDFS: Create (192.168.1.1/32, 224.2.127.254), RPF POS2/0/0MDFS: Add OIF for mroute (192.168.1.1/224.2.127.254) on Fddi0/0/0MDFS: Create (128.9.160.67/32, 224.2.127.254), RPF POS2/0/0debug ip mds mpacket
To debug multicast distributed switching (MDS) events, such as packet drops, interface drops, and switching failures, use the debug ip mds mpacket EXEC command.
[no] debug ip mds mpacket
Command Mode
EXEC
Usage Guidelines
This command first appeared in Cisco IOS Release 11.2(11) GS.
Use this command on the line card.
Sample Display
Router# debug ip mds mpacketdebug ip mds process
To debug line card process level events, use the debug ip mds process EXEC command.
[no] debug ip mds process
Command Mode
EXEC
Usage Guidelines
This command first appeared in Cisco IOS Release 11.2(11) GS.
Use this command on the line card or RP.
Sample Display
shows sample debug ip mds process output.
Figure 4 Sample Debug IP MDS Process Output
Router# debug ip mds processMDFS process debugging is onMar 19 16:15:47.448: MDFS: RP queueing mdb message for (210.115.194.5, 224.2.127.254) to all linecardsMar 19 16:15:47.448: MDFS: RP queueing midb message for (210.115.194.5, 224.2.127.254) to all linecardsMar 19 16:15:47.628: MDFS: RP servicing low queue for LC in slot 0Mar 19 16:15:47.628: MDFS: RP servicing low queue for LC in slot 2Mar 19 16:15:48.229: MDFS: RP queueing mdb message for (171.68.224.10, 224.2.127.254) to all linecardsMar 19 16:15:48.229: MDFS: RP queueing mdb message for (171.68.224.10, 224.2.127.254) to all linecardsMar 19 16:15:48.229: MDFS: RP queueing mdb message for (171.69.67.106, 224.2.127.254) to all linecardsMar 19 16:15:48.229: MDFS: RP queueing mdb message for (171.69.67.106, 224.2.127.254) to all linecardsMar 19 16:15:48.229: MDFS: RP queueing mdb message for (206.14.154.181, 224.2.127.254) to all linecardsMar 19 16:15:48.229: MDFS: RP queueing mdb message for (206.14.154.181, 224.2.127.254) to all linecardsMar 19 16:15:48.233: MDFS: RP queueing mdb message for (210.115.194.5, 224.2.127.254) to all linecards
