[manet] Re: A partial response to <Re: Review draft-perk ins-manet-aodvv2-05>

Henning Rogge <[email protected]> Thu, 24 Jul 2025 18:54:53 +0200
Newsgroups gmane.ietf.manet
Message-ID <CAGnRvupLgrBymcL5avVAEhKwXWEY7k3dEHo9Z7hN4AydKdjwHA@mail.gmail.com>
On Thu, Jul 24, 2025 at 6:37 PM Juliusz Chroboczek <[email protected]> wrote:
>
> > For the benefit of the uninitiated (myself, possibly others), can you explain
> > what the default-to-self hack is? (Or provide a reference).
>
> It was explained to me by Henning.  I believe it is due to Henning, he'll
> correct me if I'm wrong.

Perfect explanation...

> Henning found a way to implement a large subset of AODV in userspace.  My
> reaction to it was "it's a brilliant hack", to which Henning replied in
> his typically modest way "I don't know if it's brilliant, but it's
> certainly a hack".  So, with Henning's permission, I call it the
> "deault-to-self hack".

I like the name, I might steal it ;)

> In Henning's approach, the AODV implementation sets up a TUN interface.
> Initially, there is a single default route pointing at the TUN interface,
> and no other routes.  When a data packet arrives, it gets forwarded to the
> TUN interface, and handled by the AODV implementation.
>
> Over time, the AODV implementation populates the routing table, and so
> only packets to unknown destinations get routed to the AODV
> implementation.  Hence, the implementation gets the performance of native
> routing for known destinations, and slow-path userspace processing for
> unknown destinations only.
>
> Henning's solution is brilliant, but nobody has a doubt that it is a hack.
> Userspace receives raw IP packets, so it needs to duplicate all of the IP
> processing that's being done in the kernel.  It also has some limitations,
> which I don't recall right now, that prevented Henning for implementing
> the whole o AODV
>
> However, if somebody were serious about AODV implementation, Henning's
> route-to-self hack could serve as a basis for a proper user/kernel
> interface suitable for AODV.

The paper that Charly forwarded uses a nftable/iptables rule that
redirects to userspace... different than my idea but similar.

My reason not to implement AODV (1 or 2) is that I have no clue how to
integrate a routing metric into it... and experiments with OLSRv1
showed that adhoc networks without routing metrics tend to be worse
than useless.

Hopcount metric... or "worst link first" strategy.

Henning Rogge

_______________________________________________
manet mailing list -- [email protected]
To unsubscribe send an email to [email protected]