Re: [Idr] Last Call: <draft-ietf-idr-ix-bgp-route-server-10.txt> (Internet Exchange BGP Route Server) to Proposed Standard

Nick Hilliard <> Tue, 31 May 2016 15:40 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id CC05512D1E8; Tue, 31 May 2016 08:40:28 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -4.201
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 ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id nYN6h_AOLsdc; Tue, 31 May 2016 08:40:21 -0700 (PDT)
Received: from ( [IPv6:2a03:8900:0:100::5]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 4C0BC12D5D7; Tue, 31 May 2016 08:40:20 -0700 (PDT)
Received: from crumpet.local ( [] (may be forged)) (authenticated bits=0) by (8.15.2/8.15.2) with ESMTPSA id u4VFeHjD087010 (version=TLSv1 cipher=ECDHE-RSA-AES256-SHA bits=256 verify=NO); Tue, 31 May 2016 16:40:17 +0100 (IST) (envelope-from
X-Authentication-Warning: Host [] (may be forged) claimed to be crumpet.local
Message-ID: <>
Date: Tue, 31 May 2016 16:40:16 +0100
From: Nick Hilliard <>
User-Agent: Postbox 4.0.8 (Macintosh/20151105)
MIME-Version: 1.0
To: Marco Marzetti <>
Subject: Re: [Idr] Last Call: <draft-ietf-idr-ix-bgp-route-server-10.txt> (Internet Exchange BGP Route Server) to Proposed Standard
References: <> <>
In-Reply-To: <>
X-Enigmail-Version: 1.2.3
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
Archived-At: <>
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: IETF-Discussion <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Tue, 31 May 2016 15:40:29 -0000

Marco Marzetti wrote:
> Beside i agree on the most part of this draft i would like to underline
> how bullet 2.2.2 breaks the the nature of BGP itself.
> The exact part i am referring to is:
> """
>  As a route server does not participate in the process of forwarding
>    data between client routers, and because modification of the AS_PATH
>    attribute could affect route server client BGP Decision Process, the
>    route server SHOULD NOT prepend its own AS number to the AS_PATH
>    segment nor modify the AS_PATH segment in any other way.
> """
> I firmly think that it really has to state "MUST NOT" instead of "SHOULD
> NOT".
> From a route-server client point of view that breaks the natural BGP
> best selection process and forces you to purely rely on LOCAL_PREFERENCE
> which in turns breaks your traffic engineering because it forces you to
> prefer/not-prefer the prefixes learned over the route server in place of
> those learned, for instance, over a private session or another IXP.

It doesn't "break" the decision process mechanism.  Localpref might be
ugly, but using it doesn't violate the bgp protocol.

This statement needs to be "MUST NOT".  Technically you can run a route
server even if you insert the intermediate ASN into the path.  The only
absolute "MUST" is that you mustn't change the next-hop; otherwise you
end up with a router instead of a route server.

RFC2119 is a pain because there is no way of differentiating between
"SHOULD NOT", meaning "on balance it would be a better idea not to do X"
and "SHOULD NOT", meaning "if you even _think_ about doing X, you need
your head examined and the only reason we specified SHOULD NOT instead
of MUST NOT in this situation because of some technicality that
prevented us from doing so".  The text in 2.2.2 veers slightly in the
direction of the latter interpretation.