Re: I-D Action: draft-ietf-rtgwg-dst-src-routing-05.txt

David Lamparter <equinox@diac24.net> Wed, 19 July 2017 16:17 UTC

Return-Path: <equinox@diac24.net>
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 AD0061287A5 for <rtgwg@ietfa.amsl.com>; Wed, 19 Jul 2017 09:17:55 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.9
X-Spam-Level:
X-Spam-Status: No, score=-1.9 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001, URIBL_BLOCKED=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 GqVwH3f6-Gpa for <rtgwg@ietfa.amsl.com>; Wed, 19 Jul 2017 09:17:53 -0700 (PDT)
Received: from eidolon.nox.tf (eidolon.nox.tf [IPv6:2a07:2ec0:2185::]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 8FE89124234 for <rtgwg@ietf.org>; Wed, 19 Jul 2017 09:17:53 -0700 (PDT)
Received: from equinox by eidolon.nox.tf with local (Exim 4.89) (envelope-from <equinox@diac24.net>) id 1dXrfb-0018Im-Hz; Wed, 19 Jul 2017 18:17:52 +0200
Date: Wed, 19 Jul 2017 18:17:51 +0200
From: David Lamparter <equinox@diac24.net>
To: rtgwg@ietf.org
Cc: as@cisco.com
Subject: Re: I-D Action: draft-ietf-rtgwg-dst-src-routing-05.txt
Message-ID: <20170719161751.GT773745@eidolon>
References: <150047947588.7403.17809842733211400926@ietfa.amsl.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
In-Reply-To: <150047947588.7403.17809842733211400926@ietfa.amsl.com>
User-Agent: Mutt/1.5.24 (2015-08-30)
Archived-At: <https://mailarchive.ietf.org/arch/msg/rtgwg/lBHJ6qRREJvuSEqsTqeALfmKb3U>
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: Wed, 19 Jul 2017 16:17:56 -0000

Hi rtgwg,


TL;DR:  new section on "testing for connectivity", says checking "can i
route this?" is fine while "what can i route?" probably ain't.


as you can see, I've posted an updated version of:

On Wed, Jul 19, 2017 at 08:51:15AM -0700, internet-drafts@ietf.org wrote:
>         Title           : Destination/Source Routing
>         Authors         : David Lamparter
>                           Anton Smirnov
> 	Filename        : draft-ietf-rtgwg-dst-src-routing-05.txt

Unlike -04, this is not a no-change refresh, though it only extends and
elaborates further.  Changes are as follows:

- moved translation algorithms for policy-based routing implementations
  and no-backtracking into an appendix;  also added a reference to
  Matthieu's and Juliusz's paper on this topic (which is far more
  detailed than I'd want to take this in an IETF draft).

- janitorial stuff; acknowledgements.  If you think it's missing an
  acknowledgement with your name, please ping me.

- added 2 use case sections, from input at this IETF
  - 2.4.  Walled-garden Enterprise services
  - 2.5.  Information Source for Neighbor Management

- added section under Applicability To Specific Situations:
  - 5.4.  Testing for Connectivity Availability

I think only the last change could be contentious;  I'd like to ask if
there is dissent on this.  Here's the added text:

> 5.4.  Testing for Connectivity Availability
>
>    There are situations where systems' behaviour depends on the fact
>    whether "connectivity" is available in a broad sense.  These systems
>    may have previously tested for the existence of a default route in
>    the routing table.
>
>    Since the default route may now be qualified with a source prefix,
>    this test can fail.  If no additional information is available to
>    qualify this test, systems SHOULD test for the existence of any
>    default route instead, e.g. include routes with default destination
>    but non-default source prefix.
>
>    However, if the test can be associated with a source address or
>    source prefix, this data SHOULD be used in looking up a default
>    route.  Depending on the application, it MAY also be useful to -
>    possibly additionally - consider "connectivity" to be available if
>    any route exists where the route's source prefix covers the prefix or
>    address under consideration, allowing arbitrary destination prefixes.
>
>    Note though that this approach to routing SHOULD NOT be used to infer
>    a list of source prefixes in an enumerative manner, or even to guess
>    domain information.  Specifically, if an operator uses more specific
>    source prefixes to refine their routing, the inferred information
>    will provide bogus extraneous output.  This is distinct from the
>    connectivity tests mentioned above in that those actually inquire the
>    routing system, unlike domain information or enumeration, which is
>    higher-layer application information.

This is somewhat motivated by the enterprise PA multihoming &
conditional RA drafts.  To be clear here, I'm very happy with the use
these drafts make of the SADR routing information.  (Hence also the
addition of section 2.5.)  This is explicitly making use of routing
information in a routing context, answering "can I route this?".  What
I'd like to *not* see is using this routing information to guess at
things that better had their own information propagation mechanism.

This notably includes trying to enumerate available source prefixes.
Putting the question as "What can I route?" does not match routing
philosophy - there are reasons to aggregate and deaggregate routes for
routing purposes.  If this breaks the application, that's the point
where I'll be arguing, well, you're using it wrong / should be using
your own channel.

To be even more specific on PA multihoming, I'm saying: someone or
something has to decide what prefix(es) you'll be putting on a link
anyway.  You'd usually have to assign subnets out of a larger prefix.
So, something else is telling the router to put prefix X on a link.
This is the "own channel", and now the router has the information it
needs to ask "can I route this?" and control RAs & PIOs.  Same in
homenets, with HNCP in the mix.


Thanks for any input,


-David