Re: I-D Action: draft-gont-6man-slaac-renum-02.txt

Philip Homburg <pch-ipv6-ietf-6@u-1.phicoh.com> Mon, 09 March 2020 12:34 UTC

Return-Path: <pch-b9D3CB0F5@u-1.phicoh.com>
X-Original-To: ipv6@ietfa.amsl.com
Delivered-To: ipv6@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id BD49A3A0E77 for <ipv6@ietfa.amsl.com>; Mon, 9 Mar 2020 05:34:57 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.896
X-Spam-Level:
X-Spam-Status: No, score=-1.896 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_NONE=0.001] autolearn=ham autolearn_force=no
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 EQ4mUw1fg_8d for <ipv6@ietfa.amsl.com>; Mon, 9 Mar 2020 05:34:56 -0700 (PDT)
Received: from stereo.hq.phicoh.net (stereo.hq.phicoh.net [130.37.15.35]) (using TLSv1.2 with cipher ECDHE-RSA-CHACHA20-POLY1305 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 2554F3A0E8C for <ipv6@ietf.org>; Mon, 9 Mar 2020 05:34:54 -0700 (PDT)
Received: from stereo.hq.phicoh.net (localhost [::ffff:127.0.0.1]) by stereo.hq.phicoh.net with esmtp (TLS version=TLSv1.2 cipher=ECDHE-RSA-CHACHA20-POLY1305) (Smail #157) id m1jBHcL-0000FZC; Mon, 9 Mar 2020 13:34:45 +0100
Message-Id: <m1jBHcL-0000FZC@stereo.hq.phicoh.net>
To: ipv6@ietf.org
Subject: Re: I-D Action: draft-gont-6man-slaac-renum-02.txt
From: Philip Homburg <pch-ipv6-ietf-6@u-1.phicoh.com>
Sender: pch-b9D3CB0F5@u-1.phicoh.com
References: <158191113600.5878.10760004246455372944@ietfa.amsl.com> <35f3e826-81ce-d505-3c27-def73983d291@gmail.com> <CAMGpriVTPPcc9bKuKANp1BLnDLU2gmmeq9yfcNFm+sZaNtgoBg@mail.gmail.com> <m1j9lU7-0000JCC@stereo.hq.phicoh.net> <m1jA9CY-0000F8C@stereo.hq.phicoh.net> <299db2f5-3dad-ebe4-a5b4-76d1d6e942a1@si6networks.com> <m1jBGe0-0000KrC@stereo.hq.phicoh.net> <B3D51D07-134D-4F5D-BF12-6383FD2D79FF@employees.org>
In-reply-to: Your message of "Mon, 9 Mar 2020 12:53:05 +0100 ." <B3D51D07-134D-4F5D-BF12-6383FD2D79FF@employees.org>
Date: Mon, 09 Mar 2020 13:34:42 +0100
Archived-At: <https://mailarchive.ietf.org/arch/msg/ipv6/EFQKtYNNLI_L7vLq217aSXX-LUM>
X-BeenThere: ipv6@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "IPv6 Maintenance Working Group \(6man\)" <ipv6.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/ipv6>, <mailto:ipv6-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/ipv6/>
List-Post: <mailto:ipv6@ietf.org>
List-Help: <mailto:ipv6-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ipv6>, <mailto:ipv6-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 09 Mar 2020 12:35:08 -0000

> Yes, this certainly has the potential of decreasing robustness.
> You have just about 12 hours until the submission deadline for a
> better proposal!

Here is a sketch of how the algorithm could be improved.

My assuption is that the affected home routers send all information in one
RA, but some other routers split information over an unknown number of
RAs. The algorithm rapidly expires information in the first case, and 
takes longer in the second case.

The first part is to detect if all information is sent in one RA. For
the first n (currently 10) RAs received from a router, check if those RAs
advertise the same list of prefixes. If this is not the case then set a
SPLIT_RA to record this fact.

When an RA arrives and there are prefixes that were previously advertised
by the current router and are not in the current RA then
- if SPLIT_RA is set, deprecate the old prefixes if they were last seen at
  least as long as the router lifetime (if the router is not a default
  router then do nothing).
- if SPLIT_RA is not set and the prefix was last seen more than a short
  while ago (currently one minute) then set the preferred lifetime to
  a short timeout (current also one minute).

I prefer explicit timeouts over counting packets.

So far, I have been conservative when it comes to invalidating prefixes
(I just mark them deprecated). Setting the valid lifetime to the router
lifetime should be fine. Though I think it is better if higher level
protocols detect broken connections and take action.