[Babel-users] Removing source-specific for older kernels [was: Higher CPU usage since 1.9.x leads to instability on slow devices]

Fabian Bläse fabian at blaese.de
Tue Jun 2 11:53:31 BST 2020


Hi,

While we do use IPv6 source specific routes, we don't use this feature in our network, because all routers are running kernels way newer than 3.11.
Therefore I would prefer the removal of this feature, if it improves the performance significantly without having to rework code for a feature that no one is using.

The removal of this feature also obsoletes the ability to create and change rules from babeld, doesn't it?
We once had an issue with this, because we typically use kernel table 10 as export table, but "first-table-numer" also starts at 10 by default.
This leads to babeld overriding kernel tables with numbers equal or higher than that, if enough source specific routes are existent.

Regards,
Fabian

On 02.06.20 12:14, Juliusz Chroboczek wrote:
>> To my eye, conflict_solution() [2] really stands out.
> 
> Thanks a lot to both of you.
> 
> That's the disambiguation code, due to Matthieu Boutier.  It's used for
> supporting source-specific routing in the case where the kernel doesn't
> support it:
> 
>   - for IPv4, it is always used for source-specific routing;
>   - for IPv6, it is used with kernels earlier than 3.11.
> 
> Now it turns out that:
> 
>   - people don't do source-specific with IPv4 (they use NAT instead);
>   - people have upgraded to 3.11 or later now.
> 
> In other words, this code shouldn't trigger in practice.  I have no idea
> why it triggers for you, perhaps you're running a very old kernel, perhaps
> there's a bug in the detection of the kernel version, or perhaps this part
> of the code triggers even when not needed.
> 
> Since this code is not used in practice, I'm thinking of removing it
> altogether, which will simplify the codebase and avoid this kind of issues
> in the future.  How do people feel about that?  To restate, the effect
> will be:
> 
>   - source-specific IPv4 routes will be ignored;
>   - source-specific IPv6 routes will be ignored on kernels before 3.11;
>   - no regression on BSD, which doesn't do source-specific in any case.
> 
> You will still be able to do IPv6 source-specific if you run a Linux 3.11
> or later.  If you have routers running old kernels, you'll need to ensure
> you're announcing a non-specific default route.
> 
> Please advise.
> 
> -- Juliusz
> 
> _______________________________________________
> Babel-users mailing list
> Babel-users at alioth-lists.debian.net
> https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/babel-users
> 

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <http://alioth-lists.debian.net/pipermail/babel-users/attachments/20200602/68facedf/attachment.sig>


More information about the Babel-users mailing list