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.
- 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
Transmit_probability = 1 - Retry_probability - Error_probability
Retry_probability = TX_retries / TX_packets
Error_probability = TX_errors / TX_packets
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.
- 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
Transmit_probability = 1 - Retry_probability - Error_probability
Retry_probability = TX_retries / TX_packets
Error_probability = TX_errors / TX_packets
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