Re: [PATCH] batman-adv: Use wifi rx/tx as fallback throughput

Кирилл Луконин
2019-06-27T10:41:54Z

Hello, Marek.

On Thursday, 13 June 2019 04:50:44 HKT Кирилл Луконин wrote:
>> So here is the algorithm. It has a structure we call matryoshka.
>> ET - Expected_throughput.
>>
>> 1) ET = TX_bitrate * Transmit_probability * Overhead_coefficient
>> Transmit_probability is always less than 1 so Expected throughput
>> can't be equal to the TX_bitrate. Overhead_coefficient is also should
>> be less than 1
>>
>> 2) Transmit_probability = 1 - Retry_probability - Error_probability
>>
>> 3) Retry_probability = TX_retries / TX_packets
>>
>> 4) Error_probability = TX_errors / TX_packets
>>
>> 5) Overhead_coefficient for 802.11 is fair enough to be 0.65, but can
>> be changed after additional testing.
>>
>>
>> ET = TX_bitrate * (1 - (TX_retries + TX_errors) / TX_packets) * 0.65
>> Such technique has very large hysteresis which is good to avoid
>> flapping between different nodes.
>> In my MESH lab this formula works quite well.

>This looks like an interesting approach. Which chips / environments did you
>test this formula with and how did the result compare to the actual TCP
>throughput ?

>Thanks,
>Marek

Mostly QCA988x was tested.
Sorry, I lost my test results so I need to do it again.
I have UBNT AC MESH, UBNT AP AC Lite and TP-Link RE450 in my lab.

Also, as I think, it's better to test UDP throughput, But I can test
both TCP and UDP.
This formula always show a result that close to UDP throughput. So,
may be we can think about additional parameters/coefficients that
depend on protocols or something else.

Best Regards,
Lukonin Kirill

вт, 25 июн. 2019 г. в 13:26, Marek Lindner <mareklindner@neomailbox.ch>:
>
> On Thursday, 13 June 2019 04:50:44 HKT Кирилл Луконин wrote:
> > So here is the algorithm. It has a structure we call matryoshka.
> > ET - Expected_throughput.
> >
> > 1) ET = TX_bitrate * Transmit_probability * Overhead_coefficient
> > Transmit_probability is always less than 1 so Expected throughput
> > can't be equal to the TX_bitrate. Overhead_coefficient is also should
> > be less than 1
> >
> > 2) Transmit_probability = 1 - Retry_probability - Error_probability
> >
> > 3) Retry_probability = TX_retries / TX_packets
> >
> > 4) Error_probability = TX_errors / TX_packets
> >
> > 5) Overhead_coefficient for 802.11 is fair enough to be 0.65, but can
> > be changed after additional testing.
> >
> >
> > ET = TX_bitrate * (1 - (TX_retries + TX_errors) / TX_packets) * 0.65
> > Such technique has very large hysteresis which is good to avoid
> > flapping between different nodes.
> > In my MESH lab this formula works quite well.
>
> This looks like an interesting approach. Which chips / environments did you
> test this formula with and how did the result compare to the actual TCP
> throughput ?
>
> Thanks,
> Marek
>