Please consider my network topology:

(Machine A0) --- [Switch A] ============ [Switch B] --- (Machine B0)


                                        (Machine B1)

As you could observe Machine A0 is physically connected to switch A (respectively machines B0,B1 are physically connected to switch B). Switches A and B are connected directly to each other.

Machine A0 multicasts a message m.

Should m be dulplicated directly on machine A0, on switch A or on switch B?

  • 2
    Let me answer the question with a question: how would machine A0 "know" how many receivers there are, and therefore how many duplicates to make of the packet? Then ask yourself the same question of switch A and B.
    – Ron Trunk
    May 1 '15 at 18:51
  • @Ron Let me continue with a question: Should a node that multicasts over UDP know the number of receivers? As far as I know No! Please correct me should I am wrong.
    – Newbie
    May 1 '15 at 19:48
  • 1
    You are right -- the sender doesn't know. So it can't be the one duplicating packets
    – Ron Trunk
    May 1 '15 at 19:51
  • 1
    @Doon whether they run IGMP snooping or not has no bearing on the question
    – Ron Trunk
    May 2 '15 at 4:16
  • 1
    Whether IGMP snooping is on or off, B will still duplicate the packets. Snooping will make B more efficient and only forward MC packets out of ports it hears receivers on.
    – Ron Trunk
    May 2 '15 at 12:20

In the absences of a feature like IGMP snooping, a L2 device will flood a copy of the frame out every active interface besides the one on which it was received. In your example, this means that both SwA and SwB will send the multicast traffic out every one of their active ports besides the receiving port.

IGMP snooping is a feature on most modern enterprise switches which allows the switch to learn which devices are joined to which multicast groups and only forward the frame to those destination ports. In your example (assuming both MachineB0 and MachineB1 had joined the multicast group and are the only devices besides MachineA0 to do so), SwA would send a copy to SwB and SwB will send a copy out the ports going to MachineB0 and MachineB1. The frame would not be sent out any other active ports.


The default behavior for a Layer 2 switch is to forward all multicast traffic to every port that belongs to the destination LAN on the switch.

IP multicast is not in play unless there is a router (layer 3 device) between these end machines. So, we are speaking here of Ethernet frames (not IP packets).


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.