Re: [forces] I-D Action: draft-djjhs-forces-lfbstate-00.txt
Jamal Hadi Salim <hadi@mojatatu.com> Wed, 17 October 2012 11:00 UTC
Return-Path: <hadi@mojatatu.com>
X-Original-To: forces@ietfa.amsl.com
Delivered-To: forces@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id A7C5B21F8754 for <forces@ietfa.amsl.com>; Wed, 17 Oct 2012 04:00:05 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -103.014
X-Spam-Level:
X-Spam-Status: No, score=-103.014 tagged_above=-999 required=5 tests=[AWL=-0.037, BAYES_00=-2.599, FM_FORGED_GMAIL=0.622, RCVD_IN_DNSWL_LOW=-1, 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 HBRguQEaRPCM for <forces@ietfa.amsl.com>; Wed, 17 Oct 2012 04:00:04 -0700 (PDT)
Received: from mail-ob0-f172.google.com (mail-ob0-f172.google.com [209.85.214.172]) by ietfa.amsl.com (Postfix) with ESMTP id A7C9D21F874C for <forces@ietf.org>; Wed, 17 Oct 2012 04:00:04 -0700 (PDT)
Received: by mail-ob0-f172.google.com with SMTP id v19so8681202obq.31 for <forces@ietf.org>; Wed, 17 Oct 2012 04:00:04 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-type:x-gm-message-state; bh=5XVJVwqbsvz+z+09pTNzAfNQfhGksnSIjfVgkEqU1sM=; b=IaMWdwpiMjJJhKDdD7XPPKOGQEGEuhiN5iJh8iGyC7Jw/q3dMDdfzRDYgAO3NxVelr 59Khy1k4tbEpqLvpu7WFL6mzhxBYrAXOduWTtY0on2RbHQeBHvPqxUnrER6kIC4ULYHq Zu4W4VeJyNtHLpYtZFx9YV7SHDetJyMFAKFxf1lYSz+LM5fEgpjWunCdr3MuvONV0bx7 0alJfqZ8X5E6NoB4+XWBu9SZfZYfFQJCTo03EZMAFlTivCPYiLvTXCVrNVfg6Hw6XPn2 Sx+gmsT2nHqnhx1n4ixKleTCRGHvu19prUlU3SehErgoAbbYjvZAcOmuXucjDL9CHB1T Unnw==
Received: by 10.182.216.71 with SMTP id oo7mr14685115obc.70.1350471604151; Wed, 17 Oct 2012 04:00:04 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.60.95.226 with HTTP; Wed, 17 Oct 2012 03:59:43 -0700 (PDT)
In-Reply-To: <507D65F4.7030604@joelhalpern.com>
References: <20121013151956.19317.96789.idtracker@ietfa.amsl.com> <5079F9DC.9020807@joelhalpern.com> <CAAFAkD_dnCrEij2E28ec8cYU2qS_2dMui+5ev7yUL+KHHVSngQ@mail.gmail.com> <507AEB61.1050709@joelhalpern.com> <CAAFAkD8wQicgTgm6nH6W5JkB3eAi+e+yvHvoQ+PV1+Z+Y_wuPg@mail.gmail.com> <507C1DA8.2040509@joelhalpern.com> <CAAFAkD_9GNKkY9CnyB4n9iD4n+U8vOyVFQq6=qt6TP0d_NOeWA@mail.gmail.com> <507D65F4.7030604@joelhalpern.com>
From: Jamal Hadi Salim <hadi@mojatatu.com>
Date: Wed, 17 Oct 2012 06:59:43 -0400
Message-ID: <CAAFAkD-A3rXa+9RbygGE7C4B9=65eX0W6McM4FVK1Qn1ZEazZg@mail.gmail.com>
To: "Joel M. Halpern" <jmh@joelhalpern.com>
Content-Type: text/plain; charset="ISO-8859-1"
X-Gm-Message-State: ALoCoQkRzo58b03zZExukpiJx+gDGE/pdI9YN0vOvfbOuYPNmP5MHaRpxuZa3Z15Q7Feps+x80jA
Cc: forces <forces@ietf.org>
Subject: Re: [forces] I-D Action: draft-djjhs-forces-lfbstate-00.txt
X-BeenThere: forces@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: ForCES WG mailing list <forces.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/forces>, <mailto:forces-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/forces>
List-Post: <mailto:forces@ietf.org>
List-Help: <mailto:forces-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/forces>, <mailto:forces-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 17 Oct 2012 11:00:05 -0000
Joel, Lets defer this discussion to th meeting time; you may be able to convince us or us convince you. Ignoring the non-modifiable topology issue... It becomes a usability issue if an LFB instanc belongs to more than one topology (more messages). The maybe purist arguement is : if a node in a graph is tagged "down" that implies in every topology where this node participates there is no connectivity to it. cheers, jamal On Tue, Oct 16, 2012 at 9:49 AM, Joel M. Halpern <jmh@joelhalpern.com> wrote: > I am sorry, I still don't see the problem. > > Suppose we have an FE with a non-modifiable topology. Suppose that there is > some LFB in the topology that we want to configure, but do not want to use. > > Fine, do so. > > By definition, if we are not using that LFB, we are not directing any > packets to it. If the upstream never sends an packets to it, then whether > the LFB is administratively enabled or administratively disabled is > irrelevant. Remember, the CE knows what it wants, and what it is doing. > The admin state of the LFB won't tell it anything it doesn't know. > > In essence, this is a mathematical statement. If we want a predictable > behavior, then the graph has to avid sending any packets to any non-used > LFBs. enabled or disabled is irrelevant. > > Yours, > Joel > > > On 10/16/2012 7:57 AM, Jamal Hadi Salim wrote: >> >> Joel, >> >> We may have digressed given i hardly disagree with what you said in >> your email below (and it may be orthogonal to our >> goals). Here's what we mainly want to achieve: >> Send config info to a specific LFB Instance. Decide when that info >> becomes active or inactive in the datapath. We want to do >> this in presence of many active graphs within an active FE >> (which receives traffic). Willing to have the LFB instance of >> interest to belong to only one service graph, but more importantly we >> want to achieve this in as fewer steps as possible (on the message >> exchange level). >> >> The disagreement i have is i think you are describing an >> implementation approach. Maybe this is left up to a face to face >> discussion at the meeting. >> Again, our goal is to take the FEState semantic and express >> it at the LFB instance level. >> With FEState there is an equivalent semantic at the coarse granularity >> of the FE i.e CE can update the config and when ready send a single >> message which says "activate" . How the isolation of the FE is >> achieved is up to the implementer. You describe isolation of the FE as >> being achieved by turning off physical ports on the datapath. I >> described an ASIC that could be sent a single message at the register >> level to achieve that same goal. >> As it stands right now, the interpretation of activate/deactivate >> is left up to the implementation. Thats where we draw our >> motivation. >> >> cheers, >> jamal >> >> >> >> On Mon, Oct 15, 2012 at 10:28 AM, Joel M. Halpern <jmh@joelhalpern.com> >> wrote: >>> >>> I have to strongly disagree. >>> >>> With regard to turning off physical ports, there are two reasons that >>> apply >>> to physical ports, and do not apply to the logical input ports of LFBs. >>> 1) This is a semantic that human beings express. >>> 2) More importantly, the upstream of these physical ports is in general >>> not >>> under the control of the CE. So the CE & FEs have to be prepared for it >>> doing unexpected things. >>> >>> With regard to CE operation, there is no need for admin-disabling port. >>> In >>> fact, doing so will add needless steps to the operation of setting up a >>> new >>> or changed configuration. When making any configuration change to LFBs, >>> the >>> CE has to >>> a) determine what changes it wants to make. For modifiable topologies, >>> this >>> may mean planning to create some LFB instances and / or planing to create >>> some links. For any FE, this will meaning determining what LFB >>> parameters >>> changes it wants to make. >>> b) The CE then evaluates the dependencies between this changes. It >>> arranges >>> them into a dependency graph. And then applies the changes from the root >>> of >>> the graph towards the leaves. If the CE does not do this, then there >>> will >>> be times when the FE will behave in unpredictable and probably >>> undesirable >>> ways. If the CE does do this, there is never a need to turn off an LFB >>> port. >>> >>> With regard to (b), if that sort can ot be done, the adding admin-disable >>> to >>> individual LFB logical input ports will not help make it possible. >>> >>> As a minor note, there are cases where, n order to preserve te dependency >>> properly, one may have to make certain temporary config changes. As a CE >>> coder, one can choose between the more complex math to find the stable >>> behavior or having the transient improper behavior. Again, the >>> admin-disable >>> will not help. >>> >>> I will admit that in the above I am assuming that it is irrelevant to try >>> to >>> determine the "meaning" of a topology and configuration in the middle of >>> a >>> change. With or without admin-disable on logical LFB input ports, such >>> interpretation of what was actually intended as a transient state is >>> probably very hard. >>> >>> Yours, >>> Joel >>> >>> PS: I am happy to discuss this in the meeting in Atlanta if we need to. >>> >>> >>> On 10/15/2012 6:47 AM, Jamal Hadi Salim wrote: >>>> >>>> >>>> On Sun, Oct 14, 2012 at 12:42 PM, Joel M. Halpern <jmh@joelhalpern.com> >>>> wrote: >>>>> >>>>> >>>>> The issue of a non-modifiabe topology requires some though. In > my >>>>> experiece, one usually can't turn individual LFBs on and off >in such >>>>> setup. >>>>> Rather, with non-modifiable topologies the input >>>>> ports tot eh FE sre rutnred off, the whole set of LFBs is >configured, >>>>> and then the input ports are turned on. >>>> >>>> >>>> >>>> What you just described with "the input ports turned off" >>>> is essentially meant to be signalled by the FEO::FEState being put in >>>> AdminDisable. And i think in this case that would be an >>>> implementation approach (which is of course reasonable). >>>> There are ASICs where you dont have to turn off ports. >>>> You need to bang some registers to turn/off the datapath. >>>> And in that case I would rather set some bits in registers >>>> instead iterating the port list and turn off ports. >>>> >>>> If you assumed we can ignore non-modifiabe topology semantics, >>>> it still looks different and complex (youd have to scan the LFB >>>> topology and turn off every link to that LFB instance). >>>> It will solve one of our stated goals (the race condition aspect) >>>> but would be cumbersome for the HA aspect. >>>> >>>>> My big problem with turning off an LFB is that it is completely >>>>> unclear what it means for the packet flow. >>>> >>>> >>>> >>>> The semantics are the same as FEO::FEState >>>> If the FEState is Admin/OperDisable it provides the illusion that >>>> all LFB instances are inactive on the datapath. >>>> >>>>> What are we telling an upstream LFB to do >>>>> when the downstream LFB is disabled? Drop the packet? >>>>> Or is the CE >>>>> supposed to assume that disabled LFBs are transparent? Both choices >>>>> can >>>>> produce extremely improper behavior. >>>> >>>> >>>> >>>> Agreed - the FE advertising this capability must be able to handle >>>> the configuration. >>>> Implementation specific perhaps, but one way is to empty any >>>> control components related to the LFB instance from the datapath. >>>> In our case the FE would store the inactive Instance information in >>>> software >>>> (but not in the datapath) and activation implies storing it into the >>>> datapath. >>>> >>>>> Put differently, it is not at all clear to we that a instantiated, >>>>> connected, LFB can be meaningfully and safely disabled. >>>> >>>> >>>> >>>> It may end up being implementation specific as is the >>>> case of FEO::FEState. >>>> >>>> cheers, >>>> jamal >>>> >>> >> >
- Re: [forces] I-D Action: draft-djjhs-forces-lfbst… Joel M. Halpern
- [forces] Fwd: I-D Action: draft-djjhs-forces-lfbs… Jamal Hadi Salim
- Re: [forces] I-D Action: draft-djjhs-forces-lfbst… Jamal Hadi Salim
- Re: [forces] I-D Action: draft-djjhs-forces-lfbst… Jamal Hadi Salim
- Re: [forces] I-D Action: draft-djjhs-forces-lfbst… Joel M. Halpern
- Re: [forces] I-D Action: draft-djjhs-forces-lfbst… Jamal Hadi Salim
- Re: [forces] I-D Action: draft-djjhs-forces-lfbst… Joel M. Halpern
- Re: [forces] I-D Action: draft-djjhs-forces-lfbst… Jamal Hadi Salim
- Re: [forces] I-D Action: draft-djjhs-forces-lfbst… Joel M. Halpern
- Re: [forces] I-D Action: draft-djjhs-forces-lfbst… Jamal Hadi Salim