Hi everyone,
The following patches add a redundancy bonding mode to batman-adv: In case of multiple interfaces available towards a next hop node, instead of sending packets in interface alternating or round robin bonding fashion, packets get send redundantly on all available interfaces available for bonding.
This mode increases the packet delivery ratio of unicast data transfers for the cost of throughput in multi interface mesh networks and is therefore aimed at high reliability mesh networks.
It is especially useful if the main source of packet loss is not always reliably detectable by batman-adv's broadcast PDR measurements (i.e. bursty periods of interference on a single channel, which gets averaged out due to the windowing; different unicast bitrate; ...). Or if a fault tolerant packet forwarding scheme which is able to tolerate a sudden link failure with no impact on the user experience is required.
The first eight patches are mainly some restructuring of the unicast sending code paths. Patches nine to 13 add the actual redandancy bonding mode.
Please note, that this redundancy bonding mode is not yet compatible with batman-adv's link layer fragmentation feature.
Cheers, Linus