netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Avoiding bridge flood of multicast when L2 switch is used
@ 2016-06-14 20:12 Murali Karicheri
  2016-06-14 20:26 ` Andrew Lunn
  0 siblings, 1 reply; 2+ messages in thread
From: Murali Karicheri @ 2016-06-14 20:12 UTC (permalink / raw)
  To: open list:TI NETCP ETHERNET DRIVER, john.r.fastabend,
	Florian Fainelli

netdev experts,

When there is a L2 switch underneath the network interface a flooding of
multicast at the bridge interface results in one copy of this going through each
of the slave resulting in multiple multicast packets reaching the underlying switch.
L2 switch also duplicates the multicast packet on each egress port as done
in software bridge. This is undesirable as it reduces the available bandwidth to
half when multicast packets are involved.

Is there something that can be done to avoid software bridge flooding mulicast
through a ip command or similar or to be done in the network driver? I have a TODO
item to add dsa support in our netcp driver. If this is already solved by dsa, I can
handle it as part of this work. 

Thanks in advance for your response! 
-- 
Murali Karicheri
Linux Kernel, Keystone

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: Avoiding bridge flood of multicast when L2 switch is used
  2016-06-14 20:12 Avoiding bridge flood of multicast when L2 switch is used Murali Karicheri
@ 2016-06-14 20:26 ` Andrew Lunn
  0 siblings, 0 replies; 2+ messages in thread
From: Andrew Lunn @ 2016-06-14 20:26 UTC (permalink / raw)
  To: Murali Karicheri
  Cc: open list:TI NETCP ETHERNET DRIVER, john.r.fastabend,
	Florian Fainelli

> netdev experts,
> 
> When there is a L2 switch underneath the network interface a flooding of
> multicast at the bridge interface results in one copy of this going through each
> of the slave resulting in multiple multicast packets reaching the underlying switch.

Yes, this is something Florian, Vivien and i have discussed. We don't
yet see a way around it. Neither the Marvell or Broadcast switches
have a mechanism to say: Send this frame out of this list of
interfaces. All we can do is send it out a single interface. Even if
we could direct a single frame out multiple interfaces, we still have
the problem of how to teach the bridge about this, in a clean and
elegant fashion.

Overall, this seems like a hard problem. Since it is a hard problem,
implementing IGMP snooping first would make sense. Don't forward the
packet out a port unless you know there is somebody interested in it.
The swichdev parts of IGMP snooping are in place, we just need to
continue them down into DSA.

> L2 switch also duplicates the multicast packet on each egress port as done
> in software bridge. This is undesirable as it reduces the available bandwidth to
> half when multicast packets are involved.

Once you have a DSA driver, the switch will not do this replication.
So you will gain something there.

     Andrew

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2016-06-14 20:26 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-06-14 20:12 Avoiding bridge flood of multicast when L2 switch is used Murali Karicheri
2016-06-14 20:26 ` Andrew Lunn

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).