[Battlemesh] ipv6 prefix delegation in layer 3 mesh networks

Juliusz Chroboczek jch at pps.univ-paris-diderot.fr
Thu Feb 11 23:53:28 CET 2016

> Maybe we could create a new message type in the protocol or extend
> something like HNA messages with one bit of information about the
> willingnes of delegation.

Right, that makes sense.

The issue here is that you have a feedback loop:

  - routing protocol announces locally connected and delegated prefixes
  - locally connected prefixes are obtained by snooping the routing protocol

and you need to break the loop somehow.  You break it by adding a bit of
information -- this prefix was obtained from the configuration protocol,
don't use it for configuring addresses.

You'll be interested to know that the very first versions of the Homenet
protocol worked similarly.  After almost a year long flamewar, we decided
that this is too fragile.  We prefer to have a clean layering:

  - routing protocol annoucnes locally connected and delegated prefixes;
  - configuration protocol is completely standalone.

I agree that this is wasteful, since we're basically announcing delegated
prefixes twice, once over the configuration protocol and once over the
routing protocol.  But there are major advantages:

  - the configuration protocol is routing-protocol-agnostic, it can work
    with any routing protocol;
  - the configuration protocol doesn't depend on the routing protocol, so
    if the routing protocol has a glitch, no renumbering is necessary;
  - there is only loose coupling between the two protocols, so they can
    be implemented by distinct groups of developers, which is the way the
    free software community likes to work.

Philipp, I am now convinced that having your configuration protocol snoop
the routing protocol is a big mistake, one that we've managed to avoid.
Please take the time to think it over.

(Full disclosure -- I realise that it's more fun to work on your own
protocol, but I hope you'll decide that it's more productive to help
making HNCP work well in mesh networks.  The benefits would be huge -- the
same configuration protocol would be used in community meshes and in
commercial home routers, with seamless interoperability between the two

-- Juliusz

More information about the Battlemesh mailing list