Re: Persistent loops when mixing rtgwg-enterprise-pa-multihoming and rtgwg-dst-src-routing

Jen Linkova <furry13@gmail.com> Mon, 30 October 2017 05:01 UTC

Return-Path: <furry13@gmail.com>
X-Original-To: rtgwg@ietfa.amsl.com
Delivered-To: rtgwg@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 2FE9B13FBB2 for <rtgwg@ietfa.amsl.com>; Sun, 29 Oct 2017 22:01:09 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.449
X-Spam-Level:
X-Spam-Status: No, score=-2.449 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
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 beuAgBINGvtx for <rtgwg@ietfa.amsl.com>; Sun, 29 Oct 2017 22:01:07 -0700 (PDT)
Received: from mail-lf0-x230.google.com (mail-lf0-x230.google.com [IPv6:2a00:1450:4010:c07::230]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id B9DBD13F647 for <rtgwg@ietf.org>; Sun, 29 Oct 2017 22:01:06 -0700 (PDT)
Received: by mail-lf0-x230.google.com with SMTP id w21so13458692lfc.6 for <rtgwg@ietf.org>; Sun, 29 Oct 2017 22:01:06 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=g1y9juUg47ivJZ2wrvH+Rba0zURqPag5sVTDd9DOHog=; b=mWZ3KDXHWsbC1MGmg8zklSNCmTaI3q2uAR97ZSSnwJqNWaJnMWPf4iSx40zA3YjUCs iwbyFjIKGWOpbj5MATn8ymuGVpxcST4PCSaliNfHAszvHWWLnxOEaC5fCGqLfUUcGeaG 7r0qMYFTnyBO3VRtS/zhjloG6REg4Yt7PyLS9M6ODuvyDQpI4SUhmoip56c8udCa84ea NpcOw+lM4Vi2sLiK8Fub4UBWmM6GxmxOFYplxheusPxnDGUTDiLsCmubVYlR6mgfPqDT g+3WBTsuistPYytyGjxrQr+g4Gn/JpDw+DE5B4pvMUQwuJ2oO7F4P0JkIctQd+umaLPp KrJQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=g1y9juUg47ivJZ2wrvH+Rba0zURqPag5sVTDd9DOHog=; b=GC2E44XAkF3ejMjE5IvvgygqKns+IRoJ8Csf0S33wcqf1hOFLzqO/Z9B/XJSWC/Ns9 O9nDEMdPhydPzfIbrKjroUtBpaIRWDS9qRHLQT8Gn4UgqSoltlmgpJx4m/nu5BvfvisE tsTVrQC10sR4OcgrIX2yOdVDDgNaAKk6WocRbcKbiIi44SGd4MMLtukTdJ9odkXRX4kG F/jFEEypDRH1I+9YY8ubG2b7JdoekqypT835HYOBDyVzFe47e/RD17hxoiPk5e4IhqQb lYaeyu8f1+7olwa7hDvrvI+2FwWImuIVo6he9za/iYH8y+PGri41E8F+zcXdjN3UP5/d 62aA==
X-Gm-Message-State: AMCzsaUgyR8/YeVwgkAM6WUEbrgyswZFPTBh/s5NM+aAyLs7Sh/igKyN Gk94/yV51yHXad9Qmq+npBWUi1AdM/XhecsV40Y=
X-Google-Smtp-Source: ABhQp+S/vA0a1nXsoQaDyMmnZKzeYCU/vTFyHf8+JRT8MP9f/0g+CO8AcxEp98KiSe8YyIrKHW1+xunyw3TCj51CvGc=
X-Received: by 10.46.66.202 with SMTP id h71mr2922443ljf.140.1509339664975; Sun, 29 Oct 2017 22:01:04 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.25.67.79 with HTTP; Sun, 29 Oct 2017 22:00:44 -0700 (PDT)
In-Reply-To: <MWHPR05MB2829E9BC3CA69A4BF380F568A9BE0@MWHPR05MB2829.namprd05.prod.outlook.com>
References: <20170719172913.GU773745@eidolon> <20170720074132.GW773745@eidolon> <MWHPR05MB282950D357E8B6597685E828A9B90@MWHPR05MB2829.namprd05.prod.outlook.com> <9BF40E52-63D7-4B04-815A-64F863241010@irif.fr> <MWHPR05MB2829E9BC3CA69A4BF380F568A9BE0@MWHPR05MB2829.namprd05.prod.outlook.com>
From: Jen Linkova <furry13@gmail.com>
Date: Mon, 30 Oct 2017 16:00:44 +1100
Message-ID: <CAFU7BARhjsEDE10qEFFMfTbgpD5af0YoWJUh88OrsUpd412TFw@mail.gmail.com>
Subject: Re: Persistent loops when mixing rtgwg-enterprise-pa-multihoming and rtgwg-dst-src-routing
To: Chris Bowers <cbowers@juniper.net>
Cc: Matthieu Boutier <boutier@irif.fr>, Anton Smirnov <as@cisco.com>, "rtgwg@ietf.org" <rtgwg@ietf.org>, Jen Linkova <furry@google.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Archived-At: <https://mailarchive.ietf.org/arch/msg/rtgwg/3DQiY7t18Jj5imeqnlDn-wyBTUo>
X-BeenThere: rtgwg@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Routing Area Working Group <rtgwg.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/rtgwg>, <mailto:rtgwg-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/rtgwg/>
List-Post: <mailto:rtgwg@ietf.org>
List-Help: <mailto:rtgwg-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/rtgwg>, <mailto:rtgwg-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 30 Oct 2017 05:01:09 -0000

On Fri, Jul 28, 2017 at 3:55 AM, Chris Bowers <cbowers@juniper.net>; wrote:
> With the proposed generalization of rule #3, together with a clarification that the source-prefix-scoped
> forwarding table should be chosen based on longest source prefix match with the source address of the packet,
> I think we are in agreement that the forwarding behavior described in rtgwg-enterprise-pa-multihoming
> Is identical to that described in rtgwg-dst-src-routing.

I've just submitted -02 version of
https://datatracker.ietf.org/doc/draft-ietf-rtgwg-enterprise-pa-multihoming/
which addresses this persistent loop issue.

(The rule #3 is made more generic and mentions  "less specific -> more
specific source prefix" entries propagation.
The next-hop selection rule is now looks the following way:

"The forward tables produced by this process are used in the following
way to forward packets.

1) Select the most specific (longest prefix match)
source-prefix-scoped forwarding table that matches the source address
of the packet (again, the unscoped forwarding table is considered to
be scoped to ::/0).
2) Look up the destination address of the packet in the selected
forwarding table to determine the next-hop for the packet.
"

I've also updated the example in the section 3 so the unscoped table
is now considered to be scoped to ::/0.

Maybe we need to update the examples in include the case of one table
being scoped to /48 and another one to be scoped to /32...

> -----Original Message-----
> From: Matthieu Boutier [mailto:boutier@irif.fr]
> Sent: Thursday, July 27, 2017 11:41 AM
> To: Chris Bowers <cbowers@juniper.net>;
> Cc: David Lamparter <equinox@diac24.net>;; rtgwg@ietf.org; Anton Smirnov <as@cisco.com>;; Jen Linkova <furry@google.com>;
> Subject: Re: Persistent loops when mixing rtgwg-enterprise-pa-multihoming and rtgwg-dst-src-routing
>
> Hi,
>
>> Does this generalization of rule #3 resolve the discrepancy ?
>
> It's not enough, because if you have overlapping source prefix, you'll need to change the following.
>
>    1.  If the source address of the packet matches one of the source
>        prefixes, then look up the destination address of the packet in
>        the corresponding source-prefix-scoped forwarding table to
>        determine the next-hop for the packet.
>
>    2.  If the source address of the packet does NOT match one of the
>        source prefixes, then look up the destination address of the
>        packet in unscoped forwarding table to determine the next-hop for
>        the packet.
>
> Basically, you'll have to replace these two points by only one saying:
> "order your entries by prefix specificity (longest match first)".
>
> And… I have the feeling that the routing part is overcomplicated.  It should be as simple as: "put a SADR routing protocol on your network".
> And you're done.
>
> The draft discusses a lot about how to progressively deploy SADR in the network.  This should be put in a "progressive deployment" section, which would essentially say:
>
>   - have a connected SADR backbone including the edge routers,
>
>   - announce a default route from the backbone to attract packets.
>
> It's the role of the routing protocol to be backward compatible with the legacy (non-SADR) version.
>
> Also, about routing tables, section 3 clearly shows that if a packet matches two routes, it should follow the one with the most specific destination.  All the section 3 is about what to do if we don't have native destination-first SADR tables but only policy routing.  I believe it's the role of the routing protocol's implementation to deal with that (that's what we do since 2013).  Then section 3 could probably just be a reference to David's draft, since it only concerns SADR/dst-src/source-specific/etc. routing protocol implementations.
>
> Matthieu
>
> _______________________________________________
> rtgwg mailing list
> rtgwg@ietf.org
> https://www.ietf.org/mailman/listinfo/rtgwg



-- 
SY, Jen Linkova aka Furry