Group communication is extensively used in modern data centers. Multicast lends itself naturally to these communication patterns. Traditionally, concerns around reliability, scalability and security have resulted in poor adoption of IP multicast in the Internet. However, data center networks with their structured topologies and tighter control present an opportunity to address these concerns. Software defined networking (SDN) architectures, such as OpenFlow, further provide the opportunity to not merely adopt but also innovate multicast in data centers. In this paper, we present Avalanche - An SDN based system that enables multicast in commodity switches used in data centers. As part of Avalanche, we develop a new multicast routing algorithm called Avalanche Routing Algorithm (AvRA). AvRA attempts to minimize the size of the routing tree it creates for any given multicast group. In typical data center topologies like Tree and FatTree, AvRA reduces to an optimal routing algorithm that becomes a solution to the Steiner Tree problem. Avalanche leverages SDN to take advantage of the rich path diversity commonly available in data centers networks, and thereby achieves highly efficient bandwidth utilization. We implement Avalanche as an OpenFlow controller module. Our emulation of Avalanche with Mininet Hi-Fi shows that it improves application data rate by up to 12%, and lowers packet loss by 51%, on an average, compared to IP Multicast. We also build a simulator to evaluate Avalanche at scale. For the PortLand FatTree topology, Avalanche results in at least a 35% reduction, compared to IP Multicast, in the number of links that are less than 5% utilized, once the number of multicast groups exceeds 1000. Lastly, our results confirm that AvRA results in smaller trees compared to traditional IP Multicast routing. © 2014 IEEE.