[Olsr-dev] olsrd without link sensing
Henning Rogge
(spam-protected)
Mon Jun 23 19:16:33 CEST 2008
On Mon, Jun 23, 2008 at 18:40, Giovanni Di Stasi <(spam-protected)> wrote:
> Hi again.
> what I'd like to do is expressed well by the following passage of the rfc
> 3626:
>
> "If sufficient information is provided by the link-layer, this
> may be utilized to populate the local link set instead of HELLO
> message exchange."
Theoretically you can run OLSR completely on layer 2 (with MACs
instead of IP addresses).
> I've studied a bit the sources of olsrd, and this is what I got so far:
> I could, from inside my plugin:
>
> call olsr_stop_timer(ifp->hello_gen_timer) on my interface (there is just one
> interface in my case) to stop the hello generation.
ok.
> register a recursive event that, when triggered:
recursive event ?
> gets the information on the links from the layer 2 module;
>
> for every link to add:
>
> creates the link_entry structure; sets the addresses (local interface,
> remote interface and remote interface main address) and the local_if;
>
> adds the link with list_add_before
>
> set linkcost to 1;
Not good... you would loose the advantage of the LQ implementation (ETX).
> set the neighbor (the endpoint of the link) as mpr (setting is_mpr and
> was_mpr to true);
>
> for every link to remove:
>
> find the link
>
> calls olsr_expire_link_entry on that link
>
> Olsrd would be configured to use lq for measuring the link quality; the TC
> redundancy would be set to
LQs are measured by adding fields to the Hello packages... so this
might be a little bit more complicated.
> Is it gonna work?
>
> You mentioned the fact that olsrd is not thread safe. Does that constitute a
> problem when I do the aforementioned actions from inside a plugin event?
Depends on how your plugin is triggered.
If you run in the olsrd main-thread, you have to go back to the main
scheduler regularly.
Henning
--
"Wo kämen wir hin, wenn alle sagten, wo kämem wir hin, und niemand
ginge, um einmal zu schauen, wohin man käme, wenn man ginge." (Kurt
Marti)
More information about the Olsr-dev
mailing list