The last decade has seen a deluge of proposals for supporting multicast in the Internet. These proposals can be categorized as either infrastructure-based, with the multicast functionality provided by specialized network nodes, or host-based, with the multicast functionality provided by the members of the multicast group itself. In this paper, we present the design and evaluation of a hybrid multicast architecture wherein the infrastructure provides packet forwarding, and the end-hosts implement the control plane. End-hosts build multicast trees by setting up forwarding state in the infrastructure. This division of functionality enables our architecture to combine the efficiency of infrastructure-based solutions and the flexibility and deployability of host-based solutions. We present scalable and efficient algorithms for distributed tree construction and maintenance, and for reliable packet delivery. We have implemented the algorithms using i3 as the forwarding infrastructure. We eva...