Implementing reliable multicast