how does multicast addressing work