[olsr-dev] LQ code enhancements

onelektra (spam-protected)
Tue Mar 1 18:43:10 CET 2005


Hi!

>> You are shure that was a good idea?
> 
> 
> Hmmm. Well, my idea (The idea to look at UDP packets and not at the 
> individual messages inside the UDP packets. Not the idea to put more 
> than one message into a single UDP packet.) was inspired by the fact 
> that we thus potentially have more sequence numbers to look at and are 
> able to detect packet loss earlier, possibly before the next HELLO 
> message is due.

I see.

> 
> As far as I can see we do not lose anything by doing so, do we? Even if 
> the LQ code went through the UDP packet and only looked at the HELLO 
> messages within, the HELLOs would still be transmitted together with 
> other OLSR messages in the same UDP packet. This behaviour has nothing 
> to do with the LQ code.

No, you dont loose anything.

> But I think that I can see your point. Big UDP packets get lost more 
> easily and, hence, HELLOs might be lost although they're pretty small 
> simply because they are packed with other OLSR messages into a single 
> big UDP packet. And, to make things worse, the UDP packets are 
> broadcasts, which are more prone to packet loss than unicasts, as there 
> aren't any acknowledgements for broadcasts. Right?

Exactly. Well, broadcasting it is part of the LQ-idea - but letting the 
hello's be part of a UDP-transmission with other payload makes things 
unpredictable.


> If this is a problem, then we should think about configuration options 
> along the lines of "LonelyHello", "LonelyTc", etc. that force HELLOs, 
> TCs, etc. to be sent in their own individual UDP packet separate from 
> any other messages. This shouldn't be much programming effort. Simply 
> flush the output buffer before adding a HELLO, a TC, etc., add the 
> HELLO, the TC, etc. to the buffer, flush the output buffer again.

Yes, please. Having lonelyTC's as well is a maybe good idea - in a big 
mesh you have increasingly big TC-messages. If they need a lot of luck 
to be successfully transmitted cause you pack in more and more in every 
UDP-transmission things get pretty messy soon - route flapping etc.

cu elektra



More information about the Olsr-dev mailing list