Directional radio latency

I got a little, maybe special question.
We´ve one of our buildings connected via diretional radio. Its about a 200 meter strech between the two buidlings. If I copy a single large file between those two building I get about 80-95% of the configured max throuput and the latency goes to about 5-10ms however if I copy a lot of single small files the throuput drops to about 5-10% of the configured max and the latency drops from 5-10ms max to about 25-100ms
Does anyone have expierence with directional radio scenarios and can tell me if that is normal or what i can do to improve those latencys?

1 Like

For a large file, it sends the meta data once, allocates space for it and then just shoots the content accross.

Small files send meta data for every file, then send the file, then meta data again, then file, rince and repeat.

You can try the same within your computer (when you have two harddrives). Copying a huge file will be faster than copying lots of small files.

No clue

1 Like

I know that :wink: . The question was if anyone knows how to improve those latency times on directional radio connections.

1 Like

The only thing you can do is doing something like zipping up the files before you transfer it

might see if you can do something like parralel transfers

3 Likes

this is normal; but you can work around this by adjusting your packet size, or if your wifi routers allow for buffering. That would work too.

4 Likes

Compress your files before sending them so there is only one file your receiving system has to checksum.

The problem is this is not limited to just file transfer. SQL applikations in general are nightmare due to the constant stament questions :confused:

SQL replication should be ok - it will run on specific times (lets say every 5min). Especially if you run with nolock on tables.

It’s basically due to bufferbloat. You will probably notice that the file throughput is still roughly the same however the latency has increased.

Splitting lots of small files into packets and then accumulating them into a buffer (usually in non-transparent ways at the hardware level too) before transmission and doing checks during and after reception is what causes this.
Usually latency is all about buffers in the system. You can try adjusting for it by using forms of Smart Queue Management or QoS.

https://www.bufferbloat.net/projects/bloat/wiki/Experiment-Fun_with_wireless/

https://www.bufferbloat.net/projects/bloat/wiki/What_can_I_do_about_Bufferbloat

if you need to transfer a lot of files, it would be fast to tarball that shit up and then send it. Much faster I/O

I found a shit ton of packetloss on one of the uplink interfaces. Seems like a faulty cable. Once we swapped that I will try to test the connection with iperf again.
Thx for the help guys.

1 Like