-
Notifications
You must be signed in to change notification settings - Fork 324
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Seperate mesh-on-LAN links #1104
Comments
Another argument in favour of this proposal:
Another argument for keeping the current behaviour:
We have plans to encapsulate wired mesh traffic in VXLANs (and I'm working on patches for that); I'd like to defer this discussion at least until we have sorted that out. |
We experimented with gathering neighbor information from LLDP instead of batman-adv, which would combine the "real" network topology with keeping the switching behavior (which I would strongly favor, as it is far more performant and resilient). In the end, you are apparently arguing about the ways of displaying information, not about network topology. So gather the right information and display it adequately instead of changing the topology. Also, if you connect nodes to a common switch, you will still get full meshes, regardless of this change. |
and this is the reason why I do not want to connect large number of nodes via layers switches. |
Thanks for your comment, @NeoRaider. I didn't know, you were working on that. @jplitza, this is not just about displaying a network. The topology is wrong. If two routers arent connected directly, Batman should be able to make a distinction. @ALL, does someone know, how I can set this input separating rule temporarily? Maybe reboot but not update persistent? It's probably a command for the build in hardware switch |
To make it clear, we are talking about two different kinds of topologies here:
What exactly do you mean? The ebtables rule can persist updates if you put it in |
@jplitza "To make it clear, we are talking about two different kinds of topologies here:" anway, the "display of topology" is a point you brought up here. My point would just be: I want at least an option to separate the ports of the "yellow switch" on batman level. (and i do not care about represenation in some kind of map, i just want it separated on batman-adv layer in order to reduce ogm load on the ethernet-l2 and to avoild risk of loops.) |
@Adorfer I interpreted your screenshot as "this looks ugly". I do not care about display. |
@jplitza "I interpreted your screenshot as "this looks ugly". I do not care about display." |
As VXLAN is in Gluon Master now as question to the people who have worked on its implementation: Does VXLAN support the seeked behavior of this issue, @NeoRaider? |
@NeoRaider had a new idea during the Gluon meeting 2022-02: We could maybe use the hairpin mode on gluons bridges to implement this. (I think this would require DSA.) |
I don't know if this is meant with hairpinning as the term is somewhat new to me but I think it pushed me in the right direction to find a solution that should be easy to implement for devices with DSA. As the switch is now a simple bridge with each port being a separate interface we can set the isolation mark on those ports. I tries this on an ERX-SFP and it seems to work. The two nodes connected to it were able to see each other until it set the isolation mark on their ports on the ERX-SFP.
|
Hairpinning is a different feature. The feature we mentioned in the meetup was port isolation. It's good to know that this works as expected with VXLAN. |
Hello,
in the very typical setup of three routers connected over mesh-on-lan like this
A <--LAN--> B <--LAN-->C
Batman sees only one hop between A and C instead of two, because the packages are switched directly in the build in switch of router B and don't go through the CPU and Batman there.
I want to suggest to change this behavior. Although there might be advantages in this configuration in special situations, it generally distorts the topology of the network and leads to ”all routers see all routers over one hop“ in bigger setups, that are connected over lan.
The behavior of Linux software bridges can be altered by this ebtables command (typically used in L2TP gateway setups, where all vpn interfaces are connected through one bridge):
ebtables -A FORWARD --logical-in $IFACE -j DROP
This forces all packages to cycle through the CPU and by so through batman. So the topology of cable-connected networks would be correctly represented in Batman.
I would like to start a discussion about weather this is possible for the hardware switches to disable the direct switching and weather we might want to make this the standard behavior in Gluon?
One drawback would definitely be, that if A is the uplink router, the speed available at C, might be slower than with the bridged setup, because the packages have to go through the CPU at B aswell. (CPU+Batman switching is generally slower than hardware based switching.)
Regards,
Matthias
The text was updated successfully, but these errors were encountered: