[Idr] Comments on draft-ietf-idr-aspath-orf-10.txt

Jeffrey Haas <jhaas@pfrc.org> Fri, 10 July 2015 21:00 UTC

Return-Path: <jhaas@slice.pfrc.org>
X-Original-To: idr@ietfa.amsl.com
Delivered-To: idr@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 5BD731B2B05 for <idr@ietfa.amsl.com>; Fri, 10 Jul 2015 14:00:24 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.578
X-Spam-Level:
X-Spam-Status: No, score=-1.578 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, IP_NOT_FRIENDLY=0.334, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_RP_MATCHES_RCVD=-0.01] autolearn=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 WZkOAr1oDJ01 for <idr@ietfa.amsl.com>; Fri, 10 Jul 2015 14:00:23 -0700 (PDT)
Received: from slice.pfrc.org (slice.pfrc.org [67.207.130.108]) by ietfa.amsl.com (Postfix) with ESMTP id CB6971B2D11 for <idr@ietf.org>; Fri, 10 Jul 2015 13:59:26 -0700 (PDT)
Received: by slice.pfrc.org (Postfix, from userid 1001) id C6CF01E434; Fri, 10 Jul 2015 17:01:11 -0400 (EDT)
Date: Fri, 10 Jul 2015 17:01:11 -0400
From: Jeffrey Haas <jhaas@pfrc.org>
To: idr@ietf.org
Message-ID: <20150710210111.GU13783@pfrc.org>
References: <20150706141017.31158.42788.idtracker@ietfa.amsl.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
In-Reply-To: <20150706141017.31158.42788.idtracker@ietfa.amsl.com>
User-Agent: Mutt/1.5.21 (2010-09-15)
Archived-At: <http://mailarchive.ietf.org/arch/msg/idr/As1WjZBsf9Nib22tD072Pbr91yQ>
Subject: [Idr] Comments on draft-ietf-idr-aspath-orf-10.txt
X-BeenThere: idr@ietf.org
X-Mailman-Version: 2.1.15
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: Fri, 10 Jul 2015 21:00:24 -0000

I must admit to being somewhat dismayed by seeing this draft resurrected.
It's been a while since this draft has been discussed, so I'll fully list my
concerns:

The ORF mechanism is very heavy weight.  Once the ORF has been updated, a
full route-refresh is required in order to apply its changes.  Contrast this
to the lighter weight incremental updates done by RT-Constrain.

ORFs are AFI/SAFI specific.  AS_PATH filters are often address family
agnostic.  This means we not only burn a large part of our capabilities
potentially for the union of all AFI/SAFI to be exchanged.  (ext-opt-param
addresses this point).  But it does mean that we need to exchange
potentially the full set of AS_PATH ORFs redundantly, stretching out any
reconfiguration.

ORFs were originally designed to limit incoming resource impact by pushing
one router's import filters into another router's export path.  Many routers
attempt to optimize outbound route queueing through peer-groups and ORFs
inherently make this messier.  The same issue does hold for RT-Constrain as
well, but I'll argue regex is more costly. :-)



Editorial comments:
Rather than hexadecimal string, I'd suggest either byte string or OCTET
string.  (The latter will be familiar to the SNMP folk.)  

The length field seems to imply that it's a bit-length field.  I'm not sure
this makes sense; it probably should be bytes and thus "trailing bits" would
be irrelevant.

For the anchoring description, it's unclear to me what anchoring vs.
non-anchoring mean based on the examples.  Is the intent to say that the
tokens '^' and '$' are available to anchor the regex?

For the collating element, is the intent to say that the space character is
matched by the '.' token when Bit 1 is 0?  Or is the intent of the two
options to indicate whether or not the '.' token represents a integer
character vs. an integer string?

The section on regular expresses is extremely incomplete and is need of
significant expansion:
- How are route AS_PATHs canonicalized?  I.e. single spaces between AS
  numbers?
- Are AS segment types represented in the canonicalized form?
- When AS segment types are canonicalized, is there any intersection with
  standard regex operators vs. the AS_PATH canonicalized string?  E.g. '[]'
  is used for AS_SET representation in some implementations.
- How are 4-byte ASes canonicalized?  asplain? (See RFC 5396)
- For Bit2 - [] - is the implication that we're doing integer character
  range matching or integer string range matching?  Do we support the NOT
  range, i.e. [^0]?
- Is regex alternation, i.e. '|', permitted?  
- Is grouping, i.e. '()', permitted?  Does it conflict with canonicalized
  output?  What about backreferences?
- What about ranges, e.g. "1 2{2,4} 3"?

What the encoding is for the string?  US-ASCII?  If not and a multi-byte
character set is used, how does this mechanism behave when there's an
encoding failure?  What happens if a character outside the accepted set is
included?

Nit: It looks like an I2NSF draft's XML was used for this document.  I'm
sure it'll be better next time. :-)

While I'm sure we could eventually address all of the technical issues in
the draft, I'd much rather see it be retired and removed from the charter.
It's a very clunky hammer.  If there's a use case for it, let's discuss that
and see if something else fits better.

-- Jeff

On Mon, Jul 06, 2015 at 07:10:17AM -0700, internet-drafts@ietf.org wrote:
> 
> A New Internet-Draft is available from the on-line Internet-Drafts directories.
>  This draft is a work item of the Inter-Domain Routing Working Group of the IETF.
> 
>         Title           : Analysis of Existing work for I2NSF
>         Authors         : Susan Hares
>                           Keyur Patel
> 	Filename        : draft-ietf-idr-aspath-orf-10.txt
> 	Pages           : 7
> 	Date            : 2015-07-05
> 
> Abstract:
>    This document defines a new Outbound Router Filter type for BGP,
>    termed "Aspath Outbound Route Filter", that can be used to perform
>    aspath based route filtering.  This ORF-type supports aspath based
>    route filtering as well as regular expression based matching, for
>    address groups.
> 
> 
> The IETF datatracker status page for this draft is:
> https://datatracker.ietf.org/doc/draft-ietf-idr-aspath-orf/
> 
> There's also a htmlized version available at:
> https://tools.ietf.org/html/draft-ietf-idr-aspath-orf-10
> 
> A diff from the previous version is available at:
> https://www.ietf.org/rfcdiff?url2=draft-ietf-idr-aspath-orf-10
> 
> 
> Please note that it may take a couple of minutes from the time of submission
> until the htmlized version and diff are available at tools.ietf.org.
> 
> Internet-Drafts are also available by anonymous FTP at:
> ftp://ftp.ietf.org/internet-drafts/
> 
> _______________________________________________
> Idr mailing list
> Idr@ietf.org
> https://www.ietf.org/mailman/listinfo/idr