Re: [babel] Restarting nodes and seqno requests

Toke Høiland-Jørgensen <toke@toke.dk> Mon, 30 April 2018 15:09 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 B9EC5126BFD for <babel@ietfa.amsl.com>; Mon, 30 Apr 2018 08:09:33 -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 X8Uh-WPXv77i for <babel@ietfa.amsl.com>; Mon, 30 Apr 2018 08:09:32 -0700 (PDT)
Received: from mail.toke.dk (mail.toke.dk [52.28.52.200]) (using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id DC8AA126B7E for <babel@ietf.org>; Mon, 30 Apr 2018 08:09:31 -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=1525100967; bh=7c4s/HbdqcmOClwDSvOKIE1a9TaZzYINjMRVSDsD+kw=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From; b=vykeY+4l0iDUxAZOSCqxIHfPdYCFxwKL1IB6MSn9jRntN3frgvtg0kzviGX+T6hib cnNiWPmtcL68PmXJHqDVm/s0G8+1Ptzgw1PAHKyV8bfDiC4wxd1CcTDaLKL5sfuV/l Eyz24jlgHdTau6PjpQf9xngXiAq+Awu1qBeixw7TlbEBWolmP2e4Q+meP4PnBL3J5E KqOTbBrxt68nAil9VboHjBaR6XF/hGyfcDbxXiQ0zlk7n4W1iAf3LnU2egJDwn4X0M ShB4kzHb96Jj8zxPn5o/pwuYp8rB+HY4CxTAMbzB4ISJ7qFKPtaASBgd89oR2pvRL5 Q7mWgbYSwKFUw==
To: Juliusz Chroboczek <jch@irif.fr>
Cc: babel@ietf.org
In-Reply-To: <87wowoyfxx.wl-jch@irif.fr>
References: <87po2h2b31.fsf@toke.dk> <874ljszz54.wl-jch@irif.fr> <87k1so3kqw.fsf@toke.dk> <87wowoyfxx.wl-jch@irif.fr>
Date: Mon, 30 Apr 2018 17:09:26 +0200
X-Clacks-Overhead: GNU Terry Pratchett
Message-ID: <87efiw3f4p.fsf@toke.dk>
MIME-Version: 1.0
Content-Type: text/plain
Archived-At: <https://mailarchive.ietf.org/arch/msg/babel/znFLApS71LZMj3FpjptI2V0LEsc>
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 15:09:34 -0000

Juliusz Chroboczek <jch@irif.fr> writes:

>> No, don't think so, it's just an implementation issue: Bird currently
>> won't resend the same request until it expires after two seconds. So
>> when the triggered update arrives with S'' (that is still too low), it
>> won't ask for another seqno increase. But that is a straight-forward
>> fix, and with that it converges reasonably quickly (as long as the seqno
>> is not too high I guess...)
>
> Not sure about that -- it will cause extra background traffic, which may
> have unintended consequences.  Note that seqnos are 16 bits, so converging
> to a feasible seqno takes 16384 packets on average, 32767 worst case.

Yeah, suppose that would be quite a bit of traffic...

> I'd recommend:
>
>   - 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, the
top 32 bits are always zero (for compatibility with the notion of router
ID that Bird uses for other protocols). 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?

>   - document the issue;
>   - 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? ;)

> 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, since I have a nagging suspicion that not
everyone will read the applicability statement before implementing it... ;)

-Toke