Traditional multicast routing mechanisms (e.g. DVMRP
and MOSPF) were intended for use
within regions where groups are densely populated or bandwidth is universally
plentiful. When groups, and senders to these groups, are distributed sparsely
across a wide area, these "dense mode" schemes do not perform
efficiently. Core Based Trees (CBT), like PIM-SM, provide a mechanism for
creating shared delivery trees for multicast groups. Shared trees allow
for a single tree per multicast group (*,G) instead of trees based in each
source-group pair (S,G).
Multicasting Protocols require two different functions in order to create the source-based trees or group-based tree:
CBT depends on existing multicast routing to provide a route to do the Reverse Path Forwarding. In contrast, DVMRP passes this set of routes within the protocol.
An overview of PIM can be found in the document Core Based Trees (CBT) Multicast - Multicast Architecture. A detailed protocol specification can be found in the document:
Core Based Trees (CBT) Multicast - Protocol Specification.
cbt yes | no | on | off [ { interface interface_list cbt_options ; traceoptions trace_options ; mfc-timeout sec ; dr-interval sec ; dr-timeout sec ; directroute [on|off] cbt_dr_group ; } ] ;
interface interface_list cbt_options
Enables or disables, and configures CBT on an interface by interface basis.
disable
Specifies that CBT packets received via the specified interface will be ignored. The default is to listen to CBT on all multicast capable interfaces.
enable
This is the default. This argument may be necessary when disable is used on a wildcard interface descriptor.
echomode [echo-by-router | echo-by-group]
This method determines if this router will send an echo through this interface for the group or for the router.
traceoptions trace_options
Specifies the tracing options for PIM. (See Trace Statements and the PIM specific tracing options below.)
mfc-timeout sec
Length of time that a child will remain part of the tree. Default =180 seconds.
dr-interval sec
Interval that a neighbor router for IGMP querier to send IGMP Host Membership Query.
dr-timeout sec
Interval that a neighbor router is remember after receiving an IGMP Host query. Also defined as IGMP Host Query Interval.
directroute [on|off]
[group-addr-start host] [group-addr-end host]
[core_address
{
[address cbt-type]
[primary-core | secondary-core target-core]];
}; The direct route configures a CBT router with knowledge of the CBT core for a group of multicast addresses. The multicast group addresses are configured by the start and of a range of group addresses. The CBT core is configured by the address of the core router and its type (primary, secondary or target).
group-addr-start host
Start of the range of multicast group addresses that have a direct route from this router.
group-addr-end host
End of the range of multicast group addresses that have a direct route from this router.
core-address [address cbttype [primary-core| secondary-core |target-core]
The core-addresses specify the addresses of the CBT routers that will service these range of multicast groups (group-addr-start to group-addr-end). CBT allows for three types of core to be specified: primary, secondary, and target core. The core-address command also indicates what type of core the CBT router and group addresses are.
Packet tracing options (which may be modified with detail, send or recv):
packets - CBT packets
join - PIM Join packets
quit - PIM Quit packets
echo - PIM echo packets
assert - PIM Graft and Graft Ack packets
See the sample multicast router configurations.