Recently, I've been evaluating routing with multiple-link (multi-radio) in my network with batman v.
I found that adding a 2.4ghz radio to my bat interface has caused instability and poor performance compared to just running batman with the 5ghz radio only.
My board uses mt7915e and mt7622-wmac drivers for 5 and 2.4ghz, respectively.
My first problem is that mt7915e doesn't use mistral, but mt7622-wmac does. I've noticed that sta_get_expected_throughput() returns a higher rate than (tx rate / 3). Since this is not an apples-to-apples comparison, there is bias for using the 2.4ghz next hops. So, I think it would be good, if we tried to make an effort to use a consistent method to determine bandwidth across all radios, even if some radios have better methods of doing so than others. In my example, it might be better to use (tx rate / 3) for mt7622-wmac even though that driver/minstrel supports getting the expected throughput.
I think that this change probably does a better job for the alternative to expected bandwidth. That is to say, I think that using (tx rate + considering fail avg) is better than just dividing the tx rate by 3. But this proposed method still results in my expected bandwidth being derived differently based on the radio.
HWMP doesn't need to consider this, because it only supports one radio. Regardless of which method is used to calculate metric, it will be used consistently for all possible next hops, because there is only one wireless driver involved.
The second problem I have, seems to be that sta_get_expected_throughput() returns a bandwidth which is an over-estimate. For example, it estimates 150Mb/s. But really, I'm only getting 25Mb/s, or less on the link. I *think* the expected bandwidth delivered by minstrel is not considering the fact that the radio cannot tx as often as it would like due to contention. The return value seems to reflect that fact that we tx to the sta at a high rate, but doesn't reflect the fact that it's hard to get an opportunity to tx. I'm not 100% sure about this yet.
Again, this is not something that is as important to HWMP, because there is only one radio, on one frequency. As such, the contention will be somewhat uniform across the stas. But in my multi-radio case (and probably many others), 2.4GHz is way more crowded than 5Ghz. So it would be good to somehow account for this when we are choosing the best next hop among multiple radios.
Andy