Skip to contentSkip to conversation

path selection

B.A.T.M.A.N. axel 2 participants 2 messages Jan 8, 2007 – Jan 9, 2007

lore
Share & tools
lore

axel

author
#0 lore raw

Hi,
there is also one concern bothering my mind since a while.

I think the protocol currently establishes routes between nodes, but optimizes them the wrong way around. More concrete, the originatorMessages (OGMs) initiated by each node install routing information for DOWN-link traffic in the mesh which are actually optimized for UP-link traffic.

The following scenario and attached figure (is of course a little bit constructed but it) may illustrate this. The figure shows 4 nodes (A,b,c,D) and 4 existing links between them A-b, b-D, A-c, and c-D - thus, two potential routes between node A and D. The links b-D and c-D are symmetric, perfect links with 0% packet loss. The links A-b and A-c are asymmetric links with 0% packet loss for A->b and A<-c, but 50% loss for A<-b and A->c (See attached figure). However, each of the 4 links can be assumed as a bidirectional link since at least every second OGM will reach the corresponding link neighbor.
Now, node A would receive 100% of the OGMs initiated by D and rebroadcasted via node c but wouldreceive only 50% via node b. Therefore A would select c as its best nighbor towards D (obversely D would select b as its best neighbortowards A).
However, in this case, that is not the best choice since every second packet send via A-c-D needs to be retransmitted on the link A-c, which would not be necessary if send via A-b-D .

Don't know if you agree, ...is that reasonable? Also I don't have any simple approach in mind to solve this but it might be worth to reconsider.

ciao,
axel

#1 lore raw

Hi,

Quoted 5 lines

However, in this case, that is not the best choice since every second packet send via A-c-D needs to be retransmitted on the link A-c, which would not be necessary if send via A-b-D .
Don't know if you agree, ...is that reasonable? Also I don't have any simple approach in mind to solve this but it might be worth to reconsider.

I think you made a good point but I even would go a step further. Consider
this: A downloads a file from D thus using D-b-A (with 50% packet loss). But each packet has to be acknowledged and every second acknowledgement is also lost (via A-c-D) . That is why D will resend every second packet and the throughput will suffer even more.

I think we should find a solution here but up to now I don't have a clue how to do it.

Regards,
Marek