Re: [i2rs] Router Models

Scott Whyte <swhyte@google.com> Wed, 27 February 2013 22:14 UTC

Return-Path: <swhyte@google.com>
X-Original-To: i2rs@ietfa.amsl.com
Delivered-To: i2rs@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 37CC621F871D for <i2rs@ietfa.amsl.com>; Wed, 27 Feb 2013 14:14:22 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -101.978
X-Spam-Level:
X-Spam-Status: No, score=-101.978 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, FM_FORGED_GMAIL=0.622, NO_RELAYS=-0.001, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([64.170.98.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 9HueA2PO6r4w for <i2rs@ietfa.amsl.com>; Wed, 27 Feb 2013 14:14:21 -0800 (PST)
Received: from mail-ia0-x231.google.com (mail-ia0-x231.google.com [IPv6:2607:f8b0:4001:c02::231]) by ietfa.amsl.com (Postfix) with ESMTP id 59BC021F8622 for <i2rs@ietf.org>; Wed, 27 Feb 2013 14:14:21 -0800 (PST)
Received: by mail-ia0-f177.google.com with SMTP id o25so945165iad.36 for <i2rs@ietf.org>; Wed, 27 Feb 2013 14:14:20 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:x-received:in-reply-to:references:date:message-id :subject:from:to:cc:content-type:content-transfer-encoding; bh=82DopUI/CCtCnzapG416p2FWR+YiV1eAOHOlkFxV+S8=; b=IMHJHDTAMmmXQfmDtE3xJPda8sXhLsgWOExmeM237D9N/6Kt+Y4WKGkQ3BfrHBznAB GOPWpB+Lpw+Ve8EGjN6Pp/F8bmb19lc7u3eUcDEv8ktO24R5WlqfeR15VZLzmD24WtfV 2sFzrAiXyme+yn/2bkJ3gxAn1ZeZjfjNGPchoVcXD5xn56Gnc0qFbSTupQiaclsW+JDt Rokm9OMx6p/fEzcdP+LhGT/qWG/2zefc2KVOamGhNJSlbmASvxo8ozbx1v/eL2lrGLFx Y94mpEQvG6YCo1WnHwuxnWJenGIkvTRJFJeFcWJaoiDb9aN6qj4R+8WItogbYIOrVETY KoQw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:x-received:in-reply-to:references:date:message-id :subject:from:to:cc:content-type:content-transfer-encoding :x-gm-message-state; bh=82DopUI/CCtCnzapG416p2FWR+YiV1eAOHOlkFxV+S8=; b=IAkNn+jkYkbMZoic4Mg3d1CbTG0V6fjJV3cRlTboqSQfZsjatkXZu1+86SCPIeR6eH aBgbrPRw5owlgJ+dwldXQbljghmVL9dvERC2v7jEUQ43QcZo1SuKTwZPnMgdezFWrXmJ gNc1JiTlb+dtpIWCYZk+lSay8kulmYJ+VY5eAQ6MX5823/Dqk6YE/kujeyqXr/w57eyZ nRfWDn4KIe3SlMDY9KroFQNk/BQyxgALBwbXkPLXX7SM+GykYaBj0MbO+50IGZrk7w0g hxZiPg62OCac3tgFiS60XdSxesajgUgMmDOE/ElvgxpPbafnEKg+i3xkQk6l+og2NWG9 eH5w==
MIME-Version: 1.0
X-Received: by 10.50.190.233 with SMTP id gt9mr1905536igc.80.1362003260808; Wed, 27 Feb 2013 14:14:20 -0800 (PST)
Received: by 10.43.46.129 with HTTP; Wed, 27 Feb 2013 14:14:20 -0800 (PST)
In-Reply-To: <23F95046-D50F-4835-ABAF-3C8CD3F47A9F@castlepoint.net>
References: <512BECC0.3020306@riw.us> <DA52363A1FF16D46A4F6AD9836FB58660408F000@SJEXCHMB13.corp.ad.broadcom.com> <512CFF4E.6060400@riw.us> <DA52363A1FF16D46A4F6AD9836FB58660408F1AB@SJEXCHMB13.corp.ad.broadcom.com> <512D24C3.2000306@riw.us> <23F95046-D50F-4835-ABAF-3C8CD3F47A9F@castlepoint.net>
Date: Wed, 27 Feb 2013 14:14:20 -0800
Message-ID: <CAG=Jvvj_cED-ORzR8c9VPeG6tL1aCasvrRga27T6MWEe7Ng6zg@mail.gmail.com>
From: Scott Whyte <swhyte@google.com>
To: Shane Amante <shane@castlepoint.net>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Gm-Message-State: ALoCoQnp9XMCp6edjGOcbojb0zKQZD9hct2qoYxfECrrmgZMiCEhtRBLM0dF1F5C9e4MZaXAOFFspjtvEvQ/FqyXrSU6pPzxOOypPIAFr//X9mEhhDM/CBk1J+WLprOahKcySwXMIF0emeruwl2GF6t1Wn8d4QkC00Oy1jqvDuj5HqxXcevoJGZLlJOv/yQ7Taj+FKgC2nLr
Cc: Russ White <russw@riw.us>, "i2rs@ietf.org" <i2rs@ietf.org>, "Rob (William) Rice" <rrice@broadcom.com>
Subject: Re: [i2rs] Router Models
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: "Interface to The Internet Routing System \(IRS\)" <i2rs.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/i2rs>, <mailto:i2rs-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/i2rs>
List-Post: <mailto:i2rs@ietf.org>
List-Help: <mailto:i2rs-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/i2rs>, <mailto:i2rs-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 27 Feb 2013 22:14:22 -0000

On Tue, Feb 26, 2013 at 6:48 PM, Shane Amante <shane@castlepoint.net> wrote:
> Russ,
>
> On Feb 26, 2013, at 2:10 PM, Russ White <russw@riw.us> wrote:
>>> Thanks for the clarifications. I am still a little fuzzy about what you mean by "...B to represent modifications to the policy the
>>> routing process uses to choose which route to present to the RIB." To use an example from BGP, maybe this could mean configuring an inbound prefix list or other type of policy filter. If so, then B is an interface to change the configuration of the routing protocol rather than the data (e.g., Adj-RIB-In contents), right? Of course, this type of configuration change affects not only what the protocol sends to the RIB, but may also affect what the protocol readvertises to its neighbors.
>>
>> Communities within BGP, for instance, or the metric on an OSPF route.
>> Yes, link state protocols would have fewer of these than BGP would --but
>> I think a good bit of the BGP policy model Shane wants would fit here...
>> (?).
>
> I would hope more folks in the WG want that too.  :-)
>
> On a more general note ... first, thanks for putting this diagram together.  At least now we have a decent picture to start a discussion.
>
> I think you've mostly (?) been focused on routes being received by and processed by a router that, ultimately, are distilled into a FIB.  That's certainly important, but I think that we also need to look in the other direction, namely: routes that get /exported/ from one, or more, routers into an IGP or BGP.  Good examples of this, (which have been discussed in the use-cases drafts), are:
> a) placement of aggregate/tie-down/summarization/flow-spec routes, (at certain routers at certain places in the topology);
> b) "route filters" applied to, for example, eBGP neighbor sessions inbound & outbound
>    i) One example of the above is placement of RT-constraint-like filters on a per-neighbor basis in Route Reflectors, because 'downstream' PE software does not (likely, will never?) support RFC 4684.
>    ii) Another example is application of "routing policy" at the border of your AS to filter what you receive and, at the same time, manipulate BGP attributes of those routes that are accepted, e.g.: set BGP communities, set LOCAL_PREF, etc.  Likewise, applying and outbound routing policy to filter what is allowed (intended!) to be announced to your neighbors.
>
> FWIW, I believe that most, if not all, of the above use cases are discussed in: <http://tools.ietf.org/html/draft-keyupate-irs-bgp-usecases-01>[1] and, potentially, your draft as well.
>
> Taking a look at (b) and looking at your diagram, it seems as though (b) should be within the boxes you have labelled "Routing Process".  More specifically, I think you need more "clouds" ;-) sitting directly above the "Local Database" (Loc-RIB?) that, at a minimum, represent protocol adjacencies (e.g.: BGP neighbor adjacencies) where I2RS _should_ be allowed to apply (BGP) policy to those routing protocol sessions, in order to permit filtering of _and_ manipulation of attributes in those routes inbound to or outbound from the routing protocol process, (just like we do in today's networks).  I would think that this additional cloud would represent something like the Adj-RIB-In/Adj-RIB-Out, at least wrt a BGP Routing Process.
>
> With respect to (a) above, namely placement of aggregate/summarization/etc. routes, I believe that would most likely belong inside of and/or injected into the "policy" cloud (inside the "Routing Process" box) through "B" in your diagram.  IOW, I place a summarization route in the routing process, which then flows two directions: i) up into the routing processes database and outward through the routing protocol, using normal routing update protocol mechanisms; and, ii) down to the RIB process for consideration as to whether it should be installed in the FIB after passing through "D" and "E", of course.
>
> In summary, although I think you chose your words carefully when describing "A" by proposing that I2RS avoid (forbid?) "direct injection of information [in]to a routing process", I think there's an important point we should not miss here.  Namely, I2RS can do that, but only _when_ I2RS informs the routing process, which then carries out associated action(s) (on I2RS'es behalf) which will manipulate the state of routing information carried by that process, e.g.: filtering incoming/outgoing routes, manipulating LOCAL_PREF, setting/stripping communities, etc.  And, of course, I2RS must do this is a completely transparent manner so that operators understand I2RS initiated this change vs. I2RS doing something "under the covers" that is non-obvious (or, worse, not visible) to operators.
>
> Thanks,
>
> -shane
>
> [1] We missed the deadline to post an updated version of the draft with the updated "I2RS" WG name, but I promise we will do so when the I-D submission queue reopens.  We do not, at the moment, have plans to change the content of the draft, so please read through it now if you, or other WG members, have not already.
>
> [2] While we're here, I'm not sure where (if it all) you intended for routing protocol redistribution to be illustrated in your diagram.  Given that different vendors have vastly different models/ideas of how this is accomplished in their code, I'm not sure such a thing is even practical or possible.  :-(

Thanks for bringing up the uses cases you did for getting info out of
the RIB, its not something I considered very much.   Another use case
showing redistribution is the only solution to some problem (even
using I2RS's hopefully larger toolbox) would be helpful to understand
why we need it.  From Russ' diagram it seems you'd need I2RS to touch
things at D or E down towards the dataplane, and simultaneously it
would have to take state up from C (ok as defined) and push it over to
A for advertisement to the rest of the control plane, while possibly
receiving other state from remote clients. I think this simple diagram
can not handle that much state moving in so many directions and I'm
not sure I2RS should either.

-Scott

>
>
>> :-)
>>
>> Russ
>>
>>
>> _______________________________________________
>> i2rs mailing list
>> i2rs@ietf.org
>> https://www.ietf.org/mailman/listinfo/i2rs
>>
>
>
> _______________________________________________
> i2rs mailing list
> i2rs@ietf.org
> https://www.ietf.org/mailman/listinfo/i2rs



-- 
panem et circenses - a winning strategy for over 2000 years!