@pe1chl - you don’t need to do a global re-compute, you need to update it. the recompute ospf does is a ‘wipe and start from scratch’ while partial updates just overwrite the necessary values in-place. It’s a dramatically different ‘experience’ when you have a lot of updates being pushed. OSPF will flap and lose packets while eBGP wont, it never actually drops the routes out. It’s a very important difference to highlight. Note that ISIS also does partial updates.
Back to batman-adv. It doesn’t just operate on a peer to peer model, it also sends packets from it’s edge ports that count up TTL so each router knows how far each peer is from an edge WITH a quality metric so that essentially eliminates the route flapping from link state.
For example, a link may be starting to get saturated from sites A>F. The network is A-> B,C,D,E,F, ie 5 backhauls from A. the quality of that path from A>F will slide down a bit as it get’s saturated. Now lets say that there is a full mesh of sites G-Z that can take many paths to A. Site N is going N>F>A because that’s the best calculated path, however it has a nearly as good of path N>J>B>A but the hop count played enough of a role to keep that from being the primary path. A very small drop in the quality calculation at F isn’t enough to make F look for a new path, but it could make N decide to start sending packets down the less saturated N>J>B>A path.
Using a more complex costing metric that doesn’t rely heavily on hop count but more more on latency, packet loss, and available capacity can route around sites that are getting a bit saturated dynamically. Further, if that N>J>B>A also starts to get saturated, some other route that is going over it may move to *>K>E>A. This all happens with some sane and adjustable windowing so routes/paths aren’t flipping around but taking a measured approach. They also have some stickness so routes with some similar quality numbers wont necessarily switch right when the score changes. say there’s a 147 and a 151 and the site has chosen the 147. if that increases to 152, it doesn’t necessarily switch because that’s very similar. In fact, it might send packets down both paths because they are reasonably similar.
Think about it, as an IT guy or ISP etc, what role does hop count actually play for you? I’d argue that you only use it for troubleshooting or some insights on why the important metrics are what they are. why is my latency high, why and where am I dropping packets, where are my bottlenecks. Hop count might have something to do with it, but we’d all likely take 10 hops on 10G fiber over 1 hop on a airmax ptp link.
We run chains of 60Ghz links because they are low latency and high capacity and we back those up with longer 5Ghz shots that are low capacity and medium latency. I use cost to favor 5 hops on 60ghz over the 5Ghz hop for obvious reasons. I would love my routing protocol to be aware of these things and handle them for me so I just hook links up and let the measurements do the heavy lifting.