Subject: Re: [Idr] Advancing add-path

From: "Chris Hall" <[email-masked]>
Date: Mon, 24 Mar 2014 11:46:57 -0000

On 23 Mar 2014, at 02:23, Ondrej Zajicek <[email-masked]>
wrote:
> There is a simpler way how to fix scaling issues on route servers
than
> add-path - it is based on idea that instead of keeping N routing
tables
> and doing N best path selections for each prefix, RS would keep just
one
> table with paths for each prefix sorted according to path selection
> criteria [*] and for each client it exports the first path (in that
> order) that is accepted by client's export filter.

Cute :-)

In a "peering exchange" application the (great) majority of prefixes
advertised to the RS have only one route, which helps.

The question is how much, or how little, client policy the RS is
required to implement.  The minimum is the ability for the sender of a
route to control who receives it.  If nothing else is required, things
can (as you suggest) be simplified.  More generally however, if the RS
is required to run proxy 'out' filters/route-maps and/or a proxy 'in'
filters/route-maps, on a per client basis, then things remain
complicated.

To make use of the full flexibility of such proxy filtering and the
per-client RIBs, the RS needs a mechanism for clients to configure
those filters.  I don't know how many RS have actually done that
(yet)... but I have encountered some reluctance to lose the facility
completely.

For me, the point is that add-paths allows the problem to be finessed
-- the RS can give the receiving clients full control over all routes
available to them, while (a) not requiring the implementation of a
means to configure equivalent per-client proxy filtering, and (b)
avoiding the cost of the per-client filtering and RIB. 

On the destination side, eliminating the Loc-RIB and Adj-Out
altogether reduces the RS's work to a minimum.  However, the RS is
then acting more like a broadcaster of the incoming UPDATEs, and less
like a BGP speaker sending UPDATEs itself.

Chris

---

From: Ondrej Zajicek <[email-masked]>
Date: Wed, 26 Mar 2014 13:05:53 +0100

On Mon, Mar 24, 2014 at 11:46:57AM -0000, Chris Hall wrote:
> means to configure equivalent per-client proxy filtering

I agree with that point (i also mentioned this advantage in my first
post).

But purely from the scalability point of view, the advantages of
add-paths (no need to run outbound filters) must be compared with its
disadvantages (significantly higher transmit load) and i guess that (at
least on plaforms with efficient filters and per-client RIBs) the
overall effect would be insignificant to negative. Therefore, better
scalability for RSes should not be used as an argument for add-paths.

> altogether reduces the RS's work to a minimum. 

IMHO not significantly, Loc-RIB and Adj-Out are more conceptual objects
than real parts of implementation.

-- 
Ondrej 'Santiago' Zajicek