9.3 Routing Multicast Traffic
9.3.2
Distribution trees
To deliver multicast packets to all receivers, designated routers construct a tree that connects all members of an IP multicast group. A distribution tree specifies a unique forwarding path between the subnet of the source and each subnet containing members of the multicast group.

A distribution tree has just enough connectivity so that there is only one, loop-free path between every pair of routers. Because each router knows which of its lines belong to the tree, the router can copy an incoming multicast datagram onto all the outgoing branches. This action generates the minimum needed number of datagram copies. Because messages are replicated only when the tree branches, the number of copies of the messages transmitted through the network is minimized.

Because multicast groups are dynamic, with members joining or leaving a group at any time, the distribution tree must be dynamically updated. Branches that contain new members must be added. Branches in which no listeners exist must be discarded, or pruned.

There are two basic tree construction techniques: source-specific trees and shared, or center-specific trees.