Discussion:
Accessing OLSR parameters
Shyam B
2013-09-20 08:49:04 UTC
Permalink
Hello All,

OLSR is working very stable. I am running it on network of RPI's and
TP-Link routers. So far so good. I am using OLSR only as part of my
project. Will try to keep post to the point, here are my questions.

1) I run olsrd deamon by using [sudo olsrd -f /etc/olsrd/olsrd.conf -d 1],
this starts the deamon in the terminal and shows me all interesting
parameters, like LQ, ETX, Neighbor Link Quality in real-time.
a) However, I want to use python code to get access to these parameters
OLSR provides. Is there an API I can directly access, or something I can
make use of in real-time. An neat example will be helpful.
b) I would like to run this deamon in silent mode

2) Consider node A entering the region of node B. They update their routing
tables. Since, I am doing this for mobile nodes, I would like the update to
be as fast, smooth and (as efficient) as possible [in this order]. Which
parameter(s) should I consider changing in olsrd.conf file. Currently it
takes, upto 15 seconds for listing in route -n, plus 40 seconds to bring
ETX from infinity to < 2.0. I have tried changing the hello/TC intervals,
as I read from RFC, however, I am not able to see an immediate difference.
Is it still fine to have separate config values on all nodes, or should
they be the same for best performance. For now, on ALL nodes, I have the
following config:

# Hello interval in seconds(float)
HelloInterval 5.0

# HELLO validity time
HelloValidityTime 40.0

# TC interval in seconds(float)
TcInterval 2.0

# TC validity time
#TcValidityTime 256.0

# MID interval in seconds(float)
#MidInterval 18.0

# MID validity time
#MidValidityTime 324.0

# HNA interval in seconds(float)
#HnaInterval 18.0

# HNA validity time
#HnaValidityTime 108.0

I am sure experienced users/ developers can help me in this.
Yours inputs on this will be appreciated. Thank you!
--
Best Regards,
Shyam
Henning Rogge
2013-09-20 08:56:10 UTC
Permalink
Post by Shyam B
Hello All,
OLSR is working very stable. I am running it on network of RPI's and
TP-Link routers. So far so good. I am using OLSR only as part of my
project. Will try to keep post to the point, here are my questions.
1) I run olsrd deamon by using [sudo olsrd -f /etc/olsrd/olsrd.conf -d
1], this starts the deamon in the terminal and shows me all interesting
parameters, like LQ, ETX, Neighbor Link Quality in real-time.
a) However, I want to use python code to get access to these
parameters OLSR provides. Is there an API I can directly access, or
something I can make use of in real-time. An neat example will be helpful.
b) I would like to run this deamon in silent mode
You can use the Txtinfo or JSONinfo plugin for this. They open a port
where you can query the internal databases of the routing agent.
Post by Shyam B
2) Consider node A entering the region of node B. They update their
routing tables. Since, I am doing this for mobile nodes, I would like
the update to be as fast, smooth and (as efficient) as possible [in this
order]. Which parameter(s) should I consider changing in olsrd.conf
file. Currently it takes, upto 15 seconds for listing in route -n, plus
40 seconds to bring ETX from infinity to < 2.0. I have tried changing
the hello/TC intervals, as I read from RFC, however, I am not able to
see an immediate difference. Is it still fine to have separate config
values on all nodes, or should they be the same for best performance.
Try to remove ALL of the timing settings, change them only if you really
think you need them. In fact, the less configuration you need the better.

Another reason for this "slow ramp up" of ETX is the fixed 32 seconds
queue the ETX metric is working on. Unless you have a highly mobile
network it should be no problem for you.

Henning Rogge
--
Diplom-Informatiker Henning Rogge , Fraunhofer-Institut für
Kommunikation, Informationsverarbeitung und Ergonomie FKIE
Kommunikationssysteme (KOM)
Fraunhofer Straße 20, 53343 Wachtberg, Germany
Telefon +49 228 9435-961, Fax +49 228 9435 685
mailto:***@fkie.fraunhofer.de http://www.fkie.fraunhofer.de
Teco Boot
2013-09-20 09:03:09 UTC
Permalink
Post by Henning Rogge
Another reason for this "slow ramp up" of ETX is the fixed 32 seconds
queue the ETX metric is working on. Unless you have a highly mobile
network it should be no problem for you
Hmm. The current ETX works for stationary networks quite well, for mobile networks it doesn't work that good. Convergence time higher than couple of seconds results in bad service for users. That's why I am interested in using the NL80211 LQ plugin.

Teco
--
Olsr-users mailing list
Olsr-***@lists.olsr.org
https://lists.olsr.org/mailman/listinfo/olsr-users
Shyam B
2013-09-20 09:12:16 UTC
Permalink
Thanks Henning,

1) Can you tell me, once I enable the plugin (textinfo), how do I go
further to query a port, what parameter to pass to get the result from that
port. Is there any example to show this?

2) What do you mean by saying 'remove ALL' settings? Do you mean I delete
these settings from OLSRD.conf file? Why is that? Can you tell me which
specific parameter governs for faster updation of routing table?

3) Can you tell me a bit more about this 32 seconds? Why is this fixed to
32seconds and what can I do to improve upon discovery timing? I basically
use flying object with olsr, so would like to have a faster update.

Thanks again.
--
Best Regards,
Shyam
Teco Boot
2013-09-20 09:18:05 UTC
Permalink
3) Can you tell me a bit more about this 32 seconds? Why is this fixed to 32seconds and what can I do to improve upon discovery timing? I basically use flying object with olsr, so would like to have a faster update.
You would need L2 info into olsr. This has my interest.
Do you have resources (time...) to get nl80211 pluging running?
If so, I'll help.

Teco
Henning Rogge
2013-09-20 09:19:38 UTC
Permalink
Post by Shyam B
Thanks Henning,
1) Can you tell me, once I enable the plugin (textinfo), how do I go
further to query a port, what parameter to pass to get the result from
that port. Is there any example to show this?
Look into the example configuration files and the README in the txtinfo
folder.
Post by Shyam B
2) What do you mean by saying 'remove ALL' settings? Do you mean I
delete these settings from OLSRD.conf file? Why is that? Can you tell me
which specific parameter governs for faster updation of routing table?
Start with files/olsrd.conf.minimal_freifunk as an example... just add
the parameters you NEED to change.
Post by Shyam B
3) Can you tell me a bit more about this 32 seconds? Why is this fixed
to 32seconds
When you look into the include file of the etxff metric
(src/lq_plugin_default_ff.h) you will find a constant. This is the
number of 1-second buckets the etxff metric uses to average the packet loss.
Post by Shyam B
and what can I do to improve upon discovery timing? I
basically use flying object with olsr, so would like to have a faster
update.
Okay... flying nodes. I assume in an "urban environment" (lots of
obstacles, lots of corners to fly around)?

I would suggest starting with decreasing the Hello interval and validity
time. Instead of one Hello every 2 seconds and a validity of a link of
20 seconds, you could divide both by 4, 5 or 10.

Do not use a TC interval smaller than the Hello interval.

It might also be necessary for you to change the code of the etxff
metric or (as Teco Boot suggested) try out a linklayer based metric.

Henning Rogge
--
Diplom-Informatiker Henning Rogge , Fraunhofer-Institut für
Kommunikation, Informationsverarbeitung und Ergonomie FKIE
Kommunikationssysteme (KOM)
Fraunhofer Straße 20, 53343 Wachtberg, Germany
Telefon +49 228 9435-961, Fax +49 228 9435 685
mailto:***@fkie.fraunhofer.de http://www.fkie.fraunhofer.de
Loading...