eb1d164143
This patch adds the core functionality of IGMP snooping support without actually hooking it up. So this patch should be a no-op as far as the bridge's external behaviour is concerned. All the new code and data is controlled by the Kconfig option BRIDGE_IGMP_SNOOPING. A run-time toggle is also available. The multicast switching is done using an hash table that is lockless on the read-side through RCU. On the write-side the new multicast_lock is used for all operations. The hash table supports dynamic growth/rehashing. The hash table will be rehashed if any chain length exceeds a preset limit. If rehashing does not reduce the maximum chain length then snooping will be disabled. These features may be added in future (in no particular order): * IGMPv3 source support * Non-querier router detection * IPv6 Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> Signed-off-by: David S. Miller <davem@davemloft.net>
45 lines
1.5 KiB
Text
45 lines
1.5 KiB
Text
#
|
|
# 802.1d Ethernet Bridging
|
|
#
|
|
|
|
config BRIDGE
|
|
tristate "802.1d Ethernet Bridging"
|
|
select LLC
|
|
select STP
|
|
---help---
|
|
If you say Y here, then your Linux box will be able to act as an
|
|
Ethernet bridge, which means that the different Ethernet segments it
|
|
is connected to will appear as one Ethernet to the participants.
|
|
Several such bridges can work together to create even larger
|
|
networks of Ethernets using the IEEE 802.1 spanning tree algorithm.
|
|
As this is a standard, Linux bridges will cooperate properly with
|
|
other third party bridge products.
|
|
|
|
In order to use the Ethernet bridge, you'll need the bridge
|
|
configuration tools; see <file:Documentation/networking/bridge.txt>
|
|
for location. Please read the Bridge mini-HOWTO for more
|
|
information.
|
|
|
|
If you enable iptables support along with the bridge support then you
|
|
turn your bridge into a bridging IP firewall.
|
|
iptables will then see the IP packets being bridged, so you need to
|
|
take this into account when setting up your firewall rules.
|
|
Enabling arptables support when bridging will let arptables see
|
|
bridged ARP traffic in the arptables FORWARD chain.
|
|
|
|
To compile this code as a module, choose M here: the module
|
|
will be called bridge.
|
|
|
|
If unsure, say N.
|
|
|
|
config BRIDGE_IGMP_SNOOPING
|
|
bool "IGMP snooping"
|
|
default y
|
|
---help---
|
|
If you say Y here, then the Ethernet bridge will be able selectively
|
|
forward multicast traffic based on IGMP traffic received from each
|
|
port.
|
|
|
|
Say N to exclude this support and reduce the binary size.
|
|
|
|
If unsure, say Y.
|