[Idr] comments on draft-ietf-idr-rs-bfd

Nick Hilliard <nick@foobar.org> Tue, 01 August 2017 13:07 UTC

Return-Path: <nick@foobar.org>
X-Original-To: idr@ietfa.amsl.com
Delivered-To: idr@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 542BA132006 for <idr@ietfa.amsl.com>; Tue, 1 Aug 2017 06:07:53 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.201
X-Spam-Level:
X-Spam-Status: No, score=-4.201 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, SPF_PASS=-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 DJGhPMseZ4hQ for <idr@ietfa.amsl.com>; Tue, 1 Aug 2017 06:07:44 -0700 (PDT)
Received: from mail.netability.ie (mail.netability.ie [IPv6:2a03:8900:0:100::5]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 70872120720 for <idr@ietf.org>; Tue, 1 Aug 2017 06:07:44 -0700 (PDT)
X-Envelope-To: <idr@ietf.org>
Received: from cupcake.local (089-101-195156.ntlworld.ie [89.101.195.156] (may be forged)) (authenticated bits=0) by mail.netability.ie (8.15.2/8.15.2) with ESMTPSA id v71D7fnV082378 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA bits=256 verify=NO) for <idr@ietf.org>; Tue, 1 Aug 2017 14:07:42 +0100 (IST) (envelope-from nick@foobar.org)
X-Authentication-Warning: cheesecake.ibn.ie: Host 089-101-195156.ntlworld.ie [89.101.195.156] (may be forged) claimed to be cupcake.local
Message-ID: <59807D1E.4050807@foobar.org>
Date: Tue, 01 Aug 2017 14:07:42 +0100
From: Nick Hilliard <nick@foobar.org>
User-Agent: Postbox 5.0.16 (Macintosh/20170718)
MIME-Version: 1.0
To: IETF IDR Working Group <idr@ietf.org>
X-Enigmail-Version: 1.2.3
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/idr/o1nBKTSGGDWy5plvF8DmSiPzt8Y>
Subject: [Idr] comments on draft-ietf-idr-rs-bfd
X-BeenThere: idr@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Inter-Domain Routing <idr.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/idr>, <mailto:idr-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/idr/>
List-Post: <mailto:idr@ietf.org>
List-Help: <mailto:idr-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/idr>, <mailto:idr-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 01 Aug 2017 13:07:53 -0000

>    2.  Client routers must have a means of communicating the knowledge
>        of the failure (and restoration) back to the route server.

I don't see why this is necessary.

It would be useful to have a mechanism for a RS to broker bfd
connectivity between rsclients, but that's about as far as it should go.
 Having this information relayed back to and processed by the RS itself
is both unnecessary and unwise.

It's unnecessary because if there is a mechanism available to broker bfd
sessions between rsclients, then this allows each rsclient to make their
own decision about whether they want to use this and make their own
decisions about NH reachability.  If this is in place, the RS doesn't
need to augment this information because the client has all the tools
they need to be able to do this.

It's unwise because:

-  the proposal allows rsclient A to influence reachability for their
competitor, rsclient B.  This is a show-stopper in my books but other
people may have different opinions.

- it puts the ixp in the position of making pronouncements about the
reachability of its rsclient base.  From a layer 9 point of view, it
could be argued that there might be liability problems if it gets this
wrong due to e.g. poisoned / late / incorrect data from rsclients.

- the draft makes an implicit assumption that reachability between each
rsclient is a ternary state, which it is not.  E.g. one of the most
common ixp commutativity failure situations is where you have an
ecmp/lag bundle between rsclient A and B, and a single member link dies,
leading to partial failure between A and B.  If BFD and BGP work fine,
then the IXP has just made a pronouncement that NH reachability is good,
which it is not.  Awkward.

- maintaining state, particularly derived state, is generally a poor
idea, particularly when based on slightly vague data inputs, and where
the consequences of either misinformation or misinterpretation of this
state would be dropped packets.

- this proposal adds a good deal of complication to the interaction
between RS, rsclients and the routing decision engine functionality.
This stuff is complicated enough already, and there would have to be
unusually clear and compelling arguments to make it worth adding in the
extra failure modes that complication like this is going to create.

- route server connectivity brokerage is generally considered to be the
poor first cousin of bilateral connectivity over an IXP and the poor
second cousin of a private network interconnection.  If an rsclient
cares enough about its data flows that reachability is sufficiently
important to justify being protected by BFD, then I'd argue that they
should just do this rather than outsourcing the problem to someone else.
 There are plenty of automation tools out there and it's not that hard
to do.

Please let's keep rs bfd brokerage as simple as possible. I don't want
front-line ixp support issues to have to be dealt with by 3rd line
engineering.

Nick