You are here

Distance Parameter revisited - Multiple Nodes, Multiple Distances

2 posts / 0 new
Last post
k1ky
k1ky's picture
Distance Parameter revisited - Multiple Nodes, Multiple Distances
I had a question come up the other day that I don't remember if this has been specifically covered.

If, let's say we have a node A that connects to a number of stations at varying distances, we know that we set it to the furthest node's distance, we'll call node C.  What is the recommendation for the closer nodes settings for distance?  Do we set them ALL to the furthest setting to match or do we set, we'll call it node B closer to it's  actual distance back to A, which could be a shorter value than the distance between A and C?

I believe this is only a "timeout" value?  

Suggestions and discussion ?
 
AE6XE
AE6XE's picture
distance setting
The distance setting is used to calculate the "ack timeout" in the 802.11 protocol.  This 'ACKnowledgement' is a return packet that says, "I received your data successfully".    Here's a write-up I found from a google to elaborate:

"ACK Timeout: Clearly if the ACK timeout is shorter than the time it takes for the end of the last data packet (+ SIFS) to propagate to the receiver + the start of the ACK for that packet to propagate back to the sender, then the sending MAC will assume that the packet has been lost and will unnecessarily retransmit the data packet. The retransmitted packet will end up colliding with the ACK that is on its way back, inducing the back-off part of the protocol thus reducing throughput. If, conversely, the ACK timeout is set too long, the transmitter waits unncesessarily long before retransmitting any lost frames and thus reduces the throughput of the link (more important as the bit error of the environment increases.)"

ref:  http://www.air-stream.org/technical/ack-timeouts-and-effects-distance-links

Since there is only 1 distance value to communicate with all neighbors, it should be the farthest mesh node the self-node is communicating with (routing application data to) on a regular basis.   The value is based on this criteria, and would only match another node's setting if they both had the same criteria.    

OLSR and other protocols in use for an idle link generally "broadcast" packets intended for all neighbors to hear (sent out lowest common link rate) and are not using this ACK timeout.  If the farthest node away is another client that your node has established a link with, but you never or rarely ever directly talk to or route data though that node, then it should be optimal to use a shorter distance to the nodes you do talk with.

Note, it is much better to be over rather than under.  when over, there is only a performance penalty if and when a packet is lost.  If distance is too short, there is a penalty for probably most, maybe all packets, that expect an ACK back.   We're continually sending all the data packets twice.    

Joe AE6XE

 

Theme by Danetsoft and Danang Probo Sayekti inspired by Maksimer