Bruce, Mon, Mar 12, 2007 at 09:36:43AM +0000, Bruce M. Simpson wrote: > > >Speaking about vlan problems: the original problem is to do something > >with VLAN interfaces only because they are sharing the MAC of their > >physical parent. The problem itself is not VLAN-specific -- if there > >will be two physical interfaces with the same MACs and they will be > >bridged, the problem will still be here. > > > I see this also. > > What would be good is if there was a way to record additional > MAC addresses for each ifnet, in addition to the if_lladdr member. > This would cut down the cruft in ether_input(), if_bridge(4) > and possibly also carp(4).
Am I understand you correctly that you want to see many MAC addresses on the physical interface that is 'hosting' VLAN interfaces and each VLAN if will have its own MAC? >For network cards with more than one perfect hash filter entry in the hardware, > programming these into the card would *perhaps* be more efficient when trying > to achieve line rate with gigabit and beyond. Sure, but for the commodity hardware it will be the overhead to go into the promiscious mode and to filter the packets by multiple MACs. Or you see any other way to do it on the software. > >This would most likely require an ABI change. The VLAN handling problem doesn't > go away; we will still need to check if a bridge member is a VLAN interface > because we can't uniquely key off the MAC as you point out. We're not checking if the interface member is a VLAN interface. We just do the generic checks for the incoming interface. rik@ will send the patch today, at least he just promised me ;)) The only problem that will stay here after our patch is that the pfil will see the 'logical' interface, not the physical one. And if the logical destination interface will have non-unique MAC, then we will again fail to get the right one. But this problem is only pfil-specific: the stack will get the packet in any way, but pfil will get the wrong interface (see rik's long mail in this thread). I did the patch that enables the pfil to see the physical incoming interface for the bridge (it adds one more pfil pass for the packet). I will raise the topic when our patch will be committed (or will not be committed ;((). -- Eygene _______________________________________________ freebsd-net@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-net To unsubscribe, send any mail to "[EMAIL PROTECTED]"