Re: [babel] Restarting nodes and seqno requests

Toke Høiland-Jørgensen <toke@toke.dk> Mon, 30 April 2018 19:21 UTC

Return-Path: <toke@toke.dk>
X-Original-To: babel@ietfa.amsl.com
Delivered-To: babel@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 98EEA12708C for <babel@ietfa.amsl.com>; Mon, 30 Apr 2018 12:21:10 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.001
X-Spam-Level:
X-Spam-Status: No, score=-2.001 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=toke.dk
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id cj0t6Ml4RGfe for <babel@ietfa.amsl.com>; Mon, 30 Apr 2018 12:21:08 -0700 (PDT)
Received: from mail.toke.dk (mail.toke.dk [IPv6:2001:470:dc45:1000::1]) (using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 0B9841200B9 for <babel@ietf.org>; Mon, 30 Apr 2018 12:21:08 -0700 (PDT)
From: Toke Høiland-Jørgensen <toke@toke.dk>
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=toke.dk; s=20161023; t=1525116060; bh=DFnAIw7dMuuxuQ10lTL3UIk5cWetjHkkDnA1ybOrSsc=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From; b=b+BYpKzsPavZExc928BEO98EWLpIuTGFK215a5iZvZdGAc8Pxiy50WCuHXcXLujxK qp7AglJymU9dhGy1qFFmiAhrzhHOPYEF9+Ocd4SDKDXy0ANkcgw1jD98cuDsB5F9Ud pxczORy+d60FM1rKniE9wMFF6o2eKCw3q+yBktJZ+uMk4kKwCaojntGiIQvCs1a0z+ /mij5pbg0LXFBBxBcD+g0i76UlSY26pXJAO9kKtBXQ3OqhsP+VSO+/oAOS8+QCJfc6 uX/4lS+gSPVGjQiH1sGoO1akAwKrU1UUNUF9pBB/0wL4yP1ey6Lsh75Noe95llf9im hAaS13Io44xEQ==
To: Juliusz Chroboczek <jch@irif.fr>
Cc: babel@ietf.org
In-Reply-To: <87po2gy48k.wl-jch@irif.fr>
References: <87po2h2b31.fsf@toke.dk> <874ljszz54.wl-jch@irif.fr> <87k1so3kqw.fsf@toke.dk> <87wowoyfxx.wl-jch@irif.fr> <87efiw3f4p.fsf@toke.dk> <87po2gy48k.wl-jch@irif.fr>
Date: Mon, 30 Apr 2018 21:20:51 +0200
X-Clacks-Overhead: GNU Terry Pratchett
Message-ID: <87tvrs33ho.fsf@toke.dk>
MIME-Version: 1.0
Content-Type: text/plain
Archived-At: <https://mailarchive.ietf.org/arch/msg/babel/TaksrnUpwjkIdtEsfyfa36CyAqk>
Subject: Re: [babel] Restarting nodes and seqno requests
X-BeenThere: babel@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: "A list for discussion of the Babel Routing Protocol." <babel.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/babel>, <mailto:babel-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/babel/>
List-Post: <mailto:babel@ietf.org>
List-Help: <mailto:babel-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/babel>, <mailto:babel-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 30 Apr 2018 19:21:10 -0000

Juliusz Chroboczek <jch@irif.fr> writes:

>>> - add an option for picking a different router-id each time (but
>>> don't make it the default, since it makes management more difficult
>>> without stable router-ids);
>
>> Hmm, actually, since Bird sets its router ID from an IPv4 address,
>
> What if there's no IPv4 address? What if two IPv6 routers have the
> same IPv4 address (because they're in different NAT domains)? (FYI,
> babeld uses the first MAC address if finds that has the local bit
> unset, and falls back to random if no such address is found.)

Well, usually the router ID is manually configured. If not, it'll be the
lowest IP on a non-loopback interface. I have no idea what happens if
there are none... There is quite a bit more configuration needed to get
a basic babel node running with bird than with babeld in general; you'll
need a couple dozen lines of config...

>> My implementation of the randomisation only randomises the top 32 bits,
>> so there's still a stable identifier. Maybe it would make sense to
>> default to this behaviour?
>
> That would break the optimisation of using the low bits of the IPv6
> address to encode the router-id.

Bird doesn't do that anyway.

> I'm not sure how you'd avoid router-id collisions, though.

By chance? With 32 bits of randomness, even in a moderately sized
network the chance of collision is quite low (which means that it will
not happen until it is the most inconvenient, of course...) :)

>>> - bug the BIRD guys about implementing persistent storage; two octets is
>>>   all we're asking for.
>
>> Yeah, 16 bits should be enough for everyone, right? ;)
>
> You could always encode it in JSON if you want to use more space.

I was actually thinking I should add JSON support to Bird :D

>>> Should I document the issue in 6126bis?  I'll definitely add a paragraph
>>> in applicability-statement.
>
>> Hmm, documenting it *somewhere* is needed, certainly. Maybe putting it
>> into 6126bis is a good idea,
>
> Yeah. I'll try to find some time to make a new revision tomorrow, if
> you'd like to send me a patch, I'd be grateful. (No promise to keep
> your wording, though.)

No promises to send any either ;)

-Toke