The latest addition to the existing set of multicast forwarding algorithms is the Core Based Trees (CBT). The architecture of CBT is described in RFC2201. Unlike existing algorithms which build a source-rooted, shortest-path tree for each (source, group) pair, CBT constructs a single delivery tree that is shared by all members of a group. The CBT algorithm is quite similar to the spanning tree algorithm except it constructs a different core-based tree for each group. Multicast traffic for each group is sent and received over the same delivery tree, regardless of the source.
A core-based tree may involve a single router, or set of routers, which act as the core of a multicast delivery tree. Figure 1 illustrates how multicast traffic is forwarded across a CBT "backbone" to all members of the group. Note that the CBT backbone may contain both core and non-core routers.
Each station that wishes to receive traffic that has been addressed to a multicast group is required to send a "join" message towards the core tree of the particular multicast group. A potential group member only needs to know the address of one of the group's core routers in order to transmit a unicast join request. The join request is processed by all intermediate routers which identify the interface on which the join was received as belonging to the group's delivery tree. The intermediate routers continue to forward the join message towards the core and marking local interfaces until the request reaches a core router.
Similar to other multicast forwarding algorithms, CBT does not require that the source of a multicast packet be a member of the destination group. Packets sourced by a non-group member are simply unicast towards the core until they reach the first router that is a member of the group's delivery tree. When the unicast packet reaches a member of the delivery tree, the packet is multicast to all outgoing interfaces that are part of the tree except the incoming link. This guarantees that the multicast packet is forwarded to all routers on the delivery tree.