
From nobody Wed Jun  1 01:25:45 2016
Return-Path: <j.schoenwaelder@jacobs-university.de>
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 BD2CB12D172 for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 01:25:44 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.626
X-Spam-Level: 
X-Spam-Status: No, score=-5.626 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, RP_MATCHES_RCVD=-1.426] autolearn=ham autolearn_force=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 ahNId4t9EsxU for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 01:25:43 -0700 (PDT)
Received: from atlas3.jacobs-university.de (atlas3.jacobs-university.de [212.201.44.18]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 12FC512D171 for <i2rs@ietf.org>; Wed,  1 Jun 2016 01:25:43 -0700 (PDT)
Received: from localhost (demetrius5.irc-it.jacobs-university.de [10.70.0.222]) by atlas3.jacobs-university.de (Postfix) with ESMTP id D2D2374F; Wed,  1 Jun 2016 10:25:41 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from atlas3.jacobs-university.de ([10.70.0.220]) by localhost (demetrius5.jacobs-university.de [10.70.0.222]) (amavisd-new, port 10030) with ESMTP id 1HlGZxtcnmv5; Wed,  1 Jun 2016 10:25:39 +0200 (CEST)
Received: from hermes.jacobs-university.de (hermes.jacobs-university.de [212.201.44.23]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "hermes.jacobs-university.de", Issuer "Jacobs University CA - G01" (verified OK)) by atlas3.jacobs-university.de (Postfix) with ESMTPS; Wed,  1 Jun 2016 10:25:41 +0200 (CEST)
Received: from localhost (demetrius1.jacobs-university.de [212.201.44.46]) by hermes.jacobs-university.de (Postfix) with ESMTP id 19A3D20047; Wed,  1 Jun 2016 10:25:41 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from hermes.jacobs-university.de ([212.201.44.23]) by localhost (demetrius1.jacobs-university.de [212.201.44.32]) (amavisd-new, port 10024) with ESMTP id vKCy-VBKupav; Wed,  1 Jun 2016 10:25:38 +0200 (CEST)
Received: from elstar.local (elstar.jacobs.jacobs-university.de [10.50.231.133]) by hermes.jacobs-university.de (Postfix) with ESMTP id D366A20051; Wed,  1 Jun 2016 10:25:38 +0200 (CEST)
Received: by elstar.local (Postfix, from userid 501) id B82103AFFD78; Wed,  1 Jun 2016 10:25:37 +0200 (CEST)
Date: Wed, 1 Jun 2016 10:25:36 +0200
From: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
To: Susan Hares <shares@ndzh.com>
Message-ID: <20160601082536.GA24118@elstar.local>
Mail-Followup-To: Susan Hares <shares@ndzh.com>, 'Jeffrey Haas' <jhaas@pfrc.org>, i2rs@ietf.org, 'Benoit Claise' <bclaise@cisco.com>, 'Alia Atlas' <akatlas@gmail.com>
References: <000601d1bad5$70523090$50f691b0$@ndzh.com> <20160531063840.GA21289@elstar.local> <00d501d1bb45$0da83500$28f89f00$@ndzh.com> <20160531142540.GA22420@elstar.local> <001401d1bb4e$cfaefd10$6f0cf730$@ndzh.com> <20160531171304.GA22857@elstar.local> <004801d1bb72$d0129680$7037c380$@ndzh.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <004801d1bb72$d0129680$7037c380$@ndzh.com>
User-Agent: Mutt/1.6.0 (2016-04-01)
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/8y3vTz3wZtlfpHavgcxKm5Csnqs>
Cc: 'Jeffrey Haas' <jhaas@pfrc.org>, i2rs@ietf.org, 'Benoit Claise' <bclaise@cisco.com>, 'Alia Atlas' <akatlas@gmail.com>
Subject: Re: [i2rs] I2RS Interim Meeting - June 1, 2016 - 10:00am - 11:00am - Topic: Ephemeral State Requirements
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
Reply-To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
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: <https://mailarchive.ietf.org/arch/browse/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, 01 Jun 2016 08:25:45 -0000

On Tue, May 31, 2016 at 03:29:55PM -0400, Susan Hares wrote:
> Juergen: 
> 
> 
> >I understand YANG validation rules and I understand YANG's notion of
> configuration datastores. I do not >think this matches your ephemeral
> configuration validation.
> 
> This does not provide a technical discussion of: 
> a) what you understand the ephemeral configuration validation rules to be, 
> b) why you do not the model matches the configuration validation rules. 
> 
> 1 Data Model is a great idea for NETCONF/NETMOD.  However, it should
> encompass 
> 
> Ephemeral data:== ephemeral state ::== Ephemeral configuration + Ephemeral
> operational state 
>

Unless you define what the terms mean and what ::== means I have no
clue what you are trying to convey here.

/js

-- 
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>


From nobody Wed Jun  1 01:39:31 2016
Return-Path: <j.schoenwaelder@jacobs-university.de>
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 01F6712D8E8 for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 01:39:30 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.626
X-Spam-Level: 
X-Spam-Status: No, score=-5.626 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, RP_MATCHES_RCVD=-1.426] autolearn=ham autolearn_force=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 msJcaUfZo2-B for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 01:39:28 -0700 (PDT)
Received: from atlas3.jacobs-university.de (atlas3.jacobs-university.de [212.201.44.18]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 22E7212D0EC for <i2rs@ietf.org>; Wed,  1 Jun 2016 01:39:28 -0700 (PDT)
Received: from localhost (demetrius5.irc-it.jacobs-university.de [10.70.0.222]) by atlas3.jacobs-university.de (Postfix) with ESMTP id DD3D18F7; Wed,  1 Jun 2016 10:39:26 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from atlas3.jacobs-university.de ([10.70.0.220]) by localhost (demetrius5.jacobs-university.de [10.70.0.222]) (amavisd-new, port 10030) with ESMTP id Bo2OqWotDCPk; Wed,  1 Jun 2016 10:39:23 +0200 (CEST)
Received: from hermes.jacobs-university.de (hermes.jacobs-university.de [212.201.44.23]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "hermes.jacobs-university.de", Issuer "Jacobs University CA - G01" (verified OK)) by atlas3.jacobs-university.de (Postfix) with ESMTPS; Wed,  1 Jun 2016 10:39:25 +0200 (CEST)
Received: from localhost (demetrius2.jacobs-university.de [212.201.44.47]) by hermes.jacobs-university.de (Postfix) with ESMTP id BA0B22004E; Wed,  1 Jun 2016 10:39:25 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from hermes.jacobs-university.de ([212.201.44.23]) by localhost (demetrius2.jacobs-university.de [212.201.44.32]) (amavisd-new, port 10024) with ESMTP id qdcrIeND6c85; Wed,  1 Jun 2016 10:39:24 +0200 (CEST)
Received: from elstar.local (elstar.jacobs.jacobs-university.de [10.50.231.133]) by hermes.jacobs-university.de (Postfix) with ESMTP id C1CD620047; Wed,  1 Jun 2016 10:39:23 +0200 (CEST)
Received: by elstar.local (Postfix, from userid 501) id 2F4D33AFFE7E; Wed,  1 Jun 2016 10:39:23 +0200 (CEST)
Date: Wed, 1 Jun 2016 10:39:22 +0200
From: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
To: Linda Dunbar <linda.dunbar@huawei.com>
Message-ID: <20160601083922.GB24118@elstar.local>
Mail-Followup-To: Linda Dunbar <linda.dunbar@huawei.com>, Andy Bierman <andy@yumaworks.com>, Jeffrey Haas <jhaas@pfrc.org>, Benoit Claise <bclaise@cisco.com>, "i2rs@ietf.org" <i2rs@ietf.org>, Susan Hares <shares@ndzh.com>, Alia Atlas <akatlas@gmail.com>
References: <000601d1bad5$70523090$50f691b0$@ndzh.com> <20160531063840.GA21289@elstar.local> <00d501d1bb45$0da83500$28f89f00$@ndzh.com> <20160531142540.GA22420@elstar.local> <001401d1bb4e$cfaefd10$6f0cf730$@ndzh.com> <20160531171304.GA22857@elstar.local> <CABCOCHR2JChAg1zmKDy_qxVOGYVeTm9wGVLyxzpChb5Ht0uaww@mail.gmail.com> <20160531195123.GN17462@pfrc.org> <CABCOCHQka+BezA6pLSiyOPcTghgx-UKK5dY6y70nME_EFZxCZg@mail.gmail.com> <4A95BA014132FF49AE685FAB4B9F17F657EACE6D@dfweml501-mbb>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <4A95BA014132FF49AE685FAB4B9F17F657EACE6D@dfweml501-mbb>
User-Agent: Mutt/1.6.0 (2016-04-01)
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/OFuTQEyhVZIxsJLnew2njv1fwnU>
Cc: "i2rs@ietf.org" <i2rs@ietf.org>, Andy Bierman <andy@yumaworks.com>, Alia Atlas <akatlas@gmail.com>, Benoit Claise <bclaise@cisco.com>, Jeffrey Haas <jhaas@pfrc.org>, Susan Hares <shares@ndzh.com>
Subject: Re: [i2rs] Can I2RS focus on the "Over the Wire" data structure , not on how end point handle the "DataStore"?
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
Reply-To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
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: <https://mailarchive.ietf.org/arch/browse/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, 01 Jun 2016 08:39:30 -0000

On Tue, May 31, 2016 at 11:09:10PM +0000, Linda Dunbar wrote:

> Internal implementation framework is always controversial, hard to
> converge, usually ending up with a document (if completed) that is
> too big and difficult to read.

Having a framework how different datastores conceptually fit together
is essential for getting implementations that behave in a predictable
manner. I am not talking about an implementation framework. As long as
people use key terms with different meanings, I have little hope that
this leads to interoperable behavior.
 
> The draft-schoenw-netmod-revised-datastores-00 is on the architectural framework for datastores as they are used by network management protocols. IMHO, how data stores are used are internal to the end points.

I think a client needs to know what it means to modify a certain
datastore. A client needs to know what validation means. If people
code against <running>, <indented>, <applied>, <ephemeral> (and there
are more suggested) and it is undefined how things conceptually relate
to each other and interact with each other, then I have my doubts this
will lead to interoperability since systems likely expose rather
different behavior.

/js

-- 
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>


From nobody Wed Jun  1 02:10:23 2016
Return-Path: <j.schoenwaelder@jacobs-university.de>
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 2AD5812D659 for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 02:10:22 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.626
X-Spam-Level: 
X-Spam-Status: No, score=-5.626 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, RP_MATCHES_RCVD=-1.426] autolearn=ham autolearn_force=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 s-85g9wqk_Me for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 02:10:20 -0700 (PDT)
Received: from atlas3.jacobs-university.de (atlas3.jacobs-university.de [212.201.44.18]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 002D612B009 for <i2rs@ietf.org>; Wed,  1 Jun 2016 02:10:17 -0700 (PDT)
Received: from localhost (demetrius5.irc-it.jacobs-university.de [10.70.0.222]) by atlas3.jacobs-university.de (Postfix) with ESMTP id BF53675D; Wed,  1 Jun 2016 11:10:16 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from atlas3.jacobs-university.de ([10.70.0.220]) by localhost (demetrius5.jacobs-university.de [10.70.0.222]) (amavisd-new, port 10030) with ESMTP id yPGpbMvfpjqa; Wed,  1 Jun 2016 11:10:11 +0200 (CEST)
Received: from hermes.jacobs-university.de (hermes.jacobs-university.de [212.201.44.23]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "hermes.jacobs-university.de", Issuer "Jacobs University CA - G01" (verified OK)) by atlas3.jacobs-university.de (Postfix) with ESMTPS; Wed,  1 Jun 2016 11:10:13 +0200 (CEST)
Received: from localhost (demetrius1.jacobs-university.de [212.201.44.46]) by hermes.jacobs-university.de (Postfix) with ESMTP id 6ACE32004E; Wed,  1 Jun 2016 11:10:13 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from hermes.jacobs-university.de ([212.201.44.23]) by localhost (demetrius1.jacobs-university.de [212.201.44.32]) (amavisd-new, port 10024) with ESMTP id 3foyi3R5dJsM; Wed,  1 Jun 2016 11:10:10 +0200 (CEST)
Received: from elstar.local (elstar.jacobs.jacobs-university.de [10.50.231.133]) by hermes.jacobs-university.de (Postfix) with ESMTP id 6552520047; Wed,  1 Jun 2016 11:10:10 +0200 (CEST)
Received: by elstar.local (Postfix, from userid 501) id 593133AFFF50; Wed,  1 Jun 2016 11:10:10 +0200 (CEST)
Date: Wed, 1 Jun 2016 11:10:10 +0200
From: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
To: Jeffrey Haas <jhaas@pfrc.org>
Message-ID: <20160601091010.GC24118@elstar.local>
Mail-Followup-To: Jeffrey Haas <jhaas@pfrc.org>, Susan Hares <shares@ndzh.com>, i2rs@ietf.org, 'Alia Atlas' <akatlas@gmail.com>
References: <000601d1bad5$70523090$50f691b0$@ndzh.com> <20160531063840.GA21289@elstar.local> <20160531193640.GL17462@pfrc.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20160531193640.GL17462@pfrc.org>
User-Agent: Mutt/1.6.0 (2016-04-01)
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/12XLYld2w0_4M-SlmnZipdyjn-o>
Cc: i2rs@ietf.org, Susan Hares <shares@ndzh.com>, 'Alia Atlas' <akatlas@gmail.com>
Subject: Re: [i2rs] I2RS Interim Meeting - June 1, 2016 - 10:00am - 11:00am - Topic: Ephemeral State Requirements
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
Reply-To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
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: <https://mailarchive.ietf.org/arch/browse/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, 01 Jun 2016 09:10:22 -0000

On Tue, May 31, 2016 at 03:36:40PM -0400, Jeffrey Haas wrote:
> [Note that I'm answering messages in thread order to the originator of a
> point rather than necessarily to responses.  This is intentional.]
> 
> On Tue, May 31, 2016 at 08:38:42AM +0200, Juergen Schoenwaelder wrote:
> > I read:
> > 
> >    Ephemeral-REQ-05: The ability to augment an object with appropriate
> >    YANG structures that have the property of being ephemeral.  An object
> >    defined as Yang module, schema tree, a schema node, submodule or
> >    components of a submodule (derived types, groupings, data node, RPCs,
> >    actions, and notifications".
> > 
> > I have trouble to parse this since the 1st sentence does not seem to
> > make sense for each element that you consider an object. That said,
> > the real issue here are lifetimes. The lifetime of a config true
> > object is determined by config changes, the lifetime of config false
> > objects is determined by operational state changes. What happens to
> > an ephemeral augmentation of objects if their lifetime expires?
> 
> I agree that your observation covers the general intent.  The requirements
> language above is attempting to be a bit too specific for a given
> implementation detail, namely instantiation of ephemeral behaviors in a data
> tree.
> 
> Could you please supply alternative text?

It is difficult since I am not sure what the original intention
was. There is augmentation at the schema tree level and then there is
augmentation at the data tree level. My understanding (which may be
wrong) is that I2RS primarily looks at data tree level augmentations
of operational state data and not so much at configuration datastore
data. Part of the openconfig inspired discussion is to do away with
the /foo and /foo-state division and that has an impact how the schema
trees are constructed.

> > The revised datastore model I have described in
> > draft-schoenw-netmod-revised-datastores-00 links the ephemeral state
> > only to operational state, not at all to configuration. Does this
> > model not satisfy the I2RS requirements and make things much simpler?
> 
> I've been unable to follow netmod/netconf recently, so thanks for pointing
> out this document.  It does seem to do a nice job in attempting to summarize
> a number of discussions on the various datastore concepts we've been seeing
> the last year.
> 
> There are a few things I find slightly problematic in your hierarchy with
> respect to what I2RS likely needs for ephemeral configuration state, but I
> think it might be solvable.  Here are some observations:
> 
> If ephemeral configuration state were to be treated as a datastore that
> feeds into running, would you expect that the resulting running state should
> be writable?  (I.e. running = candidate, startup + ephemeral?)

I doubt ephemeral feeds into the <running> datastore since running can be
expected to be persistent. draft-schoenw-netmod-revised-datastores-00.txt
actually suggests ephemeral interacts with <operational-state>. The
alternative view I mentioned is that a magic merge (+) takes <applied>
and <ephermeral> as input that feeds into <operational-state>. This is
likely closer to the 'pane of glass' model. The revised datastore model
kind of puts the magic merge function (+) into the operational datastore
itself, essentially treating I2RS ephemeral datastores like any other
control plane interface. (This still allowes a 'paned' implementation
within the <operational-state> but it does not require this.)

Note that draft-schoenw-netmod-revised-datastores-00 came out of a
meeting I had with Martin in Stockholm and there have been a couple of
calls where people where trying to figure out ways to deal with the
openconfig ideas. There is no WG agreement on any of this, its all
just input to discussion.

> It would be helpful to see how an ephemeral datastore is intended to
> interact in this diagram.  A detail that would need to be clarified is what
> happens when there is overlaps in portions of the schemas.

One of the driving forces were attempts to overcome the /foo and
/foo-state distinction we started to make in data models. This might
actually make ephemeral data model extensions easier.

> >  2.  Does Ephemeral-REQ-06 provide the Yang requirements in 
> > > a clear fashion?  Do you have any suggestions for alternative text? 
> > 
> > I think it is clear but broken. In particular the part about
> > indicating secure/non-secure transport.
> 
> The text relating to transport is applied to generally and needs clarifying.
> Let's provide a specific goal:
> 
> For Yang notifications, there may be some desire for the information to be
> sent across alternative transports, potentially with specific encodings.
> draft-ietf-netconf-yang-push covers I2RS use cases wherein the data may be
> sent via alternative transports.  Should we have some sort of markup in the
> Yang language to identify what transports might be utilized?  What about
> security requirements?

The choice of transports and in particular the question whether a
non-secure transport is acceptable is for me primarily a deployment
question and not a data modeling question.

> Obviously we can spell out transport security considerations as part of the
> description clause within a notification.  However, since a significant
> amount of feedback has been given from individuals with a security
> background that many objects we're likely to use in I2RS may be security
> sensitive - but not all! - some way to indicate the sensitivity may be
> required.

It is actually difficult for me to imagine objects that are in all
usage contexts never security sensitive.

> The motivation for this is that for insecure and high speed transports and
> ecodings such as IPFIX (e.g.) it may be fine to expose some data (e.g.
> interface statistics) but the same may not be true for other data and a
> secured transport may be required.

Whether an interface is used or not can be sensitive information. In a
certain deployment, it may still be OK to use an unsecure transport
because the path between the IPFIX exporter and collector is believed
to be reasonably protected. But that is a deployment question, not a
data modeling question.

> > > 3. Do you think any of the Ephemeral-REQ-07 NETCONF Changes 
> > >    are not necessary?   If so, what changes would you leave out?
> > >    Do the "policy-knobs" seem useful to you? 
> > >
> > > 4. Do you think any of the Ephemeral-REQ-08 RESTCONF changes 
> > >    are not necessary?  If so, what changes would you leave out? 
> > >    Do we need all the features (yang module library, call-home, 
> > >    server)? 
> > 
> > I think this needs to be trimmed down. I think it should be avoided to
> > create I2RS specific solutions for things that are already in place
> > (e.g., NETCONF has a mechanism for protocol capability discovery and
> > negotiation, NETCONF already supports multiple (secure) transports).
> > 
> > I think that having a clear architectural view is essential. I am not
> > sure the 'single pane of glass' model is the way to go. I think the
> > decision on the architectural model is key because it impacts many of
> > the other requirements and solutions.
> > 
> > You want both NC and RC to support XML and JSON and SSH and TLS and
> > (plaintext) TCP? Does this maximum of variability and flexibility
> > really help interoperability? Perhaps things should be reorganized
> > into things that are protocol agnostic (and should not be repeated)
> > and things that are protocol specific - if there is indeed a need to
> > work with multiple protocols.
> 
> I agree we're being overly specific here, although as noted above we need
> some discussion about what to do about insecure transports for some
> operations, such as subscriptions.  (I think that's covered by the 
> yang-push doc in particular.)

So lets leave it there and lets not repeat it.

> Item 6 about precedence of local configuration vs. ephemeral configuration
> requires discussion, including in the revised-datastore document if it
> chooses to address ephemeral configuration.
> 
> > I also think that it is not needed to write down requirements to
> > NETCONF for things that are already solved or being worked on.
> 
> I think we're happy to subtract these, or at the least call out the existing
> work in progress.  As noted in some earlier drafts, the goal of the I2RS
> drafts should be to not have drafts in I2RS, but solution space documents in
> netconf and netmod.

Yes!

/js

-- 
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>


From nobody Wed Jun  1 02:20:04 2016
Return-Path: <j.schoenwaelder@jacobs-university.de>
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 039F112D661 for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 02:20:03 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.626
X-Spam-Level: 
X-Spam-Status: No, score=-5.626 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, RP_MATCHES_RCVD=-1.426] autolearn=ham autolearn_force=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 GWbw_bGDB6yz for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 02:20:01 -0700 (PDT)
Received: from atlas3.jacobs-university.de (atlas3.jacobs-university.de [212.201.44.18]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id AABF112D668 for <i2rs@ietf.org>; Wed,  1 Jun 2016 02:19:59 -0700 (PDT)
Received: from localhost (demetrius5.irc-it.jacobs-university.de [10.70.0.222]) by atlas3.jacobs-university.de (Postfix) with ESMTP id 73467FA4; Wed,  1 Jun 2016 11:19:58 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from atlas3.jacobs-university.de ([10.70.0.220]) by localhost (demetrius5.jacobs-university.de [10.70.0.222]) (amavisd-new, port 10030) with ESMTP id KfSWS9btfQeS; Wed,  1 Jun 2016 11:19:55 +0200 (CEST)
Received: from hermes.jacobs-university.de (hermes.jacobs-university.de [212.201.44.23]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "hermes.jacobs-university.de", Issuer "Jacobs University CA - G01" (verified OK)) by atlas3.jacobs-university.de (Postfix) with ESMTPS; Wed,  1 Jun 2016 11:19:57 +0200 (CEST)
Received: from localhost (demetrius2.jacobs-university.de [212.201.44.47]) by hermes.jacobs-university.de (Postfix) with ESMTP id 700BF2004E; Wed,  1 Jun 2016 11:19:57 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from hermes.jacobs-university.de ([212.201.44.23]) by localhost (demetrius2.jacobs-university.de [212.201.44.32]) (amavisd-new, port 10024) with ESMTP id 15SfQoAMXkYr; Wed,  1 Jun 2016 11:19:54 +0200 (CEST)
Received: from elstar.local (elstar.jacobs.jacobs-university.de [10.50.231.133]) by hermes.jacobs-university.de (Postfix) with ESMTP id 1E60720047; Wed,  1 Jun 2016 11:19:54 +0200 (CEST)
Received: by elstar.local (Postfix, from userid 501) id 10A0B3B00067; Wed,  1 Jun 2016 11:19:54 +0200 (CEST)
Date: Wed, 1 Jun 2016 11:19:53 +0200
From: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
To: Susan Hares <shares@ndzh.com>
Message-ID: <20160601091953.GD24118@elstar.local>
Mail-Followup-To: Susan Hares <shares@ndzh.com>, "'Joel M. Halpern'" <jmh@joelhalpern.com>, i2rs@ietf.org
References: <000601d1bad5$70523090$50f691b0$@ndzh.com> <20160531063840.GA21289@elstar.local> <026df5be-4a60-f340-60aa-d713a0e75c48@joelhalpern.com> <20160531184844.GB22928@elstar.local> <413ef504-49a8-2ba2-7fd4-582a41bd0ad0@joelhalpern.com> <20160531192729.GA23116@elstar.local> <005801d1bb7a$e7b2e440$b718acc0$@ndzh.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <005801d1bb7a$e7b2e440$b718acc0$@ndzh.com>
User-Agent: Mutt/1.6.0 (2016-04-01)
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/NrvqmYR4d9vvq-VF5-EGjD1Zow4>
Cc: i2rs@ietf.org, "'Joel M. Halpern'" <jmh@joelhalpern.com>
Subject: Re: [i2rs] Ephemeral State Requirements discussion
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
Reply-To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
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: <https://mailarchive.ietf.org/arch/browse/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, 01 Jun 2016 09:20:03 -0000

On Tue, May 31, 2016 at 04:27:51PM -0400, Susan Hares wrote:
> Juergen: 
> 
> How does ephemeral sitting next to the <applied> data store provide
> the ability to augment configuration with ephemeral configuration or
> operational state with ephemeral operational state?

At the schema level, you will augment the schema tree. If the current
separation of /foo and /foo-state would go away, this will likely get
simpler (but this is orthogonal to the question how an <ephemeral>
datastore conceptually interacts with the other datastores).

At the data tree level, there is a magic merging (+) function involved
that takes configuration data from a configuration datastore and data
from an ephemeral data store and produces the resulting operational
state. The idea was to not further detail how this is achieved and
instead treat an ephemeral datastore pretty much like any other
control plane interface interacting with <operational state>.

/js

-- 
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>


From nobody Wed Jun  1 03:24:04 2016
Return-Path: <zhuangyan.zhuang@huawei.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 6A44812D136 for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 03:24:03 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.647
X-Spam-Level: 
X-Spam-Status: No, score=-5.647 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-1.426, SPF_PASS=-0.001] autolearn=ham autolearn_force=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 0Gg2A8aeP2cb for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 03:24:01 -0700 (PDT)
Received: from lhrrgout.huawei.com (lhrrgout.huawei.com [194.213.3.17]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id BF30912D098 for <i2rs@ietf.org>; Wed,  1 Jun 2016 03:24:00 -0700 (PDT)
Received: from 172.18.7.190 (EHLO lhreml708-cah.china.huawei.com) ([172.18.7.190]) by lhrrg01-dlp.huawei.com (MOS 4.3.7-GA FastPath queued) with ESMTP id CQB03290; Wed, 01 Jun 2016 10:23:58 +0000 (GMT)
Received: from NKGEML411-HUB.china.huawei.com (10.98.56.70) by lhreml708-cah.china.huawei.com (10.201.5.202) with Microsoft SMTP Server (TLS) id 14.3.235.1; Wed, 1 Jun 2016 11:23:57 +0100
Received: from NKGEML513-MBX.china.huawei.com ([169.254.1.148]) by nkgeml411-hub.china.huawei.com ([10.98.56.70]) with mapi id 14.03.0235.001; Wed, 1 Jun 2016 18:23:54 +0800
From: "Zhuangyan (Yan)" <zhuangyan.zhuang@huawei.com>
To: "i2rs@ietf.org" <i2rs@ietf.org>
Thread-Topic: New Version Notification for draft-zhuang-i2rs-yang-dc-fabric-network-topology-00.txt
Thread-Index: AQHRu+1CsUBQ7hNiGUqNULvVUBROJ5/UZFxA
Date: Wed, 1 Jun 2016 10:23:53 +0000
Message-ID: <9B4BC45FDEDDD84F813E9E4A5BAF8785941F95F8@nkgeml513-mbx.china.huawei.com>
Accept-Language: zh-CN, en-US
Content-Language: zh-CN
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-originating-ip: [10.135.170.230]
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-CFilter-Loop: Reflected
X-Mirapoint-Virus-RAPID-Raw: score=unknown(0), refid=str=0001.0A090205.574EB7BE.0073, ss=1, re=0.000, recu=0.000, reip=0.000,  cl=1, cld=1, fgs=0, ip=169.254.1.148, so=2013-06-18 04:22:30, dmn=2013-03-21 17:37:32
X-Mirapoint-Loop-Id: 89833ed9e8796b103449a7bf97827d19
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/ZjhBk6KR3hgjzMWip8fbR0DeTsg>
Subject: [i2rs] FW: New Version Notification for draft-zhuang-i2rs-yang-dc-fabric-network-topology-00.txt
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 01 Jun 2016 10:24:03 -0000

RGVhciBhbGwsDQoNCldlIHByZXBhcmUgYSBkcmFmdCBvbiB0aGUgREMgZmFicmljIHRvcG9sb2d5
LCB3aGljaCBhdWdtZW50cyB0aGUgbmV0d29yay10b3BvbG9neSB3aXRoIHNvbWUgY29tbW9uIERD
IGZhYnJpYyBhdHRyaWJ1dGVzLg0KDQpEdWUgdG8gZGlmZmVyZW50IHRlY2hub2xvZ2llcyB1c2Vk
IGJ5IGZhYnJpY3Mgd2l0aGluIGEgREMsIGEgaGV0ZXJvZ2VuZW91cyBuZXR3b3JrIG1heSBtYWtl
IHRoZSBtYW5hZ2VtZW50IGFuZCBzZXJ2aWNlIHByb3Zpc2lvbmluZyBzb3BoaXN0aWNhdGVkIGFu
ZCBjb21wbGV4LCB3aGljaCBpcyBhbHNvIG5vdCBmbGV4aWJsZSBmb3IgdGhlIERDIGNhcGFjaXR5
IHNjYWxlLg0KV2l0aGluIHRoaXMgaW4gbWluZCwgdGhpcyBkcmFmdCBpcyB0byBkZWZpbmUgYSBi
YXNpYyB0b3BvbG9neSBmb3IgYSBkYyBmYWJyaWMgd2l0aCBjb21tb24gY29uZmlndXJhdGlvbnMg
YW5kIG9wZXJhdGlvbnMgdXNlZCBieSB2ZW5kb3JzLg0KQnkgdXNpbmcgdGhpcyBtb2RlbCwgdGhl
IG1hbmFnZW1lbnQgc3lzdGVtIGNhbiBvcGVyYXRlIGFuZCBjb25maWd1cmUgZGMgbmV0d29ya3Mg
YnkgbWFuYWdpbmcgYSBjb2xsZWN0aW9uIG9mIGZhYnJpY3MsIGVhY2ggb2Ygd2hpY2ggbWlnaHQg
dXNlIGRpZmZlcmVudCB0ZWNobm9sb2dpZXMuDQpQbGVhc2UgZmluZCBtb3JlIGRldGFpbHMgaW4g
dGhlIGRyYWZ0IGJlbG93Lg0KDQpDb21tZW50cyBhbmQgZmVlZGJhY2tzIGFyZSBhcHByZWNpYXRl
ZCENCg0KVGhhbmsgeW91IHZlcnkgbXVjaC4NCg0KQmVzdCBSZWdhcmRzLA0KDQpZYW4NCg0KLS0t
LS3pgq7ku7bljp/ku7YtLS0tLQ0K5Y+R5Lu25Lq6OiBpbnRlcm5ldC1kcmFmdHNAaWV0Zi5vcmcg
W21haWx0bzppbnRlcm5ldC1kcmFmdHNAaWV0Zi5vcmddIA0K5Y+R6YCB5pe26Ze0OiAyMDE25bm0
NuaciDHml6UgMTg6MDYNCuaUtuS7tuS6ujogU2hpZGFuaWFuOyBaaHVhbmd5YW4gKFlhbik7IFpo
dWFuZ3lhbiAoWWFuKQ0K5Li76aKYOiBOZXcgVmVyc2lvbiBOb3RpZmljYXRpb24gZm9yIGRyYWZ0
LXpodWFuZy1pMnJzLXlhbmctZGMtZmFicmljLW5ldHdvcmstdG9wb2xvZ3ktMDAudHh0DQoNCg0K
QSBuZXcgdmVyc2lvbiBvZiBJLUQsIGRyYWZ0LXpodWFuZy1pMnJzLXlhbmctZGMtZmFicmljLW5l
dHdvcmstdG9wb2xvZ3ktMDAudHh0DQpoYXMgYmVlbiBzdWNjZXNzZnVsbHkgc3VibWl0dGVkIGJ5
IFlhbiBaaHVhbmcgYW5kIHBvc3RlZCB0byB0aGUgSUVURiByZXBvc2l0b3J5Lg0KDQpOYW1lOgkJ
ZHJhZnQtemh1YW5nLWkycnMteWFuZy1kYy1mYWJyaWMtbmV0d29yay10b3BvbG9neQ0KUmV2aXNp
b246CTAwDQpUaXRsZToJCUEgWUFORyBEYXRhIE1vZGVsIGZvciBGYWJyaWMgVG9wb2xvZ3kgaW4g
RGF0YSBDZW50ZXIgTmV0d29yaw0KRG9jdW1lbnQgZGF0ZToJMjAxNi0wNi0wMQ0KR3JvdXA6CQlJ
bmRpdmlkdWFsIFN1Ym1pc3Npb24NClBhZ2VzOgkJMTkNClVSTDogICAgICAgICAgICBodHRwczov
L3d3dy5pZXRmLm9yZy9pbnRlcm5ldC1kcmFmdHMvZHJhZnQtemh1YW5nLWkycnMteWFuZy1kYy1m
YWJyaWMtbmV0d29yay10b3BvbG9neS0wMC50eHQNClN0YXR1czogICAgICAgICBodHRwczovL2Rh
dGF0cmFja2VyLmlldGYub3JnL2RvYy9kcmFmdC16aHVhbmctaTJycy15YW5nLWRjLWZhYnJpYy1u
ZXR3b3JrLXRvcG9sb2d5Lw0KSHRtbGl6ZWQ6ICAgICAgIGh0dHBzOi8vdG9vbHMuaWV0Zi5vcmcv
aHRtbC9kcmFmdC16aHVhbmctaTJycy15YW5nLWRjLWZhYnJpYy1uZXR3b3JrLXRvcG9sb2d5LTAw
DQoNCg0KQWJzdHJhY3Q6DQogICBUaGlzIGRvY3VtZW50IGRlZmluZXMgYSBZQU5HIGRhdGEgbW9k
ZWwgZm9yIGZhYnJpYyB0b3BvbG9neSBpbiBEYXRhDQogICBDZW50ZXIgTmV0d29yay4NCg0KICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIA0KDQoNClBsZWFzZSBub3RlIHRoYXQgaXQgbWF5IHRha2Ug
YSBjb3VwbGUgb2YgbWludXRlcyBmcm9tIHRoZSB0aW1lIG9mIHN1Ym1pc3Npb24gdW50aWwgdGhl
IGh0bWxpemVkIHZlcnNpb24gYW5kIGRpZmYgYXJlIGF2YWlsYWJsZSBhdCB0b29scy5pZXRmLm9y
Zy4NCg0KVGhlIElFVEYgU2VjcmV0YXJpYXQNCg0K


From nobody Wed Jun  1 04:09:23 2016
Return-Path: <shares@ndzh.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 E180612D0A0 for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 04:09:21 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.738
X-Spam-Level: *
X-Spam-Status: No, score=1.738 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, RDNS_NONE=0.793] autolearn=no autolearn_force=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 xj1amoyYMn9s for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 04:09:20 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 3FBD512B027 for <i2rs@ietf.org>; Wed,  1 Jun 2016 04:09:20 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=74.43.47.63; 
From: "Susan Hares" <shares@ndzh.com>
To: "'Joel M. Halpern'" <jmh@joelhalpern.com>
References: <000601d1bad5$70523090$50f691b0$@ndzh.com> <20160531063840.GA21289@elstar.local> <00d501d1bb45$0da83500$28f89f00$@ndzh.com> <20160531142540.GA22420@elstar.local> <001401d1bb4e$cfaefd10$6f0cf730$@ndzh.com> <20160531171304.GA22857@elstar.local> <004801d1bb72$d0129680$7037c380$@ndzh.com> <7026105d-6695-c001-ab91-a566bcf8405e@joelhalpern.com>
In-Reply-To: <7026105d-6695-c001-ab91-a566bcf8405e@joelhalpern.com>
Date: Wed, 1 Jun 2016 07:09:02 -0400
Message-ID: <009101d1bbf6$08548200$18fd8600$@ndzh.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQJdaenpM7ljbP1C/TwjkI20GPnldwI0uYM8AiAGwTkCHPlBSwI0/t9yATo5ZLkC16jwLwJ+ZFiQnkNdtnA=
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/JAlrCnFA_D-jwdypVj3cc6vuTu4>
Cc: i2rs@ietf.org
Subject: Re: [i2rs] I2RS Interim Meeting - June 1, 2016 - 10:00am - 11:00am - Topic: Ephemeral State Requirements
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 01 Jun 2016 11:09:22 -0000

Joel: 

I am surprised you asked this question as you have followed the I2RS data
modules.  Is this question rhetorical? 
Ephemeral operational state have three types: 

1) results of rpc operations stored to respond to rpc actions 

I2RS-RIB-Data 
Rpcs: 
      +---x rib-add
      |  +---w input
      |  |  +---w rib-name        string
      |  |  +---w rib-family      rib-family-def
      |  |  +---w ip-rpf-check?   boolean
      |  +--ro output
      |     +--ro result uint32
      |     +--ro reason? string

2) notification data stored 


I2RS-RIB-Data
   notifications:
      +---n nexthop-resolution-status-change
      |  +--ro nexthop
..... 
      +---n route-change
         +--ro rib-name                 string
         +--ro rib-family               rib-family-def
         +--ro route-index              uint64

3) read-only status information 

See my presentation where the bgp-global-config - can be used by config or
state.  It is ephemeral state augmenting these features.   Or see the L2
topology module below. 

augment /nw:networks/nw:network/nw:node/nt:termination-point:
   +--rw l2-termination-point-attributes
      +--rw description?          string
      +--rw maximum-frame-size?   uint32
      +--rw (l2-termination-point-type)?
      |  +--:(ethernet)
      |  |  +--rw mac-address?          yang:mac-address
      |  |  +--rw eth-encapsulation?    identityref
      |  |  +--rw port-vlan-id?         vlan {VLAN}?
      |  |  +--rw vlan-id-name* [vlan-id] {VLAN}?
      |  |     +--rw vlan-id      vlan
      |  |     +--rw vlan-name?   string
      |  +--:(legacy)
      |     +--rw encapsulation?        identityref
      +--ro tp-state?             Enumeration


Sue Hares 

-----Original Message-----
From: Joel M. Halpern [mailto:jmh@joelhalpern.com] 
Sent: Tuesday, May 31, 2016 4:10 PM
To: Susan Hares
Cc: i2rs@ietf.org
Subject: Re: [i2rs] I2RS Interim Meeting - June 1, 2016 - 10:00am - 11:00am
- Topic: Ephemeral State Requirements

Can you clarify something for me?
What is ephemeral operational state?

The only thing I can think of is operational state like statistics related
to ephemeral leaves or constructs?
Is that what you mean by "ephemeral operational state"?
The reason i ask is that such state does not seem to need any special
handling or labeling.

Yours,
Joel

On 5/31/16 3:29 PM, Susan Hares wrote:
> Juergen:
>
>
>> I understand YANG validation rules and I understand YANG's notion of
> configuration datastores. I do not >think this matches your ephemeral 
> configuration validation.
>
> This does not provide a technical discussion of:
> a) what you understand the ephemeral configuration validation rules to 
> be,
> b) why you do not the model matches the configuration validation rules.
>
> 1 Data Model is a great idea for NETCONF/NETMOD.  However, it should 
> encompass
>
> Ephemeral data:== ephemeral state ::== Ephemeral configuration + 
> Ephemeral operational state
>
> Cheers,
>
> Sue


From nobody Wed Jun  1 04:18:06 2016
Return-Path: <shares@ndzh.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 91F4812D0E1 for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 04:18:05 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.738
X-Spam-Level: *
X-Spam-Status: No, score=1.738 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, RDNS_NONE=0.793] autolearn=no autolearn_force=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 QqVsDr1a_NS6 for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 04:18:04 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 534D212D17D for <i2rs@ietf.org>; Wed,  1 Jun 2016 04:18:04 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=74.43.47.63; 
From: "Susan Hares" <shares@ndzh.com>
To: "'Joel Halpern Direct'" <jmh.direct@joelhalpern.com>, <i2rs@ietf.org>
References: <ac12ae3a-571d-410e-50bb-cd48d58dea82@joelhalpern.com> <005601d1bb7a$5aacbfd0$10063f70$@ndzh.com> <7147944e-fe4d-4ea2-47af-1264188f426c@joelhalpern.com>
In-Reply-To: <7147944e-fe4d-4ea2-47af-1264188f426c@joelhalpern.com>
Date: Wed, 1 Jun 2016 07:17:58 -0400
Message-ID: <009301d1bbf7$40fa5980$c2ef0c80$@ndzh.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQIhcry/DffX1766+S6/UC1Jb9Ue0QFfwZxbAzHogSqfEHmScA==
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/MSgpkpLH7rutx1hmFs2b8Z8AKIk>
Subject: Re: [i2rs] ephemeral RPC?
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 01 Jun 2016 11:18:05 -0000

Joel: 

I am simply stating that 

I2RS RIB data model is an ephemeral-only data model, and uses an rpc to do
rib add/delete, route add/delete, nexthop add/delete.   The rpc function
must handle ephemeral datastore information.   The authors utilized the
input capabilities of the rpc.  For a ephemeral-only model, it does not
matter if the rpc is "ephemeral" or "non-ephemeral".   However, in a mixed
model (see my example of the bgp-global-config changes), this constraints
the functionality.      

The  <get-config> and <edit-config> is a separate function from rpc.  The
protocol-strawman indicates these need to be changed to handle ephemeral
datastore. 

Sue 


-----Original Message-----
From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Joel Halpern Direct
Sent: Tuesday, May 31, 2016 4:27 PM
To: Susan Hares; i2rs@ietf.org
Subject: Re: [i2rs] ephemeral RPC?

This may well be just me leaping to assumptions about function structuring.
My apologies for raising a red herring if so.

I think this may be following the paradigm in Juergen's draft, where
accessing data <get...> and <set...> in different data stores uses different
RPCs?  Is that your intent?

Until I read Juergen's draft, it had never occurred to me that one would do
it that way.  I had expected that one would perform an operation, and target
it at a data store.

But if indeed we use different RPCs for the different data stores, then I
guess we do need versions of <get...> and <set...> that point at ephemeral.

Yours,
Joel

On 5/31/16 4:23 PM, Susan Hares wrote:
> Joel:
>
> I2RS data model is a ephemeral-only data model, and uses an rpc to do 
> rib add/delete, route add/delete, nexthop add/delete.  Therefore, we 
> need ephemeral rpc support.
>
>
> Sue
>
> -----Original Message-----
> From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Joel M. Halpern
> Sent: Tuesday, May 31, 2016 12:34 PM
> To: i2rs@ietf.org
> Subject: [i2rs] ephemeral RPC?
>
> We have agreed that non-ephemeral data must not reference ephemeral data.
>
> However, we have, up till now, not had the notion of ephemeral RPCs.  
> I see that the recent ephemeral requirements draft, as a side-effect 
> of improving clarity, creates the notion of an ephemeral RPC.
>
> What is an ephemeral RPC, and why do we have it?
> We have been, up till now, assuming that we could use normal NetConf 
> RPCs to set and get the ephemeral information.
>
> Thank you,
> Joel
>
> _______________________________________________
> 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


From nobody Wed Jun  1 04:33:14 2016
Return-Path: <shares@ndzh.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 2D16112D191 for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 04:33:13 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.738
X-Spam-Level: *
X-Spam-Status: No, score=1.738 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, RDNS_NONE=0.793] autolearn=no autolearn_force=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 0eH7rUus0NRv for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 04:33:11 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 1708512D195 for <i2rs@ietf.org>; Wed,  1 Jun 2016 04:33:11 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=74.43.47.63; 
From: "Susan Hares" <shares@ndzh.com>
To: "'Juergen Schoenwaelder'" <j.schoenwaelder@jacobs-university.de>, "'Joel M. Halpern'" <jmh@joelhalpern.com>
References: <000601d1bad5$70523090$50f691b0$@ndzh.com> <20160531063840.GA21289@elstar.local> <026df5be-4a60-f340-60aa-d713a0e75c48@joelhalpern.com> <20160531184844.GB22928@elstar.local>
In-Reply-To: <20160531184844.GB22928@elstar.local>
Date: Wed, 1 Jun 2016 07:32:45 -0400
Message-ID: <009501d1bbf9$587af900$0970eb00$@ndzh.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQJdaenpM7ljbP1C/TwjkI20GPnldwI0uYM8ArQFymECLv3ehJ6EXPrw
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/arUiNoSEpAifMDAlWbNlSqwIC8s>
Cc: i2rs@ietf.org
Subject: Re: [i2rs] Ephemeral State Requirements discussion
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 01 Jun 2016 11:33:13 -0000

Juergen: 

A misconception you have below is that I2RS data models have mostly state.
There are the types of data models: 

1) ephemeral only - configuration and operational data 
2) mixed configuration - ephemeral augmentations to configuration
(bgp-global-config example used for config)
3) mixed operational state - ephemeral augmentations to operational state
(bgp-global-config  example used for state) 
4) some combination of 2 and 3 

Sue 

-----Original Message-----
From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Juergen Schoenwaelder
Sent: Tuesday, May 31, 2016 2:49 PM
To: Joel M. Halpern
Cc: i2rs@ietf.org
Subject: Re: [i2rs] Ephemeral State Requirements discussion

On Tue, May 31, 2016 at 02:27:12PM -0400, Joel M. Halpern wrote:

> If I understood you correctly Juergen, you are suggesting using your
> document:
> https://tools.ietf.org/html/draft-schoenw-netmod-revised-datastores-00
> as a basis for addressing the I2RS requirements.

No. All I am saying is that there are discussions underway basically
triggered by openconfig ideas and that we need to find a common
architectural model for the various datastores different groups like to
have. The I-D cited above is input to this discussion. The discussion goes
beyond I2RS concerns but still I2RS concerns should be considered by this
discussion.
 
>> I am having trouble understanding how the approach in your document 
>> would work for ephemeral configured information.
>> 1) The document says that such information is treated like other 
>> control protocols.
>> 1a) How would one use NetConf or RestConf to write this?

>Via an ephemeral datastore. The difference is that this ephemeral datastore
primarily interacts with >operational state. This actually seems consistent
since I2RS tends to favor to relate to state more than to >config.

Sue: Not true.  See often repeated statements. 

>> 1b) How would the controllable relationship with conventional 
>> configuration be realized

>The ephemeral datastore overwrite, right? So an implementation pulls from
the <applied> config datastore >and the ephemeral datastore and the (+)
function gives content from the ephemeral datastore preference.

Why are you assuming the applied data store.  It could also be done at the
intended data store before the data is resolved.   Example usage is:
ephemeral route overwrites a normal RIB Route and then needs to resolve
next-hop.   (See I2RS Ephemeral RIB and overwriting local configuration). 

>> 1c) How would the descriptions of this information be provided? 
>> (Arguably, this last is not a requirements question, but it would help 
>> in understanding your proposal.

>A YANG module. Perhaps I do not understand the question.

I2RS RIB Data Model is a Yang model.

> 2) Similarly, since operations have been segregated by datastore, how 
> would an I2RS client read the configured information to tell what was 
> being applied?

>Be careful with 'applied' since there now is an 'applied' datastore with
very specific meaning. But in general, a >client that wants to read one of
the configuration datastores simply reads that datastore.

This does not answer Joel's question.  How does the I2RS client read an
applied I2RS RIB Data Model? 

>> 3) How would the I2RS requirement for priority of operation be applied?

>It is the magic (+) function that merges <applied> config with <ephemeral>
config leading to 
>operational state.

Sue: Again, at what stage does this 

>> 4) How would the requirement for reversion to configured values upon 
>> removal of an I2RS modification be done?

>The magic (+) function would have to take care of it.

Sue: It would be good to see some definition of a "magical +" function in
order to review your specification. 

>> It is very hard as a reader to tell if your approach is acceptable, 
>> better than, or worse than, the one we have on the table.

Juergen: 
>I understand. The alternative model is to have <ephemeral> somewhere
between <applied> and ><operational state>. But then it seems people want
<ephemeral> really behave more like other control plane >protocols that also
typically interact directly with <operational state>.

Sue:  Why is this the only place.  Why not a merge at the intended
configuration>?   "It seems people" - seems to indicate some source of
input.  Can you share this input to your design? 

> As far as I can tell, in terms of a consistent architecture for data 
> stores, both approaches consist of creating extra data stores when needed.

> Yes. But details matter. For example, <intended> and YANG configuration
datastore validation are one thing, > I tend to believe that I2RS validation
really means something different. Hence I am pointing out that we need > the
I2RS requirements but then we (NETMOD/NETCONF people) also need to come up
with an architectural > model that considers things that are beyond I2RS'
scope.

Sue: Does this mean you feel you can ignore the I2RS requirements if you
feel it does not meet your architectural model? 


/js

-- 
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>

_______________________________________________
i2rs mailing list
i2rs@ietf.org
https://www.ietf.org/mailman/listinfo/i2rs


From nobody Wed Jun  1 04:41:31 2016
Return-Path: <shares@ndzh.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 25A9C12D09E for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 04:41:30 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.749
X-Spam-Level: *
X-Spam-Status: No, score=1.749 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, HTML_MESSAGE=0.001, RDNS_NONE=0.793, T_KAM_HTML_FONT_INVALID=0.01] autolearn=no autolearn_force=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 pNgoEJeCn2hM for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 04:41:28 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id F06D112B059 for <i2rs@ietf.org>; Wed,  1 Jun 2016 04:41:27 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=74.43.47.63; 
From: "Susan Hares" <shares@ndzh.com>
To: "'Jeffrey Haas'" <jhaas@pfrc.org>
References: <ac12ae3a-571d-410e-50bb-cd48d58dea82@joelhalpern.com> <005601d1bb7a$5aacbfd0$10063f70$@ndzh.com> <20160531215802.GO17462@pfrc.org>
In-Reply-To: <20160531215802.GO17462@pfrc.org>
Date: Wed, 1 Jun 2016 07:41:20 -0400
Message-ID: <009e01d1bbfa$848bd630$8da38290$@ndzh.com>
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="----=_NextPart_000_009F_01D1BBD8.FD7D4370"
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQIhcry/DffX1766+S6/UC1Jb9Ue0QFfwZxbAuhMHnefEs1aEA==
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/PmJ6sqhvYIWxPi3alWiYl-hswCw>
Cc: i2rs@ietf.org, "'Joel M. Halpern'" <jmh@joelhalpern.com>
Subject: Re: [i2rs] ephemeral RPC?
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 01 Jun 2016 11:41:30 -0000

This is a multipart message in MIME format.

------=_NextPart_000_009F_01D1BBD8.FD7D4370
Content-Type: text/plain;
	charset="us-ascii"
Content-Transfer-Encoding: 7bit

Jeff: 

 

I believe I have answered this elsewhere.  I2RS RIB Data Model provides an
rpc to:

.         add/delete RIBs, 

.         Add/delete Routes, 

.         Add/delete nexthops. 

 

The rpc could be augmented to simply provide a datastore. 

 

Sue  

 

-----Original Message-----
From: Jeffrey Haas [mailto:jhaas@pfrc.org] 
Sent: Tuesday, May 31, 2016 5:58 PM
To: Susan Hares
Cc: 'Joel M. Halpern'; i2rs@ietf.org
Subject: Re: [i2rs] ephemeral RPC?

 

Sue,

 

Rather than saying "ephemeral RPC", I suspect you mean an RPC that has
impact on ephemeral configuration or operational state.

 

Arguably, if the RPC in question only manifests as operational state for
that case the idea of ephemeral configuration in yang may become moot.

 

-- Jeff

 

On Tue, May 31, 2016 at 04:23:54PM -0400, Susan Hares wrote:

> Joel:

> 

> I2RS data model is a ephemeral-only data model, and uses an rpc to do 

> rib add/delete, route add/delete, nexthop add/delete.  Therefore, we 

> need ephemeral rpc support.

> 

> 

> Sue

> 

> -----Original Message-----

> From: i2rs [ <mailto:i2rs-bounces@ietf.org> mailto:i2rs-bounces@ietf.org]
On Behalf Of Joel M. Halpern

> Sent: Tuesday, May 31, 2016 12:34 PM

> To:  <mailto:i2rs@ietf.org> i2rs@ietf.org

> Subject: [i2rs] ephemeral RPC?

> 

> We have agreed that non-ephemeral data must not reference ephemeral data.

> 

> However, we have, up till now, not had the notion of ephemeral RPCs.  

> I see that the recent ephemeral requirements draft, as a side-effect 

> of improving clarity, creates the notion of an ephemeral RPC.

> 

> What is an ephemeral RPC, and why do we have it?

> We have been, up till now, assuming that we could use normal NetConf 

> RPCs to set and get the ephemeral information.

> 

> Thank you,

> Joel

> 

> _______________________________________________

> i2rs mailing list

>  <mailto:i2rs@ietf.org> i2rs@ietf.org

>  <https://www.ietf.org/mailman/listinfo/i2rs>
https://www.ietf.org/mailman/listinfo/i2rs

> 

> _______________________________________________

> i2rs mailing list

>  <mailto:i2rs@ietf.org> i2rs@ietf.org

>  <https://www.ietf.org/mailman/listinfo/i2rs>
https://www.ietf.org/mailman/listinfo/i2rs


------=_NextPart_000_009F_01D1BBD8.FD7D4370
Content-Type: text/html;
	charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" =
xmlns:o=3D"urn:schemas-microsoft-com:office:office" =
xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" =
xmlns=3D"http://www.w3.org/TR/REC-html40"><head><META =
HTTP-EQUIV=3D"Content-Type" CONTENT=3D"text/html; =
charset=3Dus-ascii"><meta name=3DGenerator content=3D"Microsoft Word 14 =
(filtered medium)"><style><!--
/* Font Definitions */
@font-face
	{font-family:Wingdings;
	panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
	{font-family:Tahoma;
	panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0in;
	margin-bottom:.0001pt;
	font-size:11.0pt;
	font-family:"Calibri","sans-serif";}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:blue;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:purple;
	text-decoration:underline;}
p.MsoPlainText, li.MsoPlainText, div.MsoPlainText
	{mso-style-priority:99;
	mso-style-link:"Plain Text Char";
	margin:0in;
	margin-bottom:.0001pt;
	font-size:11.0pt;
	font-family:"Calibri","sans-serif";}
p.MsoAcetate, li.MsoAcetate, div.MsoAcetate
	{mso-style-priority:99;
	mso-style-link:"Balloon Text Char";
	margin:0in;
	margin-bottom:.0001pt;
	font-size:8.0pt;
	font-family:"Tahoma","sans-serif";}
span.PlainTextChar
	{mso-style-name:"Plain Text Char";
	mso-style-priority:99;
	mso-style-link:"Plain Text";
	font-family:"Calibri","sans-serif";}
span.BalloonTextChar
	{mso-style-name:"Balloon Text Char";
	mso-style-priority:99;
	mso-style-link:"Balloon Text";
	font-family:"Tahoma","sans-serif";}
.MsoChpDefault
	{mso-style-type:export-only;
	font-family:"Calibri","sans-serif";}
@page WordSection1
	{size:8.5in 11.0in;
	margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
	{page:WordSection1;}
/* List Definitions */
@list l0
	{mso-list-id:1286473395;
	mso-list-type:hybrid;
	mso-list-template-ids:1839262368 67698689 67698691 67698693 67698689 =
67698691 67698693 67698689 67698691 67698693;}
@list l0:level1
	{mso-level-number-format:bullet;
	mso-level-text:\F0B7;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	margin-left:38.35pt;
	text-indent:-.25in;
	font-family:Symbol;}
@list l0:level2
	{mso-level-number-format:bullet;
	mso-level-text:o;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	margin-left:74.35pt;
	text-indent:-.25in;
	font-family:"Courier New";}
@list l0:level3
	{mso-level-number-format:bullet;
	mso-level-text:\F0A7;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	margin-left:110.35pt;
	text-indent:-.25in;
	font-family:Wingdings;}
@list l0:level4
	{mso-level-number-format:bullet;
	mso-level-text:\F0B7;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	margin-left:146.35pt;
	text-indent:-.25in;
	font-family:Symbol;}
@list l0:level5
	{mso-level-number-format:bullet;
	mso-level-text:o;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	margin-left:182.35pt;
	text-indent:-.25in;
	font-family:"Courier New";}
@list l0:level6
	{mso-level-number-format:bullet;
	mso-level-text:\F0A7;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	margin-left:218.35pt;
	text-indent:-.25in;
	font-family:Wingdings;}
@list l0:level7
	{mso-level-number-format:bullet;
	mso-level-text:\F0B7;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	margin-left:254.35pt;
	text-indent:-.25in;
	font-family:Symbol;}
@list l0:level8
	{mso-level-number-format:bullet;
	mso-level-text:o;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	margin-left:290.35pt;
	text-indent:-.25in;
	font-family:"Courier New";}
@list l0:level9
	{mso-level-number-format:bullet;
	mso-level-text:\F0A7;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	margin-left:326.35pt;
	text-indent:-.25in;
	font-family:Wingdings;}
ol
	{margin-bottom:0in;}
ul
	{margin-bottom:0in;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]--></head><body lang=3DEN-US link=3Dblue =
vlink=3Dpurple><div class=3DWordSection1><p class=3DMsoPlainText>Jeff: =
<o:p></o:p></p><p class=3DMsoPlainText><o:p>&nbsp;</o:p></p><p =
class=3DMsoPlainText>I believe I have answered this elsewhere.&nbsp; =
I2RS RIB Data Model provides an rpc to:<o:p></o:p></p><p =
class=3DMsoPlainText =
style=3D'margin-left:38.35pt;text-indent:-.25in;mso-list:l0 level1 =
lfo1'><![if !supportLists]><span style=3D'font-family:Symbol'><span =
style=3D'mso-list:Ignore'>&middot;<span style=3D'font:7.0pt "Times New =
Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
</span></span></span><![endif]>add/delete RIBs, <o:p></o:p></p><p =
class=3DMsoPlainText =
style=3D'margin-left:38.35pt;text-indent:-.25in;mso-list:l0 level1 =
lfo1'><![if !supportLists]><span style=3D'font-family:Symbol'><span =
style=3D'mso-list:Ignore'>&middot;<span style=3D'font:7.0pt "Times New =
Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
</span></span></span><![endif]>Add/delete Routes, <o:p></o:p></p><p =
class=3DMsoPlainText =
style=3D'margin-left:38.35pt;text-indent:-.25in;mso-list:l0 level1 =
lfo1'><![if !supportLists]><span style=3D'font-family:Symbol'><span =
style=3D'mso-list:Ignore'>&middot;<span style=3D'font:7.0pt "Times New =
Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
</span></span></span><![endif]>Add/delete nexthops. <o:p></o:p></p><p =
class=3DMsoPlainText><o:p>&nbsp;</o:p></p><p class=3DMsoPlainText>The =
rpc could be augmented to simply provide a datastore. <o:p></o:p></p><p =
class=3DMsoPlainText><o:p>&nbsp;</o:p></p><p class=3DMsoPlainText>Sue =
&nbsp;<o:p></o:p></p><p class=3DMsoPlainText><o:p>&nbsp;</o:p></p><p =
class=3DMsoPlainText>-----Original Message-----<br>From: Jeffrey Haas =
[mailto:jhaas@pfrc.org] <br>Sent: Tuesday, May 31, 2016 5:58 PM<br>To: =
Susan Hares<br>Cc: 'Joel M. Halpern'; i2rs@ietf.org<br>Subject: Re: =
[i2rs] ephemeral RPC?</p><p class=3DMsoPlainText><o:p>&nbsp;</o:p></p><p =
class=3DMsoPlainText>Sue,<o:p></o:p></p><p =
class=3DMsoPlainText><o:p>&nbsp;</o:p></p><p class=3DMsoPlainText>Rather =
than saying &quot;ephemeral RPC&quot;, I suspect you mean an RPC that =
has impact on ephemeral configuration or operational =
state.<o:p></o:p></p><p class=3DMsoPlainText><o:p>&nbsp;</o:p></p><p =
class=3DMsoPlainText>Arguably, if the RPC in question only manifests as =
operational state for that case the idea of ephemeral configuration in =
yang may become moot.<o:p></o:p></p><p =
class=3DMsoPlainText><o:p>&nbsp;</o:p></p><p class=3DMsoPlainText>-- =
Jeff<o:p></o:p></p><p class=3DMsoPlainText><o:p>&nbsp;</o:p></p><p =
class=3DMsoPlainText>On Tue, May 31, 2016 at 04:23:54PM -0400, Susan =
Hares wrote:<o:p></o:p></p><p class=3DMsoPlainText>&gt; =
Joel:<o:p></o:p></p><p class=3DMsoPlainText>&gt; <o:p></o:p></p><p =
class=3DMsoPlainText>&gt; I2RS data model is a ephemeral-only data =
model, and uses an rpc to do <o:p></o:p></p><p class=3DMsoPlainText>&gt; =
rib add/delete, route add/delete, nexthop add/delete.&nbsp; Therefore, =
we <o:p></o:p></p><p class=3DMsoPlainText>&gt; need ephemeral rpc =
support.<o:p></o:p></p><p class=3DMsoPlainText>&gt; <o:p></o:p></p><p =
class=3DMsoPlainText>&gt; <o:p></o:p></p><p class=3DMsoPlainText>&gt; =
Sue<o:p></o:p></p><p class=3DMsoPlainText>&gt; <o:p></o:p></p><p =
class=3DMsoPlainText>&gt; -----Original Message-----<o:p></o:p></p><p =
class=3DMsoPlainText>&gt; From: i2rs [<a =
href=3D"mailto:i2rs-bounces@ietf.org"><span =
style=3D'color:windowtext;text-decoration:none'>mailto:i2rs-bounces@ietf.=
org</span></a>] On Behalf Of Joel M. Halpern<o:p></o:p></p><p =
class=3DMsoPlainText>&gt; Sent: Tuesday, May 31, 2016 12:34 =
PM<o:p></o:p></p><p class=3DMsoPlainText>&gt; To: <a =
href=3D"mailto:i2rs@ietf.org"><span =
style=3D'color:windowtext;text-decoration:none'>i2rs@ietf.org</span></a><=
o:p></o:p></p><p class=3DMsoPlainText>&gt; Subject: [i2rs] ephemeral =
RPC?<o:p></o:p></p><p class=3DMsoPlainText>&gt; <o:p></o:p></p><p =
class=3DMsoPlainText>&gt; We have agreed that non-ephemeral data must =
not reference ephemeral data.<o:p></o:p></p><p class=3DMsoPlainText>&gt; =
<o:p></o:p></p><p class=3DMsoPlainText>&gt; However, we have, up till =
now, not had the notion of ephemeral RPCs.&nbsp; <o:p></o:p></p><p =
class=3DMsoPlainText>&gt; I see that the recent ephemeral requirements =
draft, as a side-effect <o:p></o:p></p><p class=3DMsoPlainText>&gt; of =
improving clarity, creates the notion of an ephemeral =
RPC.<o:p></o:p></p><p class=3DMsoPlainText>&gt; <o:p></o:p></p><p =
class=3DMsoPlainText>&gt; What is an ephemeral RPC, and why do we have =
it?<o:p></o:p></p><p class=3DMsoPlainText>&gt; We have been, up till =
now, assuming that we could use normal NetConf <o:p></o:p></p><p =
class=3DMsoPlainText>&gt; RPCs to set and get the ephemeral =
information.<o:p></o:p></p><p class=3DMsoPlainText>&gt; =
<o:p></o:p></p><p class=3DMsoPlainText>&gt; Thank you,<o:p></o:p></p><p =
class=3DMsoPlainText>&gt; Joel<o:p></o:p></p><p =
class=3DMsoPlainText>&gt; <o:p></o:p></p><p class=3DMsoPlainText>&gt; =
_______________________________________________<o:p></o:p></p><p =
class=3DMsoPlainText>&gt; i2rs mailing list<o:p></o:p></p><p =
class=3DMsoPlainText>&gt; <a href=3D"mailto:i2rs@ietf.org"><span =
style=3D'color:windowtext;text-decoration:none'>i2rs@ietf.org</span></a><=
o:p></o:p></p><p class=3DMsoPlainText>&gt; <a =
href=3D"https://www.ietf.org/mailman/listinfo/i2rs"><span =
style=3D'color:windowtext;text-decoration:none'>https://www.ietf.org/mail=
man/listinfo/i2rs</span></a><o:p></o:p></p><p class=3DMsoPlainText>&gt; =
<o:p></o:p></p><p class=3DMsoPlainText>&gt; =
_______________________________________________<o:p></o:p></p><p =
class=3DMsoPlainText>&gt; i2rs mailing list<o:p></o:p></p><p =
class=3DMsoPlainText>&gt; <a href=3D"mailto:i2rs@ietf.org"><span =
style=3D'color:windowtext;text-decoration:none'>i2rs@ietf.org</span></a><=
o:p></o:p></p><p class=3DMsoPlainText>&gt; <a =
href=3D"https://www.ietf.org/mailman/listinfo/i2rs"><span =
style=3D'color:windowtext;text-decoration:none'>https://www.ietf.org/mail=
man/listinfo/i2rs</span></a><o:p></o:p></p></div></body></html>
------=_NextPart_000_009F_01D1BBD8.FD7D4370--


From nobody Wed Jun  1 04:54:45 2016
Return-Path: <shares@ndzh.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 5C97E12D104 for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 04:54:43 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.096
X-Spam-Level: 
X-Spam-Status: No, score=-1.096 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RDNS_NONE=0.793, T_DOS_OUTLOOK_TO_MX_IMAGE=0.01] autolearn=no autolearn_force=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 iIyvZM0LpVEE for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 04:54:41 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 0EC7612B059 for <i2rs@ietf.org>; Wed,  1 Jun 2016 04:54:40 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=74.43.47.63; 
From: "Susan Hares" <shares@ndzh.com>
To: "'Andy Bierman'" <andy@yumaworks.com>, "'Linda Dunbar'" <linda.dunbar@huawei.com>
References: <000601d1bad5$70523090$50f691b0$@ndzh.com> <20160531063840.GA21289@elstar.local> <00d501d1bb45$0da83500$28f89f00$@ndzh.com> <20160531142540.GA22420@elstar.local> <001401d1bb4e$cfaefd10$6f0cf730$@ndzh.com> <20160531171304.GA22857@elstar.local> <CABCOCHR2JChAg1zmKDy_qxVOGYVeTm9wGVLyxzpChb5Ht0uaww@mail.gmail.com> <20160531195123.GN17462@pfrc.org> <CABCOCHQka+BezA6pLSiyOPcTghgx-UKK5dY6y70nME_EFZxCZg@mail.gmail.com> <4A95BA014132FF49AE685FAB4B9F17F657EACE6D@dfweml501-mbb> <CABCOCHSWi=KjNBSxoqMDQniKLGDXX76YQMyVqbJirF=LoK6PHg@mail.gmail.com>
In-Reply-To: <CABCOCHSWi=KjNBSxoqMDQniKLGDXX76YQMyVqbJirF=LoK6PHg@mail.gmail.com>
Date: Wed, 1 Jun 2016 07:54:10 -0400
Message-ID: <00ab01d1bbfc$52b8f1e0$f82ad5a0$@ndzh.com>
MIME-Version: 1.0
Content-Type: multipart/related; boundary="----=_NextPart_000_00AC_01D1BBDA.CBAA5F20"
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQJdaenpM7ljbP1C/TwjkI20GPnldwI0uYM8AiAGwTkCHPlBSwI0/t9yATo5ZLkB9aHehgG1+t7BAkK1jpMB7Q8siALEfOhAnhkbPoA=
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/oxaTMlakXDK84K6Phj8WG4K64tQ>
Cc: 'Benoit Claise' <bclaise@cisco.com>, i2rs@ietf.org, 'Jeffrey Haas' <jhaas@pfrc.org>, 'Juergen Schoenwaelder' <j.schoenwaelder@jacobs-university.de>, 'Alia Atlas' <akatlas@gmail.com>
Subject: Re: [i2rs] Can I2RS focus on the "Over the Wire" data structure , not on how end point handle the "DataStore"?
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 01 Jun 2016 11:54:43 -0000

This is a multipart message in MIME format.

------=_NextPart_000_00AC_01D1BBDA.CBAA5F20
Content-Type: multipart/alternative;
	boundary="----=_NextPart_001_00AD_01D1BBDA.CBAA5F20"


------=_NextPart_001_00AD_01D1BBDA.CBAA5F20
Content-Type: text/plain;
	charset="utf-8"
Content-Transfer-Encoding: quoted-printable

Andy:=20

=20

The I2RS topology (based, l3, L2) models do not interact with local =
configuration.  The current implementation in ODL uses RESTCONF to =
send/receive.  Other implementations of ephemeral only seem to be =
working. =20

The next step is the mixed ephemeral/normal config.=20

=20

I have pointed out several problems with =
draft-schoenw-netmod-revised-datastores-00  architecture.=20

=20

=20

Sue=20

=20

From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Andy Bierman
Sent: Tuesday, May 31, 2016 10:05 PM
To: Linda Dunbar
Cc: i2rs@ietf.org; Juergen Schoenwaelder; Alia Atlas; Benoit Claise; =
Jeffrey Haas; Susan Hares
Subject: Re: [i2rs] Can I2RS focus on the "Over the Wire" data structure =
, not on how end point handle the "DataStore"?

=20

Hi,

=20

If your graphic advice means "the requirements are good enough, move on"

then I agree.

=20

The datastore framework would be nice to have, but it is very close

to the implementation details.  It is also attempting to be a superset =
of all

"accepted" implementation choices.

=20

By "on the wire" we usually mean a protocol specification.

IMO, all that is needed (for editing) is a set of RESTCONF extensions.

Some people want to describe the I2RS desired behavior wrt/ how it

interacts with the local config. (and many more features...)

=20

Perhaps a good first step would be ephemeral data models that do not

interact with the local config at all.  I2RS is the only protocol of =
concern and the

highest priority client.  I2RS just needs to support read/write/notify =
of ephemeral data.

If this is not acceptable then be prepared to wait until all the =
framework stuff is settled

and standardized.

=20

=20

Andy

=20

=20

=20

=20

On Tue, May 31, 2016 at 4:09 PM, Linda Dunbar <linda.dunbar@huawei.com> =
wrote:

IETF has been successful for past 20 years  in focusing on =E2=80=9COver =
the Wire=E2=80=9D data structure.  It would be so much cleaner and =
straight forward if the YANG modules developed by I2RS  focusing on the =
=E2=80=9COver the Wire=E2=80=9D data structure (and with NETMOD to focus =
on other aspects).

The =E2=80=9CI2RS ephemeral State=E2=80=9D has the needed description =
for the desired behavior  of the data received over I2RS interface. If =
we follow the IETF practice,  it is good enough.=20

Internal implementation framework is always controversial, hard to =
converge, usually ending up with a document (if completed) that is too =
big and difficult to read.=20

=20

Providing some source code to show the internal implementation would be =
much more useful as a reference implementation.=20

=20

The draft-schoenw-netmod-revised-datastores-00 is on the architectural =
framework for datastores as they are used by network management =
protocols. IMHO, how data stores are used are internal to the end =
points.=20

=20

 =
<http://www.google.com/url?sa=3Di&rct=3Dj&q=3D&esrc=3Ds&source=3Dimages&c=
d=3D&cad=3Drja&uact=3D8&ved=3D0ahUKEwj50KWat4XNAhULxGMKHRhqDPQQjRwIBw&url=
=3Dhttp%3A%2F%2Fwww.urbanblissmedia.com%2Fentrepreneur-rules-done-is-bett=
er-than-perfect%2F&psig=3DAFQjCNGKEiPB2iHSqyBiF5609pd72H0L7w&ust=3D146482=
2503865777> =
http://www.urbanblisslife.com/wp-content/uploads/2012/10/Done-is-Better-T=
han-Perfect.jpg

=20

Linda Dunbar

=20

From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Andy Bierman
Sent: Tuesday, May 31, 2016 4:09 PM
To: Jeffrey Haas
Cc: Benoit Claise; i2rs@ietf.org; Juergen Schoenwaelder; Susan Hares; =
Alia Atlas
Subject: Re: [i2rs] I2RS Interim Meeting - June 1, 2016 - 10:00am - =
11:00am - Topic: Ephemeral State Requirements

=20

Hi,

=20

I am not convinced the IETF can be forced to function as if it were

a dev-group in some corporation.  This is a volunteer organization so

usually solution proposals come from people who have created a solution

and they want the WG to standardize it.

=20

=20

Andy

=20

=20

On Tue, May 31, 2016 at 12:51 PM, Jeffrey Haas <jhaas@pfrc.org> wrote:

Andy,

On Tue, May 31, 2016 at 11:41:59AM -0700, Andy Bierman wrote:
> At some point the WG needs to agree on normative text instead of =
iterating
> on requirements forever.

IMO, it would be in I2RS's best interests if netconf/netmod provided =
drafts
in appropriately normative language covering I2RS requirements.  =
However,
we've been in a pathological cycle of:
"We don't understand, please give us requirements"
"We don't understand your requirements"
"You provided examples with your requirements that appear to be attempts =
to
change our protocol - don't do that."

The most recent revised-datastore draft would be a good place to =
document
where netmod(/netconf) believes ephemeral datastores (if that's the
instantiation) could live, and also how ephemeral configuration state =
could
interact with candidate, startup and running configuration.

yang-push covers much of our desired pub-sub behavior. (Yay!)

Discussion is required for how to tag security considerations impacting
transport into the yang model, in particular for notification.

Proposals for secondary identity and priority are also needed.

-- Jeff

=20

=20


------=_NextPart_001_00AD_01D1BBDA.CBAA5F20
Content-Type: text/html;
	charset="utf-8"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" =
xmlns:o=3D"urn:schemas-microsoft-com:office:office" =
xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" =
xmlns=3D"http://www.w3.org/TR/REC-html40"><head><meta =
http-equiv=3DContent-Type content=3D"text/html; charset=3Dutf-8"><meta =
name=3DGenerator content=3D"Microsoft Word 14 (filtered medium)"><!--[if =
!mso]><style>v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style><![endif]--><style><!--
/* Font Definitions */
@font-face
	{font-family:Courier;
	panose-1:2 7 4 9 2 2 5 2 4 4;}
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
	{font-family:Tahoma;
	panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0in;
	margin-bottom:.0001pt;
	font-size:12.0pt;
	font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:blue;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:purple;
	text-decoration:underline;}
p.MsoAcetate, li.MsoAcetate, div.MsoAcetate
	{mso-style-priority:99;
	mso-style-link:"Balloon Text Char";
	margin:0in;
	margin-bottom:.0001pt;
	font-size:8.0pt;
	font-family:"Tahoma","sans-serif";}
span.BalloonTextChar
	{mso-style-name:"Balloon Text Char";
	mso-style-priority:99;
	mso-style-link:"Balloon Text";
	font-family:"Tahoma","sans-serif";}
span.EmailStyle19
	{mso-style-type:personal-reply;
	font-family:"Calibri","sans-serif";
	color:#1F497D;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-family:"Calibri","sans-serif";}
@page WordSection1
	{size:8.5in 11.0in;
	margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
	{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]--></head><body lang=3DEN-US link=3Dblue =
vlink=3Dpurple><div class=3DWordSection1><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Andy: <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>The I2RS topology (based, l3, L2) models do not interact with local =
configuration.=C2=A0 The current implementation in ODL uses RESTCONF to =
send/receive. =C2=A0Other implementations of ephemeral only seem to be =
working. =C2=A0<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>The next step is the mixed ephemeral/normal config. =
<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>I have pointed out several problems with =
draft-schoenw-netmod-revised-datastores-00 =C2=A0architecture. =
<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Sue <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><b><span =
style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span>=
</b><span style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif"'> =
i2rs [mailto:i2rs-bounces@ietf.org] <b>On Behalf Of </b>Andy =
Bierman<br><b>Sent:</b> Tuesday, May 31, 2016 10:05 PM<br><b>To:</b> =
Linda Dunbar<br><b>Cc:</b> i2rs@ietf.org; Juergen Schoenwaelder; Alia =
Atlas; Benoit Claise; Jeffrey Haas; Susan Hares<br><b>Subject:</b> Re: =
[i2rs] Can I2RS focus on the &quot;Over the Wire&quot; data structure , =
not on how end point handle the =
&quot;DataStore&quot;?<o:p></o:p></span></p><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p><div><p =
class=3DMsoNormal>Hi,<o:p></o:p></p><div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div><div><p =
class=3DMsoNormal>If your graphic advice means &quot;the requirements =
are good enough, move on&quot;<o:p></o:p></p></div><div><p =
class=3DMsoNormal>then I agree.<o:p></o:p></p></div><div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div><div><p =
class=3DMsoNormal>The datastore framework would be nice to have, but it =
is very close<o:p></o:p></p></div><div><p class=3DMsoNormal>to the =
implementation details.&nbsp; It is also attempting to be a superset of =
all<o:p></o:p></p></div><div><p class=3DMsoNormal>&quot;accepted&quot; =
implementation choices.<o:p></o:p></p></div><div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div><div><p =
class=3DMsoNormal>By &quot;on the wire&quot; we usually mean a protocol =
specification.<o:p></o:p></p></div><div><p class=3DMsoNormal>IMO, all =
that is needed (for editing) is a set of RESTCONF =
extensions.<o:p></o:p></p></div><div><p class=3DMsoNormal>Some people =
want to describe the I2RS desired behavior wrt/ how =
it<o:p></o:p></p></div><div><p class=3DMsoNormal>interacts with the =
local config. (and many more features...)<o:p></o:p></p></div><div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div><div><p =
class=3DMsoNormal>Perhaps a good first step would be ephemeral data =
models that do not<o:p></o:p></p></div><div><p =
class=3DMsoNormal>interact with the local config at all.&nbsp; I2RS is =
the only protocol of concern and the<o:p></o:p></p></div><div><p =
class=3DMsoNormal>highest priority client.&nbsp; I2RS just needs to =
support read/write/notify of ephemeral data.<o:p></o:p></p></div><div><p =
class=3DMsoNormal>If this is not acceptable then be prepared to wait =
until all the framework stuff is settled<o:p></o:p></p></div><div><p =
class=3DMsoNormal>and standardized.<o:p></o:p></p></div><div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div><div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div><div><p =
class=3DMsoNormal>Andy<o:p></o:p></p></div><div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div><div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div><div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div><div><div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p><div><p class=3DMsoNormal>On Tue, =
May 31, 2016 at 4:09 PM, Linda Dunbar &lt;<a =
href=3D"mailto:linda.dunbar@huawei.com" =
target=3D"_blank">linda.dunbar@huawei.com</a>&gt; =
wrote:<o:p></o:p></p><div><div><p class=3DMsoNormal =
style=3D'mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span =
style=3D'font-family:"Calibri","sans-serif";color:#1F497D'>IETF has been =
successful for past 20 years &nbsp;in focusing on =E2=80=9COver the =
Wire=E2=80=9D data structure.&nbsp; It would be so much cleaner and =
straight forward if the YANG modules developed by I2RS &nbsp;focusing on =
the =E2=80=9COver the Wire=E2=80=9D data structure (and with NETMOD to =
focus on other aspects).</span><o:p></o:p></p><p class=3DMsoNormal =
style=3D'mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span =
style=3D'font-family:"Calibri","sans-serif";color:#1F497D'>The =
=E2=80=9CI2RS ephemeral State=E2=80=9D has the needed description for =
the desired behavior &nbsp;of the data received over I2RS interface. If =
we follow the IETF practice, &nbsp;it is good enough. =
</span><o:p></o:p></p><p class=3DMsoNormal =
style=3D'mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span =
style=3D'font-family:"Calibri","sans-serif";color:#1F497D'>Internal =
implementation framework is always controversial, hard to converge, =
usually ending up with a document (if completed) that is too big and =
difficult to read. </span><o:p></o:p></p><p class=3DMsoNormal =
style=3D'mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span =
style=3D'font-family:"Calibri","sans-serif";color:#1F497D'>&nbsp;</span><=
o:p></o:p></p><p class=3DMsoNormal =
style=3D'mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span =
style=3D'font-family:"Calibri","sans-serif";color:#1F497D'>Providing =
some source code to show the internal implementation would be much more =
useful as a reference implementation. </span><o:p></o:p></p><p =
class=3DMsoNormal =
style=3D'mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span =
style=3D'font-family:"Calibri","sans-serif";color:#1F497D'>&nbsp;</span><=
o:p></o:p></p><p class=3DMsoNormal =
style=3D'mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;text-autospac=
e:none'><span =
style=3D'font-family:"Calibri","sans-serif";color:#1F497D'>The =
</span><span =
style=3D'font-family:Courier'>draft-schoenw-netmod-revised-datastores-00 =
</span><span =
style=3D'font-family:"Calibri","sans-serif";color:#1F497D'>is on the =
architectural framework for datastores as they are used by network =
management protocols. IMHO, how data stores are used are internal to the =
end points. </span><o:p></o:p></p><p class=3DMsoNormal =
style=3D'mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span =
style=3D'font-family:"Calibri","sans-serif";color:#1F497D'>&nbsp;</span><=
o:p></o:p></p><p class=3DMsoNormal =
style=3D'mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><a =
href=3D"http://www.google.com/url?sa=3Di&amp;rct=3Dj&amp;q=3D&amp;esrc=3D=
s&amp;source=3Dimages&amp;cd=3D&amp;cad=3Drja&amp;uact=3D8&amp;ved=3D0ahU=
KEwj50KWat4XNAhULxGMKHRhqDPQQjRwIBw&amp;url=3Dhttp%3A%2F%2Fwww.urbanbliss=
media.com%2Fentrepreneur-rules-done-is-better-than-perfect%2F&amp;psig=3D=
AFQjCNGKEiPB2iHSqyBiF5609pd72H0L7w&amp;ust=3D1464822503865777" =
target=3D"_blank"><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D;text-decoration:none'><img border=3D0 width=3D430 height=3D558 =
id=3D"_x0000_i1025" src=3D"cid:image001.jpg@01D1BBD9.B08A3540" =
alt=3D"http://www.urbanblisslife.com/wp-content/uploads/2012/10/Done-is-B=
etter-Than-Perfect.jpg"></span></a><o:p></o:p></p><p class=3DMsoNormal =
style=3D'mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&nbsp;</span><o:p></o:p></p><p class=3DMsoNormal =
style=3D'mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Linda Dunbar</span><o:p></o:p></p><p class=3DMsoNormal =
style=3D'mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&nbsp;</span><o:p></o:p></p><div =
style=3D'border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in =
0in 0in'><p class=3DMsoNormal =
style=3D'mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><b><span =
style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span>=
</b><span style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif"'> =
i2rs [mailto:<a href=3D"mailto:i2rs-bounces@ietf.org" =
target=3D"_blank">i2rs-bounces@ietf.org</a>] <b>On Behalf Of </b>Andy =
Bierman<br><b>Sent:</b> Tuesday, May 31, 2016 4:09 PM<br><b>To:</b> =
Jeffrey Haas<br><b>Cc:</b> Benoit Claise; <a =
href=3D"mailto:i2rs@ietf.org" target=3D"_blank">i2rs@ietf.org</a>; =
Juergen Schoenwaelder; Susan Hares; Alia Atlas<br><b>Subject:</b> Re: =
[i2rs] I2RS Interim Meeting - June 1, 2016 - 10:00am - 11:00am - Topic: =
Ephemeral State Requirements</span><o:p></o:p></p></div><p =
class=3DMsoNormal =
style=3D'mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp;<o:p><=
/o:p></p><div><p class=3DMsoNormal =
style=3D'mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>Hi,<o:p></o:=
p></p><div><p class=3DMsoNormal =
style=3D'mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp;<o:p><=
/o:p></p></div><div><p class=3DMsoNormal =
style=3D'mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>I am not =
convinced the IETF can be forced to function as if it =
were<o:p></o:p></p></div><div><p class=3DMsoNormal =
style=3D'mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>a dev-group =
in some corporation.&nbsp; This is a volunteer organization =
so<o:p></o:p></p></div><div><p class=3DMsoNormal =
style=3D'mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>usually =
solution proposals come from people who have created a =
solution<o:p></o:p></p></div><div><p class=3DMsoNormal =
style=3D'mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>and they =
want the WG to standardize it.<o:p></o:p></p></div><div><p =
class=3DMsoNormal =
style=3D'mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp;<o:p><=
/o:p></p></div><div><p class=3DMsoNormal =
style=3D'mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp;<o:p><=
/o:p></p></div><div><p class=3DMsoNormal =
style=3D'mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>Andy<o:p></o=
:p></p></div><div><p class=3DMsoNormal =
style=3D'mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp;<o:p><=
/o:p></p></div><div><div><p class=3DMsoNormal =
style=3D'mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp;<o:p><=
/o:p></p><div><p class=3DMsoNormal =
style=3D'mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>On Tue, May =
31, 2016 at 12:51 PM, Jeffrey Haas &lt;<a href=3D"mailto:jhaas@pfrc.org" =
target=3D"_blank">jhaas@pfrc.org</a>&gt; wrote:<o:p></o:p></p><p =
class=3DMsoNormal =
style=3D'mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>Andy,<br><br=
>On Tue, May 31, 2016 at 11:41:59AM -0700, Andy Bierman wrote:<br>&gt; =
At some point the WG needs to agree on normative text instead of =
iterating<br>&gt; on requirements forever.<br><br>IMO, it would be in =
I2RS's best interests if netconf/netmod provided drafts<br>in =
appropriately normative language covering I2RS requirements.&nbsp; =
However,<br>we've been in a pathological cycle of:<br>&quot;We don't =
understand, please give us requirements&quot;<br>&quot;We don't =
understand your requirements&quot;<br>&quot;You provided examples with =
your requirements that appear to be attempts to<br>change our protocol - =
don't do that.&quot;<br><br>The most recent revised-datastore draft =
would be a good place to document<br>where netmod(/netconf) believes =
ephemeral datastores (if that's the<br>instantiation) could live, and =
also how ephemeral configuration state could<br>interact with candidate, =
startup and running configuration.<br><br>yang-push covers much of our =
desired pub-sub behavior. (Yay!)<br><br>Discussion is required for how =
to tag security considerations impacting<br>transport into the yang =
model, in particular for notification.<br><br>Proposals for secondary =
identity and priority are also needed.<br><br>-- =
Jeff<o:p></o:p></p></div><p class=3DMsoNormal =
style=3D'mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp;<o:p><=
/o:p></p></div></div></div></div></div></div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div></div></div></div></body></h=
tml>
------=_NextPart_001_00AD_01D1BBDA.CBAA5F20--

------=_NextPart_000_00AC_01D1BBDA.CBAA5F20
Content-Type: image/jpeg;
	name="image001.jpg"
Content-Transfer-Encoding: base64
Content-ID: <image001.jpg@01D1BBD9.B08A3540>

/9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAAoHBwgHBgoICAgLCgoLDhgQDg0NDh0VFhEYIx8lJCIf
IiEmKzcvJik0KSEiMEExNDk7Pj4+JS5ESUM8SDc9Pjv/2wBDAQoLCw4NDhwQEBw7KCIoOzs7Ozs7
Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozv/wAARCAIuAa4DASIA
AhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQA
AAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3
ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWm
p6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEA
AwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSEx
BhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElK
U1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3
uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDzPgDA
OaU8dRzTenfil96ADNKAaAOOcU7NACDvijGKd26jNGB9aAG+w4zSYOfSnkHGe1JtHWgBoXvzx1pc
ZGacRjnrTSKAEwc8UYH40oGPenAUACgE0YwMCn/hTT/kUAN/ClA7nH1oAz9KdtGMUAIR64FJgdO3
sKUgn60cDpQA3/I9qXjHJOad0pOvagBuPfH1pvPWnE9u1JQAmMCjJJznrSkHGf1ppz/kUAHfPSkx
Sj3FKF9eMetADe5o+ozSkAck0oHFACdDkfrSHPQCpMf/AFvrTcAA+vtQA3HH9aTHHsKdjGATik/H
igBCB16ZpeBxQMevNKRk5/nQADP0/Cjv1/SkINKB70AJ/Km+lPOMdaY1ADTilPI4o4A6Uh5NAB+H
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
/9k=

------=_NextPart_000_00AC_01D1BBDA.CBAA5F20--


From nobody Wed Jun  1 05:08:22 2016
Return-Path: <andy@yumaworks.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 1A00F12D190 for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 05:08:21 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.6
X-Spam-Level: 
X-Spam-Status: No, score=-2.6 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=yumaworks-com.20150623.gappssmtp.com
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 okFMZx3MMRlC for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 05:08:17 -0700 (PDT)
Received: from mail-yw0-x232.google.com (mail-yw0-x232.google.com [IPv6:2607:f8b0:4002:c05::232]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 8AE6412D100 for <i2rs@ietf.org>; Wed,  1 Jun 2016 05:08:17 -0700 (PDT)
Received: by mail-yw0-x232.google.com with SMTP id o16so15846450ywd.2 for <i2rs@ietf.org>; Wed, 01 Jun 2016 05:08:17 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yumaworks-com.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:date:message-id:subject:from:to; bh=uEeYfHMowbcLqyqmYq/wKuZBWgvWwLZ//u+K85AjkYA=; b=qCTkiMhw1jB4VVNhJRyNiBpNPT8sRArbgmNFxme7CkGiZfYZxFNb5/J5KSnrWnFg/z ISxyc0+KJBLVf+TknKXEa2BNZBxTTRxOPcfX16JUpL1PyJfrwSJS3Ltx8921bwR8pE+t CuGbOYvDKeYUR4GWldbJ/K/2maY5a5u7CIPpPmfa2gdZlpoT4x8uNBPBZmmka2/YZQeU GSOFe0sTbmT2Zra+w2Nu8H7gth+754F9RGyOEv0jBpCrj2Fy9/TTqmLaij6VkjJFQXAz lKvopGba0xJd8EBA3V9S7skgr3MP+i0Z2z6uQv+fhX71dOdOcfpmw2KZ1i6O0rHxywNC V5yA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to; bh=uEeYfHMowbcLqyqmYq/wKuZBWgvWwLZ//u+K85AjkYA=; b=lWdHDrH22SjDA8ylNzF0faEHAA6ZOBuVxJVC+Dh2z1B/VgowL0R75gzuctdvI2G7ut J/xBEXP06HksDOiU3JDG6Hf3f8tkQNCOCqF+YiEYaj2haUtYYopDCxp7N+PPtUsoW30J C394/t4PPrj4eACM1UuFMb5GPDO3P4+eg2n6MzS67Zkb49AiSuFOFJ+FpCZlUk6TFV1o BmhWXOQlzEKrEKknASuEWXA/Uw5+YPx9eRoU982asqkg+Hyq1aCXZEuI734EAaTP9Fye wMFhzqZhNDYzwAfiZPDOZ1vBpQ2/68toE7I7aocnuVHLsbwWGKU4NOZoyulPmznyowwW r26A==
X-Gm-Message-State: ALyK8tJ+RrMhAxR4yTTfU7bERjYhvgsp2KBwc0CN7b+BvI9KwCD9LG6I6vZOWz8ZIDy+MZKGN6teKWxaMrPKpA==
MIME-Version: 1.0
X-Received: by 10.129.111.132 with SMTP id k126mr2007896ywc.11.1464782896631;  Wed, 01 Jun 2016 05:08:16 -0700 (PDT)
Received: by 10.37.115.208 with HTTP; Wed, 1 Jun 2016 05:08:16 -0700 (PDT)
In-Reply-To: <20160601091010.GC24118@elstar.local>
References: <000601d1bad5$70523090$50f691b0$@ndzh.com> <20160531063840.GA21289@elstar.local> <20160531193640.GL17462@pfrc.org> <20160601091010.GC24118@elstar.local>
Date: Wed, 1 Jun 2016 05:08:16 -0700
Message-ID: <CABCOCHTW583xFE6Sf=Xmknis1_fKocWZTJdVL-L1ejDPmt6u4g@mail.gmail.com>
From: Andy Bierman <andy@yumaworks.com>
To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>, Jeffrey Haas <jhaas@pfrc.org>,  Susan Hares <shares@ndzh.com>, "i2rs@ietf.org" <i2rs@ietf.org>, Alia Atlas <akatlas@gmail.com>
Content-Type: multipart/alternative; boundary=001a114926063a5cc505343658ab
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/yhNKqzzURqCd1cRHi9dzkimhKbw>
Subject: Re: [i2rs] I2RS Interim Meeting - June 1, 2016 - 10:00am - 11:00am - Topic: Ephemeral State Requirements
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 01 Jun 2016 12:08:21 -0000

--001a114926063a5cc505343658ab
Content-Type: text/plain; charset=UTF-8

On Wed, Jun 1, 2016 at 2:10 AM, Juergen Schoenwaelder <
j.schoenwaelder@jacobs-university.de> wrote:

> On Tue, May 31, 2016 at 03:36:40PM -0400, Jeffrey Haas wrote:
> > [Note that I'm answering messages in thread order to the originator of a
> > point rather than necessarily to responses.  This is intentional.]
> >
> > On Tue, May 31, 2016 at 08:38:42AM +0200, Juergen Schoenwaelder wrote:
> > > I read:
> > >
> > >    Ephemeral-REQ-05: The ability to augment an object with appropriate
> > >    YANG structures that have the property of being ephemeral.  An
> object
> > >    defined as Yang module, schema tree, a schema node, submodule or
> > >    components of a submodule (derived types, groupings, data node,
> RPCs,
> > >    actions, and notifications".
> > >
> > > I have trouble to parse this since the 1st sentence does not seem to
> > > make sense for each element that you consider an object. That said,
> > > the real issue here are lifetimes. The lifetime of a config true
> > > object is determined by config changes, the lifetime of config false
> > > objects is determined by operational state changes. What happens to
> > > an ephemeral augmentation of objects if their lifetime expires?
> >
> > I agree that your observation covers the general intent.  The
> requirements
> > language above is attempting to be a bit too specific for a given
> > implementation detail, namely instantiation of ephemeral behaviors in a
> data
> > tree.
> >
> > Could you please supply alternative text?
>
> It is difficult since I am not sure what the original intention
> was. There is augmentation at the schema tree level and then there is
> augmentation at the data tree level. My understanding (which may be
> wrong) is that I2RS primarily looks at data tree level augmentations
> of operational state data and not so much at configuration datastore
> data. Part of the openconfig inspired discussion is to do away with
> the /foo and /foo-state division and that has an impact how the schema
> trees are constructed.
>
>
This REQ-05 doesn't give any reason why data nodes need to be tagged as
ephemeral
in the schema tree, or what it means to be tagged as ephemeral.

My intention for suggesting an "i2rs:ephemeral" YANG extension was to
identify
the I2RS conformance requirements for a server claiming to implement I2RS
for a specific YANG module.

A node tagged as ephemeral MUST be accessible in the ephemeral datastore
using I2RS if the module (or feature) is supported. An untagged node MAY be
accessible.

An I2RS data model could define read-only nodes.  These nodes could
be considered ephemeral operational state.  Should these nodes live in
this datastore or an "operational" datastore?  I don't know.
That's why we probably need your draft.



Andy



> > > The revised datastore model I have described in
> > > draft-schoenw-netmod-revised-datastores-00 links the ephemeral state
> > > only to operational state, not at all to configuration. Does this
> > > model not satisfy the I2RS requirements and make things much simpler?
> >
> > I've been unable to follow netmod/netconf recently, so thanks for
> pointing
> > out this document.  It does seem to do a nice job in attempting to
> summarize
> > a number of discussions on the various datastore concepts we've been
> seeing
> > the last year.
> >
> > There are a few things I find slightly problematic in your hierarchy with
> > respect to what I2RS likely needs for ephemeral configuration state, but
> I
> > think it might be solvable.  Here are some observations:
> >
> > If ephemeral configuration state were to be treated as a datastore that
> > feeds into running, would you expect that the resulting running state
> should
> > be writable?  (I.e. running = candidate, startup + ephemeral?)
>
> I doubt ephemeral feeds into the <running> datastore since running can be
> expected to be persistent. draft-schoenw-netmod-revised-datastores-00.txt
> actually suggests ephemeral interacts with <operational-state>. The
> alternative view I mentioned is that a magic merge (+) takes <applied>
> and <ephermeral> as input that feeds into <operational-state>. This is
> likely closer to the 'pane of glass' model. The revised datastore model
> kind of puts the magic merge function (+) into the operational datastore
> itself, essentially treating I2RS ephemeral datastores like any other
> control plane interface. (This still allowes a 'paned' implementation
> within the <operational-state> but it does not require this.)
>
> Note that draft-schoenw-netmod-revised-datastores-00 came out of a
> meeting I had with Martin in Stockholm and there have been a couple of
> calls where people where trying to figure out ways to deal with the
> openconfig ideas. There is no WG agreement on any of this, its all
> just input to discussion.
>
> > It would be helpful to see how an ephemeral datastore is intended to
> > interact in this diagram.  A detail that would need to be clarified is
> what
> > happens when there is overlaps in portions of the schemas.
>
> One of the driving forces were attempts to overcome the /foo and
> /foo-state distinction we started to make in data models. This might
> actually make ephemeral data model extensions easier.
>
> > >  2.  Does Ephemeral-REQ-06 provide the Yang requirements in
> > > > a clear fashion?  Do you have any suggestions for alternative text?
> > >
> > > I think it is clear but broken. In particular the part about
> > > indicating secure/non-secure transport.
> >
> > The text relating to transport is applied to generally and needs
> clarifying.
> > Let's provide a specific goal:
> >
> > For Yang notifications, there may be some desire for the information to
> be
> > sent across alternative transports, potentially with specific encodings.
> > draft-ietf-netconf-yang-push covers I2RS use cases wherein the data may
> be
> > sent via alternative transports.  Should we have some sort of markup in
> the
> > Yang language to identify what transports might be utilized?  What about
> > security requirements?
>
> The choice of transports and in particular the question whether a
> non-secure transport is acceptable is for me primarily a deployment
> question and not a data modeling question.
>
> > Obviously we can spell out transport security considerations as part of
> the
> > description clause within a notification.  However, since a significant
> > amount of feedback has been given from individuals with a security
> > background that many objects we're likely to use in I2RS may be security
> > sensitive - but not all! - some way to indicate the sensitivity may be
> > required.
>
> It is actually difficult for me to imagine objects that are in all
> usage contexts never security sensitive.
>
> > The motivation for this is that for insecure and high speed transports
> and
> > ecodings such as IPFIX (e.g.) it may be fine to expose some data (e.g.
> > interface statistics) but the same may not be true for other data and a
> > secured transport may be required.
>
> Whether an interface is used or not can be sensitive information. In a
> certain deployment, it may still be OK to use an unsecure transport
> because the path between the IPFIX exporter and collector is believed
> to be reasonably protected. But that is a deployment question, not a
> data modeling question.
>
> > > > 3. Do you think any of the Ephemeral-REQ-07 NETCONF Changes
> > > >    are not necessary?   If so, what changes would you leave out?
> > > >    Do the "policy-knobs" seem useful to you?
> > > >
> > > > 4. Do you think any of the Ephemeral-REQ-08 RESTCONF changes
> > > >    are not necessary?  If so, what changes would you leave out?
> > > >    Do we need all the features (yang module library, call-home,
> > > >    server)?
> > >
> > > I think this needs to be trimmed down. I think it should be avoided to
> > > create I2RS specific solutions for things that are already in place
> > > (e.g., NETCONF has a mechanism for protocol capability discovery and
> > > negotiation, NETCONF already supports multiple (secure) transports).
> > >
> > > I think that having a clear architectural view is essential. I am not
> > > sure the 'single pane of glass' model is the way to go. I think the
> > > decision on the architectural model is key because it impacts many of
> > > the other requirements and solutions.
> > >
> > > You want both NC and RC to support XML and JSON and SSH and TLS and
> > > (plaintext) TCP? Does this maximum of variability and flexibility
> > > really help interoperability? Perhaps things should be reorganized
> > > into things that are protocol agnostic (and should not be repeated)
> > > and things that are protocol specific - if there is indeed a need to
> > > work with multiple protocols.
> >
> > I agree we're being overly specific here, although as noted above we need
> > some discussion about what to do about insecure transports for some
> > operations, such as subscriptions.  (I think that's covered by the
> > yang-push doc in particular.)
>
> So lets leave it there and lets not repeat it.
>
> > Item 6 about precedence of local configuration vs. ephemeral
> configuration
> > requires discussion, including in the revised-datastore document if it
> > chooses to address ephemeral configuration.
> >
> > > I also think that it is not needed to write down requirements to
> > > NETCONF for things that are already solved or being worked on.
> >
> > I think we're happy to subtract these, or at the least call out the
> existing
> > work in progress.  As noted in some earlier drafts, the goal of the I2RS
> > drafts should be to not have drafts in I2RS, but solution space
> documents in
> > netconf and netmod.
>
> Yes!
>
> /js
>
> --
> Juergen Schoenwaelder           Jacobs University Bremen gGmbH
> Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
> Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>
>
> _______________________________________________
> i2rs mailing list
> i2rs@ietf.org
> https://www.ietf.org/mailman/listinfo/i2rs
>

--001a114926063a5cc505343658ab
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><br><div class=3D"gmail_extra"><br><div class=3D"gmail_quo=
te">On Wed, Jun 1, 2016 at 2:10 AM, Juergen Schoenwaelder <span dir=3D"ltr"=
>&lt;<a href=3D"mailto:j.schoenwaelder@jacobs-university.de" target=3D"_bla=
nk">j.schoenwaelder@jacobs-university.de</a>&gt;</span> wrote:<br><blockquo=
te class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left-widt=
h:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-le=
ft:1ex">On Tue, May 31, 2016 at 03:36:40PM -0400, Jeffrey Haas wrote:<br>
&gt; [Note that I&#39;m answering messages in thread order to the originato=
r of a<br>
&gt; point rather than necessarily to responses.=C2=A0 This is intentional.=
]<br>
&gt;<br>
&gt; On Tue, May 31, 2016 at 08:38:42AM +0200, Juergen Schoenwaelder wrote:=
<br>
&gt; &gt; I read:<br>
&gt; &gt;<br>
&gt; &gt;=C2=A0 =C2=A0 Ephemeral-REQ-05: The ability to augment an object w=
ith appropriate<br>
&gt; &gt;=C2=A0 =C2=A0 YANG structures that have the property of being ephe=
meral.=C2=A0 An object<br>
&gt; &gt;=C2=A0 =C2=A0 defined as Yang module, schema tree, a schema node, =
submodule or<br>
&gt; &gt;=C2=A0 =C2=A0 components of a submodule (derived types, groupings,=
 data node, RPCs,<br>
&gt; &gt;=C2=A0 =C2=A0 actions, and notifications&quot;.<br>
&gt; &gt;<br>
&gt; &gt; I have trouble to parse this since the 1st sentence does not seem=
 to<br>
&gt; &gt; make sense for each element that you consider an object. That sai=
d,<br>
&gt; &gt; the real issue here are lifetimes. The lifetime of a config true<=
br>
&gt; &gt; object is determined by config changes, the lifetime of config fa=
lse<br>
&gt; &gt; objects is determined by operational state changes. What happens =
to<br>
&gt; &gt; an ephemeral augmentation of objects if their lifetime expires?<b=
r>
&gt;<br>
&gt; I agree that your observation covers the general intent.=C2=A0 The req=
uirements<br>
&gt; language above is attempting to be a bit too specific for a given<br>
&gt; implementation detail, namely instantiation of ephemeral behaviors in =
a data<br>
&gt; tree.<br>
&gt;<br>
&gt; Could you please supply alternative text?<br>
<br>
It is difficult since I am not sure what the original intention<br>
was. There is augmentation at the schema tree level and then there is<br>
augmentation at the data tree level. My understanding (which may be<br>
wrong) is that I2RS primarily looks at data tree level augmentations<br>
of operational state data and not so much at configuration datastore<br>
data. Part of the openconfig inspired discussion is to do away with<br>
the /foo and /foo-state division and that has an impact how the schema<br>
trees are constructed.<br>
<br></blockquote><div><br></div><div>This REQ-05 doesn&#39;t give any reaso=
n why data nodes need to be tagged as ephemeral</div><div>in the schema tre=
e, or what it means to be tagged as ephemeral.</div><div><br></div><div>My =
intention for suggesting an &quot;i2rs:ephemeral&quot; YANG extension was t=
o identify</div><div>the I2RS conformance requirements for a server claimin=
g to implement I2RS</div><div>for a specific YANG module.</div><div><br></d=
iv><div>A node tagged as ephemeral MUST be accessible in the ephemeral data=
store</div><div>using I2RS if the module (or feature) is supported. An unta=
gged node MAY be accessible.</div><div><br></div><div>An I2RS data model co=
uld define read-only nodes.=C2=A0 These nodes could</div><div>be considered=
 ephemeral operational state.=C2=A0 Should these nodes live in</div><div>th=
is datastore or an &quot;operational&quot; datastore?=C2=A0 I don&#39;t kno=
w.</div><div>That&#39;s why we probably need your draft.</div><div><br></di=
v><div><br></div><div><br></div><div>Andy</div><div><br></div><div>=C2=A0</=
div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;bor=
der-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:sol=
id;padding-left:1ex">
&gt; &gt; The revised datastore model I have described in<br>
&gt; &gt; draft-schoenw-netmod-revised-datastores-00 links the ephemeral st=
ate<br>
&gt; &gt; only to operational state, not at all to configuration. Does this=
<br>
&gt; &gt; model not satisfy the I2RS requirements and make things much simp=
ler?<br>
&gt;<br>
&gt; I&#39;ve been unable to follow netmod/netconf recently, so thanks for =
pointing<br>
&gt; out this document.=C2=A0 It does seem to do a nice job in attempting t=
o summarize<br>
&gt; a number of discussions on the various datastore concepts we&#39;ve be=
en seeing<br>
&gt; the last year.<br>
&gt;<br>
&gt; There are a few things I find slightly problematic in your hierarchy w=
ith<br>
&gt; respect to what I2RS likely needs for ephemeral configuration state, b=
ut I<br>
&gt; think it might be solvable.=C2=A0 Here are some observations:<br>
&gt;<br>
&gt; If ephemeral configuration state were to be treated as a datastore tha=
t<br>
&gt; feeds into running, would you expect that the resulting running state =
should<br>
&gt; be writable?=C2=A0 (I.e. running =3D candidate, startup + ephemeral?)<=
br>
<br>
I doubt ephemeral feeds into the &lt;running&gt; datastore since running ca=
n be<br>
expected to be persistent. draft-schoenw-netmod-revised-datastores-00.txt<b=
r>
actually suggests ephemeral interacts with &lt;operational-state&gt;. The<b=
r>
alternative view I mentioned is that a magic merge (+) takes &lt;applied&gt=
;<br>
and &lt;ephermeral&gt; as input that feeds into &lt;operational-state&gt;. =
This is<br>
likely closer to the &#39;pane of glass&#39; model. The revised datastore m=
odel<br>
kind of puts the magic merge function (+) into the operational datastore<br=
>
itself, essentially treating I2RS ephemeral datastores like any other<br>
control plane interface. (This still allowes a &#39;paned&#39; implementati=
on<br>
within the &lt;operational-state&gt; but it does not require this.)<br>
<br>
Note that draft-schoenw-netmod-revised-datastores-00 came out of a<br>
meeting I had with Martin in Stockholm and there have been a couple of<br>
calls where people where trying to figure out ways to deal with the<br>
openconfig ideas. There is no WG agreement on any of this, its all<br>
just input to discussion.<br>
<br>
&gt; It would be helpful to see how an ephemeral datastore is intended to<b=
r>
&gt; interact in this diagram.=C2=A0 A detail that would need to be clarifi=
ed is what<br>
&gt; happens when there is overlaps in portions of the schemas.<br>
<br>
One of the driving forces were attempts to overcome the /foo and<br>
/foo-state distinction we started to make in data models. This might<br>
actually make ephemeral data model extensions easier.<br>
<br>
&gt; &gt;=C2=A0 2.=C2=A0 Does Ephemeral-REQ-06 provide the Yang requirement=
s in<br>
&gt; &gt; &gt; a clear fashion?=C2=A0 Do you have any suggestions for alter=
native text?<br>
&gt; &gt;<br>
&gt; &gt; I think it is clear but broken. In particular the part about<br>
&gt; &gt; indicating secure/non-secure transport.<br>
&gt;<br>
&gt; The text relating to transport is applied to generally and needs clari=
fying.<br>
&gt; Let&#39;s provide a specific goal:<br>
&gt;<br>
&gt; For Yang notifications, there may be some desire for the information t=
o be<br>
&gt; sent across alternative transports, potentially with specific encoding=
s.<br>
&gt; draft-ietf-netconf-yang-push covers I2RS use cases wherein the data ma=
y be<br>
&gt; sent via alternative transports.=C2=A0 Should we have some sort of mar=
kup in the<br>
&gt; Yang language to identify what transports might be utilized?=C2=A0 Wha=
t about<br>
&gt; security requirements?<br>
<br>
The choice of transports and in particular the question whether a<br>
non-secure transport is acceptable is for me primarily a deployment<br>
question and not a data modeling question.<br>
<br>
&gt; Obviously we can spell out transport security considerations as part o=
f the<br>
&gt; description clause within a notification.=C2=A0 However, since a signi=
ficant<br>
&gt; amount of feedback has been given from individuals with a security<br>
&gt; background that many objects we&#39;re likely to use in I2RS may be se=
curity<br>
&gt; sensitive - but not all! - some way to indicate the sensitivity may be=
<br>
&gt; required.<br>
<br>
It is actually difficult for me to imagine objects that are in all<br>
usage contexts never security sensitive.<br>
<br>
&gt; The motivation for this is that for insecure and high speed transports=
 and<br>
&gt; ecodings such as IPFIX (e.g.) it may be fine to expose some data (e.g.=
<br>
&gt; interface statistics) but the same may not be true for other data and =
a<br>
&gt; secured transport may be required.<br>
<br>
Whether an interface is used or not can be sensitive information. In a<br>
certain deployment, it may still be OK to use an unsecure transport<br>
because the path between the IPFIX exporter and collector is believed<br>
to be reasonably protected. But that is a deployment question, not a<br>
data modeling question.<br>
<br>
&gt; &gt; &gt; 3. Do you think any of the Ephemeral-REQ-07 NETCONF Changes<=
br>
&gt; &gt; &gt;=C2=A0 =C2=A0 are not necessary?=C2=A0 =C2=A0If so, what chan=
ges would you leave out?<br>
&gt; &gt; &gt;=C2=A0 =C2=A0 Do the &quot;policy-knobs&quot; seem useful to =
you?<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; 4. Do you think any of the Ephemeral-REQ-08 RESTCONF changes=
<br>
&gt; &gt; &gt;=C2=A0 =C2=A0 are not necessary?=C2=A0 If so, what changes wo=
uld you leave out?<br>
&gt; &gt; &gt;=C2=A0 =C2=A0 Do we need all the features (yang module librar=
y, call-home,<br>
&gt; &gt; &gt;=C2=A0 =C2=A0 server)?<br>
&gt; &gt;<br>
&gt; &gt; I think this needs to be trimmed down. I think it should be avoid=
ed to<br>
&gt; &gt; create I2RS specific solutions for things that are already in pla=
ce<br>
&gt; &gt; (e.g., NETCONF has a mechanism for protocol capability discovery =
and<br>
&gt; &gt; negotiation, NETCONF already supports multiple (secure) transport=
s).<br>
&gt; &gt;<br>
&gt; &gt; I think that having a clear architectural view is essential. I am=
 not<br>
&gt; &gt; sure the &#39;single pane of glass&#39; model is the way to go. I=
 think the<br>
&gt; &gt; decision on the architectural model is key because it impacts man=
y of<br>
&gt; &gt; the other requirements and solutions.<br>
&gt; &gt;<br>
&gt; &gt; You want both NC and RC to support XML and JSON and SSH and TLS a=
nd<br>
&gt; &gt; (plaintext) TCP? Does this maximum of variability and flexibility=
<br>
&gt; &gt; really help interoperability? Perhaps things should be reorganize=
d<br>
&gt; &gt; into things that are protocol agnostic (and should not be repeate=
d)<br>
&gt; &gt; and things that are protocol specific - if there is indeed a need=
 to<br>
&gt; &gt; work with multiple protocols.<br>
&gt;<br>
&gt; I agree we&#39;re being overly specific here, although as noted above =
we need<br>
&gt; some discussion about what to do about insecure transports for some<br=
>
&gt; operations, such as subscriptions.=C2=A0 (I think that&#39;s covered b=
y the<br>
&gt; yang-push doc in particular.)<br>
<br>
So lets leave it there and lets not repeat it.<br>
<br>
&gt; Item 6 about precedence of local configuration vs. ephemeral configura=
tion<br>
&gt; requires discussion, including in the revised-datastore document if it=
<br>
&gt; chooses to address ephemeral configuration.<br>
&gt;<br>
&gt; &gt; I also think that it is not needed to write down requirements to<=
br>
&gt; &gt; NETCONF for things that are already solved or being worked on.<br=
>
&gt;<br>
&gt; I think we&#39;re happy to subtract these, or at the least call out th=
e existing<br>
&gt; work in progress.=C2=A0 As noted in some earlier drafts, the goal of t=
he I2RS<br>
&gt; drafts should be to not have drafts in I2RS, but solution space docume=
nts in<br>
&gt; netconf and netmod.<br>
<br>
Yes!<br>
<span class=3D""><font color=3D"#888888"><br>
/js<br>
<br>
--<br>
Juergen Schoenwaelder=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Jacobs Univer=
sity Bremen gGmbH<br>
Phone: +49 421 200 3587=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Campus Ring 1 | 28=
759 Bremen | Germany<br>
Fax:=C2=A0 =C2=A0+49 421 200 3103=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;<a h=
ref=3D"http://www.jacobs-university.de/" rel=3D"noreferrer" target=3D"_blan=
k">http://www.jacobs-university.de/</a>&gt;<br>
<br>
_______________________________________________<br>
i2rs mailing list<br>
<a href=3D"mailto:i2rs@ietf.org">i2rs@ietf.org</a><br>
<a href=3D"https://www.ietf.org/mailman/listinfo/i2rs" rel=3D"noreferrer" t=
arget=3D"_blank">https://www.ietf.org/mailman/listinfo/i2rs</a><br>
</font></span></blockquote></div><br></div></div>

--001a114926063a5cc505343658ab--


From nobody Wed Jun  1 05:24:48 2016
Return-Path: <shares@ndzh.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 EDA9812B007 for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 05:24:46 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.106
X-Spam-Level: 
X-Spam-Status: No, score=-1.106 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RDNS_NONE=0.793] autolearn=no autolearn_force=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 hmQQqh72SOfM for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 05:24:45 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id DF5B812D184 for <i2rs@ietf.org>; Wed,  1 Jun 2016 05:24:44 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=107.92.120.142; 
Date: Wed, 01 Jun 2016 08:24:34 -0400
Message-ID: <6qtqondee9e8m6od11bh1ilt.1464783874424@email.android.com>
Importance: normal
From: Susan Hares <shares@ndzh.com>
To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="--_com.samsung.android.email_5550749760328980"
X-Authenticated-User: skh@ndzh.com 
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/SMFkBdrp_RI9zg-3gyllDC3ls1w>
Cc: 'Jeffrey Haas' <jhaas@pfrc.org>, i2rs@ietf.org, 'Benoit Claise' <bclaise@cisco.com>, 'Alia Atlas' <akatlas@gmail.com>
Subject: Re: [i2rs] I2RS Interim Meeting - June 1, 2016 - 10:00am - 11:00am -  Topic: Ephemeral State Requirements
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 01 Jun 2016 12:24:47 -0000

----_com.samsung.android.email_5550749760328980
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: base64

Oj09IGlzIGEgc3ltYm9sIHRoYXQgdHJhbnNsYXRlcyB0byBkZWZpbmVzIGFzLiDCoAoKTGVmdCBz
aWRlIDo9PSAoZGVmaW5lcyBhcykgcmlnaHQgc2lkZSBpbmZvCkNhdDo9PSBhbmltYWwgc21hbGwg
ZnVycnkKU3VlCgoKU2VudCB2aWEgdGhlIFNhbXN1bmcgR2FsYXh5IE5vdGU1LCBhbiBBVCZUIDRH
IExURSBzbWFydHBob25lLS0tLS0tLS0gT3JpZ2luYWwgbWVzc2FnZSAtLS0tLS0tLUZyb206IEp1
ZXJnZW4gU2Nob2Vud2FlbGRlciA8ai5zY2hvZW53YWVsZGVyQGphY29icy11bml2ZXJzaXR5LmRl
PiBEYXRlOiA2LzEvMjAxNiAgNDoyNSBBTSAgKEdNVC0wNTowMCkgVG86IFN1c2FuIEhhcmVzIDxz
aGFyZXNAbmR6aC5jb20+IENjOiAnSmVmZnJleSBIYWFzJyA8amhhYXNAcGZyYy5vcmc+LCBpMnJz
QGlldGYub3JnLCAnQmVub2l0IENsYWlzZScgPGJjbGFpc2VAY2lzY28uY29tPiwgJ0FsaWEgQXRs
YXMnIDxha2F0bGFzQGdtYWlsLmNvbT4gU3ViamVjdDogUmU6IFtpMnJzXSBJMlJTIEludGVyaW0g
TWVldGluZyAtIEp1bmUgMSwgMjAxNiAtIDEwOjAwYW0gLSAxMTowMGFtIC0KICBUb3BpYzogRXBo
ZW1lcmFsIFN0YXRlIFJlcXVpcmVtZW50cyAKT24gVHVlLCBNYXkgMzEsIDIwMTYgYXQgMDM6Mjk6
NTVQTSAtMDQwMCwgU3VzYW4gSGFyZXMgd3JvdGU6Cj4gSnVlcmdlbjogCj4gCj4gCj4gPkkgdW5k
ZXJzdGFuZCBZQU5HIHZhbGlkYXRpb24gcnVsZXMgYW5kIEkgdW5kZXJzdGFuZCBZQU5HJ3Mgbm90
aW9uIG9mCj4gY29uZmlndXJhdGlvbiBkYXRhc3RvcmVzLiBJIGRvIG5vdCA+dGhpbmsgdGhpcyBt
YXRjaGVzIHlvdXIgZXBoZW1lcmFsCj4gY29uZmlndXJhdGlvbiB2YWxpZGF0aW9uLgo+IAo+IFRo
aXMgZG9lcyBub3QgcHJvdmlkZSBhIHRlY2huaWNhbCBkaXNjdXNzaW9uIG9mOiAKPiBhKSB3aGF0
IHlvdSB1bmRlcnN0YW5kIHRoZSBlcGhlbWVyYWwgY29uZmlndXJhdGlvbiB2YWxpZGF0aW9uIHJ1
bGVzIHRvIGJlLCAKPiBiKSB3aHkgeW91IGRvIG5vdCB0aGUgbW9kZWwgbWF0Y2hlcyB0aGUgY29u
ZmlndXJhdGlvbiB2YWxpZGF0aW9uIHJ1bGVzLiAKPiAKPiAxIERhdGEgTW9kZWwgaXMgYSBncmVh
dCBpZGVhIGZvciBORVRDT05GL05FVE1PRC7CoCBIb3dldmVyLCBpdCBzaG91bGQKPiBlbmNvbXBh
c3MgCj4gCj4gRXBoZW1lcmFsIGRhdGE6PT0gZXBoZW1lcmFsIHN0YXRlIDo6PT0gRXBoZW1lcmFs
IGNvbmZpZ3VyYXRpb24gKyBFcGhlbWVyYWwKPiBvcGVyYXRpb25hbCBzdGF0ZSAKPgoKVW5sZXNz
IHlvdSBkZWZpbmUgd2hhdCB0aGUgdGVybXMgbWVhbiBhbmQgd2hhdCA6Oj09IG1lYW5zIEkgaGF2
ZSBubwpjbHVlIHdoYXQgeW91IGFyZSB0cnlpbmcgdG8gY29udmV5IGhlcmUuCgovanMKCi0tIApK
dWVyZ2VuIFNjaG9lbndhZWxkZXLCoMKgwqDCoMKgwqDCoMKgwqDCoCBKYWNvYnMgVW5pdmVyc2l0
eSBCcmVtZW4gZ0dtYkgKUGhvbmU6ICs0OSA0MjEgMjAwIDM1ODfCoMKgwqDCoMKgwqDCoMKgIENh
bXB1cyBSaW5nIDEgfCAyODc1OSBCcmVtZW4gfCBHZXJtYW55CkZheDrCoMKgICs0OSA0MjEgMjAw
IDMxMDPCoMKgwqDCoMKgwqDCoMKgIDxodHRwOi8vd3d3LmphY29icy11bml2ZXJzaXR5LmRlLz4K

----_com.samsung.android.email_5550749760328980
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: base64

PGh0bWw+PGhlYWQ+PG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0
L2h0bWw7IGNoYXJzZXQ9VVRGLTgiPjwvaGVhZD48Ym9keT48ZGl2Pjo9PSBpcyBhIHN5bWJvbCB0
aGF0IHRyYW5zbGF0ZXMgdG8gZGVmaW5lcyBhcy4gJm5ic3A7PC9kaXY+PGRpdj48YnI+PC9kaXY+
PGRpdj48YnI+PC9kaXY+PGRpdj5MZWZ0IHNpZGUgOj09IChkZWZpbmVzIGFzKSByaWdodCBzaWRl
IGluZm88L2Rpdj48ZGl2Pjxicj48L2Rpdj48ZGl2PkNhdDo9PSBhbmltYWwgc21hbGwgZnVycnk8
L2Rpdj48ZGl2Pjxicj48L2Rpdj48ZGl2PlN1ZTwvZGl2PjxkaXY+PGJyPjwvZGl2PjxkaXY+PGJy
PjwvZGl2PjxkaXY+PGJyPjwvZGl2PjxkaXYgaWQ9ImNvbXBvc2VyX3NpZ25hdHVyZSI+PGRpdiBz
dHlsZT0iZm9udC1zaXplOjg1JTtjb2xvcjojNTc1NzU3Ij5TZW50IHZpYSB0aGUgU2Ftc3VuZyBH
YWxheHkgTm90ZTUsIGFuIEFUJmFtcDtUIDRHIExURSBzbWFydHBob25lPC9kaXY+PC9kaXY+PGRp
diBzdHlsZT0iZm9udC1zaXplOjEwMCU7Y29sb3I6IzAwMDAwMCI+PCEtLSBvcmlnaW5hbE1lc3Nh
Z2UgLS0+PGRpdj4tLS0tLS0tLSBPcmlnaW5hbCBtZXNzYWdlIC0tLS0tLS0tPC9kaXY+PGRpdj5G
cm9tOiBKdWVyZ2VuIFNjaG9lbndhZWxkZXIgJmx0O2ouc2Nob2Vud2FlbGRlckBqYWNvYnMtdW5p
dmVyc2l0eS5kZSZndDsgPC9kaXY+PGRpdj5EYXRlOiA2LzEvMjAxNiAgNDoyNSBBTSAgKEdNVC0w
NTowMCkgPC9kaXY+PGRpdj5UbzogU3VzYW4gSGFyZXMgJmx0O3NoYXJlc0BuZHpoLmNvbSZndDsg
PC9kaXY+PGRpdj5DYzogJ0plZmZyZXkgSGFhcycgJmx0O2poYWFzQHBmcmMub3JnJmd0OywgaTJy
c0BpZXRmLm9yZywgJ0Jlbm9pdCBDbGFpc2UnICZsdDtiY2xhaXNlQGNpc2NvLmNvbSZndDssICdB
bGlhIEF0bGFzJyAmbHQ7YWthdGxhc0BnbWFpbC5jb20mZ3Q7IDwvZGl2PjxkaXY+U3ViamVjdDog
UmU6IFtpMnJzXSBJMlJTIEludGVyaW0gTWVldGluZyAtIEp1bmUgMSwgMjAxNiAtIDEwOjAwYW0g
LSAxMTowMGFtIC0KICBUb3BpYzogRXBoZW1lcmFsIFN0YXRlIFJlcXVpcmVtZW50cyA8L2Rpdj48
ZGl2Pjxicj48L2Rpdj48L2Rpdj5PbiBUdWUsIE1heSAzMSwgMjAxNiBhdCAwMzoyOTo1NVBNIC0w
NDAwLCBTdXNhbiBIYXJlcyB3cm90ZTo8YnI+Jmd0OyBKdWVyZ2VuOiA8YnI+Jmd0OyA8YnI+Jmd0
OyA8YnI+Jmd0OyAmZ3Q7SSB1bmRlcnN0YW5kIFlBTkcgdmFsaWRhdGlvbiBydWxlcyBhbmQgSSB1
bmRlcnN0YW5kIFlBTkcncyBub3Rpb24gb2Y8YnI+Jmd0OyBjb25maWd1cmF0aW9uIGRhdGFzdG9y
ZXMuIEkgZG8gbm90ICZndDt0aGluayB0aGlzIG1hdGNoZXMgeW91ciBlcGhlbWVyYWw8YnI+Jmd0
OyBjb25maWd1cmF0aW9uIHZhbGlkYXRpb24uPGJyPiZndDsgPGJyPiZndDsgVGhpcyBkb2VzIG5v
dCBwcm92aWRlIGEgdGVjaG5pY2FsIGRpc2N1c3Npb24gb2Y6IDxicj4mZ3Q7IGEpIHdoYXQgeW91
IHVuZGVyc3RhbmQgdGhlIGVwaGVtZXJhbCBjb25maWd1cmF0aW9uIHZhbGlkYXRpb24gcnVsZXMg
dG8gYmUsIDxicj4mZ3Q7IGIpIHdoeSB5b3UgZG8gbm90IHRoZSBtb2RlbCBtYXRjaGVzIHRoZSBj
b25maWd1cmF0aW9uIHZhbGlkYXRpb24gcnVsZXMuIDxicj4mZ3Q7IDxicj4mZ3Q7IDEgRGF0YSBN
b2RlbCBpcyBhIGdyZWF0IGlkZWEgZm9yIE5FVENPTkYvTkVUTU9ELiZuYnNwOyBIb3dldmVyLCBp
dCBzaG91bGQ8YnI+Jmd0OyBlbmNvbXBhc3MgPGJyPiZndDsgPGJyPiZndDsgRXBoZW1lcmFsIGRh
dGE6PT0gZXBoZW1lcmFsIHN0YXRlIDo6PT0gRXBoZW1lcmFsIGNvbmZpZ3VyYXRpb24gKyBFcGhl
bWVyYWw8YnI+Jmd0OyBvcGVyYXRpb25hbCBzdGF0ZSA8YnI+Jmd0Ozxicj48YnI+VW5sZXNzIHlv
dSBkZWZpbmUgd2hhdCB0aGUgdGVybXMgbWVhbiBhbmQgd2hhdCA6Oj09IG1lYW5zIEkgaGF2ZSBu
bzxicj5jbHVlIHdoYXQgeW91IGFyZSB0cnlpbmcgdG8gY29udmV5IGhlcmUuPGJyPjxicj4vanM8
YnI+PGJyPi0tIDxicj5KdWVyZ2VuIFNjaG9lbndhZWxkZXImbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgSmFjb2JzIFVuaXZlcnNpdHkg
QnJlbWVuIGdHbWJIPGJyPlBob25lOiArNDkgNDIxIDIwMCAzNTg3Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IENhbXB1cyBSaW5nIDEgfCAyODc1OSBCcmVt
ZW4gfCBHZXJtYW55PGJyPkZheDombmJzcDsmbmJzcDsgKzQ5IDQyMSAyMDAgMzEwMyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAmbHQ7aHR0cDovL3d3dy5q
YWNvYnMtdW5pdmVyc2l0eS5kZS8mZ3Q7PGJyPjwvYm9keT48L2h0bWw+

----_com.samsung.android.email_5550749760328980--


From nobody Wed Jun  1 05:30:23 2016
Return-Path: <jhaas@slice.pfrc.org>
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 68C6412D1A1 for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 05:30:22 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.328
X-Spam-Level: 
X-Spam-Status: No, score=-3.328 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RP_MATCHES_RCVD=-1.426, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=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 UsVSQ6JsTYxK for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 05:30:17 -0700 (PDT)
Received: from slice.pfrc.org (slice.pfrc.org [67.207.130.108]) by ietfa.amsl.com (Postfix) with ESMTP id 9D95812D194 for <i2rs@ietf.org>; Wed,  1 Jun 2016 05:30:17 -0700 (PDT)
Received: by slice.pfrc.org (Postfix, from userid 1001) id 89C8A1E335; Wed,  1 Jun 2016 08:35:50 -0400 (EDT)
Date: Wed, 1 Jun 2016 08:35:50 -0400
From: Jeffrey Haas <jhaas@pfrc.org>
To: Linda Dunbar <linda.dunbar@huawei.com>, Andy Bierman <andy@yumaworks.com>,  Benoit Claise <bclaise@cisco.com>, "i2rs@ietf.org" <i2rs@ietf.org>, Susan Hares <shares@ndzh.com>, Alia Atlas <akatlas@gmail.com>
Message-ID: <20160601123550.GP10531@pfrc.org>
References: <20160531063840.GA21289@elstar.local> <00d501d1bb45$0da83500$28f89f00$@ndzh.com> <20160531142540.GA22420@elstar.local> <001401d1bb4e$cfaefd10$6f0cf730$@ndzh.com> <20160531171304.GA22857@elstar.local> <CABCOCHR2JChAg1zmKDy_qxVOGYVeTm9wGVLyxzpChb5Ht0uaww@mail.gmail.com> <20160531195123.GN17462@pfrc.org> <CABCOCHQka+BezA6pLSiyOPcTghgx-UKK5dY6y70nME_EFZxCZg@mail.gmail.com> <4A95BA014132FF49AE685FAB4B9F17F657EACE6D@dfweml501-mbb> <20160601083922.GB24118@elstar.local>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20160601083922.GB24118@elstar.local>
User-Agent: Mutt/1.5.21 (2010-09-15)
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/S50CPfI9J5VVdixS8XANu5lmd2c>
Subject: Re: [i2rs] Can I2RS focus on the "Over the Wire" data structure , not on how end point handle the "DataStore"?
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 01 Jun 2016 12:30:22 -0000

On Wed, Jun 01, 2016 at 10:39:22AM +0200, Juergen Schoenwaelder wrote:
> I think a client needs to know what it means to modify a certain
> datastore. A client needs to know what validation means. If people
> code against <running>, <indented>, <applied>, <ephemeral> (and there
> are more suggested) and it is undefined how things conceptually relate
> to each other and interact with each other, then I have my doubts this
> will lead to interoperability since systems likely expose rather
> different behavior.

+1

-- Jeff


From nobody Wed Jun  1 05:31:39 2016
Return-Path: <j.schoenwaelder@jacobs-university.de>
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 79D0C12D1A6 for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 05:31:37 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.626
X-Spam-Level: 
X-Spam-Status: No, score=-5.626 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, RP_MATCHES_RCVD=-1.426] autolearn=ham autolearn_force=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 5b6mTq6VfGto for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 05:31:35 -0700 (PDT)
Received: from atlas3.jacobs-university.de (atlas3.jacobs-university.de [212.201.44.18]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 7CF6412D194 for <i2rs@ietf.org>; Wed,  1 Jun 2016 05:31:35 -0700 (PDT)
Received: from localhost (demetrius5.irc-it.jacobs-university.de [10.70.0.222]) by atlas3.jacobs-university.de (Postfix) with ESMTP id 3DF66FD2; Wed,  1 Jun 2016 14:31:34 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from atlas3.jacobs-university.de ([10.70.0.220]) by localhost (demetrius5.jacobs-university.de [10.70.0.222]) (amavisd-new, port 10030) with ESMTP id 8IQ1WGx8m6Qq; Wed,  1 Jun 2016 14:31:30 +0200 (CEST)
Received: from hermes.jacobs-university.de (hermes.jacobs-university.de [212.201.44.23]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "hermes.jacobs-university.de", Issuer "Jacobs University CA - G01" (verified OK)) by atlas3.jacobs-university.de (Postfix) with ESMTPS; Wed,  1 Jun 2016 14:31:20 +0200 (CEST)
Received: from localhost (demetrius1.jacobs-university.de [212.201.44.46]) by hermes.jacobs-university.de (Postfix) with ESMTP id DDE212005E; Wed,  1 Jun 2016 14:31:19 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from hermes.jacobs-university.de ([212.201.44.23]) by localhost (demetrius1.jacobs-university.de [212.201.44.32]) (amavisd-new, port 10024) with ESMTP id XRCRzVPv6rlY; Wed,  1 Jun 2016 14:31:18 +0200 (CEST)
Received: from elstar.local (elstar.jacobs.jacobs-university.de [10.50.231.133]) by hermes.jacobs-university.de (Postfix) with ESMTP id 1EF3D20058; Wed,  1 Jun 2016 14:31:18 +0200 (CEST)
Received: by elstar.local (Postfix, from userid 501) id EBCEF3B00706; Wed,  1 Jun 2016 14:31:17 +0200 (CEST)
Date: Wed, 1 Jun 2016 14:31:17 +0200
From: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
To: Susan Hares <shares@ndzh.com>
Message-ID: <20160601123117.GB24741@elstar.local>
Mail-Followup-To: Susan Hares <shares@ndzh.com>, 'Jeffrey Haas' <jhaas@pfrc.org>, i2rs@ietf.org, 'Benoit Claise' <bclaise@cisco.com>, 'Alia Atlas' <akatlas@gmail.com>
References: <6qtqondee9e8m6od11bh1ilt.1464783874424@email.android.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: inline
X-Clacks-Overhead: GNU Terry Pratchett
Content-Transfer-Encoding: 8bit
In-Reply-To: <6qtqondee9e8m6od11bh1ilt.1464783874424@email.android.com>
User-Agent: Mutt/1.6.0 (2016-04-01)
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/la6sTI5XvUHbOdbDMBZngXXodUk>
Cc: 'Jeffrey Haas' <jhaas@pfrc.org>, i2rs@ietf.org, 'Benoit Claise' <bclaise@cisco.com>, 'Alia Atlas' <akatlas@gmail.com>
Subject: Re: [i2rs] I2RS Interim Meeting - June 1, 2016 - 10:00am - 11:00am -?  Topic: Ephemeral State Requirements
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
Reply-To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
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: <https://mailarchive.ietf.org/arch/browse/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, 01 Jun 2016 12:31:37 -0000

OK. So if ephemeral state is the same as ephemeral data, can we simply
get rid of one of the terms?

Still looking for a definition of 'ephemeral operational state' (since
I consider operational state by nature to be ephemeral). And without
it, I can't really resolve the 'defined as' relationships.

/js

On Wed, Jun 01, 2016 at 08:24:34AM -0400, Susan Hares wrote:
> :== is a symbol that translates to defines as.  
> 
> Left side :== (defines as) right side info
> Cat:== animal small furry
> Sue
> 
> 
> Sent via the Samsung Galaxy Note5, an AT&T 4G LTE smartphone-------- Original message --------From: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de> Date: 6/1/2016  4:25 AM  (GMT-05:00) To: Susan Hares <shares@ndzh.com> Cc: 'Jeffrey Haas' <jhaas@pfrc.org>, i2rs@ietf.org, 'Benoit Claise' <bclaise@cisco.com>, 'Alia Atlas' <akatlas@gmail.com> Subject: Re: [i2rs] I2RS Interim Meeting - June 1, 2016 - 10:00am - 11:00am -
>   Topic: Ephemeral State Requirements 
> On Tue, May 31, 2016 at 03:29:55PM -0400, Susan Hares wrote:
> > Juergen: 
> > 
> > 
> > >I understand YANG validation rules and I understand YANG's notion of
> > configuration datastores. I do not >think this matches your ephemeral
> > configuration validation.
> > 
> > This does not provide a technical discussion of: 
> > a) what you understand the ephemeral configuration validation rules to be, 
> > b) why you do not the model matches the configuration validation rules. 
> > 
> > 1 Data Model is a great idea for NETCONF/NETMOD.  However, it should
> > encompass 
> > 
> > Ephemeral data:== ephemeral state ::== Ephemeral configuration + Ephemeral
> > operational state 
> >
> 
> Unless you define what the terms mean and what ::== means I have no
> clue what you are trying to convey here.
> 
> /js
> 
> -- 
> Juergen Schoenwaelder           Jacobs University Bremen gGmbH
> Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
> Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>

-- 
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>


From nobody Wed Jun  1 05:35:40 2016
Return-Path: <jhaas@slice.pfrc.org>
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 DF91E12D1AB for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 05:35:38 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.328
X-Spam-Level: 
X-Spam-Status: No, score=-3.328 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RP_MATCHES_RCVD=-1.426, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=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 N9Hrs6IkrZB5 for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 05:35:37 -0700 (PDT)
Received: from slice.pfrc.org (slice.pfrc.org [67.207.130.108]) by ietfa.amsl.com (Postfix) with ESMTP id 70CDD12D194 for <i2rs@ietf.org>; Wed,  1 Jun 2016 05:35:37 -0700 (PDT)
Received: by slice.pfrc.org (Postfix, from userid 1001) id 52B391E335; Wed,  1 Jun 2016 08:41:11 -0400 (EDT)
Date: Wed, 1 Jun 2016 08:41:11 -0400
From: Jeffrey Haas <jhaas@pfrc.org>
To: Andy Bierman <andy@yumaworks.com>
Message-ID: <20160601124110.GQ10531@pfrc.org>
References: <000601d1bad5$70523090$50f691b0$@ndzh.com> <20160531063840.GA21289@elstar.local> <20160531193640.GL17462@pfrc.org> <20160601091010.GC24118@elstar.local> <CABCOCHTW583xFE6Sf=Xmknis1_fKocWZTJdVL-L1ejDPmt6u4g@mail.gmail.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <CABCOCHTW583xFE6Sf=Xmknis1_fKocWZTJdVL-L1ejDPmt6u4g@mail.gmail.com>
User-Agent: Mutt/1.5.21 (2010-09-15)
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/-McR52WvWD81Ld53qMyMpgtVMZ0>
Cc: "i2rs@ietf.org" <i2rs@ietf.org>, Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>, Susan Hares <shares@ndzh.com>, Alia Atlas <akatlas@gmail.com>
Subject: Re: [i2rs] I2RS Interim Meeting - June 1, 2016 - 10:00am - 11:00am - Topic: Ephemeral State Requirements
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 01 Jun 2016 12:35:39 -0000

On Wed, Jun 01, 2016 at 05:08:16AM -0700, Andy Bierman wrote:
> On Wed, Jun 1, 2016 at 2:10 AM, Juergen Schoenwaelder <
> j.schoenwaelder@jacobs-university.de> wrote:
> > On Tue, May 31, 2016 at 03:36:40PM -0400, Jeffrey Haas wrote:
> > > I agree that your observation covers the general intent.  The
> > requirements
> > > language above is attempting to be a bit too specific for a given
> > > implementation detail, namely instantiation of ephemeral behaviors in a
> > data
> > > tree.
> > >
> > > Could you please supply alternative text?
> >
> > It is difficult since I am not sure what the original intention
> > was. There is augmentation at the schema tree level and then there is
> > augmentation at the data tree level. My understanding (which may be
> > wrong) is that I2RS primarily looks at data tree level augmentations
> > of operational state data and not so much at configuration datastore
> > data. Part of the openconfig inspired discussion is to do away with
> > the /foo and /foo-state division and that has an impact how the schema
> > trees are constructed.
> >
> >
> This REQ-05 doesn't give any reason why data nodes need to be tagged as
> ephemeral
> in the schema tree, or what it means to be tagged as ephemeral.
> 
> My intention for suggesting an "i2rs:ephemeral" YANG extension was to
> identify
> the I2RS conformance requirements for a server claiming to implement I2RS
> for a specific YANG module.
> 
> A node tagged as ephemeral MUST be accessible in the ephemeral datastore
> using I2RS if the module (or feature) is supported. An untagged node MAY be
> accessible.

This covers the intent properly.

Your suggestion of a mechanism in yang is probably reasonable, but as Jürgen
would say, this is all about the requirements.  So, could you suggest text
covering the requirement?

> An I2RS data model could define read-only nodes.  These nodes could
> be considered ephemeral operational state.  Should these nodes live in
> this datastore or an "operational" datastore?  I don't know.
> That's why we probably need your draft.

If the implementation detail for ephemeral state is that it is part of a
datastore, then having the operational state in the ephemeral datastore
seems to make sense.  However, I find it more likely that we'll need a
mechanism to get the "union view after precedence" (i.e. panes of glass
model) for a conceptional datastore that covers state from local and
ephemeral.

But again, that's a protocol detail which we're trying to avoid in the
requirements.

If you think it belongs in the strawman or another document, we'd love text.

-- Jeff


From nobody Wed Jun  1 05:40:18 2016
Return-Path: <andy@yumaworks.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 C6FE512D1A6 for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 05:40:16 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.6
X-Spam-Level: 
X-Spam-Status: No, score=-2.6 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=yumaworks-com.20150623.gappssmtp.com
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 IDhpN8pNXKxE for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 05:40:14 -0700 (PDT)
Received: from mail-yw0-x235.google.com (mail-yw0-x235.google.com [IPv6:2607:f8b0:4002:c05::235]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id A929112B007 for <i2rs@ietf.org>; Wed,  1 Jun 2016 05:40:14 -0700 (PDT)
Received: by mail-yw0-x235.google.com with SMTP id h19so16766458ywc.0 for <i2rs@ietf.org>; Wed, 01 Jun 2016 05:40:14 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yumaworks-com.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc; bh=JuiccPPomDsOQcLfdgsiDOPOWwtsM0psZro7ZUXb7OM=; b=KqwJqmlwRYa2+53jn+exiLLkl0I4CXG0bKfYW7exg6nGL0EKu89tZnOvUdNQZk/trD 69R/Ub3P/veaFd6inw+HIOZwmbGD+EWlOvOtf4pTYjKqRGo6ESoD5epvRLf0VGGPmEHh OKqtEJ6QkrNwgShksqR4I1s1qZ2FoRL3MnxH3jkCn65T7zC/NmBI56NpiVqY67Bas6BW KF/hkZsd4qiyq+7zUS9WwcwYx3+/Ht+VceBQFygFiafgino60kpF6l2InwCcqOPwCD4L J+fgtB7cOmFsLNQuNk+7XRCn1iRnhrnOAABHauXzb4KmcUcNkHD1dRWF9D5e+MjqnONe oYTw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc; bh=JuiccPPomDsOQcLfdgsiDOPOWwtsM0psZro7ZUXb7OM=; b=GGuATPQSenhAod3+ROTqq49shUOI5JbVOe+efPD/FWDDvCJgTK5+YkETI6t0M2v2tt 1aGYvuM4hrJ+ifyy4MeMYtUN8kw5nAoVbiKmCzXVPj3d33dZ8JfmUMGsFTv4G2WxxcGp AeMpl13NCR+gplYUP07kNmzqN4myArvz7XKH07EQRtKaK1cwKVcELrEBg6OrkZ84n0NI GgGTvcmjRGgJtkvm0Yu/6KiyvBzQBAq0M5BFDXq4lE53iXekFKt7yFBq1XCrXhP/6a2n pR1JrDa8FJhkgAZY1MSJndmm4CGD2ZWGOgkLUeYfDfgSOtYBL67mf1zubYCQROt4vY4h We1A==
X-Gm-Message-State: ALyK8tKHC2Iif+45qQjeyapnU1LVDQ4nUacW8GXrT9wM0g8jDgbkg6+AjXfdvj+Tlv2Iltq/luymLCAzIsPi3w==
MIME-Version: 1.0
X-Received: by 10.37.80.133 with SMTP id e127mr1956570ybb.162.1464784813852; Wed, 01 Jun 2016 05:40:13 -0700 (PDT)
Received: by 10.37.115.208 with HTTP; Wed, 1 Jun 2016 05:40:13 -0700 (PDT)
In-Reply-To: <20160601124110.GQ10531@pfrc.org>
References: <000601d1bad5$70523090$50f691b0$@ndzh.com> <20160531063840.GA21289@elstar.local> <20160531193640.GL17462@pfrc.org> <20160601091010.GC24118@elstar.local> <CABCOCHTW583xFE6Sf=Xmknis1_fKocWZTJdVL-L1ejDPmt6u4g@mail.gmail.com> <20160601124110.GQ10531@pfrc.org>
Date: Wed, 1 Jun 2016 05:40:13 -0700
Message-ID: <CABCOCHSJbLwQ+DJ6+FYoV19OYXcTzLvXfG5PLCRswbeYubj=yQ@mail.gmail.com>
From: Andy Bierman <andy@yumaworks.com>
To: Jeffrey Haas <jhaas@pfrc.org>
Content-Type: multipart/alternative; boundary=001a113e9b6c80bc77053436ca26
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/2kjYA1jwNcIENAJUmZfNzOs5hY8>
Cc: "i2rs@ietf.org" <i2rs@ietf.org>, Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>, Susan Hares <shares@ndzh.com>, Alia Atlas <akatlas@gmail.com>
Subject: Re: [i2rs] I2RS Interim Meeting - June 1, 2016 - 10:00am - 11:00am - Topic: Ephemeral State Requirements
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 01 Jun 2016 12:40:17 -0000

--001a113e9b6c80bc77053436ca26
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

On Wed, Jun 1, 2016 at 5:41 AM, Jeffrey Haas <jhaas@pfrc.org> wrote:

> On Wed, Jun 01, 2016 at 05:08:16AM -0700, Andy Bierman wrote:
> > On Wed, Jun 1, 2016 at 2:10 AM, Juergen Schoenwaelder <
> > j.schoenwaelder@jacobs-university.de> wrote:
> > > On Tue, May 31, 2016 at 03:36:40PM -0400, Jeffrey Haas wrote:
> > > > I agree that your observation covers the general intent.  The
> > > requirements
> > > > language above is attempting to be a bit too specific for a given
> > > > implementation detail, namely instantiation of ephemeral behaviors
> in a
> > > data
> > > > tree.
> > > >
> > > > Could you please supply alternative text?
> > >
> > > It is difficult since I am not sure what the original intention
> > > was. There is augmentation at the schema tree level and then there is
> > > augmentation at the data tree level. My understanding (which may be
> > > wrong) is that I2RS primarily looks at data tree level augmentations
> > > of operational state data and not so much at configuration datastore
> > > data. Part of the openconfig inspired discussion is to do away with
> > > the /foo and /foo-state division and that has an impact how the schem=
a
> > > trees are constructed.
> > >
> > >
> > This REQ-05 doesn't give any reason why data nodes need to be tagged as
> > ephemeral
> > in the schema tree, or what it means to be tagged as ephemeral.
> >
> > My intention for suggesting an "i2rs:ephemeral" YANG extension was to
> > identify
> > the I2RS conformance requirements for a server claiming to implement I2=
RS
> > for a specific YANG module.
> >
> > A node tagged as ephemeral MUST be accessible in the ephemeral datastor=
e
> > using I2RS if the module (or feature) is supported. An untagged node MA=
Y
> be
> > accessible.
>
> This covers the intent properly.
>
> Your suggestion of a mechanism in yang is probably reasonable, but as
> J=C3=BCrgen
> would say, this is all about the requirements.  So, could you suggest tex=
t
> covering the requirement?
>
>
I thought I just did.


Andy


> > An I2RS data model could define read-only nodes.  These nodes could
> > be considered ephemeral operational state.  Should these nodes live in
> > this datastore or an "operational" datastore?  I don't know.
> > That's why we probably need your draft.
>
> If the implementation detail for ephemeral state is that it is part of a
> datastore, then having the operational state in the ephemeral datastore
> seems to make sense.  However, I find it more likely that we'll need a
> mechanism to get the "union view after precedence" (i.e. panes of glass
> model) for a conceptional datastore that covers state from local and
> ephemeral.
>
> But again, that's a protocol detail which we're trying to avoid in the
> requirements.
>
> If you think it belongs in the strawman or another document, we'd love
> text.
>
> -- Jeff
>

--001a113e9b6c80bc77053436ca26
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><br><div class=3D"gmail_extra"><br><div class=3D"gmail_quo=
te">On Wed, Jun 1, 2016 at 5:41 AM, Jeffrey Haas <span dir=3D"ltr">&lt;<a h=
ref=3D"mailto:jhaas@pfrc.org" target=3D"_blank">jhaas@pfrc.org</a>&gt;</spa=
n> wrote:<br><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;b=
order-left:1px #ccc solid;padding-left:1ex">On Wed, Jun 01, 2016 at 05:08:1=
6AM -0700, Andy Bierman wrote:<br>
&gt; On Wed, Jun 1, 2016 at 2:10 AM, Juergen Schoenwaelder &lt;<br>
&gt; <a href=3D"mailto:j.schoenwaelder@jacobs-university.de">j.schoenwaelde=
r@jacobs-university.de</a>&gt; wrote:<br>
&gt; &gt; On Tue, May 31, 2016 at 03:36:40PM -0400, Jeffrey Haas wrote:<br>
&gt; &gt; &gt; I agree that your observation covers the general intent.=C2=
=A0 The<br>
&gt; &gt; requirements<br>
&gt; &gt; &gt; language above is attempting to be a bit too specific for a =
given<br>
&gt; &gt; &gt; implementation detail, namely instantiation of ephemeral beh=
aviors in a<br>
&gt; &gt; data<br>
&gt; &gt; &gt; tree.<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; Could you please supply alternative text?<br>
&gt; &gt;<br>
&gt; &gt; It is difficult since I am not sure what the original intention<b=
r>
&gt; &gt; was. There is augmentation at the schema tree level and then ther=
e is<br>
&gt; &gt; augmentation at the data tree level. My understanding (which may =
be<br>
&gt; &gt; wrong) is that I2RS primarily looks at data tree level augmentati=
ons<br>
&gt; &gt; of operational state data and not so much at configuration datast=
ore<br>
&gt; &gt; data. Part of the openconfig inspired discussion is to do away wi=
th<br>
&gt; &gt; the /foo and /foo-state division and that has an impact how the s=
chema<br>
&gt; &gt; trees are constructed.<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; This REQ-05 doesn&#39;t give any reason why data nodes need to be tagg=
ed as<br>
&gt; ephemeral<br>
&gt; in the schema tree, or what it means to be tagged as ephemeral.<br>
&gt;<br>
&gt; My intention for suggesting an &quot;i2rs:ephemeral&quot; YANG extensi=
on was to<br>
&gt; identify<br>
&gt; the I2RS conformance requirements for a server claiming to implement I=
2RS<br>
&gt; for a specific YANG module.<br>
&gt;<br>
&gt; A node tagged as ephemeral MUST be accessible in the ephemeral datasto=
re<br>
&gt; using I2RS if the module (or feature) is supported. An untagged node M=
AY be<br>
&gt; accessible.<br>
<br>
This covers the intent properly.<br>
<br>
Your suggestion of a mechanism in yang is probably reasonable, but as J=C3=
=BCrgen<br>
would say, this is all about the requirements.=C2=A0 So, could you suggest =
text<br>
covering the requirement?<br>
<br></blockquote><div><br></div><div>I thought I just did.</div><div><br></=
div><div><br></div><div>Andy</div><div>=C2=A0</div><blockquote class=3D"gma=
il_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-lef=
t:1ex">
&gt; An I2RS data model could define read-only nodes.=C2=A0 These nodes cou=
ld<br>
&gt; be considered ephemeral operational state.=C2=A0 Should these nodes li=
ve in<br>
&gt; this datastore or an &quot;operational&quot; datastore?=C2=A0 I don&#3=
9;t know.<br>
&gt; That&#39;s why we probably need your draft.<br>
<br>
If the implementation detail for ephemeral state is that it is part of a<br=
>
datastore, then having the operational state in the ephemeral datastore<br>
seems to make sense.=C2=A0 However, I find it more likely that we&#39;ll ne=
ed a<br>
mechanism to get the &quot;union view after precedence&quot; (i.e. panes of=
 glass<br>
model) for a conceptional datastore that covers state from local and<br>
ephemeral.<br>
<br>
But again, that&#39;s a protocol detail which we&#39;re trying to avoid in =
the<br>
requirements.<br>
<br>
If you think it belongs in the strawman or another document, we&#39;d love =
text.<br>
<br>
-- Jeff<br>
</blockquote></div><br></div></div>

--001a113e9b6c80bc77053436ca26--


From nobody Wed Jun  1 05:44:23 2016
Return-Path: <jhaas@slice.pfrc.org>
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 688DC12D1B8 for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 05:44:22 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.328
X-Spam-Level: 
X-Spam-Status: No, score=-3.328 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RP_MATCHES_RCVD=-1.426, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=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 ikYZbqWMrO9Y for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 05:44:21 -0700 (PDT)
Received: from slice.pfrc.org (slice.pfrc.org [67.207.130.108]) by ietfa.amsl.com (Postfix) with ESMTP id 47D9812D1BA for <i2rs@ietf.org>; Wed,  1 Jun 2016 05:44:21 -0700 (PDT)
Received: by slice.pfrc.org (Postfix, from userid 1001) id 2F43B1E335; Wed,  1 Jun 2016 08:49:55 -0400 (EDT)
Date: Wed, 1 Jun 2016 08:49:55 -0400
From: Jeffrey Haas <jhaas@pfrc.org>
To: Andy Bierman <andy@yumaworks.com>
Message-ID: <20160601124955.GR10531@pfrc.org>
References: <000601d1bad5$70523090$50f691b0$@ndzh.com> <20160531063840.GA21289@elstar.local> <20160531193640.GL17462@pfrc.org> <20160601091010.GC24118@elstar.local> <CABCOCHTW583xFE6Sf=Xmknis1_fKocWZTJdVL-L1ejDPmt6u4g@mail.gmail.com> <20160601124110.GQ10531@pfrc.org> <CABCOCHSJbLwQ+DJ6+FYoV19OYXcTzLvXfG5PLCRswbeYubj=yQ@mail.gmail.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <CABCOCHSJbLwQ+DJ6+FYoV19OYXcTzLvXfG5PLCRswbeYubj=yQ@mail.gmail.com>
User-Agent: Mutt/1.5.21 (2010-09-15)
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/1NtRgf9Sly6oWNXZNCNicWw8KTg>
Cc: "i2rs@ietf.org" <i2rs@ietf.org>, Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>, Susan Hares <shares@ndzh.com>, Alia Atlas <akatlas@gmail.com>
Subject: Re: [i2rs] I2RS Interim Meeting - June 1, 2016 - 10:00am - 11:00am - Topic: Ephemeral State Requirements
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 01 Jun 2016 12:44:22 -0000

On Wed, Jun 01, 2016 at 05:40:13AM -0700, Andy Bierman wrote:
> > > A node tagged as ephemeral MUST be accessible in the ephemeral datastore
> > > using I2RS if the module (or feature) is supported. An untagged node MAY
> > be
> > > accessible.
> >
> > This covers the intent properly.
> >
> > Your suggestion of a mechanism in yang is probably reasonable, but as
> > Jürgen
> > would say, this is all about the requirements.  So, could you suggest text
> > covering the requirement?
> >
> >
> I thought I just did.

It had been suggested the text covering Ephemeral-REQ-05/06 (in draft -09)
wasn't proper.  The text at the top of the quote covers at least one useful
property.

It's getting the full set of text covering those two sections correct that
we probably need.

-- Jeff


From nobody Wed Jun  1 05:59:37 2016
Return-Path: <shares@ndzh.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 0F89A12D13B for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 05:59:36 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.739
X-Spam-Level: *
X-Spam-Status: No, score=1.739 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, HTML_MESSAGE=0.001, RDNS_NONE=0.793] autolearn=no autolearn_force=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 pPHuiMhuqYj6 for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 05:59:34 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 48B2612B007 for <i2rs@ietf.org>; Wed,  1 Jun 2016 05:59:34 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=74.43.47.63; 
From: "Susan Hares" <shares@ndzh.com>
To: "'Juergen Schoenwaelder'" <j.schoenwaelder@jacobs-university.de>
Date: Wed, 1 Jun 2016 08:59:20 -0400
Message-ID: <011401d1bc05$6a923480$3fb69d80$@ndzh.com>
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="----=_NextPart_000_0115_01D1BBE3.E3821B20"
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AdG8BWm9sk42gEeMTU+3giznksLKqA==
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/mQN988OkM4Vlv5aCSP4KJC44Lss>
Cc: 'Jeffrey Haas' <jhaas@pfrc.org>, i2rs@ietf.org, 'Benoit Claise' <bclaise@cisco.com>, 'Alia Atlas' <akatlas@gmail.com>
Subject: Re: [i2rs] I2RS Interim Meeting - June 1, 2016 - 10:00am - 11:00am - Topic: Ephemeral State Requirements - fyi symbols
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 01 Jun 2016 12:59:36 -0000

This is a multipart message in MIME format.

------=_NextPart_000_0115_01D1BBE3.E3821B20
Content-Type: text/plain;
	charset="utf-8"
Content-Transfer-Encoding: quoted-printable

Juergen:  =20

=20

:=3D=3D comes from :=3D (defined as) from the mathematical symbols.=20

=20

x :=3D y, y =3D: x or x =E2=89=A1 y means x is defined to be another =
name for

=20

https://en.wikipedia.org/wiki/List_of_mathematical_symbols

=20

x :=3D y  defined the same as.=20

=20

Expansion on this is text use x:=3D=3D to be definition.  Some use ::=3D =


=20

=20

Sue=20

=20

From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Susan Hares
Sent: Wednesday, June 01, 2016 8:25 AM
To: Juergen Schoenwaelder
Cc: 'Jeffrey Haas'; i2rs@ietf.org; 'Benoit Claise'; 'Alia Atlas'
Subject: Re: [i2rs] I2RS Interim Meeting - June 1, 2016 - 10:00am - =
11:00am - Topic: Ephemeral State Requirements

=20

:=3D=3D is a symbol that translates to defines as. =20

=20

=20

Left side :=3D=3D (defines as) right side info

=20

Cat:=3D=3D animal small furry

=20

Sue

=20

=20

=20

Sent via the Samsung Galaxy Note5, an AT&T 4G LTE smartphone

-------- Original message --------

From: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>=20

Date: 6/1/2016 4:25 AM (GMT-05:00)=20

To: Susan Hares <shares@ndzh.com>=20

Cc: 'Jeffrey Haas' <jhaas@pfrc.org>, i2rs@ietf.org, 'Benoit Claise' =
<bclaise@cisco.com>, 'Alia Atlas' <akatlas@gmail.com>=20

Subject: Re: [i2rs] I2RS Interim Meeting - June 1, 2016 - 10:00am - =
11:00am - Topic: Ephemeral State Requirements=20

=20

On Tue, May 31, 2016 at 03:29:55PM -0400, Susan Hares wrote:
> Juergen:=20
>=20
>=20
> >I understand YANG validation rules and I understand YANG's notion of
> configuration datastores. I do not >think this matches your ephemeral
> configuration validation.
>=20
> This does not provide a technical discussion of:=20
> a) what you understand the ephemeral configuration validation rules to =
be,=20
> b) why you do not the model matches the configuration validation =
rules.=20
>=20
> 1 Data Model is a great idea for NETCONF/NETMOD.  However, it should
> encompass=20
>=20
> Ephemeral data:=3D=3D ephemeral state ::=3D=3D Ephemeral configuration =
+ Ephemeral
> operational state=20
>

Unless you define what the terms mean and what ::=3D=3D means I have no
clue what you are trying to convey here.

/js

--=20
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>


------=_NextPart_000_0115_01D1BBE3.E3821B20
Content-Type: text/html;
	charset="utf-8"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" =
xmlns:o=3D"urn:schemas-microsoft-com:office:office" =
xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" =
xmlns=3D"http://www.w3.org/TR/REC-html40"><head><meta =
http-equiv=3DContent-Type content=3D"text/html; charset=3Dutf-8"><meta =
name=3DGenerator content=3D"Microsoft Word 14 (filtered =
medium)"><style><!--
/* Font Definitions */
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
	{font-family:Tahoma;
	panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0in;
	margin-bottom:.0001pt;
	font-size:12.0pt;
	font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:blue;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:purple;
	text-decoration:underline;}
p.MsoAcetate, li.MsoAcetate, div.MsoAcetate
	{mso-style-priority:99;
	mso-style-link:"Balloon Text Char";
	margin:0in;
	margin-bottom:.0001pt;
	font-size:8.0pt;
	font-family:"Tahoma","sans-serif";}
span.BalloonTextChar
	{mso-style-name:"Balloon Text Char";
	mso-style-priority:99;
	mso-style-link:"Balloon Text";
	font-family:"Tahoma","sans-serif";}
span.EmailStyle19
	{mso-style-type:personal-reply;
	font-family:"Calibri","sans-serif";
	color:#1F497D;}
span.apple-converted-space
	{mso-style-name:apple-converted-space;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-size:10.0pt;}
@page WordSection1
	{size:8.5in 11.0in;
	margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
	{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]--></head><body lang=3DEN-US link=3Dblue =
vlink=3Dpurple><div class=3DWordSection1><p class=3DMsoNormal><span =
style=3D'font-size:10.5pt;font-family:"Arial","sans-serif";color:black;ba=
ckground:#F9F9F9'>Juergen:=C2=A0=C2=A0 <o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:10.5pt;font-family:"Arial","sans-serif";color:black;ba=
ckground:#F9F9F9'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:10.5pt;font-family:"Arial","sans-serif";color:black;ba=
ckground:#F9F9F9'>:=3D=3D comes from :=3D (defined as) from the =
mathematical symbols. <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:10.5pt;font-family:"Arial","sans-serif";color:black;ba=
ckground:#F9F9F9'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><i><span =
style=3D'font-size:10.5pt;font-family:"Arial","sans-serif";color:black;ba=
ckground:#F9F9F9'>x</span></i><span =
style=3D'font-size:10.5pt;font-family:"Arial","sans-serif";color:black;ba=
ckground:#F9F9F9'>&nbsp;:=3D<span =
class=3Dapple-converted-space>&nbsp;</span><i>y</i>,<span =
class=3Dapple-converted-space>&nbsp;</span><i>y</i><span =
class=3Dapple-converted-space>&nbsp;</span>=3D:<span =
class=3Dapple-converted-space>&nbsp;</span><i>x</i><span =
class=3Dapple-converted-space>&nbsp;</span>or<span =
class=3Dapple-converted-space>&nbsp;</span><i>x</i><span =
class=3Dapple-converted-space>&nbsp;</span>=E2=89=A1<span =
class=3Dapple-converted-space>&nbsp;</span><i>y</i><span =
class=3Dapple-converted-space>&nbsp;</span>means<span =
class=3Dapple-converted-space>&nbsp;</span><i>x</i><span =
class=3Dapple-converted-space>&nbsp;</span>is defined to be another name =
for<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:10.5pt;font-family:"Arial","sans-serif";color:black;ba=
ckground:#F9F9F9'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><a =
href=3D"https://en.wikipedia.org/wiki/List_of_mathematical_symbols">https=
://en.wikipedia.org/wiki/List_of_mathematical_symbols</a><o:p></o:p></spa=
n></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>x :=3D y =C2=A0defined the same as. <o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Expansion on this is text use x:=3D=3D to be definition.=C2=A0 Some =
use ::=3D <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Sue <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><div><div =
style=3D'border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in =
0in 0in'><p class=3DMsoNormal><b><span =
style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span>=
</b><span style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif"'> =
i2rs [mailto:i2rs-bounces@ietf.org] <b>On Behalf Of </b>Susan =
Hares<br><b>Sent:</b> Wednesday, June 01, 2016 8:25 AM<br><b>To:</b> =
Juergen Schoenwaelder<br><b>Cc:</b> 'Jeffrey Haas'; i2rs@ietf.org; =
'Benoit Claise'; 'Alia Atlas'<br><b>Subject:</b> Re: [i2rs] I2RS Interim =
Meeting - June 1, 2016 - 10:00am - 11:00am - Topic: Ephemeral State =
Requirements<o:p></o:p></span></p></div></div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p><div><p class=3DMsoNormal>:=3D=3D =
is a symbol that translates to defines as. =
&nbsp;<o:p></o:p></p></div><div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div><div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div><div><p =
class=3DMsoNormal>Left side :=3D=3D (defines as) right side =
info<o:p></o:p></p></div><div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div><div><p =
class=3DMsoNormal>Cat:=3D=3D animal small =
furry<o:p></o:p></p></div><div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div><div><p =
class=3DMsoNormal>Sue<o:p></o:p></p></div><div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div><div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div><div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div><div =
id=3D"composer_signature"><div><p class=3DMsoNormal><span =
style=3D'font-size:10.0pt;color:#575757'>Sent via the Samsung Galaxy =
Note5, an AT&amp;T 4G LTE =
smartphone<o:p></o:p></span></p></div></div><div><div><p =
class=3DMsoNormal><span style=3D'color:black'>-------- Original message =
--------<o:p></o:p></span></p></div><div><p class=3DMsoNormal><span =
style=3D'color:black'>From: Juergen Schoenwaelder &lt;<a =
href=3D"mailto:j.schoenwaelder@jacobs-university.de">j.schoenwaelder@jaco=
bs-university.de</a>&gt; <o:p></o:p></span></p></div><div><p =
class=3DMsoNormal><span style=3D'color:black'>Date: 6/1/2016 4:25 AM =
(GMT-05:00) <o:p></o:p></span></p></div><div><p class=3DMsoNormal><span =
style=3D'color:black'>To: Susan Hares &lt;<a =
href=3D"mailto:shares@ndzh.com">shares@ndzh.com</a>&gt; =
<o:p></o:p></span></p></div><div><p class=3DMsoNormal><span =
style=3D'color:black'>Cc: 'Jeffrey Haas' &lt;<a =
href=3D"mailto:jhaas@pfrc.org">jhaas@pfrc.org</a>&gt;, <a =
href=3D"mailto:i2rs@ietf.org">i2rs@ietf.org</a>, 'Benoit Claise' &lt;<a =
href=3D"mailto:bclaise@cisco.com">bclaise@cisco.com</a>&gt;, 'Alia =
Atlas' &lt;<a =
href=3D"mailto:akatlas@gmail.com">akatlas@gmail.com</a>&gt; =
<o:p></o:p></span></p></div><div><p class=3DMsoNormal><span =
style=3D'color:black'>Subject: Re: [i2rs] I2RS Interim Meeting - June 1, =
2016 - 10:00am - 11:00am - Topic: Ephemeral State Requirements =
<o:p></o:p></span></p></div><div><p class=3DMsoNormal><span =
style=3D'color:black'><o:p>&nbsp;</o:p></span></p></div></div><p =
class=3DMsoNormal>On Tue, May 31, 2016 at 03:29:55PM -0400, Susan Hares =
wrote:<br>&gt; Juergen: <br>&gt; <br>&gt; <br>&gt; &gt;I understand YANG =
validation rules and I understand YANG's notion of<br>&gt; configuration =
datastores. I do not &gt;think this matches your ephemeral<br>&gt; =
configuration validation.<br>&gt; <br>&gt; This does not provide a =
technical discussion of: <br>&gt; a) what you understand the ephemeral =
configuration validation rules to be, <br>&gt; b) why you do not the =
model matches the configuration validation rules. <br>&gt; <br>&gt; 1 =
Data Model is a great idea for NETCONF/NETMOD.&nbsp; However, it =
should<br>&gt; encompass <br>&gt; <br>&gt; Ephemeral data:=3D=3D =
ephemeral state ::=3D=3D Ephemeral configuration + Ephemeral<br>&gt; =
operational state <br>&gt;<br><br>Unless you define what the terms mean =
and what ::=3D=3D means I have no<br>clue what you are trying to convey =
here.<br><br>/js<br><br>-- <br>Juergen =
Schoenwaelder&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=
 Jacobs University Bremen gGmbH<br>Phone: +49 421 200 =
3587&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Campus Ring 1 | =
28759 Bremen | Germany<br>Fax:&nbsp;&nbsp; +49 421 200 =
3103&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;<a =
href=3D"http://www.jacobs-university.de/">http://www.jacobs-university.de=
/</a>&gt;<o:p></o:p></p></div></body></html>
------=_NextPart_000_0115_01D1BBE3.E3821B20--


From nobody Wed Jun  1 06:08:05 2016
Return-Path: <shares@ndzh.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 8B2B312D1D9 for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 06:08:04 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.738
X-Spam-Level: *
X-Spam-Status: No, score=1.738 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, RDNS_NONE=0.793] autolearn=no autolearn_force=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 yID_rv8Chzli for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 06:08:03 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 3656312D1D4 for <i2rs@ietf.org>; Wed,  1 Jun 2016 06:08:03 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=74.43.47.63; 
From: "Susan Hares" <shares@ndzh.com>
To: "'Juergen Schoenwaelder'" <j.schoenwaelder@jacobs-university.de>
References: <6qtqondee9e8m6od11bh1ilt.1464783874424@email.android.com> <20160601123117.GB24741@elstar.local>
In-Reply-To: <20160601123117.GB24741@elstar.local>
Date: Wed, 1 Jun 2016 09:07:43 -0400
Message-ID: <014801d1bc06$98eed670$cacc8350$@ndzh.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQGbYteCLdCrzIxPBPS4NCrBr2pzpwL+zBapoClQoGA=
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/1Sy2H6rmBxvYPA9zk75utdTO92I>
Cc: 'Jeffrey Haas' <jhaas@pfrc.org>, i2rs@ietf.org, 'Benoit Claise' <bclaise@cisco.com>, 'Alia Atlas' <akatlas@gmail.com>
Subject: Re: [i2rs] I2RS Interim Meeting - June 1, 2016 - 10:00am - 11:00am -?  Topic: Ephemeral State Requirements
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 01 Jun 2016 13:08:04 -0000

Juergen:=20

The I2RS architecture document has passed to RFC editor.  Your time to
request the definitions in that document has long past.  If you are =
asking
for a definition of ephemeral state in the I2RS ephemeral requirements
document, this is a valid comment.  Is this what you are asking for?=20

Sue =20

-----Original Message-----
From: Juergen Schoenwaelder =
[mailto:j.schoenwaelder@jacobs-university.de]=20
Sent: Wednesday, June 01, 2016 8:31 AM
To: Susan Hares
Cc: 'Jeffrey Haas'; i2rs@ietf.org; 'Benoit Claise'; 'Alia Atlas'
Subject: Re: [i2rs] I2RS Interim Meeting - June 1, 2016 - 10:00am - =
11:00am
-? Topic: Ephemeral State Requirements

OK. So if ephemeral state is the same as ephemeral data, can we simply =
get
rid of one of the terms?

Still looking for a definition of 'ephemeral operational state' (since I
consider operational state by nature to be ephemeral). And without it, I
can't really resolve the 'defined as' relationships.

/js

On Wed, Jun 01, 2016 at 08:24:34AM -0400, Susan Hares wrote:
> :=3D=3D is a symbol that translates to defines as.
>=20
> Left side :=3D=3D (defines as) right side info Cat:=3D=3D animal small =
furry=20
> Sue
>=20
>=20
> Sent via the Samsung Galaxy Note5, an AT&T 4G LTE smartphone--------
Original message --------From: Juergen Schoenwaelder
<j.schoenwaelder@jacobs-university.de> Date: 6/1/2016  4:25 AM  =
(GMT-05:00)
To: Susan Hares <shares@ndzh.com> Cc: 'Jeffrey Haas' <jhaas@pfrc.org>,
i2rs@ietf.org, 'Benoit Claise' <bclaise@cisco.com>, 'Alia Atlas'
<akatlas@gmail.com> Subject: Re: [i2rs] I2RS Interim Meeting - June 1, =
2016
- 10:00am - 11:00am -
>   Topic: Ephemeral State Requirements On Tue, May 31, 2016 at=20
> 03:29:55PM -0400, Susan Hares wrote:
> > Juergen:=20
> >=20
> >=20
> > >I understand YANG validation rules and I understand YANG's notion=20
> > >of
> > configuration datastores. I do not >think this matches your=20
> > ephemeral configuration validation.
> >=20
> > This does not provide a technical discussion of:=20
> > a) what you understand the ephemeral configuration validation rules=20
> > to be,
> > b) why you do not the model matches the configuration validation =
rules.=20
> >=20
> > 1 Data Model is a great idea for NETCONF/NETMOD.=A0 However, it =
should=20
> > encompass
> >=20
> > Ephemeral data:=3D=3D ephemeral state ::=3D=3D Ephemeral =
configuration +=20
> > Ephemeral operational state
> >
>=20
> Unless you define what the terms mean and what ::=3D=3D means I have =
no=20
> clue what you are trying to convey here.
>=20
> /js
>=20
> --
> Juergen Schoenwaelder=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 Jacobs University =
Bremen gGmbH
> Phone: +49 421 200 3587=A0=A0=A0=A0=A0=A0=A0=A0 Campus Ring 1 | 28759 =
Bremen | Germany
> Fax:=A0=A0 +49 421 200 3103=A0=A0=A0=A0=A0=A0=A0=A0 =
<http://www.jacobs-university.de/>

--=20
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>


From nobody Wed Jun  1 06:20:44 2016
Return-Path: <shares@ndzh.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 E004F12D0A3 for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 06:20:42 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.738
X-Spam-Level: *
X-Spam-Status: No, score=1.738 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, RDNS_NONE=0.793] autolearn=no autolearn_force=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 4RjjYE8jHDlT for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 06:20:41 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 65AC012D111 for <i2rs@ietf.org>; Wed,  1 Jun 2016 06:20:38 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=74.43.47.63; 
From: "Susan Hares" <shares@ndzh.com>
To: "'Juergen Schoenwaelder'" <j.schoenwaelder@jacobs-university.de>
References: <000601d1bad5$70523090$50f691b0$@ndzh.com> <20160531063840.GA21289@elstar.local>
In-Reply-To: <20160531063840.GA21289@elstar.local>
Date: Wed, 1 Jun 2016 09:20:26 -0400
Message-ID: <015701d1bc08$5caf2f00$160d8d00$@ndzh.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQJdaenpM7ljbP1C/TwjkI20GPnldwI0uYM8nquT3bA=
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/heUdH8HTm4IYzGhpbF71MgX81Tw>
Cc: 'Jeffrey Haas' <jhaas@pfrc.org>, i2rs@ietf.org, 'Alia Atlas' <akatlas@gmail.com>
Subject: Re: [i2rs] I2RS Interim Meeting - June 1, 2016 - 10:00am - 11:00am - Topic: Ephemeral State Requirements
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 01 Jun 2016 13:20:43 -0000

Juergen: 

You must be reading the wrong document.  draft-ietf-i2rs-ephemeral-09.txt
has 

   Ephemeral-REQ-05: Ephemeral state handling and notifications could
   increase need for CPU processing, data flow rates across a transport,
   or the rate of publication of data in a subscription or the logging
   for traceability.  The I2RS Agent SHOULD have the ability to
   constraints for OAM functions operating to limit CPU processing, data
   rate across a transport, the rate of publication of data in a
   subscription, and logging rates; and the I2RS Agent SHOULD have the
   ability to prioritize some of the management data flows between the
   I2RS Agent and I2RS Client.  In order to constrain resources needed,
   the I2RS Agent MAY also schedule data flows or split data flows unto
   multiple data flow streams.

Perhaps you meant to refer to: 
  Ephemeral-REQ-06: The ability to augment an object with appropriate
   YANG structures that have the property of being ephemeral.  An object
   defined as any one of the following:
   o  Yang module(and the module's schema tree),
   o  submodule or components of a submodule (e.g. derived types,
      groupings, data node, RPCs, actions, and notifications), or
   o  a schema node (container, leaf, leaf-list, choice, case, rpc,
      input, output, notifications, and anyxml).

Please provide comments based on the current revision.  

Sue 

-----Original Message-----
From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Juergen Schoenwaelder
Sent: Tuesday, May 31, 2016 2:39 AM
To: Susan Hares
Cc: 'Jeffrey Haas'; i2rs@ietf.org; 'Alia Atlas'
Subject: Re: [i2rs] I2RS Interim Meeting - June 1, 2016 - 10:00am - 11:00am
- Topic: Ephemeral State Requirements

> Discussion of I2RS Ephemeral State
> 
> Questions: 
> 
> 1.  Do you think Ephemeral-REQ-05 covers the resource constraint issue 
> discussed on the list and at IETF-95?
>

>I read:
>Ephemeral-REQ-05: The ability to augment an object with appropriate
> YANG structures that have the property of being ephemeral.  An object
> defined as Yang module, schema tree, a schema node, submodule or
> components of a submodule (derived types, groupings, data node, RPCs,
> actions, and notifications".

Wrong text please use text above.


>I have trouble to parse this since the 1st sentence does not seem to make
sense for each element that you >consider an object. That said, the real
issue here are lifetimes. The lifetime of a config true object is
>determined by config changes, the lifetime of config false objects is
determined by operational state changes. >What happens to an ephemeral
augmentation of objects if their lifetime expires?

I have answered the life time in another response.  Lifetimes are a model
issue.  Each model may have different lifetime on operational state. 

>The revised datastore model I have described in
>draft-schoenw-netmod-revised-datastores-00 links the ephemeral state only
to operational state, not at all to >configuration. Does this model not
satisfy the I2RS requirements and make things much simpler?

>> 2.  Does Ephemeral-REQ-06 provide the Yang requirements in 
>> a clear fashion?  Do you have any suggestions for alternative text? 
>I think it is clear but broken. In particular the part about indicating
secure/non-secure transport.

Sue: WG Consensus on this point.   

> 3. Do you think any of the Ephemeral-REQ-07 NETCONF Changes 
>    are not necessary?   If so, what changes would you leave out?
>    Do the "policy-knobs" seem useful to you? 
>
> 4. Do you think any of the Ephemeral-REQ-08 RESTCONF changes 
>    are not necessary?  If so, what changes would you leave out? 
>    Do we need all the features (yang module library, call-home, 
>    server)? 

I think this needs to be trimmed down. I think it should be avoided to
create I2RS specific solutions for things that are already in place (e.g.,
NETCONF has a mechanism for protocol capability discovery and negotiation,
NETCONF already supports multiple (secure) transports).

I think that having a clear architectural view is essential. I am not sure
the 'single pane of glass' model is the way to go. I think the decision on
the architectural model is key because it impacts many of the other
requirements and solutions.

You want both NC and RC to support XML and JSON and SSH and TLS and
(plaintext) TCP? Does this maximum of variability and flexibility really
help interoperability? Perhaps things should be reorganized into things that
are protocol agnostic (and should not be repeated) and things that are
protocol specific - if there is indeed a need to work with multiple
protocols.

I also think that it is not needed to write down requirements to NETCONF for
things that are already solved or being worked on.
 
> 5. Do you think the pub/sub requirements are sufficient? 
> 
>     (PUB-SUB-REQ-01, PUB-SUB-REQ-02)
 
I would hope that draft-ietf-i2rs-pub-sub-requirements-09 covers everything
that is needed. Again, this is linked to architectural question. The text,
for example, assumes that there is an 'operational data stores'. As of
today, this is not really the case. See
draft-schoenw-netmod-revised-datastores-00 for more details.
 
> 6. Do you have any concerns about Ephemeral-REQ-01 to
> 
>    Ephemeral-REQ-04? 

I think this sentence in Ephemeral-REQ-04 should be taken out:

   The designer of ephemeral state modules are advised that such
   constraints may impact the speed of processing ephemeral state
   commits and should avoid them when speed is essential.

First, it may depend on the architectural model that will be used and it
likely also depends on implementation details whether something is fast or
not. Or is there in inherent reason why a reference to non-ephemeral state
has to be 'slow'?

/js

-- 
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>

_______________________________________________
i2rs mailing list
i2rs@ietf.org
https://www.ietf.org/mailman/listinfo/i2rs


From nobody Wed Jun  1 06:30:30 2016
Return-Path: <shares@ndzh.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 7CD8E12D1B5 for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 06:30:29 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.738
X-Spam-Level: *
X-Spam-Status: No, score=1.738 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, RDNS_NONE=0.793] autolearn=no autolearn_force=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 6pojRhtNfXO7 for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 06:30:26 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id B11FE12D0B9 for <i2rs@ietf.org>; Wed,  1 Jun 2016 06:30:26 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=74.43.47.63; 
From: "Susan Hares" <shares@ndzh.com>
To: "'Jeffrey Haas'" <jhaas@pfrc.org>, <i2rs@ietf.org>, "'Alia Atlas'" <akatlas@gmail.com>
References: <000601d1bad5$70523090$50f691b0$@ndzh.com> <20160531063840.GA21289@elstar.local> <20160531193640.GL17462@pfrc.org>
In-Reply-To: <20160531193640.GL17462@pfrc.org>
Date: Wed, 1 Jun 2016 09:30:21 -0400
Message-ID: <016201d1bc09$bf710e00$3e532a00$@ndzh.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQJdaenpM7ljbP1C/TwjkI20GPnldwI0uYM8Acfws+SenVgAgA==
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/70OKYMq-1X9o1Dlj1taWl9YLUNY>
Subject: Re: [i2rs] I2RS Interim Meeting - June 1, 2016 - 10:00am - 11:00am - Topic: Ephemeral State Requirements
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 01 Jun 2016 13:30:29 -0000

Jeff and others: 

To make progress, can we please comment based on the
draft-ietf-i2rs-ephemeral-09.txt.   We will be using this text for
discussion. 

The following changes have been made in that document: 

1) Ephemeral-REQ-01 has new text 
2) Ephemeral-REQ-05 was added, and sequences renumbered 
3) ephemeral-REQ-06 (old Ephemeral-REQ-05) has  new text. 
4) Ephemeral-REQ-07 and Ephemeral-REQ-08 have new text [NETCONF/RESTCONF] to
clarify based on Juergen's comments. 

On Jeff's comments, 

1) why do you think the insecure transport was covered by the yang push
document? 
2) on draft-schoenw-netmod-revised-datastores-00 
>I think converging on the concept of an conceptional operational datastore
would address many of these >considerations.  (Note that I believe you'll
want either additional filtering capabilities to select whether the
>configuration state in the operational store originates in local
configuration or ephemeral configuration.  This >was in an earlier version
of the ephemeral state requirements draft.)

Why do you think the data model as it states covers the resolution of
nexthops that I2RS RIB Data model requires?  Why does the ephemeral not have
the simple case:  Ephemeral config / Ephemeral opstate? 

Sue 

-----Original Message-----
From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Jeffrey Haas
Sent: Tuesday, May 31, 2016 3:37 PM
To: Susan Hares; i2rs@ietf.org; 'Alia Atlas'
Subject: Re: [i2rs] I2RS Interim Meeting - June 1, 2016 - 10:00am - 11:00am
- Topic: Ephemeral State Requirements

[Note that I'm answering messages in thread order to the originator of a
point rather than necessarily to responses.  This is intentional.]

On Tue, May 31, 2016 at 08:38:42AM +0200, Juergen Schoenwaelder wrote:
> I read:
> 
>    Ephemeral-REQ-05: The ability to augment an object with appropriate
>    YANG structures that have the property of being ephemeral.  An object
>    defined as Yang module, schema tree, a schema node, submodule or
>    components of a submodule (derived types, groupings, data node, RPCs,
>    actions, and notifications".
> 
> I have trouble to parse this since the 1st sentence does not seem to 
> make sense for each element that you consider an object. That said, 
> the real issue here are lifetimes. The lifetime of a config true 
> object is determined by config changes, the lifetime of config false 
> objects is determined by operational state changes. What happens to an 
> ephemeral augmentation of objects if their lifetime expires?

I agree that your observation covers the general intent.  The requirements
language above is attempting to be a bit too specific for a given
implementation detail, namely instantiation of ephemeral behaviors in a data
tree.

Could you please supply alternative text?

> The revised datastore model I have described in
> draft-schoenw-netmod-revised-datastores-00 links the ephemeral state 
> only to operational state, not at all to configuration. Does this 
> model not satisfy the I2RS requirements and make things much simpler?

I've been unable to follow netmod/netconf recently, so thanks for pointing
out this document.  It does seem to do a nice job in attempting to summarize
a number of discussions on the various datastore concepts we've been seeing
the last year.

There are a few things I find slightly problematic in your hierarchy with
respect to what I2RS likely needs for ephemeral configuration state, but I
think it might be solvable.  Here are some observations:

If ephemeral configuration state were to be treated as a datastore that
feeds into running, would you expect that the resulting running state should
be writable?  (I.e. running = candidate, startup + ephemeral?)

It would be helpful to see how an ephemeral datastore is intended to
interact in this diagram.  A detail that would need to be clarified is what
happens when there is overlaps in portions of the schemas.

>  2.  Does Ephemeral-REQ-06 provide the Yang requirements in
> > a clear fashion?  Do you have any suggestions for alternative text? 
> 
> I think it is clear but broken. In particular the part about 
> indicating secure/non-secure transport.

The text relating to transport is applied to generally and needs clarifying.
Let's provide a specific goal:

For Yang notifications, there may be some desire for the information to be
sent across alternative transports, potentially with specific encodings.
draft-ietf-netconf-yang-push covers I2RS use cases wherein the data may be
sent via alternative transports.  Should we have some sort of markup in the
Yang language to identify what transports might be utilized?  What about
security requirements?

Obviously we can spell out transport security considerations as part of the
description clause within a notification.  However, since a significant
amount of feedback has been given from individuals with a security
background that many objects we're likely to use in I2RS may be security
sensitive - but not all! - some way to indicate the sensitivity may be
required.

The motivation for this is that for insecure and high speed transports and
ecodings such as IPFIX (e.g.) it may be fine to expose some data (e.g.
interface statistics) but the same may not be true for other data and a
secured transport may be required.

>  
> > 3. Do you think any of the Ephemeral-REQ-07 NETCONF Changes 
> >    are not necessary?   If so, what changes would you leave out?
> >    Do the "policy-knobs" seem useful to you? 
> >
> > 4. Do you think any of the Ephemeral-REQ-08 RESTCONF changes 
> >    are not necessary?  If so, what changes would you leave out? 
> >    Do we need all the features (yang module library, call-home, 
> >    server)? 
> 
> I think this needs to be trimmed down. I think it should be avoided to 
> create I2RS specific solutions for things that are already in place 
> (e.g., NETCONF has a mechanism for protocol capability discovery and 
> negotiation, NETCONF already supports multiple (secure) transports).
> 
> I think that having a clear architectural view is essential. I am not 
> sure the 'single pane of glass' model is the way to go. I think the 
> decision on the architectural model is key because it impacts many of 
> the other requirements and solutions.
> 
> You want both NC and RC to support XML and JSON and SSH and TLS and
> (plaintext) TCP? Does this maximum of variability and flexibility 
> really help interoperability? Perhaps things should be reorganized 
> into things that are protocol agnostic (and should not be repeated) 
> and things that are protocol specific - if there is indeed a need to 
> work with multiple protocols.

I agree we're being overly specific here, although as noted above we need
some discussion about what to do about insecure transports for some
operations, such as subscriptions.  (I think that's covered by the yang-push
doc in particular.)

Item 6 about precedence of local configuration vs. ephemeral configuration
requires discussion, including in the revised-datastore document if it
chooses to address ephemeral configuration.

> I also think that it is not needed to write down requirements to 
> NETCONF for things that are already solved or being worked on.

I think we're happy to subtract these, or at the least call out the existing
work in progress.  As noted in some earlier drafts, the goal of the I2RS
drafts should be to not have drafts in I2RS, but solution space documents in
netconf and netmod.

> > 5. Do you think the pub/sub requirements are sufficient? 
> > 
> >     (PUB-SUB-REQ-01, PUB-SUB-REQ-02)
>  
> I would hope that draft-ietf-i2rs-pub-sub-requirements-09 covers 
> everything that is needed. Again, this is linked to architectural 
> question. The text, for example, assumes that there is an 'operational 
> data stores'. As of today, this is not really the case. See
> draft-schoenw-netmod-revised-datastores-00 for more details.

I think converging on the concept of an conceptional operational datastore
would address many of these considerations.  (Note that I believe you'll
want either additional filtering capabilities to select whether the
configuration state in the operational store originates in local
configuration or ephemeral configuration.  This was in an earlier version of
the ephemeral state requirements draft.)

I believe the remainder of the configuration state considerations are
covered by the yang-push draft in the on-change behavior.

-- Jeff

_______________________________________________
i2rs mailing list
i2rs@ietf.org
https://www.ietf.org/mailman/listinfo/i2rs


From nobody Wed Jun  1 06:31:35 2016
Return-Path: <jmh.direct@joelhalpern.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 1917C12D0B9 for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 06:31:32 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.722
X-Spam-Level: 
X-Spam-Status: No, score=-2.722 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=joelhalpern.com
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 m4NoZXrzLQSE for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 06:31:30 -0700 (PDT)
Received: from mailb2.tigertech.net (mailb2.tigertech.net [208.80.4.154]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 5C06A12D1E7 for <i2rs@ietf.org>; Wed,  1 Jun 2016 06:31:29 -0700 (PDT)
Received: from localhost (localhost [127.0.0.1]) by mailb2.tigertech.net (Postfix) with ESMTP id 4C6C41C06A8; Wed,  1 Jun 2016 06:31:29 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=joelhalpern.com; s=1.tigertech; t=1464787889; bh=BVNgJCW+ZLZbxYwHfkowBmrqiDZab7I3t2egloBVHFI=; h=Subject:To:References:Cc:From:Date:In-Reply-To:From; b=gmiAP+88knGyRceVaJ4Cj04eA6zFZyMwJNQZDMXgJKKSFtG9T1M5keB5kwxsOfjDu yryJh/Sby+i9pmVXipQFRhPNstB6z6C/k3E5F3N4I0ekyN912qwSea8NDiboYDHXFY FfrsxzJhq+nlUEwmrhr6qw3O9itT31YzzOtaITis=
X-Virus-Scanned: Debian amavisd-new at b2.tigertech.net
Received: from Joels-MacBook-Pro.local (209-255-163-147.ip.mcleodusa.net [209.255.163.147]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mailb2.tigertech.net (Postfix) with ESMTPSA id C3CA41C043E; Wed,  1 Jun 2016 06:31:28 -0700 (PDT)
To: Susan Hares <shares@ndzh.com>
References: <000601d1bad5$70523090$50f691b0$@ndzh.com> <20160531063840.GA21289@elstar.local> <00d501d1bb45$0da83500$28f89f00$@ndzh.com> <20160531142540.GA22420@elstar.local> <001401d1bb4e$cfaefd10$6f0cf730$@ndzh.com> <20160531171304.GA22857@elstar.local> <004801d1bb72$d0129680$7037c380$@ndzh.com> <7026105d-6695-c001-ab91-a566bcf8405e@joelhalpern.com> <009101d1bbf6$08548200$18fd8600$@ndzh.com>
From: Joel Halpern Direct <jmh.direct@joelhalpern.com>
Message-ID: <8171687e-2d0d-ad19-a389-2ecd3788b7a2@joelhalpern.com>
Date: Wed, 1 Jun 2016 09:31:24 -0400
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:45.0) Gecko/20100101 Thunderbird/45.1.0
MIME-Version: 1.0
In-Reply-To: <009101d1bbf6$08548200$18fd8600$@ndzh.com>
Content-Type: text/plain; charset=windows-1252; format=flowed
Content-Transfer-Encoding: 7bit
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/uJAhK9WBu-oEP-5z2JFpoGFTT7M>
Cc: i2rs@ietf.org
Subject: Re: [i2rs] I2RS Interim Meeting - June 1, 2016 - 10:00am - 11:00am - Topic: Ephemeral State Requirements
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 01 Jun 2016 13:31:32 -0000

My question was not about whether I2RS operations and configuration can 
produce operational state.

Rther, the quesiton is whether this operational state is in any way 
different from all other operational state?
Operational state, by its nature, is never persisted in config.
Operational state, by its nature, comes and goes depending upon other 
aspects (you frequently can not get statistics on an interface that is 
not enabled.)

So I don't see anything special on the operational side that I2RS requires.

Yours,
Joel

On 6/1/16 7:09 AM, Susan Hares wrote:
> Joel:
>
> I am surprised you asked this question as you have followed the I2RS data
> modules.  Is this question rhetorical?
> Ephemeral operational state have three types:
>
> 1) results of rpc operations stored to respond to rpc actions
>
> I2RS-RIB-Data
> Rpcs:
>       +---x rib-add
>       |  +---w input
>       |  |  +---w rib-name        string
>       |  |  +---w rib-family      rib-family-def
>       |  |  +---w ip-rpf-check?   boolean
>       |  +--ro output
>       |     +--ro result uint32
>       |     +--ro reason? string
>
> 2) notification data stored
>
>
> I2RS-RIB-Data
>    notifications:
>       +---n nexthop-resolution-status-change
>       |  +--ro nexthop
> .....
>       +---n route-change
>          +--ro rib-name                 string
>          +--ro rib-family               rib-family-def
>          +--ro route-index              uint64
>
> 3) read-only status information
>
> See my presentation where the bgp-global-config - can be used by config or
> state.  It is ephemeral state augmenting these features.   Or see the L2
> topology module below.
>
> augment /nw:networks/nw:network/nw:node/nt:termination-point:
>    +--rw l2-termination-point-attributes
>       +--rw description?          string
>       +--rw maximum-frame-size?   uint32
>       +--rw (l2-termination-point-type)?
>       |  +--:(ethernet)
>       |  |  +--rw mac-address?          yang:mac-address
>       |  |  +--rw eth-encapsulation?    identityref
>       |  |  +--rw port-vlan-id?         vlan {VLAN}?
>       |  |  +--rw vlan-id-name* [vlan-id] {VLAN}?
>       |  |     +--rw vlan-id      vlan
>       |  |     +--rw vlan-name?   string
>       |  +--:(legacy)
>       |     +--rw encapsulation?        identityref
>       +--ro tp-state?             Enumeration
>
>
> Sue Hares
>
> -----Original Message-----
> From: Joel M. Halpern [mailto:jmh@joelhalpern.com]
> Sent: Tuesday, May 31, 2016 4:10 PM
> To: Susan Hares
> Cc: i2rs@ietf.org
> Subject: Re: [i2rs] I2RS Interim Meeting - June 1, 2016 - 10:00am - 11:00am
> - Topic: Ephemeral State Requirements
>
> Can you clarify something for me?
> What is ephemeral operational state?
>
> The only thing I can think of is operational state like statistics related
> to ephemeral leaves or constructs?
> Is that what you mean by "ephemeral operational state"?
> The reason i ask is that such state does not seem to need any special
> handling or labeling.
>
> Yours,
> Joel
>
> On 5/31/16 3:29 PM, Susan Hares wrote:
>> Juergen:
>>
>>
>>> I understand YANG validation rules and I understand YANG's notion of
>> configuration datastores. I do not >think this matches your ephemeral
>> configuration validation.
>>
>> This does not provide a technical discussion of:
>> a) what you understand the ephemeral configuration validation rules to
>> be,
>> b) why you do not the model matches the configuration validation rules.
>>
>> 1 Data Model is a great idea for NETCONF/NETMOD.  However, it should
>> encompass
>>
>> Ephemeral data:== ephemeral state ::== Ephemeral configuration +
>> Ephemeral operational state
>>
>> Cheers,
>>
>> Sue
>


From nobody Wed Jun  1 06:36:02 2016
Return-Path: <jmh@joelhalpern.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 86E3212D505 for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 06:36:00 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.722
X-Spam-Level: 
X-Spam-Status: No, score=-2.722 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=joelhalpern.com
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 jmJQoPHGDM9v for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 06:35:58 -0700 (PDT)
Received: from mailb2.tigertech.net (mailb2.tigertech.net [208.80.4.154]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id C3DD912D1F0 for <i2rs@ietf.org>; Wed,  1 Jun 2016 06:35:58 -0700 (PDT)
Received: from localhost (localhost [127.0.0.1]) by mailb2.tigertech.net (Postfix) with ESMTP id AFBE11C049B; Wed,  1 Jun 2016 06:35:58 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=joelhalpern.com; s=1.tigertech; t=1464788158; bh=ahobbFatlht3UFMtAIm63uhRokeL2CzqZ/QvI2U3zbo=; h=Subject:To:References:From:Date:In-Reply-To:From; b=cBHRDN2/YnPzIY92wa9Bs2KOZ5i7UQ0dsKmQORGkgqiBUTFi//wv6psIYd2Shjydc 7Um9jpQVXHURjaFcUIlXozLn56ntTNe5Lzg/GowDzkFVzvPCx18/mUMZBYYxE4YfYi KvqwasxNJBXefs5tUsP1oIvj2ReuV6zUSIUbmR+E=
X-Virus-Scanned: Debian amavisd-new at b2.tigertech.net
Received: from Joels-MacBook-Pro.local (209-255-163-147.ip.mcleodusa.net [209.255.163.147]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mailb2.tigertech.net (Postfix) with ESMTPSA id 418701C043E; Wed,  1 Jun 2016 06:35:58 -0700 (PDT)
To: Susan Hares <shares@ndzh.com>, i2rs@ietf.org
References: <ac12ae3a-571d-410e-50bb-cd48d58dea82@joelhalpern.com> <005601d1bb7a$5aacbfd0$10063f70$@ndzh.com> <7147944e-fe4d-4ea2-47af-1264188f426c@joelhalpern.com> <009301d1bbf7$40fa5980$c2ef0c80$@ndzh.com>
From: "Joel M. Halpern" <jmh@joelhalpern.com>
Message-ID: <6bbb89bc-b9b2-afc6-f5aa-360b78f3ded7@joelhalpern.com>
Date: Wed, 1 Jun 2016 09:35:54 -0400
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:45.0) Gecko/20100101 Thunderbird/45.1.0
MIME-Version: 1.0
In-Reply-To: <009301d1bbf7$40fa5980$c2ef0c80$@ndzh.com>
Content-Type: text/plain; charset=windows-1252; format=flowed
Content-Transfer-Encoding: 7bit
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/OTXQ9itWmqklA9DWpJC8BWi9rjM>
Subject: Re: [i2rs] ephemeral RPC?
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 01 Jun 2016 13:36:00 -0000

I think this is an aspect of how we describe our requirements.

Our requirement is that we need RPC operations that manipulate (fetch, 
deposit, ...) ephemeral configuration information.

Whether those are new RPCs (ephemeral RPCs) or extensions to existing 
RPCs to indicate that the target is ephemeral information (data store), 
or some other mechanism, does not really matter to I2RS.
Juergen has indicated that some RPCs take data store as an argument. 
For any of those that are relevant to us, that RPC would seem to work 
unmodified with an ephemeral data store.

Yours,
Joel

On 6/1/16 7:17 AM, Susan Hares wrote:
> Joel:
>
> I am simply stating that
>
> I2RS RIB data model is an ephemeral-only data model, and uses an rpc to do
> rib add/delete, route add/delete, nexthop add/delete.   The rpc function
> must handle ephemeral datastore information.   The authors utilized the
> input capabilities of the rpc.  For a ephemeral-only model, it does not
> matter if the rpc is "ephemeral" or "non-ephemeral".   However, in a mixed
> model (see my example of the bgp-global-config changes), this constraints
> the functionality.
>
> The  <get-config> and <edit-config> is a separate function from rpc.  The
> protocol-strawman indicates these need to be changed to handle ephemeral
> datastore.
>
> Sue
>
>
> -----Original Message-----
> From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Joel Halpern Direct
> Sent: Tuesday, May 31, 2016 4:27 PM
> To: Susan Hares; i2rs@ietf.org
> Subject: Re: [i2rs] ephemeral RPC?
>
> This may well be just me leaping to assumptions about function structuring.
> My apologies for raising a red herring if so.
>
> I think this may be following the paradigm in Juergen's draft, where
> accessing data <get...> and <set...> in different data stores uses different
> RPCs?  Is that your intent?
>
> Until I read Juergen's draft, it had never occurred to me that one would do
> it that way.  I had expected that one would perform an operation, and target
> it at a data store.
>
> But if indeed we use different RPCs for the different data stores, then I
> guess we do need versions of <get...> and <set...> that point at ephemeral.
>
> Yours,
> Joel
>
> On 5/31/16 4:23 PM, Susan Hares wrote:
>> Joel:
>>
>> I2RS data model is a ephemeral-only data model, and uses an rpc to do
>> rib add/delete, route add/delete, nexthop add/delete.  Therefore, we
>> need ephemeral rpc support.
>>
>>
>> Sue
>>
>> -----Original Message-----
>> From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Joel M. Halpern
>> Sent: Tuesday, May 31, 2016 12:34 PM
>> To: i2rs@ietf.org
>> Subject: [i2rs] ephemeral RPC?
>>
>> We have agreed that non-ephemeral data must not reference ephemeral data.
>>
>> However, we have, up till now, not had the notion of ephemeral RPCs.
>> I see that the recent ephemeral requirements draft, as a side-effect
>> of improving clarity, creates the notion of an ephemeral RPC.
>>
>> What is an ephemeral RPC, and why do we have it?
>> We have been, up till now, assuming that we could use normal NetConf
>> RPCs to set and get the ephemeral information.
>>
>> Thank you,
>> Joel
>>
>> _______________________________________________
>> 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
>


From nobody Wed Jun  1 06:41:13 2016
Return-Path: <jmh@joelhalpern.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 71C5212D504 for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 06:41:12 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.722
X-Spam-Level: 
X-Spam-Status: No, score=-2.722 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=joelhalpern.com
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 LImPahCTUtDm for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 06:41:07 -0700 (PDT)
Received: from mailb2.tigertech.net (mailb2.tigertech.net [208.80.4.154]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 9B3B712D0D9 for <i2rs@ietf.org>; Wed,  1 Jun 2016 06:41:07 -0700 (PDT)
Received: from localhost (localhost [127.0.0.1]) by mailb2.tigertech.net (Postfix) with ESMTP id 85DC11C049B; Wed,  1 Jun 2016 06:41:07 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=joelhalpern.com; s=1.tigertech; t=1464788467; bh=44hZrFoTy+6RpWA4aYyGctZOgj6xOi5PszaK2JEBdAM=; h=Subject:To:References:From:Date:In-Reply-To:From; b=mA+SQsves1uYyotGPT7a3MrdpH916T/knk1WKLCLIM3eiXqsetn/aRMpt28IQCXJb /TQeZ1A0hejDAoi7GBpYvPhLeukPTvs6lnBPgKk4cORKMKawr4tjUX+y8DEyrMUyRs S4Jdw1jF3Ps0+hrPG0thT4DtlI7J/lCERQY0dhPU=
X-Virus-Scanned: Debian amavisd-new at b2.tigertech.net
Received: from Joels-MacBook-Pro.local (209-255-163-147.ip.mcleodusa.net [209.255.163.147]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mailb2.tigertech.net (Postfix) with ESMTPSA id 0D0E61C00D4; Wed,  1 Jun 2016 06:41:06 -0700 (PDT)
To: Joel Halpern Direct <jmh.direct@joelhalpern.com>, Susan Hares <shares@ndzh.com>, i2rs@ietf.org
References: <ac12ae3a-571d-410e-50bb-cd48d58dea82@joelhalpern.com> <005601d1bb7a$5aacbfd0$10063f70$@ndzh.com> <7147944e-fe4d-4ea2-47af-1264188f426c@joelhalpern.com> <20160601063411.GA23984@elstar.local>
From: "Joel M. Halpern" <jmh@joelhalpern.com>
Message-ID: <e49c0000-a422-bc63-a049-990ecf476a00@joelhalpern.com>
Date: Wed, 1 Jun 2016 09:41:02 -0400
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:45.0) Gecko/20100101 Thunderbird/45.1.0
MIME-Version: 1.0
In-Reply-To: <20160601063411.GA23984@elstar.local>
Content-Type: text/plain; charset=windows-1252; format=flowed
Content-Transfer-Encoding: 7bit
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/CorcLcnZi7v4SrC_EUH0HX7L1MY>
Subject: Re: [i2rs] ephemeral RPC?
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 01 Jun 2016 13:41:12 -0000

The deprecation of <get> and the addition of <get-state> lead me to 
conclude that you were moving to a paradigm of different RPCs for 
different data stores, rather than a paradigm of a datastore parameter 
for the RPC.

I may well have over-generalized from what I read.
Yours,
Joel

On 6/1/16 2:34 AM, Juergen Schoenwaelder wrote:
> On Tue, May 31, 2016 at 04:27:17PM -0400, Joel Halpern Direct wrote:
>>
>> I think this may be following the paradigm in Juergen's draft, where
>> accessing data <get...> and <set...> in different data stores uses different
>> RPCs?  Is that your intent?
>>
>
> Joel,
>
> which part of my I-D made you believe this is the case? Several core
> NETCONF RPCs do take a datastore as an argument and this is just fine.
>
> /js
>


From nobody Wed Jun  1 07:47:40 2016
Return-Path: <jmh@joelhalpern.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 D743912D5A8 for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 07:47:38 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.722
X-Spam-Level: 
X-Spam-Status: No, score=-2.722 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=joelhalpern.com
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 YpkXrOLgOrwD for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 07:47:37 -0700 (PDT)
Received: from mailb2.tigertech.net (mailb2.tigertech.net [208.80.4.154]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 541D312D5AF for <i2rs@ietf.org>; Wed,  1 Jun 2016 07:47:36 -0700 (PDT)
Received: from localhost (localhost [127.0.0.1]) by mailb2.tigertech.net (Postfix) with ESMTP id 38A381C06A8 for <i2rs@ietf.org>; Wed,  1 Jun 2016 07:47:36 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=joelhalpern.com; s=1.tigertech; t=1464792456; bh=tLdfkcgQw/TWItbBTx0YE6jJnr4PA+Ya1uMGit9fF54=; h=To:From:Subject:Date:From; b=WRcV4ZnHldQ3l6ur+DoEIdjn+2QkK6Py2fhKfj6u0AcWg2Uaty5o48jCIAltRyGH/ tFBvFQEYaJZvWM2oYwDUOGHmhPyE34emPZmfF/2jj/AxNwF4ht9+m0Hj400/Hh7mGp TnJxnWg9HEShiF3CnfRUA30T45rSX3gJ7J3Djsdo=
X-Virus-Scanned: Debian amavisd-new at b2.tigertech.net
Received: from Joels-MacBook-Pro.local (209-255-163-147.ip.mcleodusa.net [209.255.163.147]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mailb2.tigertech.net (Postfix) with ESMTPSA id CCCD11C043E for <i2rs@ietf.org>; Wed,  1 Jun 2016 07:47:35 -0700 (PDT)
To: "i2rs@ietf.org" <i2rs@ietf.org>
From: "Joel M. Halpern" <jmh@joelhalpern.com>
Message-ID: <f9dd38f6-8350-ab9e-a880-c27dfd2a610d@joelhalpern.com>
Date: Wed, 1 Jun 2016 10:47:31 -0400
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:45.0) Gecko/20100101 Thunderbird/45.1.0
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 7bit
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/ib9zXuOpwl5yiDq49sL7M-TEwgw>
Subject: [i2rs] ephemeral requirements - REQ 08 bullet 1
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 01 Jun 2016 14:47:39 -0000

Existing Text:
1.  protocol version support for I2RS modifications - (e.g.  I2RS
        version 1)

Proposed Text:
1. Support for communication mechanisms to enable an I2RS client to 
determine that an I2RS agent supports the mechanisms needed for I2RS 
operation.


This probably is already met by existing NetConf mechanisms.  I think it 
is useful to state anyway, so that solution development will verify that 
it is met.

Yours,
Joel


From nobody Wed Jun  1 08:01:21 2016
Return-Path: <j.schoenwaelder@jacobs-university.de>
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 E054D12D5B7 for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 08:01:19 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.626
X-Spam-Level: 
X-Spam-Status: No, score=-5.626 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, RP_MATCHES_RCVD=-1.426] autolearn=ham autolearn_force=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 fi6J9eAvU_4U for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 08:01:15 -0700 (PDT)
Received: from atlas3.jacobs-university.de (atlas3.jacobs-university.de [212.201.44.18]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 8F12712D1EA for <i2rs@ietf.org>; Wed,  1 Jun 2016 08:01:15 -0700 (PDT)
Received: from localhost (demetrius5.irc-it.jacobs-university.de [10.70.0.222]) by atlas3.jacobs-university.de (Postfix) with ESMTP id 552801005; Wed,  1 Jun 2016 17:01:14 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from atlas3.jacobs-university.de ([10.70.0.220]) by localhost (demetrius5.jacobs-university.de [10.70.0.222]) (amavisd-new, port 10030) with ESMTP id dqIrVfTwKalv; Wed,  1 Jun 2016 17:01:10 +0200 (CEST)
Received: from hermes.jacobs-university.de (hermes.jacobs-university.de [212.201.44.23]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "hermes.jacobs-university.de", Issuer "Jacobs University CA - G01" (verified OK)) by atlas3.jacobs-university.de (Postfix) with ESMTPS; Wed,  1 Jun 2016 17:01:13 +0200 (CEST)
Received: from localhost (demetrius3.jacobs-university.de [212.201.44.48]) by hermes.jacobs-university.de (Postfix) with ESMTP id ACFBC2004E; Wed,  1 Jun 2016 17:01:12 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from hermes.jacobs-university.de ([212.201.44.23]) by localhost (demetrius3.jacobs-university.de [212.201.44.32]) (amavisd-new, port 10024) with ESMTP id 64dk9ClebrYu; Wed,  1 Jun 2016 17:01:09 +0200 (CEST)
Received: from elstar.local (elstar.jacobs.jacobs-university.de [10.50.231.133]) by hermes.jacobs-university.de (Postfix) with ESMTP id 05A7020053; Wed,  1 Jun 2016 17:01:07 +0200 (CEST)
Received: by elstar.local (Postfix, from userid 501) id E5CFF3B00BB5; Wed,  1 Jun 2016 17:01:06 +0200 (CEST)
Date: Wed, 1 Jun 2016 17:01:06 +0200
From: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
To: "Joel M. Halpern" <jmh@joelhalpern.com>
Message-ID: <20160601150106.GA25029@elstar.local>
Mail-Followup-To: "Joel M. Halpern" <jmh@joelhalpern.com>, Joel Halpern Direct <jmh.direct@joelhalpern.com>, Susan Hares <shares@ndzh.com>, i2rs@ietf.org
References: <ac12ae3a-571d-410e-50bb-cd48d58dea82@joelhalpern.com> <005601d1bb7a$5aacbfd0$10063f70$@ndzh.com> <7147944e-fe4d-4ea2-47af-1264188f426c@joelhalpern.com> <20160601063411.GA23984@elstar.local> <e49c0000-a422-bc63-a049-990ecf476a00@joelhalpern.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <e49c0000-a422-bc63-a049-990ecf476a00@joelhalpern.com>
User-Agent: Mutt/1.6.0 (2016-04-01)
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/go8MhDneI0bzLqv8rVBv5p-udR8>
Cc: Joel Halpern Direct <jmh.direct@joelhalpern.com>, Susan Hares <shares@ndzh.com>, i2rs@ietf.org
Subject: Re: [i2rs] ephemeral RPC?
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
Reply-To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
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: <https://mailarchive.ietf.org/arch/browse/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, 01 Jun 2016 15:01:20 -0000

Oh, I see. The story line, however, is that <get> assumes it is
possible to merge operational state with <running> configuration
datastore content and this ultimately lead to the /foo and /foo-state
data model design pattern, which a number of people find cumbersome.
So the idea is to deprecate operations like <get> that assume
datastores can be merged because the models have been design to use
different branches. We then need a new operation that can be used to
retrieve state data and likely (perhaps as a feature) operations that
can retrieve data from multiple datastores (without assuming the
underlying data models avoid overlapping branches). Perhaps calling
the former <get-state> is misleading people, I can see that.

/js

On Wed, Jun 01, 2016 at 09:41:02AM -0400, Joel M. Halpern wrote:
> The deprecation of <get> and the addition of <get-state> lead me to conclude
> that you were moving to a paradigm of different RPCs for different data
> stores, rather than a paradigm of a datastore parameter for the RPC.
> 
> I may well have over-generalized from what I read.
> Yours,
> Joel
> 
> On 6/1/16 2:34 AM, Juergen Schoenwaelder wrote:
> > On Tue, May 31, 2016 at 04:27:17PM -0400, Joel Halpern Direct wrote:
> > > 
> > > I think this may be following the paradigm in Juergen's draft, where
> > > accessing data <get...> and <set...> in different data stores uses different
> > > RPCs?  Is that your intent?
> > > 
> > 
> > Joel,
> > 
> > which part of my I-D made you believe this is the case? Several core
> > NETCONF RPCs do take a datastore as an argument and this is just fine.
> > 
> > /js
> > 
> 
> _______________________________________________
> i2rs mailing list
> i2rs@ietf.org
> https://www.ietf.org/mailman/listinfo/i2rs

-- 
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>


From nobody Wed Jun  1 08:49:15 2016
Return-Path: <jhaas@slice.pfrc.org>
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 E5EBC12D54B for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 08:49:13 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.328
X-Spam-Level: 
X-Spam-Status: No, score=-3.328 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RP_MATCHES_RCVD=-1.426, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=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 I84kA6hxMe08 for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 08:49:12 -0700 (PDT)
Received: from slice.pfrc.org (slice.pfrc.org [67.207.130.108]) by ietfa.amsl.com (Postfix) with ESMTP id 8B44312D5B7 for <i2rs@ietf.org>; Wed,  1 Jun 2016 08:49:12 -0700 (PDT)
Received: by slice.pfrc.org (Postfix, from userid 1001) id 9306F1E335; Wed,  1 Jun 2016 11:54:46 -0400 (EDT)
Date: Wed, 1 Jun 2016 11:54:46 -0400
From: Jeffrey Haas <jhaas@pfrc.org>
To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>, "Joel M. Halpern" <jmh@joelhalpern.com>, Joel Halpern Direct <jmh.direct@joelhalpern.com>, Susan Hares <shares@ndzh.com>, i2rs@ietf.org
Message-ID: <20160601155446.GP17462@pfrc.org>
References: <ac12ae3a-571d-410e-50bb-cd48d58dea82@joelhalpern.com> <005601d1bb7a$5aacbfd0$10063f70$@ndzh.com> <7147944e-fe4d-4ea2-47af-1264188f426c@joelhalpern.com> <20160601063411.GA23984@elstar.local> <e49c0000-a422-bc63-a049-990ecf476a00@joelhalpern.com> <20160601150106.GA25029@elstar.local>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20160601150106.GA25029@elstar.local>
User-Agent: Mutt/1.5.21 (2010-09-15)
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/LRT_X_CEKZdUuZ24a4aSuzR31y4>
Subject: Re: [i2rs] ephemeral RPC?
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 01 Jun 2016 15:49:14 -0000

Juergen,

An older rev of the ephemeral state requirements covered part of this point.
The suggestion in there was that <get> may require some ability to do
filtering operations based on where the information was from:

https://tools.ietf.org/html/draft-ietf-i2rs-ephemeral-state-00
See "filter-ephemeral".

I don't believe the I2RS working group has any particular opinion on what
the mechanism looks like, but we are in agreement that some solution will be
needed for this problem.

-- Jeff

On Wed, Jun 01, 2016 at 05:01:06PM +0200, Juergen Schoenwaelder wrote:
> Oh, I see. The story line, however, is that <get> assumes it is
> possible to merge operational state with <running> configuration
> datastore content and this ultimately lead to the /foo and /foo-state
> data model design pattern, which a number of people find cumbersome.
> So the idea is to deprecate operations like <get> that assume
> datastores can be merged because the models have been design to use
> different branches. We then need a new operation that can be used to
> retrieve state data and likely (perhaps as a feature) operations that
> can retrieve data from multiple datastores (without assuming the
> underlying data models avoid overlapping branches). Perhaps calling
> the former <get-state> is misleading people, I can see that.
> 
> /js
> 
> On Wed, Jun 01, 2016 at 09:41:02AM -0400, Joel M. Halpern wrote:
> > The deprecation of <get> and the addition of <get-state> lead me to conclude
> > that you were moving to a paradigm of different RPCs for different data
> > stores, rather than a paradigm of a datastore parameter for the RPC.
> > 
> > I may well have over-generalized from what I read.
> > Yours,
> > Joel
> > 


From nobody Wed Jun  1 08:49:47 2016
Return-Path: <shares@ndzh.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 EBB7A12D508 for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 08:49:44 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.738
X-Spam-Level: *
X-Spam-Status: No, score=1.738 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, RDNS_NONE=0.793] autolearn=no autolearn_force=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 R5C-1L5Nu-EE for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 08:49:43 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id BE31A12D5CE for <i2rs@ietf.org>; Wed,  1 Jun 2016 08:49:37 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=74.43.47.63; 
From: "Susan Hares" <shares@ndzh.com>
To: "'Joel M. Halpern'" <jmh@joelhalpern.com>, <i2rs@ietf.org>
References: <f9dd38f6-8350-ab9e-a880-c27dfd2a610d@joelhalpern.com>
In-Reply-To: <f9dd38f6-8350-ab9e-a880-c27dfd2a610d@joelhalpern.com>
Date: Wed, 1 Jun 2016 11:49:31 -0400
Message-ID: <004f01d1bc1d$303099e0$9091cda0$@ndzh.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQGoLhwIz36TzpEqpl8V8YoA+wXFMaAn1v+w
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/nrBUngLQQTx7m-DwCCA4ZyKpgw4>
Subject: Re: [i2rs] ephemeral requirements - REQ 08 bullet 1
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 01 Jun 2016 15:49:45 -0000

Joel: 

I agree with this text.  I will add it to version 10 of the text. 

Sue 

-----Original Message-----
From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Joel M. Halpern
Sent: Wednesday, June 01, 2016 10:48 AM
To: i2rs@ietf.org
Subject: [i2rs] ephemeral requirements - REQ 08 bullet 1

Existing Text:
1.  protocol version support for I2RS modifications - (e.g.  I2RS
        version 1)

Proposed Text:
1. Support for communication mechanisms to enable an I2RS client to
determine that an I2RS agent supports the mechanisms needed for I2RS
operation.


This probably is already met by existing NetConf mechanisms.  I think it is
useful to state anyway, so that solution development will verify that it is
met.

Yours,
Joel

_______________________________________________
i2rs mailing list
i2rs@ietf.org
https://www.ietf.org/mailman/listinfo/i2rs


From nobody Wed Jun  1 08:51:03 2016
Return-Path: <jhaas@slice.pfrc.org>
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 EF7F712B026 for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 08:51:01 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.328
X-Spam-Level: 
X-Spam-Status: No, score=-3.328 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RP_MATCHES_RCVD=-1.426, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=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 bDgKcjpvz8Z8 for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 08:51:00 -0700 (PDT)
Received: from slice.pfrc.org (slice.pfrc.org [67.207.130.108]) by ietfa.amsl.com (Postfix) with ESMTP id BA47D12D099 for <i2rs@ietf.org>; Wed,  1 Jun 2016 08:50:54 -0700 (PDT)
Received: by slice.pfrc.org (Postfix, from userid 1001) id CCE091E335; Wed,  1 Jun 2016 11:56:28 -0400 (EDT)
Date: Wed, 1 Jun 2016 11:56:28 -0400
From: Jeffrey Haas <jhaas@pfrc.org>
To: "Joel M. Halpern" <jmh@joelhalpern.com>
Message-ID: <20160601155628.GQ17462@pfrc.org>
References: <f9dd38f6-8350-ab9e-a880-c27dfd2a610d@joelhalpern.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <f9dd38f6-8350-ab9e-a880-c27dfd2a610d@joelhalpern.com>
User-Agent: Mutt/1.5.21 (2010-09-15)
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/hdP7pEpnp1W8VcB8gyhOeBhQpqM>
Cc: "i2rs@ietf.org" <i2rs@ietf.org>
Subject: Re: [i2rs] ephemeral requirements - REQ 08 bullet 1
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 01 Jun 2016 15:51:02 -0000

Joel,

On Wed, Jun 01, 2016 at 10:47:31AM -0400, Joel M. Halpern wrote:
> Existing Text:
> 1.  protocol version support for I2RS modifications - (e.g.  I2RS
>        version 1)
> 
> Proposed Text:
> 1. Support for communication mechanisms to enable an I2RS client to
> determine that an I2RS agent supports the mechanisms needed for I2RS
> operation.
> 
> 
> This probably is already met by existing NetConf mechanisms.  I
> think it is useful to state anyway, so that solution development
> will verify that it is met.

I'm fine with that.  An example of such an implementation is covered in
section 6.3 of draft-hares-i2rs-protocol-strawman-02.

-- Jeff


From nobody Wed Jun  1 08:59:22 2016
Return-Path: <jhaas@slice.pfrc.org>
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 EE3C212D5E0 for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 08:59:20 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.328
X-Spam-Level: 
X-Spam-Status: No, score=-3.328 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RP_MATCHES_RCVD=-1.426, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=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 2X3yUraJeZTF for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 08:59:16 -0700 (PDT)
Received: from slice.pfrc.org (slice.pfrc.org [67.207.130.108]) by ietfa.amsl.com (Postfix) with ESMTP id D6DE112D5DC for <i2rs@ietf.org>; Wed,  1 Jun 2016 08:59:16 -0700 (PDT)
Received: by slice.pfrc.org (Postfix, from userid 1001) id C5E901E335; Wed,  1 Jun 2016 12:04:50 -0400 (EDT)
Date: Wed, 1 Jun 2016 12:04:50 -0400
From: Jeffrey Haas <jhaas@pfrc.org>
To: i2rs@ietf.org
Message-ID: <20160601160450.GR17462@pfrc.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
User-Agent: Mutt/1.5.21 (2010-09-15)
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/Ino93UMmIe78tW4ue2NSaStWneg>
Subject: [i2rs] draft-ietf-i2rs-ephemeral-state-09, Ephemeral-REQ-05
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 01 Jun 2016 15:59:21 -0000

As per the interim, here is some suggested text changes:

Existing text:

   Ephemeral-REQ-05: Ephemeral state handling and notifications could
   increase need for CPU processing, data flow rates across a transport,
   or the rate of publication of data in a subscription or the logging
   for traceability.  The I2RS Agent SHOULD have the ability to
   constraints for OAM functions operating to limit CPU processing, data
   rate across a transport, the rate of publication of data in a
   subscription, and logging rates; and the I2RS Agent SHOULD have the
   ability to prioritize some of the management data flows between the
   I2RS Agent and I2RS Client.  In order to constrain resources needed,
   the I2RS Agent MAY also schedule data flows or split data flows unto
   multiple data flow streams.

Suggested new text:

I2RS pub-sub, logging, RPC or other mechanisms may lead to undesirable or
unsustainable resource consumption on a system implementing an I2RS Agent.
It is RECOMMENDED that mechanisms be made available to permit prioritization
of I2RS operations, when appropriate, to permit implementations to shed work
load when operating under constrained resources.  An example of such a work
shedding mechanism is rate-limiting.

-----

Note that Subscription QoS in the pub-sub requirements provides for this
type of behavior in that context.

-- Jeff


From nobody Wed Jun  1 09:00:34 2016
Return-Path: <shares@ndzh.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 32BC012B042 for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 09:00:31 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 3.638
X-Spam-Level: ***
X-Spam-Status: No, score=3.638 tagged_above=-999 required=5 tests=[BAYES_40=-0.001, DOS_OUTLOOK_TO_MX=2.845, HTML_MESSAGE=0.001, RDNS_NONE=0.793] autolearn=no autolearn_force=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 KLIDcH_IPK1G for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 09:00:29 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id AB69A12B061 for <i2rs@ietf.org>; Wed,  1 Jun 2016 09:00:29 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=74.43.47.63; 
From: "Susan Hares" <shares@ndzh.com>
To: <i2rs@ietf.org>
Date: Wed, 1 Jun 2016 12:00:00 -0400
Message-ID: <005401d1bc1e$b4c00960$1e401c20$@ndzh.com>
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="----=_NextPart_000_0055_01D1BBFD.2DAFF000"
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AdG8HbeDq5jLWRJCQGavg/vHr49PGQ==
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/3HirKTPpUwaLPpl9DDQKXKVdkqY>
Cc: 'Jeffrey Haas' <jhaas@pfrc.org>, "'Joel M. Halpern'" <jmh@joelhalpern.com>
Subject: [i2rs] Ephemeral-REQ-05 - new text for Resource constraints for OAM
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 01 Jun 2016 16:00:31 -0000

This is a multipart message in MIME format.

------=_NextPart_000_0055_01D1BBFD.2DAFF000
Content-Type: text/plain;
	charset="us-ascii"
Content-Transfer-Encoding: 7bit

I2RS WG: 

 

I would like feedback on the following text as replacement for
ephemeral-req-05. 

 

Thank you, 

Sue 

 

---------------------

 

Proposal for new text for Ephemeral-REQ-05: 

 

Ephemeral state handling, notifications, and OAM could increase the data
flow rates across transport, or the rate of publication of data in a
subscription, or logging needed for traceability.   It is RECOMMENDED that
the I2RS Agent should have the ability to limit, prioritize or split data
flows in the I2RS protocol. 

 

 

========================

Old text: 

 

   Ephemeral-REQ-05: Ephemeral state handling and notifications could

   increase need for CPU processing, data flow rates across a transport,

   or the rate of publication of data in a subscription or the logging

   for traceability.  The I2RS Agent SHOULD have the ability to

   constraints for OAM functions operating to limit CPU processing, data

   rate across a transport, the rate of publication of data in a

   subscription, and logging rates; and the I2RS Agent SHOULD have the

   ability to prioritize some of the management data flows between the

   I2RS Agent and I2RS Client.  In order to constrain resources needed,

   the I2RS Agent MAY also schedule data flows or split data flows unto

   multiple data flow streams.


------=_NextPart_000_0055_01D1BBFD.2DAFF000
Content-Type: text/html;
	charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" =
xmlns:o=3D"urn:schemas-microsoft-com:office:office" =
xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" =
xmlns=3D"http://www.w3.org/TR/REC-html40"><head><meta =
http-equiv=3DContent-Type content=3D"text/html; =
charset=3Dus-ascii"><meta name=3DGenerator content=3D"Microsoft Word 14 =
(filtered medium)"><style><!--
/* Font Definitions */
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0in;
	margin-bottom:.0001pt;
	font-size:11.0pt;
	font-family:"Calibri","sans-serif";}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:blue;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:purple;
	text-decoration:underline;}
pre
	{mso-style-priority:99;
	mso-style-link:"HTML Preformatted Char";
	margin:0in;
	margin-bottom:.0001pt;
	font-size:10.0pt;
	font-family:"Courier New";}
span.EmailStyle17
	{mso-style-type:personal-compose;
	font-family:"Calibri","sans-serif";
	color:windowtext;}
span.HTMLPreformattedChar
	{mso-style-name:"HTML Preformatted Char";
	mso-style-priority:99;
	mso-style-link:"HTML Preformatted";
	font-family:"Courier New";}
.MsoChpDefault
	{mso-style-type:export-only;
	font-family:"Calibri","sans-serif";}
@page WordSection1
	{size:8.5in 11.0in;
	margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
	{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]--></head><body lang=3DEN-US link=3Dblue =
vlink=3Dpurple><div class=3DWordSection1><p class=3DMsoNormal><b>I2RS =
WG: <o:p></o:p></b></p><p =
class=3DMsoNormal><b><o:p>&nbsp;</o:p></b></p><p class=3DMsoNormal>I =
would like feedback on the following text as replacement for =
ephemeral-req-05. <o:p></o:p></p><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p><p class=3DMsoNormal>Thank you, =
<o:p></o:p></p><p class=3DMsoNormal>Sue <o:p></o:p></p><p =
class=3DMsoNormal><b><o:p>&nbsp;</o:p></b></p><p =
class=3DMsoNormal><b>---------------------<o:p></o:p></b></p><p =
class=3DMsoNormal><b><o:p>&nbsp;</o:p></b></p><p =
class=3DMsoNormal><b>Proposal for new text for Ephemeral-REQ-05: =
<o:p></o:p></b></p><p class=3DMsoNormal><o:p>&nbsp;</o:p></p><p =
class=3DMsoNormal>Ephemeral state handling, notifications, and OAM could =
increase the data flow rates across transport, or the rate of =
publication of data in a subscription, or logging needed for =
traceability.&nbsp; &nbsp;It is RECOMMENDED that the I2RS Agent should =
have the ability to limit, prioritize or split data flows in the I2RS =
protocol. <o:p></o:p></p><p class=3DMsoNormal><o:p>&nbsp;</o:p></p><p =
class=3DMsoNormal> <o:p></o:p></p><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p><p =
class=3DMsoNormal>=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D<o:p></o:p></p><p class=3DMsoNormal>Old text: =
<o:p></o:p></p><p class=3DMsoNormal><o:p>&nbsp;</o:p></p><p =
class=3DMsoNormal>&nbsp;&nbsp; Ephemeral-REQ-05: Ephemeral state =
handling and notifications could<o:p></o:p></p><p =
class=3DMsoNormal>&nbsp;&nbsp; increase need for CPU processing, data =
flow rates across a transport,<o:p></o:p></p><p =
class=3DMsoNormal>&nbsp;&nbsp; or the rate of publication of data in a =
subscription or the logging<o:p></o:p></p><p =
class=3DMsoNormal>&nbsp;&nbsp; for traceability.&nbsp; The I2RS Agent =
SHOULD have the ability to<o:p></o:p></p><p =
class=3DMsoNormal>&nbsp;&nbsp; constraints for OAM functions operating =
to limit CPU processing, data<o:p></o:p></p><p =
class=3DMsoNormal>&nbsp;&nbsp; rate across a transport, the rate of =
publication of data in a<o:p></o:p></p><p class=3DMsoNormal>&nbsp;&nbsp; =
subscription, and logging rates; and the I2RS Agent SHOULD have =
the<o:p></o:p></p><p class=3DMsoNormal>&nbsp;&nbsp; ability to =
prioritize some of the management data flows between =
the<o:p></o:p></p><p class=3DMsoNormal>&nbsp;&nbsp; I2RS Agent and I2RS =
Client.&nbsp; In order to constrain resources needed,<o:p></o:p></p><p =
class=3DMsoNormal>&nbsp;&nbsp; the I2RS Agent MAY also schedule data =
flows or split data flows unto<o:p></o:p></p><p =
class=3DMsoNormal>&nbsp;&nbsp; multiple data flow =
streams.<o:p></o:p></p></div></body></html>
------=_NextPart_000_0055_01D1BBFD.2DAFF000--


From nobody Wed Jun  1 09:04:40 2016
Return-Path: <shares@ndzh.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 3B8B812D11B for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 09:04:39 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.738
X-Spam-Level: *
X-Spam-Status: No, score=1.738 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, RDNS_NONE=0.793] autolearn=no autolearn_force=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 ImJQbXbpuYQp for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 09:04:33 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 1BE3212B057 for <i2rs@ietf.org>; Wed,  1 Jun 2016 09:04:33 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=74.43.47.63; 
From: "Susan Hares" <shares@ndzh.com>
To: "'Jeffrey Haas'" <jhaas@pfrc.org>, <i2rs@ietf.org>
References: <20160601160450.GR17462@pfrc.org>
In-Reply-To: <20160601160450.GR17462@pfrc.org>
Date: Wed, 1 Jun 2016 12:04:28 -0400
Message-ID: <006f01d1bc1f$47014a50$d503def0$@ndzh.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQJ9ndGW8PQQ92Z4NRJPX3Z02Pog4559Ajbg
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/kRIi5Tll_Wf_pdxcfinyMj0LMic>
Subject: Re: [i2rs] draft-ietf-i2rs-ephemeral-state-09, Ephemeral-REQ-05
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 01 Jun 2016 16:04:39 -0000

I2RS WG: 

Two replacements for Ephemeral-REQ-05: 

Option 1:  
I2RS pub-sub, logging, RPC or other mechanisms may lead to undesirable or
unsustainable resource consumption on a system implementing an I2RS Agent.
It is RECOMMENDED that mechanisms be made available to permit prioritization
of I2RS operations, when appropriate, to permit implementations to shed work
load when operating under constrained resources.  An example of such a work
shedding mechanism is rate-limiting.

Option 2: 
Ephemeral state handling, notifications, and OAM could increase the data
flow rates across transport, or the rate of publication of data in a
subscription, or logging needed for traceability.   It is RECOMMENDED that
the I2RS Agent should have the ability to limit, prioritize or split data
flows in the I2RS protocol.

Any feedback?

Sue 


-----Original Message-----
From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Jeffrey Haas
Sent: Wednesday, June 01, 2016 12:05 PM
To: i2rs@ietf.org
Subject: [i2rs] draft-ietf-i2rs-ephemeral-state-09, Ephemeral-REQ-05

As per the interim, here is some suggested text changes:

Existing text:

   Ephemeral-REQ-05: Ephemeral state handling and notifications could
   increase need for CPU processing, data flow rates across a transport,
   or the rate of publication of data in a subscription or the logging
   for traceability.  The I2RS Agent SHOULD have the ability to
   constraints for OAM functions operating to limit CPU processing, data
   rate across a transport, the rate of publication of data in a
   subscription, and logging rates; and the I2RS Agent SHOULD have the
   ability to prioritize some of the management data flows between the
   I2RS Agent and I2RS Client.  In order to constrain resources needed,
   the I2RS Agent MAY also schedule data flows or split data flows unto
   multiple data flow streams.

Suggested new text:

I2RS pub-sub, logging, RPC or other mechanisms may lead to undesirable or
unsustainable resource consumption on a system implementing an I2RS Agent.
It is RECOMMENDED that mechanisms be made available to permit prioritization
of I2RS operations, when appropriate, to permit implementations to shed work
load when operating under constrained resources.  An example of such a work
shedding mechanism is rate-limiting.

-----

Note that Subscription QoS in the pub-sub requirements provides for this
type of behavior in that context.

-- Jeff

_______________________________________________
i2rs mailing list
i2rs@ietf.org
https://www.ietf.org/mailman/listinfo/i2rs


From nobody Wed Jun  1 09:07:24 2016
Return-Path: <jhaas@slice.pfrc.org>
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 041B612B057 for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 09:07:23 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.328
X-Spam-Level: 
X-Spam-Status: No, score=-3.328 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RP_MATCHES_RCVD=-1.426, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=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 W4XeAyQyzZzp for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 09:07:21 -0700 (PDT)
Received: from slice.pfrc.org (slice.pfrc.org [67.207.130.108]) by ietfa.amsl.com (Postfix) with ESMTP id D44D212D11B for <i2rs@ietf.org>; Wed,  1 Jun 2016 09:07:21 -0700 (PDT)
Received: by slice.pfrc.org (Postfix, from userid 1001) id F311A1E335; Wed,  1 Jun 2016 12:12:55 -0400 (EDT)
Date: Wed, 1 Jun 2016 12:12:55 -0400
From: Jeffrey Haas <jhaas@pfrc.org>
To: i2rs@ietf.org
Message-ID: <20160601161255.GS17462@pfrc.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
User-Agent: Mutt/1.5.21 (2010-09-15)
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/xnphlemqo3RK-X7r0-aL4HMfdE4>
Subject: [i2rs] draft-ietf-i2rs-ephemeral-state-09, Ephemeral-REQ-08 comments
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 01 Jun 2016 16:07:23 -0000

Per discussion at the interim today:

Ephemeral-REQ-08 points 6 and 7 currently contain the following:

   6.  ephemeral state overwriting of configuration state MUST be
       controlled by the following policy knobs (as defined by
       [I-D.ietf-i2rs-architecture] section 6.3 and 6.3.1):

       *  ephemeral configuration overwrites local configuration (true/
          false; normal value: true), and

       *  Update of local configuration value supersedes and overwrites
          the ephemeral configuration (true/false; normal value: false).

   7.  The ephemeral overwriting to local configuration described in (6)
       above is considered to be the composite of all ephemeral values
       by all clients.  Some may consider this approach as a single pane
       of glass for ephemeral state.

The issue I believe we have here is that such arbitration/policy of whether
local configuration state overrides ephemeral configuration or vice-versa may be
controlled via configuration of the Agent rather than protocol behavior.
Ephemeral-REQ-08 is covering netconf behaviors.

I would suggest the following:

Insert a new Ephemeral-REQ prior to the current -08.

Ephemeral-REQ-XXX:
Ephemeral configuration state could override overlapping local configuration
state, or vice-versa.  Implementations MUST provide a mechanism to choose
which takes precedence.  This mechanism MUST include local configuration
(policy) and MAY be provided via the I2RS protocol mechanisms.

-- Jeff


From nobody Wed Jun  1 09:35:03 2016
Return-Path: <linda.dunbar@huawei.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 C68AF12B034 for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 09:35:01 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.646
X-Spam-Level: 
X-Spam-Status: No, score=-5.646 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-1.426, SPF_PASS=-0.001] autolearn=ham autolearn_force=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 CmBt2adAuca4 for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 09:34:58 -0700 (PDT)
Received: from lhrrgout.huawei.com (lhrrgout.huawei.com [194.213.3.17]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 5BA8E12B00E for <i2rs@ietf.org>; Wed,  1 Jun 2016 09:34:57 -0700 (PDT)
Received: from 172.18.7.190 (EHLO lhreml708-cah.china.huawei.com) ([172.18.7.190]) by lhrrg02-dlp.huawei.com (MOS 4.3.7-GA FastPath queued) with ESMTP id CLF25150; Wed, 01 Jun 2016 16:34:48 +0000 (GMT)
Received: from DFWEML703-CAH.china.huawei.com (10.193.5.177) by lhreml708-cah.china.huawei.com (10.201.5.202) with Microsoft SMTP Server (TLS) id 14.3.235.1; Wed, 1 Jun 2016 17:34:47 +0100
Received: from DFWEML501-MBB.china.huawei.com ([10.193.5.179]) by DFWEML703-CAH.china.huawei.com ([10.193.5.177]) with mapi id 14.03.0235.001; Wed, 1 Jun 2016 09:34:44 -0700
From: Linda Dunbar <linda.dunbar@huawei.com>
To: Andy Bierman <andy@yumaworks.com>
Thread-Topic: Can I2RS focus on the "Over the Wire" data structure , not on how end point handle the "DataStore"?
Thread-Index: AQHRuwdHMrGy2rZxuUWS355zkiS+h5/TiV6AgAAGiQCAAA0BgIAAIcQAgAAY2ICAABNkgIAAFZAA//+mzqCAAKv1gIAAfaTw
Date: Wed, 1 Jun 2016 16:34:44 +0000
Message-ID: <4A95BA014132FF49AE685FAB4B9F17F657EAD5FC@dfweml501-mbb>
References: <000601d1bad5$70523090$50f691b0$@ndzh.com> <20160531063840.GA21289@elstar.local> <00d501d1bb45$0da83500$28f89f00$@ndzh.com> <20160531142540.GA22420@elstar.local> <001401d1bb4e$cfaefd10$6f0cf730$@ndzh.com> <20160531171304.GA22857@elstar.local> <CABCOCHR2JChAg1zmKDy_qxVOGYVeTm9wGVLyxzpChb5Ht0uaww@mail.gmail.com> <20160531195123.GN17462@pfrc.org> <CABCOCHQka+BezA6pLSiyOPcTghgx-UKK5dY6y70nME_EFZxCZg@mail.gmail.com> <4A95BA014132FF49AE685FAB4B9F17F657EACE6D@dfweml501-mbb> <CABCOCHSWi=KjNBSxoqMDQniKLGDXX76YQMyVqbJirF=LoK6PHg@mail.gmail.com>
In-Reply-To: <CABCOCHSWi=KjNBSxoqMDQniKLGDXX76YQMyVqbJirF=LoK6PHg@mail.gmail.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: yes
X-MS-TNEF-Correlator: 
x-originating-ip: [10.192.11.71]
Content-Type: multipart/related; boundary="_004_4A95BA014132FF49AE685FAB4B9F17F657EAD5FCdfweml501mbb_"; type="multipart/alternative"
MIME-Version: 1.0
X-CFilter-Loop: Reflected
X-Mirapoint-Virus-RAPID-Raw: score=unknown(0), refid=str=0001.0A090202.574F0EA9.010A, ss=1, re=0.000, recu=0.000, reip=0.000,  cl=1, cld=1, fgs=0, ip=0.0.0.0, so=2013-06-18 04:22:30, dmn=2013-03-21 17:37:32
X-Mirapoint-Loop-Id: 9aaf15a3ed443011e8900421f9f65fe1
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/EFb3IG0mIg-hbnIdBaggFS8MTiw>
Cc: "i2rs@ietf.org" <i2rs@ietf.org>, Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>, Alia Atlas <akatlas@gmail.com>, Benoit Claise <bclaise@cisco.com>, Jeffrey Haas <jhaas@pfrc.org>, Susan Hares <shares@ndzh.com>
Subject: Re: [i2rs] Can I2RS focus on the "Over the Wire" data structure , not on how end point handle the "DataStore"?
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 01 Jun 2016 16:35:02 -0000

--_004_4A95BA014132FF49AE685FAB4B9F17F657EAD5FCdfweml501mbb_
Content-Type: multipart/alternative;
	boundary="_000_4A95BA014132FF49AE685FAB4B9F17F657EAD5FCdfweml501mbb_"

--_000_4A95BA014132FF49AE685FAB4B9F17F657EAD5FCdfweml501mbb_
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64

QW5keSwNCg0KQWdyZWUgd2l0aCB5b3VyIHN1Z2dlc3RlZCBhcHByb2FjaC4NCg0KTGluZGENCg0K
RnJvbTogQW5keSBCaWVybWFuIFttYWlsdG86YW5keUB5dW1hd29ya3MuY29tXQ0KU2VudDogVHVl
c2RheSwgTWF5IDMxLCAyMDE2IDk6MDUgUE0NClRvOiBMaW5kYSBEdW5iYXINCkNjOiBKZWZmcmV5
IEhhYXM7IEJlbm9pdCBDbGFpc2U7IGkycnNAaWV0Zi5vcmc7IEp1ZXJnZW4gU2Nob2Vud2FlbGRl
cjsgU3VzYW4gSGFyZXM7IEFsaWEgQXRsYXMNClN1YmplY3Q6IFJlOiBDYW4gSTJSUyBmb2N1cyBv
biB0aGUgIk92ZXIgdGhlIFdpcmUiIGRhdGEgc3RydWN0dXJlICwgbm90IG9uIGhvdyBlbmQgcG9p
bnQgaGFuZGxlIHRoZSAiRGF0YVN0b3JlIj8NCg0KSGksDQoNCklmIHlvdXIgZ3JhcGhpYyBhZHZp
Y2UgbWVhbnMgInRoZSByZXF1aXJlbWVudHMgYXJlIGdvb2QgZW5vdWdoLCBtb3ZlIG9uIg0KdGhl
biBJIGFncmVlLg0KDQpUaGUgZGF0YXN0b3JlIGZyYW1ld29yayB3b3VsZCBiZSBuaWNlIHRvIGhh
dmUsIGJ1dCBpdCBpcyB2ZXJ5IGNsb3NlDQp0byB0aGUgaW1wbGVtZW50YXRpb24gZGV0YWlscy4g
IEl0IGlzIGFsc28gYXR0ZW1wdGluZyB0byBiZSBhIHN1cGVyc2V0IG9mIGFsbA0KImFjY2VwdGVk
IiBpbXBsZW1lbnRhdGlvbiBjaG9pY2VzLg0KDQpCeSAib24gdGhlIHdpcmUiIHdlIHVzdWFsbHkg
bWVhbiBhIHByb3RvY29sIHNwZWNpZmljYXRpb24uDQpJTU8sIGFsbCB0aGF0IGlzIG5lZWRlZCAo
Zm9yIGVkaXRpbmcpIGlzIGEgc2V0IG9mIFJFU1RDT05GIGV4dGVuc2lvbnMuDQpTb21lIHBlb3Bs
ZSB3YW50IHRvIGRlc2NyaWJlIHRoZSBJMlJTIGRlc2lyZWQgYmVoYXZpb3Igd3J0LyBob3cgaXQN
CmludGVyYWN0cyB3aXRoIHRoZSBsb2NhbCBjb25maWcuIChhbmQgbWFueSBtb3JlIGZlYXR1cmVz
Li4uKQ0KDQpQZXJoYXBzIGEgZ29vZCBmaXJzdCBzdGVwIHdvdWxkIGJlIGVwaGVtZXJhbCBkYXRh
IG1vZGVscyB0aGF0IGRvIG5vdA0KaW50ZXJhY3Qgd2l0aCB0aGUgbG9jYWwgY29uZmlnIGF0IGFs
bC4gIEkyUlMgaXMgdGhlIG9ubHkgcHJvdG9jb2wgb2YgY29uY2VybiBhbmQgdGhlDQpoaWdoZXN0
IHByaW9yaXR5IGNsaWVudC4gIEkyUlMganVzdCBuZWVkcyB0byBzdXBwb3J0IHJlYWQvd3JpdGUv
bm90aWZ5IG9mIGVwaGVtZXJhbCBkYXRhLg0KSWYgdGhpcyBpcyBub3QgYWNjZXB0YWJsZSB0aGVu
IGJlIHByZXBhcmVkIHRvIHdhaXQgdW50aWwgYWxsIHRoZSBmcmFtZXdvcmsgc3R1ZmYgaXMgc2V0
dGxlZA0KYW5kIHN0YW5kYXJkaXplZC4NCg0KDQpBbmR5DQoNCg0KDQoNCk9uIFR1ZSwgTWF5IDMx
LCAyMDE2IGF0IDQ6MDkgUE0sIExpbmRhIER1bmJhciA8bGluZGEuZHVuYmFyQGh1YXdlaS5jb208
bWFpbHRvOmxpbmRhLmR1bmJhckBodWF3ZWkuY29tPj4gd3JvdGU6DQpJRVRGIGhhcyBiZWVuIHN1
Y2Nlc3NmdWwgZm9yIHBhc3QgMjAgeWVhcnMgIGluIGZvY3VzaW5nIG9uIOKAnE92ZXIgdGhlIFdp
cmXigJ0gZGF0YSBzdHJ1Y3R1cmUuICBJdCB3b3VsZCBiZSBzbyBtdWNoIGNsZWFuZXIgYW5kIHN0
cmFpZ2h0IGZvcndhcmQgaWYgdGhlIFlBTkcgbW9kdWxlcyBkZXZlbG9wZWQgYnkgSTJSUyAgZm9j
dXNpbmcgb24gdGhlIOKAnE92ZXIgdGhlIFdpcmXigJ0gZGF0YSBzdHJ1Y3R1cmUgKGFuZCB3aXRo
IE5FVE1PRCB0byBmb2N1cyBvbiBvdGhlciBhc3BlY3RzKS4NClRoZSDigJxJMlJTIGVwaGVtZXJh
bCBTdGF0ZeKAnSBoYXMgdGhlIG5lZWRlZCBkZXNjcmlwdGlvbiBmb3IgdGhlIGRlc2lyZWQgYmVo
YXZpb3IgIG9mIHRoZSBkYXRhIHJlY2VpdmVkIG92ZXIgSTJSUyBpbnRlcmZhY2UuIElmIHdlIGZv
bGxvdyB0aGUgSUVURiBwcmFjdGljZSwgIGl0IGlzIGdvb2QgZW5vdWdoLg0KSW50ZXJuYWwgaW1w
bGVtZW50YXRpb24gZnJhbWV3b3JrIGlzIGFsd2F5cyBjb250cm92ZXJzaWFsLCBoYXJkIHRvIGNv
bnZlcmdlLCB1c3VhbGx5IGVuZGluZyB1cCB3aXRoIGEgZG9jdW1lbnQgKGlmIGNvbXBsZXRlZCkg
dGhhdCBpcyB0b28gYmlnIGFuZCBkaWZmaWN1bHQgdG8gcmVhZC4NCg0KUHJvdmlkaW5nIHNvbWUg
c291cmNlIGNvZGUgdG8gc2hvdyB0aGUgaW50ZXJuYWwgaW1wbGVtZW50YXRpb24gd291bGQgYmUg
bXVjaCBtb3JlIHVzZWZ1bCBhcyBhIHJlZmVyZW5jZSBpbXBsZW1lbnRhdGlvbi4NCg0KVGhlIGRy
YWZ0LXNjaG9lbnctbmV0bW9kLXJldmlzZWQtZGF0YXN0b3Jlcy0wMCBpcyBvbiB0aGUgYXJjaGl0
ZWN0dXJhbCBmcmFtZXdvcmsgZm9yIGRhdGFzdG9yZXMgYXMgdGhleSBhcmUgdXNlZCBieSBuZXR3
b3JrIG1hbmFnZW1lbnQgcHJvdG9jb2xzLiBJTUhPLCBob3cgZGF0YSBzdG9yZXMgYXJlIHVzZWQg
YXJlIGludGVybmFsIHRvIHRoZSBlbmQgcG9pbnRzLg0KDQpbaHR0cDovL3d3dy51cmJhbmJsaXNz
bGlmZS5jb20vd3AtY29udGVudC91cGxvYWRzLzIwMTIvMTAvRG9uZS1pcy1CZXR0ZXItVGhhbi1Q
ZXJmZWN0LmpwZ108aHR0cDovL3d3dy5nb29nbGUuY29tL3VybD9zYT1pJnJjdD1qJnE9JmVzcmM9
cyZzb3VyY2U9aW1hZ2VzJmNkPSZjYWQ9cmphJnVhY3Q9OCZ2ZWQ9MGFoVUtFd2o1MEtXYXQ0WE5B
aFVMeEdNS0hSaHFEUFFRalJ3SUJ3JnVybD1odHRwJTNBJTJGJTJGd3d3LnVyYmFuYmxpc3NtZWRp
YS5jb20lMkZlbnRyZXByZW5ldXItcnVsZXMtZG9uZS1pcy1iZXR0ZXItdGhhbi1wZXJmZWN0JTJG
JnBzaWc9QUZRakNOR0tFaVBCMmlIU3F5QmlGNTYwOXBkNzJIMEw3dyZ1c3Q9MTQ2NDgyMjUwMzg2
NTc3Nz4NCg0KTGluZGEgRHVuYmFyDQoNCkZyb206IGkycnMgW21haWx0bzppMnJzLWJvdW5jZXNA
aWV0Zi5vcmc8bWFpbHRvOmkycnMtYm91bmNlc0BpZXRmLm9yZz5dIE9uIEJlaGFsZiBPZiBBbmR5
IEJpZXJtYW4NClNlbnQ6IFR1ZXNkYXksIE1heSAzMSwgMjAxNiA0OjA5IFBNDQpUbzogSmVmZnJl
eSBIYWFzDQpDYzogQmVub2l0IENsYWlzZTsgaTJyc0BpZXRmLm9yZzxtYWlsdG86aTJyc0BpZXRm
Lm9yZz47IEp1ZXJnZW4gU2Nob2Vud2FlbGRlcjsgU3VzYW4gSGFyZXM7IEFsaWEgQXRsYXMNClN1
YmplY3Q6IFJlOiBbaTJyc10gSTJSUyBJbnRlcmltIE1lZXRpbmcgLSBKdW5lIDEsIDIwMTYgLSAx
MDowMGFtIC0gMTE6MDBhbSAtIFRvcGljOiBFcGhlbWVyYWwgU3RhdGUgUmVxdWlyZW1lbnRzDQoN
CkhpLA0KDQpJIGFtIG5vdCBjb252aW5jZWQgdGhlIElFVEYgY2FuIGJlIGZvcmNlZCB0byBmdW5j
dGlvbiBhcyBpZiBpdCB3ZXJlDQphIGRldi1ncm91cCBpbiBzb21lIGNvcnBvcmF0aW9uLiAgVGhp
cyBpcyBhIHZvbHVudGVlciBvcmdhbml6YXRpb24gc28NCnVzdWFsbHkgc29sdXRpb24gcHJvcG9z
YWxzIGNvbWUgZnJvbSBwZW9wbGUgd2hvIGhhdmUgY3JlYXRlZCBhIHNvbHV0aW9uDQphbmQgdGhl
eSB3YW50IHRoZSBXRyB0byBzdGFuZGFyZGl6ZSBpdC4NCg0KDQpBbmR5DQoNCg0KT24gVHVlLCBN
YXkgMzEsIDIwMTYgYXQgMTI6NTEgUE0sIEplZmZyZXkgSGFhcyA8amhhYXNAcGZyYy5vcmc8bWFp
bHRvOmpoYWFzQHBmcmMub3JnPj4gd3JvdGU6DQpBbmR5LA0KDQpPbiBUdWUsIE1heSAzMSwgMjAx
NiBhdCAxMTo0MTo1OUFNIC0wNzAwLCBBbmR5IEJpZXJtYW4gd3JvdGU6DQo+IEF0IHNvbWUgcG9p
bnQgdGhlIFdHIG5lZWRzIHRvIGFncmVlIG9uIG5vcm1hdGl2ZSB0ZXh0IGluc3RlYWQgb2YgaXRl
cmF0aW5nDQo+IG9uIHJlcXVpcmVtZW50cyBmb3JldmVyLg0KDQpJTU8sIGl0IHdvdWxkIGJlIGlu
IEkyUlMncyBiZXN0IGludGVyZXN0cyBpZiBuZXRjb25mL25ldG1vZCBwcm92aWRlZCBkcmFmdHMN
CmluIGFwcHJvcHJpYXRlbHkgbm9ybWF0aXZlIGxhbmd1YWdlIGNvdmVyaW5nIEkyUlMgcmVxdWly
ZW1lbnRzLiAgSG93ZXZlciwNCndlJ3ZlIGJlZW4gaW4gYSBwYXRob2xvZ2ljYWwgY3ljbGUgb2Y6
DQoiV2UgZG9uJ3QgdW5kZXJzdGFuZCwgcGxlYXNlIGdpdmUgdXMgcmVxdWlyZW1lbnRzIg0KIldl
IGRvbid0IHVuZGVyc3RhbmQgeW91ciByZXF1aXJlbWVudHMiDQoiWW91IHByb3ZpZGVkIGV4YW1w
bGVzIHdpdGggeW91ciByZXF1aXJlbWVudHMgdGhhdCBhcHBlYXIgdG8gYmUgYXR0ZW1wdHMgdG8N
CmNoYW5nZSBvdXIgcHJvdG9jb2wgLSBkb24ndCBkbyB0aGF0LiINCg0KVGhlIG1vc3QgcmVjZW50
IHJldmlzZWQtZGF0YXN0b3JlIGRyYWZ0IHdvdWxkIGJlIGEgZ29vZCBwbGFjZSB0byBkb2N1bWVu
dA0Kd2hlcmUgbmV0bW9kKC9uZXRjb25mKSBiZWxpZXZlcyBlcGhlbWVyYWwgZGF0YXN0b3JlcyAo
aWYgdGhhdCdzIHRoZQ0KaW5zdGFudGlhdGlvbikgY291bGQgbGl2ZSwgYW5kIGFsc28gaG93IGVw
aGVtZXJhbCBjb25maWd1cmF0aW9uIHN0YXRlIGNvdWxkDQppbnRlcmFjdCB3aXRoIGNhbmRpZGF0
ZSwgc3RhcnR1cCBhbmQgcnVubmluZyBjb25maWd1cmF0aW9uLg0KDQp5YW5nLXB1c2ggY292ZXJz
IG11Y2ggb2Ygb3VyIGRlc2lyZWQgcHViLXN1YiBiZWhhdmlvci4gKFlheSEpDQoNCkRpc2N1c3Np
b24gaXMgcmVxdWlyZWQgZm9yIGhvdyB0byB0YWcgc2VjdXJpdHkgY29uc2lkZXJhdGlvbnMgaW1w
YWN0aW5nDQp0cmFuc3BvcnQgaW50byB0aGUgeWFuZyBtb2RlbCwgaW4gcGFydGljdWxhciBmb3Ig
bm90aWZpY2F0aW9uLg0KDQpQcm9wb3NhbHMgZm9yIHNlY29uZGFyeSBpZGVudGl0eSBhbmQgcHJp
b3JpdHkgYXJlIGFsc28gbmVlZGVkLg0KDQotLSBKZWZmDQoNCg0K

--_000_4A95BA014132FF49AE685FAB4B9F17F657EAD5FCdfweml501mbb_
Content-Type: text/html; charset="utf-8"
Content-Transfer-Encoding: base64

PGh0bWwgeG1sbnM6dj0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTp2bWwiIHhtbG5zOm89InVy
bjpzY2hlbWFzLW1pY3Jvc29mdC1jb206b2ZmaWNlOm9mZmljZSIgeG1sbnM6dz0idXJuOnNjaGVt
YXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6d29yZCIgeG1sbnM6bT0iaHR0cDovL3NjaGVtYXMubWlj
cm9zb2Z0LmNvbS9vZmZpY2UvMjAwNC8xMi9vbW1sIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
VFIvUkVDLWh0bWw0MCI+DQo8aGVhZD4NCjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIg
Y29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4NCjxtZXRhIG5hbWU9IkdlbmVyYXRv
ciIgY29udGVudD0iTWljcm9zb2Z0IFdvcmQgMTIgKGZpbHRlcmVkIG1lZGl1bSkiPg0KPCEtLVtp
ZiAhbXNvXT48c3R5bGU+dlw6KiB7YmVoYXZpb3I6dXJsKCNkZWZhdWx0I1ZNTCk7fQ0Kb1w6KiB7
YmVoYXZpb3I6dXJsKCNkZWZhdWx0I1ZNTCk7fQ0Kd1w6KiB7YmVoYXZpb3I6dXJsKCNkZWZhdWx0
I1ZNTCk7fQ0KLnNoYXBlIHtiZWhhdmlvcjp1cmwoI2RlZmF1bHQjVk1MKTt9DQo8L3N0eWxlPjwh
W2VuZGlmXS0tPjxzdHlsZT48IS0tDQovKiBGb250IERlZmluaXRpb25zICovDQpAZm9udC1mYWNl
DQoJe2ZvbnQtZmFtaWx5OkNvdXJpZXI7DQoJcGFub3NlLTE6MiA3IDQgOSAyIDIgNSAyIDQgNDt9
DQpAZm9udC1mYWNlDQoJe2ZvbnQtZmFtaWx5OlNpbVN1bjsNCglwYW5vc2UtMToyIDEgNiAwIDMg
MSAxIDEgMSAxO30NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6IkNhbWJyaWEgTWF0aCI7DQoJ
cGFub3NlLTE6MiA0IDUgMyA1IDQgNiAzIDIgNDt9DQpAZm9udC1mYWNlDQoJe2ZvbnQtZmFtaWx5
OkNhbGlicmk7DQoJcGFub3NlLTE6MiAxNSA1IDIgMiAyIDQgMyAyIDQ7fQ0KQGZvbnQtZmFjZQ0K
CXtmb250LWZhbWlseTpUYWhvbWE7DQoJcGFub3NlLTE6MiAxMSA2IDQgMyA1IDQgNCAyIDQ7fQ0K
QGZvbnQtZmFjZQ0KCXtmb250LWZhbWlseToiXEBTaW1TdW4iOw0KCXBhbm9zZS0xOjIgMSA2IDAg
MyAxIDEgMSAxIDE7fQ0KLyogU3R5bGUgRGVmaW5pdGlvbnMgKi8NCnAuTXNvTm9ybWFsLCBsaS5N
c29Ob3JtYWwsIGRpdi5Nc29Ob3JtYWwNCgl7bWFyZ2luOjBpbjsNCgltYXJnaW4tYm90dG9tOi4w
MDAxcHQ7DQoJZm9udC1zaXplOjEyLjBwdDsNCglmb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFu
Iiwic2VyaWYiO30NCmE6bGluaywgc3Bhbi5Nc29IeXBlcmxpbmsNCgl7bXNvLXN0eWxlLXByaW9y
aXR5Ojk5Ow0KCWNvbG9yOmJsdWU7DQoJdGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTt9DQphOnZp
c2l0ZWQsIHNwYW4uTXNvSHlwZXJsaW5rRm9sbG93ZWQNCgl7bXNvLXN0eWxlLXByaW9yaXR5Ojk5
Ow0KCWNvbG9yOnB1cnBsZTsNCgl0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO30NCnAuTXNvQWNl
dGF0ZSwgbGkuTXNvQWNldGF0ZSwgZGl2Lk1zb0FjZXRhdGUNCgl7bXNvLXN0eWxlLXByaW9yaXR5
Ojk5Ow0KCW1zby1zdHlsZS1saW5rOiJCYWxsb29uIFRleHQgQ2hhciI7DQoJbWFyZ2luOjBpbjsN
CgltYXJnaW4tYm90dG9tOi4wMDAxcHQ7DQoJZm9udC1zaXplOjguMHB0Ow0KCWZvbnQtZmFtaWx5
OiJUYWhvbWEiLCJzYW5zLXNlcmlmIjt9DQpzcGFuLkJhbGxvb25UZXh0Q2hhcg0KCXttc28tc3R5
bGUtbmFtZToiQmFsbG9vbiBUZXh0IENoYXIiOw0KCW1zby1zdHlsZS1wcmlvcml0eTo5OTsNCglt
c28tc3R5bGUtbGluazoiQmFsbG9vbiBUZXh0IjsNCglmb250LWZhbWlseToiVGFob21hIiwic2Fu
cy1zZXJpZiI7fQ0Kc3Bhbi5FbWFpbFN0eWxlMTkNCgl7bXNvLXN0eWxlLXR5cGU6cGVyc29uYWwt
cmVwbHk7DQoJZm9udC1mYW1pbHk6IkNhbGlicmkiLCJzYW5zLXNlcmlmIjsNCgljb2xvcjojMUY0
OTdEO30NCi5Nc29DaHBEZWZhdWx0DQoJe21zby1zdHlsZS10eXBlOmV4cG9ydC1vbmx5O30NCkBw
YWdlIFdvcmRTZWN0aW9uMQ0KCXtzaXplOjguNWluIDExLjBpbjsNCgltYXJnaW46MS4waW4gMS4w
aW4gMS4waW4gMS4waW47fQ0KZGl2LldvcmRTZWN0aW9uMQ0KCXtwYWdlOldvcmRTZWN0aW9uMTt9
DQotLT48L3N0eWxlPjwhLS1baWYgZ3RlIG1zbyA5XT48eG1sPg0KPG86c2hhcGVkZWZhdWx0cyB2
OmV4dD0iZWRpdCIgc3BpZG1heD0iMTAyNiIgLz4NCjwveG1sPjwhW2VuZGlmXS0tPjwhLS1baWYg
Z3RlIG1zbyA5XT48eG1sPg0KPG86c2hhcGVsYXlvdXQgdjpleHQ9ImVkaXQiPg0KPG86aWRtYXAg
djpleHQ9ImVkaXQiIGRhdGE9IjEiIC8+DQo8L286c2hhcGVsYXlvdXQ+PC94bWw+PCFbZW5kaWZd
LS0+DQo8L2hlYWQ+DQo8Ym9keSBsYW5nPSJFTi1VUyIgbGluaz0iYmx1ZSIgdmxpbms9InB1cnBs
ZSI+DQo8ZGl2IGNsYXNzPSJXb3JkU2VjdGlvbjEiPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNw
YW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90
OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPkFuZHksDQo8bzpwPjwvbzpw
Pjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXpl
OjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYm
cXVvdDs7Y29sb3I6IzFGNDk3RCI+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPg0KPHAgY2xh
c3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6
JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0Qi
PkFncmVlIHdpdGggeW91ciBzdWdnZXN0ZWQgYXBwcm9hY2guDQo8bzpwPjwvbzpwPjwvc3Bhbj48
L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtm
b250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29s
b3I6IzFGNDk3RCI+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05v
cm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2Fs
aWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPkxpbmRhDQo8
bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0i
Zm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3Nh
bnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9w
Pg0KPGRpdiBzdHlsZT0iYm9yZGVyOm5vbmU7Ym9yZGVyLXRvcDpzb2xpZCAjQjVDNERGIDEuMHB0
O3BhZGRpbmc6My4wcHQgMGluIDBpbiAwaW4iPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PGI+PHNw
YW4gc3R5bGU9ImZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7VGFob21hJnF1b3Q7
LCZxdW90O3NhbnMtc2VyaWYmcXVvdDsiPkZyb206PC9zcGFuPjwvYj48c3BhbiBzdHlsZT0iZm9u
dC1zaXplOjEwLjBwdDtmb250LWZhbWlseTomcXVvdDtUYWhvbWEmcXVvdDssJnF1b3Q7c2Fucy1z
ZXJpZiZxdW90OyI+IEFuZHkgQmllcm1hbiBbbWFpbHRvOmFuZHlAeXVtYXdvcmtzLmNvbV0NCjxi
cj4NCjxiPlNlbnQ6PC9iPiBUdWVzZGF5LCBNYXkgMzEsIDIwMTYgOTowNSBQTTxicj4NCjxiPlRv
OjwvYj4gTGluZGEgRHVuYmFyPGJyPg0KPGI+Q2M6PC9iPiBKZWZmcmV5IEhhYXM7IEJlbm9pdCBD
bGFpc2U7IGkycnNAaWV0Zi5vcmc7IEp1ZXJnZW4gU2Nob2Vud2FlbGRlcjsgU3VzYW4gSGFyZXM7
IEFsaWEgQXRsYXM8YnI+DQo8Yj5TdWJqZWN0OjwvYj4gUmU6IENhbiBJMlJTIGZvY3VzIG9uIHRo
ZSAmcXVvdDtPdmVyIHRoZSBXaXJlJnF1b3Q7IGRhdGEgc3RydWN0dXJlICwgbm90IG9uIGhvdyBl
bmQgcG9pbnQgaGFuZGxlIHRoZSAmcXVvdDtEYXRhU3RvcmUmcXVvdDs/PG86cD48L286cD48L3Nw
YW4+PC9wPg0KPC9kaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48bzpwPiZuYnNwOzwvbzpwPjwv
cD4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj5IaSw8bzpwPjwvbzpwPjwvcD4NCjxkaXY+
DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48bzpwPiZuYnNwOzwvbzpwPjwvcD4NCjwvZGl2Pg0KPGRp
dj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPklmIHlvdXIgZ3JhcGhpYyBhZHZpY2UgbWVhbnMgJnF1
b3Q7dGhlIHJlcXVpcmVtZW50cyBhcmUgZ29vZCBlbm91Z2gsIG1vdmUgb24mcXVvdDs8bzpwPjwv
bzpwPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPnRoZW4gSSBhZ3Jl
ZS48bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxv
OnA+Jm5ic3A7PC9vOnA+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+
VGhlIGRhdGFzdG9yZSBmcmFtZXdvcmsgd291bGQgYmUgbmljZSB0byBoYXZlLCBidXQgaXQgaXMg
dmVyeSBjbG9zZTxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05v
cm1hbCI+dG8gdGhlIGltcGxlbWVudGF0aW9uIGRldGFpbHMuJm5ic3A7IEl0IGlzIGFsc28gYXR0
ZW1wdGluZyB0byBiZSBhIHN1cGVyc2V0IG9mIGFsbDxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+DQo8
ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+JnF1b3Q7YWNjZXB0ZWQmcXVvdDsgaW1wbGVtZW50
YXRpb24gY2hvaWNlcy48bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJN
c29Ob3JtYWwiPjxvOnA+Jm5ic3A7PC9vOnA+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9
Ik1zb05vcm1hbCI+QnkgJnF1b3Q7b24gdGhlIHdpcmUmcXVvdDsgd2UgdXN1YWxseSBtZWFuIGEg
cHJvdG9jb2wgc3BlY2lmaWNhdGlvbi48bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxw
IGNsYXNzPSJNc29Ob3JtYWwiPklNTywgYWxsIHRoYXQgaXMgbmVlZGVkIChmb3IgZWRpdGluZykg
aXMgYSBzZXQgb2YgUkVTVENPTkYgZXh0ZW5zaW9ucy48bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0K
PGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPlNvbWUgcGVvcGxlIHdhbnQgdG8gZGVzY3JpYmUg
dGhlIEkyUlMgZGVzaXJlZCBiZWhhdmlvciB3cnQvIGhvdyBpdDxvOnA+PC9vOnA+PC9wPg0KPC9k
aXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+aW50ZXJhY3RzIHdpdGggdGhlIGxvY2Fs
IGNvbmZpZy4gKGFuZCBtYW55IG1vcmUgZmVhdHVyZXMuLi4pPG86cD48L286cD48L3A+DQo8L2Rp
dj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48bzpwPiZuYnNwOzwvbzpwPjwvcD4NCjwv
ZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPlBlcmhhcHMgYSBnb29kIGZpcnN0IHN0
ZXAgd291bGQgYmUgZXBoZW1lcmFsIGRhdGEgbW9kZWxzIHRoYXQgZG8gbm90PG86cD48L286cD48
L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj5pbnRlcmFjdCB3aXRoIHRo
ZSBsb2NhbCBjb25maWcgYXQgYWxsLiZuYnNwOyBJMlJTIGlzIHRoZSBvbmx5IHByb3RvY29sIG9m
IGNvbmNlcm4gYW5kIHRoZTxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9
Ik1zb05vcm1hbCI+aGlnaGVzdCBwcmlvcml0eSBjbGllbnQuJm5ic3A7IEkyUlMganVzdCBuZWVk
cyB0byBzdXBwb3J0IHJlYWQvd3JpdGUvbm90aWZ5IG9mIGVwaGVtZXJhbCBkYXRhLjxvOnA+PC9v
OnA+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+SWYgdGhpcyBpcyBu
b3QgYWNjZXB0YWJsZSB0aGVuIGJlIHByZXBhcmVkIHRvIHdhaXQgdW50aWwgYWxsIHRoZSBmcmFt
ZXdvcmsgc3R1ZmYgaXMgc2V0dGxlZDxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAg
Y2xhc3M9Ik1zb05vcm1hbCI+YW5kIHN0YW5kYXJkaXplZC48bzpwPjwvbzpwPjwvcD4NCjwvZGl2
Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxvOnA+Jm5ic3A7PC9vOnA+PC9wPg0KPC9k
aXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PG86cD4mbmJzcDs8L286cD48L3A+DQo8
L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj5BbmR5PG86cD48L286cD48L3A+DQo8
L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48bzpwPiZuYnNwOzwvbzpwPjwvcD4N
CjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxvOnA+Jm5ic3A7PC9vOnA+PC9w
Pg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PG86cD4mbmJzcDs8L286cD48
L3A+DQo8L2Rpdj4NCjxkaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PG86cD4mbmJz
cDs8L286cD48L3A+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+T24gVHVlLCBNYXkgMzEs
IDIwMTYgYXQgNDowOSBQTSwgTGluZGEgRHVuYmFyICZsdDs8YSBocmVmPSJtYWlsdG86bGluZGEu
ZHVuYmFyQGh1YXdlaS5jb20iIHRhcmdldD0iX2JsYW5rIj5saW5kYS5kdW5iYXJAaHVhd2VpLmNv
bTwvYT4mZ3Q7IHdyb3RlOjxvOnA+PC9vOnA+PC9wPg0KPGRpdj4NCjxkaXY+DQo8cCBjbGFzcz0i
TXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0
b20tYWx0OmF1dG8iPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7
LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+SUVURiBoYXMgYmVlbiBzdWNj
ZXNzZnVsIGZvciBwYXN0IDIwIHllYXJzICZuYnNwO2luIGZvY3VzaW5nIG9uIOKAnE92ZXIgdGhl
IFdpcmXigJ0gZGF0YSBzdHJ1Y3R1cmUuJm5ic3A7IEl0IHdvdWxkIGJlIHNvIG11Y2ggY2xlYW5l
cg0KIGFuZCBzdHJhaWdodCBmb3J3YXJkIGlmIHRoZSBZQU5HIG1vZHVsZXMgZGV2ZWxvcGVkIGJ5
IEkyUlMgJm5ic3A7Zm9jdXNpbmcgb24gdGhlIOKAnE92ZXIgdGhlIFdpcmXigJ0gZGF0YSBzdHJ1
Y3R1cmUgKGFuZCB3aXRoIE5FVE1PRCB0byBmb2N1cyBvbiBvdGhlciBhc3BlY3RzKS48L3NwYW4+
PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10
b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPjxzcGFuIHN0eWxlPSJmb250
LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6
IzFGNDk3RCI+VGhlIOKAnEkyUlMgZXBoZW1lcmFsIFN0YXRl4oCdIGhhcyB0aGUgbmVlZGVkIGRl
c2NyaXB0aW9uIGZvciB0aGUgZGVzaXJlZCBiZWhhdmlvciAmbmJzcDtvZiB0aGUgZGF0YSByZWNl
aXZlZCBvdmVyIEkyUlMgaW50ZXJmYWNlLg0KIElmIHdlIGZvbGxvdyB0aGUgSUVURiBwcmFjdGlj
ZSwgJm5ic3A7aXQgaXMgZ29vZCBlbm91Z2guIDwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxwIGNs
YXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2lu
LWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkm
cXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj5JbnRlcm5hbCBpbXBs
ZW1lbnRhdGlvbiBmcmFtZXdvcmsgaXMgYWx3YXlzIGNvbnRyb3ZlcnNpYWwsIGhhcmQgdG8gY29u
dmVyZ2UsIHVzdWFsbHkgZW5kaW5nIHVwIHdpdGggYSBkb2N1bWVudCAoaWYNCiBjb21wbGV0ZWQp
IHRoYXQgaXMgdG9vIGJpZyBhbmQgZGlmZmljdWx0IHRvIHJlYWQuIDwvc3Bhbj48bzpwPjwvbzpw
PjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0
bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OiZx
dW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj4m
bmJzcDs8L3NwYW4+PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0i
bXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPjxzcGFu
IHN0eWxlPSJmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYm
cXVvdDs7Y29sb3I6IzFGNDk3RCI+UHJvdmlkaW5nIHNvbWUgc291cmNlIGNvZGUgdG8gc2hvdyB0
aGUgaW50ZXJuYWwgaW1wbGVtZW50YXRpb24gd291bGQgYmUgbXVjaCBtb3JlIHVzZWZ1bCBhcyBh
IHJlZmVyZW5jZSBpbXBsZW1lbnRhdGlvbi4NCjwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxwIGNs
YXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2lu
LWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkm
cXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj4mbmJzcDs8L3NwYW4+
PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10
b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG87dGV4dC1hdXRvc3BhY2U6bm9u
ZSI+DQo8c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtz
YW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPlRoZSA8L3NwYW4+PHNwYW4gc3R5bGU9ImZv
bnQtZmFtaWx5OkNvdXJpZXIiPmRyYWZ0LXNjaG9lbnctbmV0bW9kLXJldmlzZWQtZGF0YXN0b3Jl
cy0wMA0KPC9zcGFuPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7
LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+aXMgb24gdGhlIGFyY2hpdGVj
dHVyYWwgZnJhbWV3b3JrIGZvciBkYXRhc3RvcmVzIGFzIHRoZXkgYXJlIHVzZWQgYnkgbmV0d29y
ayBtYW5hZ2VtZW50IHByb3RvY29scy4gSU1ITywgaG93IGRhdGEgc3RvcmVzIGFyZSB1c2VkIGFy
ZSBpbnRlcm5hbCB0byB0aGUgZW5kIHBvaW50cy4NCjwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxw
IGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFy
Z2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O0NhbGli
cmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj4mbmJzcDs8L3Nw
YW4+PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdp
bi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPjxhIGhyZWY9Imh0dHA6
Ly93d3cuZ29vZ2xlLmNvbS91cmw/c2E9aSZhbXA7cmN0PWomYW1wO3E9JmFtcDtlc3JjPXMmYW1w
O3NvdXJjZT1pbWFnZXMmYW1wO2NkPSZhbXA7Y2FkPXJqYSZhbXA7dWFjdD04JmFtcDt2ZWQ9MGFo
VUtFd2o1MEtXYXQ0WE5BaFVMeEdNS0hSaHFEUFFRalJ3SUJ3JmFtcDt1cmw9aHR0cCUzQSUyRiUy
Rnd3dy51cmJhbmJsaXNzbWVkaWEuY29tJTJGZW50cmVwcmVuZXVyLXJ1bGVzLWRvbmUtaXMtYmV0
dGVyLXRoYW4tcGVyZmVjdCUyRiZhbXA7cHNpZz1BRlFqQ05HS0VpUEIyaUhTcXlCaUY1NjA5cGQ3
MkgwTDd3JmFtcDt1c3Q9MTQ2NDgyMjUwMzg2NTc3NyIgdGFyZ2V0PSJfYmxhbmsiPjxzcGFuIHN0
eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1
b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEO3RleHQtZGVjb3JhdGlvbjpub25lIj48
aW1nIGJvcmRlcj0iMCIgd2lkdGg9IjQzMCIgaGVpZ2h0PSI1NTgiIGlkPSJfeDAwMDBfaTEwMjUi
IHNyYz0iY2lkOmltYWdlMDAxLmpwZ0AwMUQxQkJGOS45N0JENkU0MCIgYWx0PSJodHRwOi8vd3d3
LnVyYmFuYmxpc3NsaWZlLmNvbS93cC1jb250ZW50L3VwbG9hZHMvMjAxMi8xMC9Eb25lLWlzLUJl
dHRlci1UaGFuLVBlcmZlY3QuanBnIj48L3NwYW4+PC9hPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xh
c3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4t
Ym90dG9tLWFsdDphdXRvIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWls
eTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3
RCI+Jm5ic3A7PC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5
bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48
c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1
b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+TGluZGEgRHVuYmFyPC9z
cGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJn
aW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBzdHlsZT0i
Zm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3Nh
bnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+Jm5ic3A7PC9zcGFuPjxvOnA+PC9vOnA+PC9w
Pg0KPGRpdiBzdHlsZT0iYm9yZGVyOm5vbmU7Ym9yZGVyLXRvcDpzb2xpZCAjQjVDNERGIDEuMHB0
O3BhZGRpbmc6My4wcHQgMGluIDBpbiAwaW4iPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9
Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48Yj48
c3BhbiBzdHlsZT0iZm9udC1zaXplOjEwLjBwdDtmb250LWZhbWlseTomcXVvdDtUYWhvbWEmcXVv
dDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90OyI+RnJvbTo8L3NwYW4+PC9iPjxzcGFuIHN0eWxlPSJm
b250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O1RhaG9tYSZxdW90OywmcXVvdDtzYW5z
LXNlcmlmJnF1b3Q7Ij4gaTJycyBbbWFpbHRvOjxhIGhyZWY9Im1haWx0bzppMnJzLWJvdW5jZXNA
aWV0Zi5vcmciIHRhcmdldD0iX2JsYW5rIj5pMnJzLWJvdW5jZXNAaWV0Zi5vcmc8L2E+XQ0KPGI+
T24gQmVoYWxmIE9mIDwvYj5BbmR5IEJpZXJtYW48YnI+DQo8Yj5TZW50OjwvYj4gVHVlc2RheSwg
TWF5IDMxLCAyMDE2IDQ6MDkgUE08YnI+DQo8Yj5Ubzo8L2I+IEplZmZyZXkgSGFhczxicj4NCjxi
PkNjOjwvYj4gQmVub2l0IENsYWlzZTsgPGEgaHJlZj0ibWFpbHRvOmkycnNAaWV0Zi5vcmciIHRh
cmdldD0iX2JsYW5rIj5pMnJzQGlldGYub3JnPC9hPjsgSnVlcmdlbiBTY2hvZW53YWVsZGVyOyBT
dXNhbiBIYXJlczsgQWxpYSBBdGxhczxicj4NCjxiPlN1YmplY3Q6PC9iPiBSZTogW2kycnNdIEky
UlMgSW50ZXJpbSBNZWV0aW5nIC0gSnVuZSAxLCAyMDE2IC0gMTA6MDBhbSAtIDExOjAwYW0gLSBU
b3BpYzogRXBoZW1lcmFsIFN0YXRlIFJlcXVpcmVtZW50czwvc3Bhbj48bzpwPjwvbzpwPjwvcD4N
CjwvZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDph
dXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj4mbmJzcDs8bzpwPjwvbzpwPjwvcD4NCjxk
aXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87
bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPkhpLDxvOnA+PC9vOnA+PC9wPg0KPGRpdj4NCjxw
IGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFy
Z2luLWJvdHRvbS1hbHQ6YXV0byI+Jm5ic3A7PG86cD48L286cD48L3A+DQo8L2Rpdj4NCjxkaXY+
DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNv
LW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPkkgYW0gbm90IGNvbnZpbmNlZCB0aGUgSUVURiBjYW4g
YmUgZm9yY2VkIHRvIGZ1bmN0aW9uIGFzIGlmIGl0IHdlcmU8bzpwPjwvbzpwPjwvcD4NCjwvZGl2
Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6
YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+YSBkZXYtZ3JvdXAgaW4gc29tZSBjb3Jw
b3JhdGlvbi4mbmJzcDsgVGhpcyBpcyBhIHZvbHVudGVlciBvcmdhbml6YXRpb24gc288bzpwPjwv
bzpwPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28t
bWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+dXN1YWxseSBz
b2x1dGlvbiBwcm9wb3NhbHMgY29tZSBmcm9tIHBlb3BsZSB3aG8gaGF2ZSBjcmVhdGVkIGEgc29s
dXRpb248bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwi
IHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0
byI+YW5kIHRoZXkgd2FudCB0aGUgV0cgdG8gc3RhbmRhcmRpemUgaXQuPG86cD48L286cD48L3A+
DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10
b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPiZuYnNwOzxvOnA+PC9vOnA+
PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJn
aW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj4mbmJzcDs8bzpwPjwv
bzpwPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28t
bWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+QW5keTxvOnA+
PC9vOnA+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1z
by1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj4mbmJzcDs8
bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFs
IiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1
dG8iPiZuYnNwOzxvOnA+PC9vOnA+PC9wPg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0
eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+
T24gVHVlLCBNYXkgMzEsIDIwMTYgYXQgMTI6NTEgUE0sIEplZmZyZXkgSGFhcyAmbHQ7PGEgaHJl
Zj0ibWFpbHRvOmpoYWFzQHBmcmMub3JnIiB0YXJnZXQ9Il9ibGFuayI+amhhYXNAcGZyYy5vcmc8
L2E+Jmd0OyB3cm90ZTo8bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxl
PSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+QW5k
eSw8YnI+DQo8YnI+DQpPbiBUdWUsIE1heSAzMSwgMjAxNiBhdCAxMTo0MTo1OUFNIC0wNzAwLCBB
bmR5IEJpZXJtYW4gd3JvdGU6PGJyPg0KJmd0OyBBdCBzb21lIHBvaW50IHRoZSBXRyBuZWVkcyB0
byBhZ3JlZSBvbiBub3JtYXRpdmUgdGV4dCBpbnN0ZWFkIG9mIGl0ZXJhdGluZzxicj4NCiZndDsg
b24gcmVxdWlyZW1lbnRzIGZvcmV2ZXIuPGJyPg0KPGJyPg0KSU1PLCBpdCB3b3VsZCBiZSBpbiBJ
MlJTJ3MgYmVzdCBpbnRlcmVzdHMgaWYgbmV0Y29uZi9uZXRtb2QgcHJvdmlkZWQgZHJhZnRzPGJy
Pg0KaW4gYXBwcm9wcmlhdGVseSBub3JtYXRpdmUgbGFuZ3VhZ2UgY292ZXJpbmcgSTJSUyByZXF1
aXJlbWVudHMuJm5ic3A7IEhvd2V2ZXIsPGJyPg0Kd2UndmUgYmVlbiBpbiBhIHBhdGhvbG9naWNh
bCBjeWNsZSBvZjo8YnI+DQomcXVvdDtXZSBkb24ndCB1bmRlcnN0YW5kLCBwbGVhc2UgZ2l2ZSB1
cyByZXF1aXJlbWVudHMmcXVvdDs8YnI+DQomcXVvdDtXZSBkb24ndCB1bmRlcnN0YW5kIHlvdXIg
cmVxdWlyZW1lbnRzJnF1b3Q7PGJyPg0KJnF1b3Q7WW91IHByb3ZpZGVkIGV4YW1wbGVzIHdpdGgg
eW91ciByZXF1aXJlbWVudHMgdGhhdCBhcHBlYXIgdG8gYmUgYXR0ZW1wdHMgdG88YnI+DQpjaGFu
Z2Ugb3VyIHByb3RvY29sIC0gZG9uJ3QgZG8gdGhhdC4mcXVvdDs8YnI+DQo8YnI+DQpUaGUgbW9z
dCByZWNlbnQgcmV2aXNlZC1kYXRhc3RvcmUgZHJhZnQgd291bGQgYmUgYSBnb29kIHBsYWNlIHRv
IGRvY3VtZW50PGJyPg0Kd2hlcmUgbmV0bW9kKC9uZXRjb25mKSBiZWxpZXZlcyBlcGhlbWVyYWwg
ZGF0YXN0b3JlcyAoaWYgdGhhdCdzIHRoZTxicj4NCmluc3RhbnRpYXRpb24pIGNvdWxkIGxpdmUs
IGFuZCBhbHNvIGhvdyBlcGhlbWVyYWwgY29uZmlndXJhdGlvbiBzdGF0ZSBjb3VsZDxicj4NCmlu
dGVyYWN0IHdpdGggY2FuZGlkYXRlLCBzdGFydHVwIGFuZCBydW5uaW5nIGNvbmZpZ3VyYXRpb24u
PGJyPg0KPGJyPg0KeWFuZy1wdXNoIGNvdmVycyBtdWNoIG9mIG91ciBkZXNpcmVkIHB1Yi1zdWIg
YmVoYXZpb3IuIChZYXkhKTxicj4NCjxicj4NCkRpc2N1c3Npb24gaXMgcmVxdWlyZWQgZm9yIGhv
dyB0byB0YWcgc2VjdXJpdHkgY29uc2lkZXJhdGlvbnMgaW1wYWN0aW5nPGJyPg0KdHJhbnNwb3J0
IGludG8gdGhlIHlhbmcgbW9kZWwsIGluIHBhcnRpY3VsYXIgZm9yIG5vdGlmaWNhdGlvbi48YnI+
DQo8YnI+DQpQcm9wb3NhbHMgZm9yIHNlY29uZGFyeSBpZGVudGl0eSBhbmQgcHJpb3JpdHkgYXJl
IGFsc28gbmVlZGVkLjxicj4NCjxicj4NCi0tIEplZmY8bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0K
PHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1t
YXJnaW4tYm90dG9tLWFsdDphdXRvIj4mbmJzcDs8bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0KPC9k
aXY+DQo8L2Rpdj4NCjwvZGl2Pg0KPC9kaXY+DQo8L2Rpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwi
PjxvOnA+Jm5ic3A7PC9vOnA+PC9wPg0KPC9kaXY+DQo8L2Rpdj4NCjwvZGl2Pg0KPC9kaXY+DQo8
L2JvZHk+DQo8L2h0bWw+DQo=

--_000_4A95BA014132FF49AE685FAB4B9F17F657EAD5FCdfweml501mbb_--

--_004_4A95BA014132FF49AE685FAB4B9F17F657EAD5FCdfweml501mbb_
Content-Type: image/jpeg; name="image001.jpg"
Content-Description: image001.jpg
Content-Disposition: inline; filename="image001.jpg"; size=38477;
	creation-date="Wed, 01 Jun 2016 16:34:44 GMT";
	modification-date="Wed, 01 Jun 2016 16:34:44 GMT"
Content-ID: <image001.jpg@01D1BBF9.97BD6E40>
Content-Transfer-Encoding: base64

/9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAAoHBwgHBgoICAgLCgoLDhgQDg0NDh0VFhEYIx8lJCIf
IiEmKzcvJik0KSEiMEExNDk7Pj4+JS5ESUM8SDc9Pjv/2wBDAQoLCw4NDhwQEBw7KCIoOzs7Ozs7
Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozv/wAARCAIuAa4DASIA
AhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQA
AAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3
ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWm
p6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEA
AwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSEx
BhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElK
U1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3
uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDzPgDA
OaU8dRzTenfil96ADNKAaAOOcU7NACDvijGKd26jNGB9aAG+w4zSYOfSnkHGe1JtHWgBoXvzx1pc
ZGacRjnrTSKAEwc8UYH40oGPenAUACgE0YwMCn/hTT/kUAN/ClA7nH1oAz9KdtGMUAIR64FJgdO3
sKUgn60cDpQA3/I9qXjHJOad0pOvagBuPfH1pvPWnE9u1JQAmMCjJJznrSkHGf1ppz/kUAHfPSkx
Sj3FKF9eMetADe5o+ozSkAck0oHFACdDkfrSHPQCpMf/AFvrTcAA+vtQA3HH9aTHHsKdjGATik/H
igBCB16ZpeBxQMevNKRk5/nQADP0/Cjv1/SkINKB70AJ/Km+lPOMdaY1ADTilPI4o4A6Uh5NAB+H
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
/9k=

--_004_4A95BA014132FF49AE685FAB4B9F17F657EAD5FCdfweml501mbb_--


From nobody Wed Jun  1 10:05:01 2016
Return-Path: <shares@ndzh.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 AECB412B05B for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 10:05:00 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 4.439
X-Spam-Level: ****
X-Spam-Status: No, score=4.439 tagged_above=-999 required=5 tests=[BAYES_50=0.8, DOS_OUTLOOK_TO_MX=2.845, HTML_MESSAGE=0.001, RDNS_NONE=0.793] autolearn=no autolearn_force=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 oS6TnX4irvlR for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 10:04:59 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id CDC6012D0AE for <i2rs@ietf.org>; Wed,  1 Jun 2016 10:04:58 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=74.43.47.63; 
From: "Susan Hares" <shares@ndzh.com>
To: <i2rs@ietf.org>
Date: Wed, 1 Jun 2016 13:04:55 -0400
Message-ID: <00b301d1bc27$b8cc53c0$2a64fb40$@ndzh.com>
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="----=_NextPart_000_00B4_01D1BC06.31BB9E20"
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AdG8J5AFXWphTVwKTAOJTYmz7HAGtA==
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/_838mMspvbQaCVIpSbpSM7HxLxA>
Cc: 'Benoit Claise' <bclaise@cisco.com>, 'Alia Atlas' <akatlas@juniper.net>
Subject: [i2rs] I2RS recording - for I2RS Interim on June 1, 2016 - 10-11am
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 01 Jun 2016 17:05:01 -0000

This is a multipart message in MIME format.

------=_NextPart_000_00B4_01D1BC06.31BB9E20
Content-Type: text/plain;
	charset="us-ascii"
Content-Transfer-Encoding: 7bit

Here's the recording for today's  interim. 

--------------

 

Ephemeral State-20160601 1404-1 

Create time: 

6/1/16 11:22 am 

File size: 

124.42MB 

Duration: 

1 hour 14 minutes 

Security: 

Description: 

Streaming recording link: 

https://ietf.webex.com/ietf/ldr.php?RCID=4116fca5928f664621385fca1c3ef3ac 

Download recording link: 

https://ietf.webex.com/ietf/lsr.php?RCID=77e07bfccbb86ccefb43278da4d277f8 

 


------=_NextPart_000_00B4_01D1BC06.31BB9E20
Content-Type: text/html;
	charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" =
xmlns:o=3D"urn:schemas-microsoft-com:office:office" =
xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" =
xmlns=3D"http://www.w3.org/TR/REC-html40"><head><META =
HTTP-EQUIV=3D"Content-Type" CONTENT=3D"text/html; =
charset=3Dus-ascii"><meta name=3DGenerator content=3D"Microsoft Word 14 =
(filtered medium)"><style><!--
/* Font Definitions */
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0in;
	margin-bottom:.0001pt;
	font-size:11.0pt;
	font-family:"Calibri","sans-serif";}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:blue;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:purple;
	text-decoration:underline;}
span.EmailStyle17
	{mso-style-type:personal-compose;
	font-family:"Calibri","sans-serif";
	color:windowtext;}
span.col-sm-3
	{mso-style-name:col-sm-3;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-family:"Calibri","sans-serif";}
@page WordSection1
	{size:8.5in 11.0in;
	margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
	{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]--></head><body lang=3DEN-US link=3Dblue =
vlink=3Dpurple><div class=3DWordSection1><p class=3DMsoNormal><span =
class=3Dcol-sm-3>Here&#8217;s the recording for today&#8217;s =
&nbsp;interim. <o:p></o:p></span></p><p class=3DMsoNormal><span =
class=3Dcol-sm-3>--------------<o:p></o:p></span></p><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p><p class=3DMsoNormal>Ephemeral =
State-20160601 1404-1 <o:p></o:p></p><p class=3DMsoNormal><span =
class=3Dcol-sm-3>Create time:</span> <o:p></o:p></p><p =
class=3DMsoNormal>6/1/16 11:22 am <o:p></o:p></p><p =
class=3DMsoNormal><span class=3Dcol-sm-3>File size:</span> =
<o:p></o:p></p><p class=3DMsoNormal>124.42MB <o:p></o:p></p><p =
class=3DMsoNormal><span class=3Dcol-sm-3>Duration:</span> =
<o:p></o:p></p><p class=3DMsoNormal>1 hour 14 minutes <o:p></o:p></p><p =
class=3DMsoNormal><span class=3Dcol-sm-3>Security:</span> =
<o:p></o:p></p><p class=3DMsoNormal><span =
class=3Dcol-sm-3>Description:</span> <o:p></o:p></p><p =
class=3DMsoNormal><span class=3Dcol-sm-3>Streaming recording =
link:</span> <o:p></o:p></p><p class=3DMsoNormal><a =
href=3D"https://ietf.webex.com/ietf/ldr.php?RCID=3D4116fca5928f664621385f=
ca1c3ef3ac" =
id=3DlinkOfPlaybackUrl>https://ietf.webex.com/ietf/ldr.php?RCID=3D4116fca=
5928f664621385fca1c3ef3ac</a> <o:p></o:p></p><p class=3DMsoNormal><span =
class=3Dcol-sm-3>Download recording link:</span> <o:p></o:p></p><p =
class=3DMsoNormal><a =
href=3D"https://ietf.webex.com/ietf/lsr.php?RCID=3D77e07bfccbb86ccefb4327=
8da4d277f8" =
id=3DlinkOfDownloadUrl>https://ietf.webex.com/ietf/lsr.php?RCID=3D77e07bf=
ccbb86ccefb43278da4d277f8</a> <o:p></o:p></p><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div></body></html>
------=_NextPart_000_00B4_01D1BC06.31BB9E20--


From nobody Wed Jun  1 12:05:21 2016
Return-Path: <shares@ndzh.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 D0F4A12D169 for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 12:05:20 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.096
X-Spam-Level: 
X-Spam-Status: No, score=-1.096 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RDNS_NONE=0.793, T_REMOTE_IMAGE=0.01] autolearn=no autolearn_force=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 cx71ejjlcrwR for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 12:05:19 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id A987412B039 for <i2rs@ietf.org>; Wed,  1 Jun 2016 12:05:18 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=107.92.120.142; 
Date: Wed, 01 Jun 2016 15:04:57 -0400
Message-ID: <m6rxediwalf1cuma8a6mvj3b.1464807897082@email.android.com>
Importance: normal
From: Susan Hares <shares@ndzh.com>
To: Linda Dunbar <linda.dunbar@huawei.com>, Andy Bierman <andy@yumaworks.com>
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="--_com.samsung.android.email_5639049439560650"
X-Authenticated-User: skh@ndzh.com 
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/gBTAE1y0QbpeypES26a9ozl9E6s>
Cc: Benoit Claise <bclaise@cisco.com>, "i2rs@ietf.org" <i2rs@ietf.org>, Jeffrey Haas <jhaas@pfrc.org>, Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>, Alia Atlas <akatlas@gmail.com>
Subject: Re: [i2rs] Can I2RS focus on the "Over the Wire" data structure , not on how end point handle the "DataStore"?
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 01 Jun 2016 19:05:21 -0000

----_com.samsung.android.email_5639049439560650
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: base64

QW5keQpXZSBjdXJyZW50bHkgYXJlIHNwZWNpZnlpbmcgaTJycyByaWIgbW9kZWwgd2hpY2ggY2Fu
IG92ZXJ3cml0ZSB0aGUgbG9jYWwgY29uZmlnLiDCoCDCoEltcGxlbWVudGF0aW9ucyBleHBlcmll
bmNlIHdpbGwgcHJvdmlkZSB1cyB3aXRoIGlucHV0IG9uIHRoZSBwcm90b2NvbHMuwqAKU3VlCgoK
U2VudCB2aWEgdGhlIFNhbXN1bmcgR2FsYXh5IE5vdGU1LCBhbiBBVCZUIDRHIExURSBzbWFydHBo
b25lLS0tLS0tLS0gT3JpZ2luYWwgbWVzc2FnZSAtLS0tLS0tLUZyb206IExpbmRhIER1bmJhciA8
bGluZGEuZHVuYmFyQGh1YXdlaS5jb20+IERhdGU6IDYvMS8yMDE2ICAxMjozNCBQTSAgKEdNVC0w
NTowMCkgVG86IEFuZHkgQmllcm1hbiA8YW5keUB5dW1hd29ya3MuY29tPiBDYzogaTJyc0BpZXRm
Lm9yZywgSnVlcmdlbiBTY2hvZW53YWVsZGVyIDxqLnNjaG9lbndhZWxkZXJAamFjb2JzLXVuaXZl
cnNpdHkuZGU+LCBBbGlhIEF0bGFzIDxha2F0bGFzQGdtYWlsLmNvbT4sIEJlbm9pdCBDbGFpc2Ug
PGJjbGFpc2VAY2lzY28uY29tPiwgSmVmZnJleSBIYWFzIDxqaGFhc0BwZnJjLm9yZz4sIFN1c2Fu
IEhhcmVzIDxzaGFyZXNAbmR6aC5jb20+IFN1YmplY3Q6IFJlOiBbaTJyc10gQ2FuIEkyUlMgZm9j
dXMgb24gdGhlICJPdmVyIHRoZSBXaXJlIiBkYXRhIHN0cnVjdHVyZSAsIG5vdCBvbiBob3cgZW5k
IHBvaW50IGhhbmRsZSB0aGUgIkRhdGFTdG9yZSI/IAoKCkFuZHksCgrCoApBZ3JlZSB3aXRoIHlv
dXIgc3VnZ2VzdGVkIGFwcHJvYWNoLgoKwqAKTGluZGEKCsKgCgpGcm9tOiBBbmR5IEJpZXJtYW4g
W21haWx0bzphbmR5QHl1bWF3b3Jrcy5jb21dCgoKU2VudDogVHVlc2RheSwgTWF5IDMxLCAyMDE2
IDk6MDUgUE0KClRvOiBMaW5kYSBEdW5iYXIKCkNjOiBKZWZmcmV5IEhhYXM7IEJlbm9pdCBDbGFp
c2U7IGkycnNAaWV0Zi5vcmc7IEp1ZXJnZW4gU2Nob2Vud2FlbGRlcjsgU3VzYW4gSGFyZXM7IEFs
aWEgQXRsYXMKClN1YmplY3Q6IFJlOiBDYW4gSTJSUyBmb2N1cyBvbiB0aGUgIk92ZXIgdGhlIFdp
cmUiIGRhdGEgc3RydWN0dXJlICwgbm90IG9uIGhvdyBlbmQgcG9pbnQgaGFuZGxlIHRoZSAiRGF0
YVN0b3JlIj8KCsKgCgpIaSwKCsKgCgoKSWYgeW91ciBncmFwaGljIGFkdmljZSBtZWFucyAidGhl
IHJlcXVpcmVtZW50cyBhcmUgZ29vZCBlbm91Z2gsIG1vdmUgb24iCgoKdGhlbiBJIGFncmVlLgoK
CsKgCgoKVGhlIGRhdGFzdG9yZSBmcmFtZXdvcmsgd291bGQgYmUgbmljZSB0byBoYXZlLCBidXQg
aXQgaXMgdmVyeSBjbG9zZQoKCnRvIHRoZSBpbXBsZW1lbnRhdGlvbiBkZXRhaWxzLsKgIEl0IGlz
IGFsc28gYXR0ZW1wdGluZyB0byBiZSBhIHN1cGVyc2V0IG9mIGFsbAoKCiJhY2NlcHRlZCIgaW1w
bGVtZW50YXRpb24gY2hvaWNlcy4KCgrCoAoKCkJ5ICJvbiB0aGUgd2lyZSIgd2UgdXN1YWxseSBt
ZWFuIGEgcHJvdG9jb2wgc3BlY2lmaWNhdGlvbi4KCgpJTU8sIGFsbCB0aGF0IGlzIG5lZWRlZCAo
Zm9yIGVkaXRpbmcpIGlzIGEgc2V0IG9mIFJFU1RDT05GIGV4dGVuc2lvbnMuCgoKU29tZSBwZW9w
bGUgd2FudCB0byBkZXNjcmliZSB0aGUgSTJSUyBkZXNpcmVkIGJlaGF2aW9yIHdydC8gaG93IGl0
CgoKaW50ZXJhY3RzIHdpdGggdGhlIGxvY2FsIGNvbmZpZy4gKGFuZCBtYW55IG1vcmUgZmVhdHVy
ZXMuLi4pCgoKwqAKCgpQZXJoYXBzIGEgZ29vZCBmaXJzdCBzdGVwIHdvdWxkIGJlIGVwaGVtZXJh
bCBkYXRhIG1vZGVscyB0aGF0IGRvIG5vdAoKCmludGVyYWN0IHdpdGggdGhlIGxvY2FsIGNvbmZp
ZyBhdCBhbGwuwqAgSTJSUyBpcyB0aGUgb25seSBwcm90b2NvbCBvZiBjb25jZXJuIGFuZCB0aGUK
CgpoaWdoZXN0IHByaW9yaXR5IGNsaWVudC7CoCBJMlJTIGp1c3QgbmVlZHMgdG8gc3VwcG9ydCBy
ZWFkL3dyaXRlL25vdGlmeSBvZiBlcGhlbWVyYWwgZGF0YS4KCgpJZiB0aGlzIGlzIG5vdCBhY2Nl
cHRhYmxlIHRoZW4gYmUgcHJlcGFyZWQgdG8gd2FpdCB1bnRpbCBhbGwgdGhlIGZyYW1ld29yayBz
dHVmZiBpcyBzZXR0bGVkCgoKYW5kIHN0YW5kYXJkaXplZC4KCgrCoAoKCsKgCgoKQW5keQoKCsKg
CgoKwqAKCgrCoAoKCgrCoAoKT24gVHVlLCBNYXkgMzEsIDIwMTYgYXQgNDowOSBQTSwgTGluZGEg
RHVuYmFyIDxsaW5kYS5kdW5iYXJAaHVhd2VpLmNvbT4gd3JvdGU6CgoKSUVURiBoYXMgYmVlbiBz
dWNjZXNzZnVsIGZvciBwYXN0IDIwIHllYXJzIMKgaW4gZm9jdXNpbmcgb24g4oCcT3ZlciB0aGUg
V2lyZeKAnSBkYXRhIHN0cnVjdHVyZS7CoCBJdCB3b3VsZCBiZSBzbyBtdWNoIGNsZWFuZXIKIGFu
ZCBzdHJhaWdodCBmb3J3YXJkIGlmIHRoZSBZQU5HIG1vZHVsZXMgZGV2ZWxvcGVkIGJ5IEkyUlMg
wqBmb2N1c2luZyBvbiB0aGUg4oCcT3ZlciB0aGUgV2lyZeKAnSBkYXRhIHN0cnVjdHVyZSAoYW5k
IHdpdGggTkVUTU9EIHRvIGZvY3VzIG9uIG90aGVyIGFzcGVjdHMpLgpUaGUg4oCcSTJSUyBlcGhl
bWVyYWwgU3RhdGXigJ0gaGFzIHRoZSBuZWVkZWQgZGVzY3JpcHRpb24gZm9yIHRoZSBkZXNpcmVk
IGJlaGF2aW9yIMKgb2YgdGhlIGRhdGEgcmVjZWl2ZWQgb3ZlciBJMlJTIGludGVyZmFjZS4KIElm
IHdlIGZvbGxvdyB0aGUgSUVURiBwcmFjdGljZSwgwqBpdCBpcyBnb29kIGVub3VnaC4gCkludGVy
bmFsIGltcGxlbWVudGF0aW9uIGZyYW1ld29yayBpcyBhbHdheXMgY29udHJvdmVyc2lhbCwgaGFy
ZCB0byBjb252ZXJnZSwgdXN1YWxseSBlbmRpbmcgdXAgd2l0aCBhIGRvY3VtZW50IChpZgogY29t
cGxldGVkKSB0aGF0IGlzIHRvbyBiaWcgYW5kIGRpZmZpY3VsdCB0byByZWFkLiAKwqAKUHJvdmlk
aW5nIHNvbWUgc291cmNlIGNvZGUgdG8gc2hvdyB0aGUgaW50ZXJuYWwgaW1wbGVtZW50YXRpb24g
d291bGQgYmUgbXVjaCBtb3JlIHVzZWZ1bCBhcyBhIHJlZmVyZW5jZSBpbXBsZW1lbnRhdGlvbi4K
CsKgCgpUaGUgZHJhZnQtc2Nob2Vudy1uZXRtb2QtcmV2aXNlZC1kYXRhc3RvcmVzLTAwCmlzIG9u
IHRoZSBhcmNoaXRlY3R1cmFsIGZyYW1ld29yayBmb3IgZGF0YXN0b3JlcyBhcyB0aGV5IGFyZSB1
c2VkIGJ5IG5ldHdvcmsgbWFuYWdlbWVudCBwcm90b2NvbHMuIElNSE8sIGhvdyBkYXRhIHN0b3Jl
cyBhcmUgdXNlZCBhcmUgaW50ZXJuYWwgdG8gdGhlIGVuZCBwb2ludHMuCgrCoAoKwqAKTGluZGEg
RHVuYmFyCsKgCgpGcm9tOiBpMnJzIFttYWlsdG86aTJycy1ib3VuY2VzQGlldGYub3JnXQpPbiBC
ZWhhbGYgT2YgQW5keSBCaWVybWFuCgpTZW50OiBUdWVzZGF5LCBNYXkgMzEsIDIwMTYgNDowOSBQ
TQoKVG86IEplZmZyZXkgSGFhcwoKQ2M6IEJlbm9pdCBDbGFpc2U7IGkycnNAaWV0Zi5vcmc7IEp1
ZXJnZW4gU2Nob2Vud2FlbGRlcjsgU3VzYW4gSGFyZXM7IEFsaWEgQXRsYXMKClN1YmplY3Q6IFJl
OiBbaTJyc10gSTJSUyBJbnRlcmltIE1lZXRpbmcgLSBKdW5lIDEsIDIwMTYgLSAxMDowMGFtIC0g
MTE6MDBhbSAtIFRvcGljOiBFcGhlbWVyYWwgU3RhdGUgUmVxdWlyZW1lbnRzCgrCoAoKSGksCgrC
oAoKCkkgYW0gbm90IGNvbnZpbmNlZCB0aGUgSUVURiBjYW4gYmUgZm9yY2VkIHRvIGZ1bmN0aW9u
IGFzIGlmIGl0IHdlcmUKCgphIGRldi1ncm91cCBpbiBzb21lIGNvcnBvcmF0aW9uLsKgIFRoaXMg
aXMgYSB2b2x1bnRlZXIgb3JnYW5pemF0aW9uIHNvCgoKdXN1YWxseSBzb2x1dGlvbiBwcm9wb3Nh
bHMgY29tZSBmcm9tIHBlb3BsZSB3aG8gaGF2ZSBjcmVhdGVkIGEgc29sdXRpb24KCgphbmQgdGhl
eSB3YW50IHRoZSBXRyB0byBzdGFuZGFyZGl6ZSBpdC4KCgrCoAoKCsKgCgoKQW5keQoKCsKgCgoK
CsKgCgpPbiBUdWUsIE1heSAzMSwgMjAxNiBhdCAxMjo1MSBQTSwgSmVmZnJleSBIYWFzIDxqaGFh
c0BwZnJjLm9yZz4gd3JvdGU6CkFuZHksCgoKCk9uIFR1ZSwgTWF5IDMxLCAyMDE2IGF0IDExOjQx
OjU5QU0gLTA3MDAsIEFuZHkgQmllcm1hbiB3cm90ZToKCj4gQXQgc29tZSBwb2ludCB0aGUgV0cg
bmVlZHMgdG8gYWdyZWUgb24gbm9ybWF0aXZlIHRleHQgaW5zdGVhZCBvZiBpdGVyYXRpbmcKCj4g
b24gcmVxdWlyZW1lbnRzIGZvcmV2ZXIuCgoKCklNTywgaXQgd291bGQgYmUgaW4gSTJSUydzIGJl
c3QgaW50ZXJlc3RzIGlmIG5ldGNvbmYvbmV0bW9kIHByb3ZpZGVkIGRyYWZ0cwoKaW4gYXBwcm9w
cmlhdGVseSBub3JtYXRpdmUgbGFuZ3VhZ2UgY292ZXJpbmcgSTJSUyByZXF1aXJlbWVudHMuwqAg
SG93ZXZlciwKCndlJ3ZlIGJlZW4gaW4gYSBwYXRob2xvZ2ljYWwgY3ljbGUgb2Y6CgoiV2UgZG9u
J3QgdW5kZXJzdGFuZCwgcGxlYXNlIGdpdmUgdXMgcmVxdWlyZW1lbnRzIgoKIldlIGRvbid0IHVu
ZGVyc3RhbmQgeW91ciByZXF1aXJlbWVudHMiCgoiWW91IHByb3ZpZGVkIGV4YW1wbGVzIHdpdGgg
eW91ciByZXF1aXJlbWVudHMgdGhhdCBhcHBlYXIgdG8gYmUgYXR0ZW1wdHMgdG8KCmNoYW5nZSBv
dXIgcHJvdG9jb2wgLSBkb24ndCBkbyB0aGF0LiIKCgoKVGhlIG1vc3QgcmVjZW50IHJldmlzZWQt
ZGF0YXN0b3JlIGRyYWZ0IHdvdWxkIGJlIGEgZ29vZCBwbGFjZSB0byBkb2N1bWVudAoKd2hlcmUg
bmV0bW9kKC9uZXRjb25mKSBiZWxpZXZlcyBlcGhlbWVyYWwgZGF0YXN0b3JlcyAoaWYgdGhhdCdz
IHRoZQoKaW5zdGFudGlhdGlvbikgY291bGQgbGl2ZSwgYW5kIGFsc28gaG93IGVwaGVtZXJhbCBj
b25maWd1cmF0aW9uIHN0YXRlIGNvdWxkCgppbnRlcmFjdCB3aXRoIGNhbmRpZGF0ZSwgc3RhcnR1
cCBhbmQgcnVubmluZyBjb25maWd1cmF0aW9uLgoKCgp5YW5nLXB1c2ggY292ZXJzIG11Y2ggb2Yg
b3VyIGRlc2lyZWQgcHViLXN1YiBiZWhhdmlvci4gKFlheSEpCgoKCkRpc2N1c3Npb24gaXMgcmVx
dWlyZWQgZm9yIGhvdyB0byB0YWcgc2VjdXJpdHkgY29uc2lkZXJhdGlvbnMgaW1wYWN0aW5nCgp0
cmFuc3BvcnQgaW50byB0aGUgeWFuZyBtb2RlbCwgaW4gcGFydGljdWxhciBmb3Igbm90aWZpY2F0
aW9uLgoKCgpQcm9wb3NhbHMgZm9yIHNlY29uZGFyeSBpZGVudGl0eSBhbmQgcHJpb3JpdHkgYXJl
IGFsc28gbmVlZGVkLgoKCgotLSBKZWZmCgrCoAoKCgoKCgrCoAoKCgoK

----_com.samsung.android.email_5639049439560650
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: base64

PGh0bWw+PGhlYWQ+PG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0
L2h0bWw7IGNoYXJzZXQ9VVRGLTgiPjwvaGVhZD48Ym9keT48ZGl2PkFuZHk8L2Rpdj48ZGl2Pjxi
cj48L2Rpdj48ZGl2PldlIGN1cnJlbnRseSBhcmUgc3BlY2lmeWluZyBpMnJzIHJpYiBtb2RlbCB3
aGljaCBjYW4gb3ZlcndyaXRlIHRoZSBsb2NhbCBjb25maWcuICZuYnNwOyAmbmJzcDtJbXBsZW1l
bnRhdGlvbnMgZXhwZXJpZW5jZSB3aWxsIHByb3ZpZGUgdXMgd2l0aCBpbnB1dCBvbiB0aGUgcHJv
dG9jb2xzLiZuYnNwOzwvZGl2PjxkaXY+PGJyPjwvZGl2PjxkaXY+U3VlPC9kaXY+PGRpdj48YnI+
PC9kaXY+PGRpdj48YnI+PC9kaXY+PGRpdj48YnI+PC9kaXY+PGRpdiBpZD0iY29tcG9zZXJfc2ln
bmF0dXJlIj48ZGl2IHN0eWxlPSJmb250LXNpemU6ODUlO2NvbG9yOiM1NzU3NTciPlNlbnQgdmlh
IHRoZSBTYW1zdW5nIEdhbGF4eSBOb3RlNSwgYW4gQVQmYW1wO1QgNEcgTFRFIHNtYXJ0cGhvbmU8
L2Rpdj48L2Rpdj48ZGl2IHN0eWxlPSJmb250LXNpemU6MTAwJTtjb2xvcjojMDAwMDAwIj48IS0t
IG9yaWdpbmFsTWVzc2FnZSAtLT48ZGl2Pi0tLS0tLS0tIE9yaWdpbmFsIG1lc3NhZ2UgLS0tLS0t
LS08L2Rpdj48ZGl2PkZyb206IExpbmRhIER1bmJhciAmbHQ7bGluZGEuZHVuYmFyQGh1YXdlaS5j
b20mZ3Q7IDwvZGl2PjxkaXY+RGF0ZTogNi8xLzIwMTYgIDEyOjM0IFBNICAoR01ULTA1OjAwKSA8
L2Rpdj48ZGl2PlRvOiBBbmR5IEJpZXJtYW4gJmx0O2FuZHlAeXVtYXdvcmtzLmNvbSZndDsgPC9k
aXY+PGRpdj5DYzogaTJyc0BpZXRmLm9yZywgSnVlcmdlbiBTY2hvZW53YWVsZGVyICZsdDtqLnNj
aG9lbndhZWxkZXJAamFjb2JzLXVuaXZlcnNpdHkuZGUmZ3Q7LCBBbGlhIEF0bGFzICZsdDtha2F0
bGFzQGdtYWlsLmNvbSZndDssIEJlbm9pdCBDbGFpc2UgJmx0O2JjbGFpc2VAY2lzY28uY29tJmd0
OywgSmVmZnJleSBIYWFzICZsdDtqaGFhc0BwZnJjLm9yZyZndDssIFN1c2FuIEhhcmVzICZsdDtz
aGFyZXNAbmR6aC5jb20mZ3Q7IDwvZGl2PjxkaXY+U3ViamVjdDogUmU6IFtpMnJzXSBDYW4gSTJS
UyBmb2N1cyBvbiB0aGUgIk92ZXIgdGhlIFdpcmUiIGRhdGEgc3RydWN0dXJlICwgbm90IG9uIGhv
dyBlbmQgcG9pbnQgaGFuZGxlIHRoZSAiRGF0YVN0b3JlIj8gPC9kaXY+PGRpdj48YnI+PC9kaXY+
PC9kaXY+CjxkaXYgY2xhc3M9IldvcmRTZWN0aW9uMSI+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxz
cGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVv
dDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj5BbmR5LAo8bzpwPjwvbzpw
Pjwvc3Bhbj48L3A+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6
MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZx
dW90Oztjb2xvcjojMUY0OTdEIj48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+CjxwIGNsYXNz
PSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZx
dW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj5B
Z3JlZSB3aXRoIHlvdXIgc3VnZ2VzdGVkIGFwcHJvYWNoLgo8bzpwPjwvbzpwPjwvc3Bhbj48L3A+
CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQt
ZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjoj
MUY0OTdEIj48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+CjxwIGNsYXNzPSJNc29Ob3JtYWwi
PjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkm
cXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj5MaW5kYQo8bzpwPjwv
bzpwPjwvc3Bhbj48L3A+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNp
emU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJp
ZiZxdW90Oztjb2xvcjojMUY0OTdEIj48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+CjxkaXYg
c3R5bGU9ImJvcmRlcjpub25lO2JvcmRlci10b3A6c29saWQgI0I1QzRERiAxLjBwdDtwYWRkaW5n
OjMuMHB0IDBpbiAwaW4gMGluIj4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PGI+PHNwYW4gc3R5bGU9
ImZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7VGFob21hJnF1b3Q7LCZxdW90O3Nh
bnMtc2VyaWYmcXVvdDsiPkZyb206PC9zcGFuPjwvYj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjEw
LjBwdDtmb250LWZhbWlseTomcXVvdDtUYWhvbWEmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90
OyI+IEFuZHkgQmllcm1hbiBbbWFpbHRvOmFuZHlAeXVtYXdvcmtzLmNvbV0KPGJyPgo8Yj5TZW50
OjwvYj4gVHVlc2RheSwgTWF5IDMxLCAyMDE2IDk6MDUgUE08YnI+CjxiPlRvOjwvYj4gTGluZGEg
RHVuYmFyPGJyPgo8Yj5DYzo8L2I+IEplZmZyZXkgSGFhczsgQmVub2l0IENsYWlzZTsgaTJyc0Bp
ZXRmLm9yZzsgSnVlcmdlbiBTY2hvZW53YWVsZGVyOyBTdXNhbiBIYXJlczsgQWxpYSBBdGxhczxi
cj4KPGI+U3ViamVjdDo8L2I+IFJlOiBDYW4gSTJSUyBmb2N1cyBvbiB0aGUgIk92ZXIgdGhlIFdp
cmUiIGRhdGEgc3RydWN0dXJlICwgbm90IG9uIGhvdyBlbmQgcG9pbnQgaGFuZGxlIHRoZSAiRGF0
YVN0b3JlIj88bzpwPjwvbzpwPjwvc3Bhbj48L3A+CjwvZGl2Pgo8cCBjbGFzcz0iTXNvTm9ybWFs
Ij48bzpwPiZuYnNwOzwvbzpwPjwvcD4KPGRpdj4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+SGksPG86
cD48L286cD48L3A+CjxkaXY+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxvOnA+Jm5ic3A7PC9vOnA+
PC9wPgo8L2Rpdj4KPGRpdj4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+SWYgeW91ciBncmFwaGljIGFk
dmljZSBtZWFucyAidGhlIHJlcXVpcmVtZW50cyBhcmUgZ29vZCBlbm91Z2gsIG1vdmUgb24iPG86
cD48L286cD48L3A+CjwvZGl2Pgo8ZGl2Pgo8cCBjbGFzcz0iTXNvTm9ybWFsIj50aGVuIEkgYWdy
ZWUuPG86cD48L286cD48L3A+CjwvZGl2Pgo8ZGl2Pgo8cCBjbGFzcz0iTXNvTm9ybWFsIj48bzpw
PiZuYnNwOzwvbzpwPjwvcD4KPC9kaXY+CjxkaXY+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPlRoZSBk
YXRhc3RvcmUgZnJhbWV3b3JrIHdvdWxkIGJlIG5pY2UgdG8gaGF2ZSwgYnV0IGl0IGlzIHZlcnkg
Y2xvc2U8bzpwPjwvbzpwPjwvcD4KPC9kaXY+CjxkaXY+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPnRv
IHRoZSBpbXBsZW1lbnRhdGlvbiBkZXRhaWxzLiZuYnNwOyBJdCBpcyBhbHNvIGF0dGVtcHRpbmcg
dG8gYmUgYSBzdXBlcnNldCBvZiBhbGw8bzpwPjwvbzpwPjwvcD4KPC9kaXY+CjxkaXY+CjxwIGNs
YXNzPSJNc29Ob3JtYWwiPiJhY2NlcHRlZCIgaW1wbGVtZW50YXRpb24gY2hvaWNlcy48bzpwPjwv
bzpwPjwvcD4KPC9kaXY+CjxkaXY+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxvOnA+Jm5ic3A7PC9v
OnA+PC9wPgo8L2Rpdj4KPGRpdj4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+QnkgIm9uIHRoZSB3aXJl
IiB3ZSB1c3VhbGx5IG1lYW4gYSBwcm90b2NvbCBzcGVjaWZpY2F0aW9uLjxvOnA+PC9vOnA+PC9w
Pgo8L2Rpdj4KPGRpdj4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+SU1PLCBhbGwgdGhhdCBpcyBuZWVk
ZWQgKGZvciBlZGl0aW5nKSBpcyBhIHNldCBvZiBSRVNUQ09ORiBleHRlbnNpb25zLjxvOnA+PC9v
OnA+PC9wPgo8L2Rpdj4KPGRpdj4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+U29tZSBwZW9wbGUgd2Fu
dCB0byBkZXNjcmliZSB0aGUgSTJSUyBkZXNpcmVkIGJlaGF2aW9yIHdydC8gaG93IGl0PG86cD48
L286cD48L3A+CjwvZGl2Pgo8ZGl2Pgo8cCBjbGFzcz0iTXNvTm9ybWFsIj5pbnRlcmFjdHMgd2l0
aCB0aGUgbG9jYWwgY29uZmlnLiAoYW5kIG1hbnkgbW9yZSBmZWF0dXJlcy4uLik8bzpwPjwvbzpw
PjwvcD4KPC9kaXY+CjxkaXY+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxvOnA+Jm5ic3A7PC9vOnA+
PC9wPgo8L2Rpdj4KPGRpdj4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+UGVyaGFwcyBhIGdvb2QgZmly
c3Qgc3RlcCB3b3VsZCBiZSBlcGhlbWVyYWwgZGF0YSBtb2RlbHMgdGhhdCBkbyBub3Q8bzpwPjwv
bzpwPjwvcD4KPC9kaXY+CjxkaXY+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPmludGVyYWN0IHdpdGgg
dGhlIGxvY2FsIGNvbmZpZyBhdCBhbGwuJm5ic3A7IEkyUlMgaXMgdGhlIG9ubHkgcHJvdG9jb2wg
b2YgY29uY2VybiBhbmQgdGhlPG86cD48L286cD48L3A+CjwvZGl2Pgo8ZGl2Pgo8cCBjbGFzcz0i
TXNvTm9ybWFsIj5oaWdoZXN0IHByaW9yaXR5IGNsaWVudC4mbmJzcDsgSTJSUyBqdXN0IG5lZWRz
IHRvIHN1cHBvcnQgcmVhZC93cml0ZS9ub3RpZnkgb2YgZXBoZW1lcmFsIGRhdGEuPG86cD48L286
cD48L3A+CjwvZGl2Pgo8ZGl2Pgo8cCBjbGFzcz0iTXNvTm9ybWFsIj5JZiB0aGlzIGlzIG5vdCBh
Y2NlcHRhYmxlIHRoZW4gYmUgcHJlcGFyZWQgdG8gd2FpdCB1bnRpbCBhbGwgdGhlIGZyYW1ld29y
ayBzdHVmZiBpcyBzZXR0bGVkPG86cD48L286cD48L3A+CjwvZGl2Pgo8ZGl2Pgo8cCBjbGFzcz0i
TXNvTm9ybWFsIj5hbmQgc3RhbmRhcmRpemVkLjxvOnA+PC9vOnA+PC9wPgo8L2Rpdj4KPGRpdj4K
PHAgY2xhc3M9Ik1zb05vcm1hbCI+PG86cD4mbmJzcDs8L286cD48L3A+CjwvZGl2Pgo8ZGl2Pgo8
cCBjbGFzcz0iTXNvTm9ybWFsIj48bzpwPiZuYnNwOzwvbzpwPjwvcD4KPC9kaXY+CjxkaXY+Cjxw
IGNsYXNzPSJNc29Ob3JtYWwiPkFuZHk8bzpwPjwvbzpwPjwvcD4KPC9kaXY+CjxkaXY+CjxwIGNs
YXNzPSJNc29Ob3JtYWwiPjxvOnA+Jm5ic3A7PC9vOnA+PC9wPgo8L2Rpdj4KPGRpdj4KPHAgY2xh
c3M9Ik1zb05vcm1hbCI+PG86cD4mbmJzcDs8L286cD48L3A+CjwvZGl2Pgo8ZGl2Pgo8cCBjbGFz
cz0iTXNvTm9ybWFsIj48bzpwPiZuYnNwOzwvbzpwPjwvcD4KPC9kaXY+CjxkaXY+CjxkaXY+Cjxw
IGNsYXNzPSJNc29Ob3JtYWwiPjxvOnA+Jm5ic3A7PC9vOnA+PC9wPgo8ZGl2Pgo8cCBjbGFzcz0i
TXNvTm9ybWFsIj5PbiBUdWUsIE1heSAzMSwgMjAxNiBhdCA0OjA5IFBNLCBMaW5kYSBEdW5iYXIg
Jmx0OzxhIGhyZWY9Im1haWx0bzpsaW5kYS5kdW5iYXJAaHVhd2VpLmNvbSIgdGFyZ2V0PSJfYmxh
bmsiPmxpbmRhLmR1bmJhckBodWF3ZWkuY29tPC9hPiZndDsgd3JvdGU6PG86cD48L286cD48L3A+
CjxkaXY+CjxkaXY+CjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1h
bHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gc3R5bGU9ImZvbnQtZmFt
aWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0
OTdEIj5JRVRGIGhhcyBiZWVuIHN1Y2Nlc3NmdWwgZm9yIHBhc3QgMjAgeWVhcnMgJm5ic3A7aW4g
Zm9jdXNpbmcgb24g4oCcT3ZlciB0aGUgV2lyZeKAnSBkYXRhIHN0cnVjdHVyZS4mbmJzcDsgSXQg
d291bGQgYmUgc28gbXVjaCBjbGVhbmVyCiBhbmQgc3RyYWlnaHQgZm9yd2FyZCBpZiB0aGUgWUFO
RyBtb2R1bGVzIGRldmVsb3BlZCBieSBJMlJTICZuYnNwO2ZvY3VzaW5nIG9uIHRoZSDigJxPdmVy
IHRoZSBXaXJl4oCdIGRhdGEgc3RydWN0dXJlIChhbmQgd2l0aCBORVRNT0QgdG8gZm9jdXMgb24g
b3RoZXIgYXNwZWN0cykuPC9zcGFuPjxvOnA+PC9vOnA+PC9wPgo8cCBjbGFzcz0iTXNvTm9ybWFs
IiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1
dG8iPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3Nh
bnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+VGhlIOKAnEkyUlMgZXBoZW1lcmFsIFN0YXRl
4oCdIGhhcyB0aGUgbmVlZGVkIGRlc2NyaXB0aW9uIGZvciB0aGUgZGVzaXJlZCBiZWhhdmlvciAm
bmJzcDtvZiB0aGUgZGF0YSByZWNlaXZlZCBvdmVyIEkyUlMgaW50ZXJmYWNlLgogSWYgd2UgZm9s
bG93IHRoZSBJRVRGIHByYWN0aWNlLCAmbmJzcDtpdCBpcyBnb29kIGVub3VnaC4gPC9zcGFuPjxv
OnA+PC9vOnA+PC9wPgo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3At
YWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPjxzcGFuIHN0eWxlPSJmb250LWZh
bWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFG
NDk3RCI+SW50ZXJuYWwgaW1wbGVtZW50YXRpb24gZnJhbWV3b3JrIGlzIGFsd2F5cyBjb250cm92
ZXJzaWFsLCBoYXJkIHRvIGNvbnZlcmdlLCB1c3VhbGx5IGVuZGluZyB1cCB3aXRoIGEgZG9jdW1l
bnQgKGlmCiBjb21wbGV0ZWQpIHRoYXQgaXMgdG9vIGJpZyBhbmQgZGlmZmljdWx0IHRvIHJlYWQu
IDwvc3Bhbj48bzpwPjwvbzpwPjwvcD4KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1t
YXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBzdHls
ZT0iZm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7
O2NvbG9yOiMxRjQ5N0QiPiZuYnNwOzwvc3Bhbj48bzpwPjwvbzpwPjwvcD4KPHAgY2xhc3M9Ik1z
b05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9t
LWFsdDphdXRvIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90Oywm
cXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPlByb3ZpZGluZyBzb21lIHNvdXJj
ZSBjb2RlIHRvIHNob3cgdGhlIGludGVybmFsIGltcGxlbWVudGF0aW9uIHdvdWxkIGJlIG11Y2gg
bW9yZSB1c2VmdWwgYXMgYSByZWZlcmVuY2UgaW1wbGVtZW50YXRpb24uCjwvc3Bhbj48bzpwPjwv
bzpwPjwvcD4KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDph
dXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6
JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0Qi
PiZuYnNwOzwvc3Bhbj48bzpwPjwvbzpwPjwvcD4KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9
Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvO3RleHQt
YXV0b3NwYWNlOm5vbmUiPgo8c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZx
dW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPlRoZSA8L3NwYW4+PHNw
YW4gc3R5bGU9ImZvbnQtZmFtaWx5OkNvdXJpZXIiPmRyYWZ0LXNjaG9lbnctbmV0bW9kLXJldmlz
ZWQtZGF0YXN0b3Jlcy0wMAo8L3NwYW4+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O0Nh
bGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj5pcyBvbiB0
aGUgYXJjaGl0ZWN0dXJhbCBmcmFtZXdvcmsgZm9yIGRhdGFzdG9yZXMgYXMgdGhleSBhcmUgdXNl
ZCBieSBuZXR3b3JrIG1hbmFnZW1lbnQgcHJvdG9jb2xzLiBJTUhPLCBob3cgZGF0YSBzdG9yZXMg
YXJlIHVzZWQgYXJlIGludGVybmFsIHRvIHRoZSBlbmQgcG9pbnRzLgo8L3NwYW4+PG86cD48L286
cD48L3A+CjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0
bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OiZx
dW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj4m
bmJzcDs8L3NwYW4+PG86cD48L286cD48L3A+CjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJt
c28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PGEgaHJl
Zj0iaHR0cDovL3d3dy5nb29nbGUuY29tL3VybD9zYT1pJmFtcDtyY3Q9aiZhbXA7cT0mYW1wO2Vz
cmM9cyZhbXA7c291cmNlPWltYWdlcyZhbXA7Y2Q9JmFtcDtjYWQ9cmphJmFtcDt1YWN0PTgmYW1w
O3ZlZD0wYWhVS0V3ajUwS1dhdDRYTkFoVUx4R01LSFJocURQUVFqUndJQncmYW1wO3VybD1odHRw
JTNBJTJGJTJGd3d3LnVyYmFuYmxpc3NtZWRpYS5jb20lMkZlbnRyZXByZW5ldXItcnVsZXMtZG9u
ZS1pcy1iZXR0ZXItdGhhbi1wZXJmZWN0JTJGJmFtcDtwc2lnPUFGUWpDTkdLRWlQQjJpSFNxeUJp
RjU2MDlwZDcySDBMN3cmYW1wO3VzdD0xNDY0ODIyNTAzODY1Nzc3IiB0YXJnZXQ9Il9ibGFuayI+
PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZx
dW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0Q7dGV4dC1kZWNvcmF0aW9u
Om5vbmUiPjxpbWcgYm9yZGVyPSIwIiB3aWR0aD0iNDMwIiBoZWlnaHQ9IjU1OCIgaWQ9Il94MDAw
MF9pMTAyNSIgc3JjPSJjaWQ6aW1hZ2UwMDEuanBnQDAxRDFCQkY5Ljk3QkQ2RTQwIiBhbHQ9Imh0
dHA6Ly93d3cudXJiYW5ibGlzc2xpZmUuY29tL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDEyLzEwL0Rv
bmUtaXMtQmV0dGVyLVRoYW4tUGVyZmVjdC5qcGciPjwvc3Bhbj48L2E+PG86cD48L286cD48L3A+
CjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28t
bWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9u
dC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9y
OiMxRjQ5N0QiPiZuYnNwOzwvc3Bhbj48bzpwPjwvbzpwPjwvcD4KPHAgY2xhc3M9Ik1zb05vcm1h
bCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDph
dXRvIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxp
YnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+TGluZGEgRHVu
YmFyPC9zcGFuPjxvOnA+PC9vOnA+PC9wPgo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNv
LW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPjxzcGFuIHN0
eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1
b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj4mbmJzcDs8L3NwYW4+PG86cD48L286
cD48L3A+CjxkaXYgc3R5bGU9ImJvcmRlcjpub25lO2JvcmRlci10b3A6c29saWQgI0I1QzRERiAx
LjBwdDtwYWRkaW5nOjMuMHB0IDBpbiAwaW4gMGluIj4KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5
bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48
Yj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjEwLjBwdDtmb250LWZhbWlseTomcXVvdDtUYWhvbWEm
cXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90OyI+RnJvbTo8L3NwYW4+PC9iPjxzcGFuIHN0eWxl
PSJmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O1RhaG9tYSZxdW90OywmcXVvdDtz
YW5zLXNlcmlmJnF1b3Q7Ij4gaTJycyBbbWFpbHRvOjxhIGhyZWY9Im1haWx0bzppMnJzLWJvdW5j
ZXNAaWV0Zi5vcmciIHRhcmdldD0iX2JsYW5rIj5pMnJzLWJvdW5jZXNAaWV0Zi5vcmc8L2E+XQo8
Yj5PbiBCZWhhbGYgT2YgPC9iPkFuZHkgQmllcm1hbjxicj4KPGI+U2VudDo8L2I+IFR1ZXNkYXks
IE1heSAzMSwgMjAxNiA0OjA5IFBNPGJyPgo8Yj5Ubzo8L2I+IEplZmZyZXkgSGFhczxicj4KPGI+
Q2M6PC9iPiBCZW5vaXQgQ2xhaXNlOyA8YSBocmVmPSJtYWlsdG86aTJyc0BpZXRmLm9yZyIgdGFy
Z2V0PSJfYmxhbmsiPmkycnNAaWV0Zi5vcmc8L2E+OyBKdWVyZ2VuIFNjaG9lbndhZWxkZXI7IFN1
c2FuIEhhcmVzOyBBbGlhIEF0bGFzPGJyPgo8Yj5TdWJqZWN0OjwvYj4gUmU6IFtpMnJzXSBJMlJT
IEludGVyaW0gTWVldGluZyAtIEp1bmUgMSwgMjAxNiAtIDEwOjAwYW0gLSAxMTowMGFtIC0gVG9w
aWM6IEVwaGVtZXJhbCBTdGF0ZSBSZXF1aXJlbWVudHM8L3NwYW4+PG86cD48L286cD48L3A+Cjwv
ZGl2Pgo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87
bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPiZuYnNwOzxvOnA+PC9vOnA+PC9wPgo8ZGl2Pgo8
cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1h
cmdpbi1ib3R0b20tYWx0OmF1dG8iPkhpLDxvOnA+PC9vOnA+PC9wPgo8ZGl2Pgo8cCBjbGFzcz0i
TXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0
b20tYWx0OmF1dG8iPiZuYnNwOzxvOnA+PC9vOnA+PC9wPgo8L2Rpdj4KPGRpdj4KPHAgY2xhc3M9
Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90
dG9tLWFsdDphdXRvIj5JIGFtIG5vdCBjb252aW5jZWQgdGhlIElFVEYgY2FuIGJlIGZvcmNlZCB0
byBmdW5jdGlvbiBhcyBpZiBpdCB3ZXJlPG86cD48L286cD48L3A+CjwvZGl2Pgo8ZGl2Pgo8cCBj
bGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdp
bi1ib3R0b20tYWx0OmF1dG8iPmEgZGV2LWdyb3VwIGluIHNvbWUgY29ycG9yYXRpb24uJm5ic3A7
IFRoaXMgaXMgYSB2b2x1bnRlZXIgb3JnYW5pemF0aW9uIHNvPG86cD48L286cD48L3A+CjwvZGl2
Pgo8ZGl2Pgo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1
dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPnVzdWFsbHkgc29sdXRpb24gcHJvcG9zYWxz
IGNvbWUgZnJvbSBwZW9wbGUgd2hvIGhhdmUgY3JlYXRlZCBhIHNvbHV0aW9uPG86cD48L286cD48
L3A+CjwvZGl2Pgo8ZGl2Pgo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10
b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPmFuZCB0aGV5IHdhbnQgdGhl
IFdHIHRvIHN0YW5kYXJkaXplIGl0LjxvOnA+PC9vOnA+PC9wPgo8L2Rpdj4KPGRpdj4KPHAgY2xh
c3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4t
Ym90dG9tLWFsdDphdXRvIj4mbmJzcDs8bzpwPjwvbzpwPjwvcD4KPC9kaXY+CjxkaXY+CjxwIGNs
YXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2lu
LWJvdHRvbS1hbHQ6YXV0byI+Jm5ic3A7PG86cD48L286cD48L3A+CjwvZGl2Pgo8ZGl2Pgo8cCBj
bGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdp
bi1ib3R0b20tYWx0OmF1dG8iPkFuZHk8bzpwPjwvbzpwPjwvcD4KPC9kaXY+CjxkaXY+CjxwIGNs
YXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2lu
LWJvdHRvbS1hbHQ6YXV0byI+Jm5ic3A7PG86cD48L286cD48L3A+CjwvZGl2Pgo8ZGl2Pgo8ZGl2
Pgo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNv
LW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPiZuYnNwOzxvOnA+PC9vOnA+PC9wPgo8ZGl2Pgo8cCBj
bGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdp
bi1ib3R0b20tYWx0OmF1dG8iPk9uIFR1ZSwgTWF5IDMxLCAyMDE2IGF0IDEyOjUxIFBNLCBKZWZm
cmV5IEhhYXMgJmx0OzxhIGhyZWY9Im1haWx0bzpqaGFhc0BwZnJjLm9yZyIgdGFyZ2V0PSJfYmxh
bmsiPmpoYWFzQHBmcmMub3JnPC9hPiZndDsgd3JvdGU6PG86cD48L286cD48L3A+CjxwIGNsYXNz
PSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJv
dHRvbS1hbHQ6YXV0byI+QW5keSw8YnI+Cjxicj4KT24gVHVlLCBNYXkgMzEsIDIwMTYgYXQgMTE6
NDE6NTlBTSAtMDcwMCwgQW5keSBCaWVybWFuIHdyb3RlOjxicj4KJmd0OyBBdCBzb21lIHBvaW50
IHRoZSBXRyBuZWVkcyB0byBhZ3JlZSBvbiBub3JtYXRpdmUgdGV4dCBpbnN0ZWFkIG9mIGl0ZXJh
dGluZzxicj4KJmd0OyBvbiByZXF1aXJlbWVudHMgZm9yZXZlci48YnI+Cjxicj4KSU1PLCBpdCB3
b3VsZCBiZSBpbiBJMlJTJ3MgYmVzdCBpbnRlcmVzdHMgaWYgbmV0Y29uZi9uZXRtb2QgcHJvdmlk
ZWQgZHJhZnRzPGJyPgppbiBhcHByb3ByaWF0ZWx5IG5vcm1hdGl2ZSBsYW5ndWFnZSBjb3Zlcmlu
ZyBJMlJTIHJlcXVpcmVtZW50cy4mbmJzcDsgSG93ZXZlciw8YnI+CndlJ3ZlIGJlZW4gaW4gYSBw
YXRob2xvZ2ljYWwgY3ljbGUgb2Y6PGJyPgoiV2UgZG9uJ3QgdW5kZXJzdGFuZCwgcGxlYXNlIGdp
dmUgdXMgcmVxdWlyZW1lbnRzIjxicj4KIldlIGRvbid0IHVuZGVyc3RhbmQgeW91ciByZXF1aXJl
bWVudHMiPGJyPgoiWW91IHByb3ZpZGVkIGV4YW1wbGVzIHdpdGggeW91ciByZXF1aXJlbWVudHMg
dGhhdCBhcHBlYXIgdG8gYmUgYXR0ZW1wdHMgdG88YnI+CmNoYW5nZSBvdXIgcHJvdG9jb2wgLSBk
b24ndCBkbyB0aGF0LiI8YnI+Cjxicj4KVGhlIG1vc3QgcmVjZW50IHJldmlzZWQtZGF0YXN0b3Jl
IGRyYWZ0IHdvdWxkIGJlIGEgZ29vZCBwbGFjZSB0byBkb2N1bWVudDxicj4Kd2hlcmUgbmV0bW9k
KC9uZXRjb25mKSBiZWxpZXZlcyBlcGhlbWVyYWwgZGF0YXN0b3JlcyAoaWYgdGhhdCdzIHRoZTxi
cj4KaW5zdGFudGlhdGlvbikgY291bGQgbGl2ZSwgYW5kIGFsc28gaG93IGVwaGVtZXJhbCBjb25m
aWd1cmF0aW9uIHN0YXRlIGNvdWxkPGJyPgppbnRlcmFjdCB3aXRoIGNhbmRpZGF0ZSwgc3RhcnR1
cCBhbmQgcnVubmluZyBjb25maWd1cmF0aW9uLjxicj4KPGJyPgp5YW5nLXB1c2ggY292ZXJzIG11
Y2ggb2Ygb3VyIGRlc2lyZWQgcHViLXN1YiBiZWhhdmlvci4gKFlheSEpPGJyPgo8YnI+CkRpc2N1
c3Npb24gaXMgcmVxdWlyZWQgZm9yIGhvdyB0byB0YWcgc2VjdXJpdHkgY29uc2lkZXJhdGlvbnMg
aW1wYWN0aW5nPGJyPgp0cmFuc3BvcnQgaW50byB0aGUgeWFuZyBtb2RlbCwgaW4gcGFydGljdWxh
ciBmb3Igbm90aWZpY2F0aW9uLjxicj4KPGJyPgpQcm9wb3NhbHMgZm9yIHNlY29uZGFyeSBpZGVu
dGl0eSBhbmQgcHJpb3JpdHkgYXJlIGFsc28gbmVlZGVkLjxicj4KPGJyPgotLSBKZWZmPG86cD48
L286cD48L3A+CjwvZGl2Pgo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10
b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPiZuYnNwOzxvOnA+PC9vOnA+
PC9wPgo8L2Rpdj4KPC9kaXY+CjwvZGl2Pgo8L2Rpdj4KPC9kaXY+CjwvZGl2Pgo8cCBjbGFzcz0i
TXNvTm9ybWFsIj48bzpwPiZuYnNwOzwvbzpwPjwvcD4KPC9kaXY+CjwvZGl2Pgo8L2Rpdj4KPC9k
aXY+CjwvYm9keT48L2h0bWw+

----_com.samsung.android.email_5639049439560650--


From nobody Wed Jun  1 12:11:48 2016
Return-Path: <andy@yumaworks.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 A930412D0D1 for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 12:11:46 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.59
X-Spam-Level: 
X-Spam-Status: No, score=-2.59 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001, T_REMOTE_IMAGE=0.01] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=yumaworks-com.20150623.gappssmtp.com
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 wvmJr-Rtjxk1 for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 12:11:43 -0700 (PDT)
Received: from mail-yw0-x235.google.com (mail-yw0-x235.google.com [IPv6:2607:f8b0:4002:c05::235]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 996AB12B011 for <i2rs@ietf.org>; Wed,  1 Jun 2016 12:11:43 -0700 (PDT)
Received: by mail-yw0-x235.google.com with SMTP id h19so28171247ywc.0 for <i2rs@ietf.org>; Wed, 01 Jun 2016 12:11:43 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yumaworks-com.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc; bh=M5LavC6EQEoHJX5UBbrrQbzdG1R8E5K42/IyOShthSg=; b=aYWagIm/1VmuSZd0LvFitI6YwIvhgMHZB23cGPIfHxZDGQjizxP8Pxin4s59Z1z1fU YZJ4TJSS53siMiSoAIRa6L9b5xzBBvszZvtt9ocjTKq0u7PUqZEeVlSsY2stSj0pDOnw K4tsI4w7OQ6FRYWPUDjbpdJwt1vqSNQi0AFwb16VnO9XnqanudpJuJS8OGTt7wqVe3Ll qQR74+CzhThvZR+Bm8SwcB3H+Cjdl7tWGEKLp+xoii2sC+mAPiTqNQAZmFb3/Y0BMOaP DmS2o8BlfBWVSzYw73yeh9iWujgCptgkCui7fvG7Yt/kGUcthqYFKySy1fZFXfcdZu+R VP6A==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc; bh=M5LavC6EQEoHJX5UBbrrQbzdG1R8E5K42/IyOShthSg=; b=bGk57JQDGLjmhzF1K8uahyhUYEP2YcX4Q7ItobtIUjev+ZAeWoD3KfMouh8Z7zwh9H GYWliURNhO0lT/Z9ME6+He9PNJSJzNK7+2EC+1n0grjL16oDog9AnqQrCLN7weOCepIz o+4RPplDaxr/FhU7PyuwXHrWgXsyOsfSIq/S582taioY/ZKrUS7vAiUuQQTuTFVFRRrv 8aV5GytpA4rbqmVOwnRStXqZZ8tliD5wmKerD0Ys/iXqlT8NcpkHxN8sQDRerrZyNxrr UjiI73Hs6vnQficQz8ls1nxOTyJljIEee7t4WY5HPjstlLHXFwU3R6ns9H7G8hmVwkya Z3pQ==
X-Gm-Message-State: ALyK8tISo/cpPLf9G/ZctSDDeABcMYupdvwAmT5cRqRr9xzNULOKIIIaNgReqsvihOfkXDedxsU/679j6vi/Gw==
MIME-Version: 1.0
X-Received: by 10.37.37.138 with SMTP id l132mr3427185ybl.170.1464808302770; Wed, 01 Jun 2016 12:11:42 -0700 (PDT)
Received: by 10.37.115.208 with HTTP; Wed, 1 Jun 2016 12:11:42 -0700 (PDT)
In-Reply-To: <m6rxediwalf1cuma8a6mvj3b.1464807897082@email.android.com>
References: <m6rxediwalf1cuma8a6mvj3b.1464807897082@email.android.com>
Date: Wed, 1 Jun 2016 12:11:42 -0700
Message-ID: <CABCOCHSGyPY1BC0rXn7qJ4sTRTZ_yKbPv1UUA8iK4jZMaVZ99Q@mail.gmail.com>
From: Andy Bierman <andy@yumaworks.com>
To: Susan Hares <shares@ndzh.com>
Content-Type: multipart/alternative; boundary=001a113d456a8d338005343c42d7
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/Mjstn_CUnWRiCqicLp5nSKrjRRE>
Cc: "i2rs@ietf.org" <i2rs@ietf.org>, Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>, Alia Atlas <akatlas@gmail.com>, Jeffrey Haas <jhaas@pfrc.org>, Benoit Claise <bclaise@cisco.com>, Linda Dunbar <linda.dunbar@huawei.com>
Subject: Re: [i2rs] Can I2RS focus on the "Over the Wire" data structure , not on how end point handle the "DataStore"?
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 01 Jun 2016 19:11:47 -0000

--001a113d456a8d338005343c42d7
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

On Wed, Jun 1, 2016 at 12:04 PM, Susan Hares <shares@ndzh.com> wrote:

> Andy
>
> We currently are specifying i2rs rib model which can overwrite the local
> config.    Implementations experience will provide us with input on the
> protocols.
>
>
I don't view it that way.
The local config remains untouched throughout.
The higher priority ephemeral config value is used instead of the local
config value.
The operational state should reflect that ephemeral config is overriding
the local config.
The data model for the I2RS version does not have to be the local config
model.



> Sue
>
>
>
Andy


>
> Sent via the Samsung Galaxy Note5, an AT&T 4G LTE smartphone
> -------- Original message --------
> From: Linda Dunbar <linda.dunbar@huawei.com>
> Date: 6/1/2016 12:34 PM (GMT-05:00)
> To: Andy Bierman <andy@yumaworks.com>
> Cc: i2rs@ietf.org, Juergen Schoenwaelder <
> j.schoenwaelder@jacobs-university.de>, Alia Atlas <akatlas@gmail.com>,
> Benoit Claise <bclaise@cisco.com>, Jeffrey Haas <jhaas@pfrc.org>, Susan
> Hares <shares@ndzh.com>
> Subject: Re: [i2rs] Can I2RS focus on the "Over the Wire" data structure =
,
> not on how end point handle the "DataStore"?
>
> Andy,
>
>
>
> Agree with your suggested approach.
>
>
>
> Linda
>
>
>
> *From:* Andy Bierman [mailto:andy@yumaworks.com]
> *Sent:* Tuesday, May 31, 2016 9:05 PM
> *To:* Linda Dunbar
> *Cc:* Jeffrey Haas; Benoit Claise; i2rs@ietf.org; Juergen Schoenwaelder;
> Susan Hares; Alia Atlas
> *Subject:* Re: Can I2RS focus on the "Over the Wire" data structure , not
> on how end point handle the "DataStore"?
>
>
>
> Hi,
>
>
>
> If your graphic advice means "the requirements are good enough, move on"
>
> then I agree.
>
>
>
> The datastore framework would be nice to have, but it is very close
>
> to the implementation details.  It is also attempting to be a superset of
> all
>
> "accepted" implementation choices.
>
>
>
> By "on the wire" we usually mean a protocol specification.
>
> IMO, all that is needed (for editing) is a set of RESTCONF extensions.
>
> Some people want to describe the I2RS desired behavior wrt/ how it
>
> interacts with the local config. (and many more features...)
>
>
>
> Perhaps a good first step would be ephemeral data models that do not
>
> interact with the local config at all.  I2RS is the only protocol of
> concern and the
>
> highest priority client.  I2RS just needs to support read/write/notify of
> ephemeral data.
>
> If this is not acceptable then be prepared to wait until all the framewor=
k
> stuff is settled
>
> and standardized.
>
>
>
>
>
> Andy
>
>
>
>
>
>
>
>
>
> On Tue, May 31, 2016 at 4:09 PM, Linda Dunbar <linda.dunbar@huawei.com>
> wrote:
>
> IETF has been successful for past 20 years  in focusing on =E2=80=9COver =
the Wire=E2=80=9D
> data structure.  It would be so much cleaner and straight forward if the
> YANG modules developed by I2RS  focusing on the =E2=80=9COver the Wire=E2=
=80=9D data
> structure (and with NETMOD to focus on other aspects).
>
> The =E2=80=9CI2RS ephemeral State=E2=80=9D has the needed description for=
 the desired
> behavior  of the data received over I2RS interface. If we follow the IETF
> practice,  it is good enough.
>
> Internal implementation framework is always controversial, hard to
> converge, usually ending up with a document (if completed) that is too bi=
g
> and difficult to read.
>
>
>
> Providing some source code to show the internal implementation would be
> much more useful as a reference implementation.
>
>
>
> The draft-schoenw-netmod-revised-datastores-00 is on the architectural
> framework for datastores as they are used by network management protocols=
.
> IMHO, how data stores are used are internal to the end points.
>
>
>
> [image:
> http://www.urbanblisslife.com/wp-content/uploads/2012/10/Done-is-Better-T=
han-Perfect.jpg]
> <http://www.google.com/url?sa=3Di&rct=3Dj&q=3D&esrc=3Ds&source=3Dimages&c=
d=3D&cad=3Drja&uact=3D8&ved=3D0ahUKEwj50KWat4XNAhULxGMKHRhqDPQQjRwIBw&url=
=3Dhttp%3A%2F%2Fwww.urbanblissmedia.com%2Fentrepreneur-rules-done-is-better=
-than-perfect%2F&psig=3DAFQjCNGKEiPB2iHSqyBiF5609pd72H0L7w&ust=3D1464822503=
865777>
>
>
>
> Linda Dunbar
>
>
>
> *From:* i2rs [mailto:i2rs-bounces@ietf.org] *On Behalf Of *Andy Bierman
> *Sent:* Tuesday, May 31, 2016 4:09 PM
> *To:* Jeffrey Haas
> *Cc:* Benoit Claise; i2rs@ietf.org; Juergen Schoenwaelder; Susan Hares;
> Alia Atlas
> *Subject:* Re: [i2rs] I2RS Interim Meeting - June 1, 2016 - 10:00am -
> 11:00am - Topic: Ephemeral State Requirements
>
>
>
> Hi,
>
>
>
> I am not convinced the IETF can be forced to function as if it were
>
> a dev-group in some corporation.  This is a volunteer organization so
>
> usually solution proposals come from people who have created a solution
>
> and they want the WG to standardize it.
>
>
>
>
>
> Andy
>
>
>
>
>
> On Tue, May 31, 2016 at 12:51 PM, Jeffrey Haas <jhaas@pfrc.org> wrote:
>
> Andy,
>
> On Tue, May 31, 2016 at 11:41:59AM -0700, Andy Bierman wrote:
> > At some point the WG needs to agree on normative text instead of
> iterating
> > on requirements forever.
>
> IMO, it would be in I2RS's best interests if netconf/netmod provided draf=
ts
> in appropriately normative language covering I2RS requirements.  However,
> we've been in a pathological cycle of:
> "We don't understand, please give us requirements"
> "We don't understand your requirements"
> "You provided examples with your requirements that appear to be attempts =
to
> change our protocol - don't do that."
>
> The most recent revised-datastore draft would be a good place to document
> where netmod(/netconf) believes ephemeral datastores (if that's the
> instantiation) could live, and also how ephemeral configuration state cou=
ld
> interact with candidate, startup and running configuration.
>
> yang-push covers much of our desired pub-sub behavior. (Yay!)
>
> Discussion is required for how to tag security considerations impacting
> transport into the yang model, in particular for notification.
>
> Proposals for secondary identity and priority are also needed.
>
> -- Jeff
>
>
>
>
>

--001a113d456a8d338005343c42d7
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><br><div class=3D"gmail_extra"><br><div class=3D"gmail_quo=
te">On Wed, Jun 1, 2016 at 12:04 PM, Susan Hares <span dir=3D"ltr">&lt;<a h=
ref=3D"mailto:shares@ndzh.com" target=3D"_blank">shares@ndzh.com</a>&gt;</s=
pan> wrote:<br><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex=
;border-left:1px #ccc solid;padding-left:1ex"><div><div>Andy</div><div><br>=
</div><div>We currently are specifying i2rs rib model which can overwrite t=
he local config. =C2=A0 =C2=A0Implementations experience will provide us wi=
th input on the protocols.=C2=A0</div><div><br></div></div></blockquote><di=
v><br></div><div>I don&#39;t view it that way.</div><div>The local config r=
emains untouched throughout.</div><div>The higher priority ephemeral config=
 value is used instead of the local config value.</div><div>The operational=
 state should reflect that ephemeral config is overriding the local config.=
</div><div>The data model for the I2RS version does not have to be the loca=
l config model.</div><div><br></div><div>=C2=A0</div><blockquote class=3D"g=
mail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-l=
eft:1ex"><div><div></div><div>Sue</div><div><br></div><div><br></div></div>=
</blockquote><div><br></div><div>Andy</div><div>=C2=A0</div><blockquote cla=
ss=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;pa=
dding-left:1ex"><div><div></div><div><br></div><div><div style=3D"font-size=
:85%;color:#575757">Sent via the Samsung Galaxy Note5, an AT&amp;T 4G LTE s=
martphone</div></div><div style=3D"font-size:100%;color:#000000"><div>-----=
--- Original message --------</div><div>From: Linda Dunbar &lt;<a href=3D"m=
ailto:linda.dunbar@huawei.com" target=3D"_blank">linda.dunbar@huawei.com</a=
>&gt; </div><div>Date: 6/1/2016  12:34 PM  (GMT-05:00) </div><div>To: Andy =
Bierman &lt;<a href=3D"mailto:andy@yumaworks.com" target=3D"_blank">andy@yu=
maworks.com</a>&gt; </div><div>Cc: <a href=3D"mailto:i2rs@ietf.org" target=
=3D"_blank">i2rs@ietf.org</a>, Juergen Schoenwaelder &lt;<a href=3D"mailto:=
j.schoenwaelder@jacobs-university.de" target=3D"_blank">j.schoenwaelder@jac=
obs-university.de</a>&gt;, Alia Atlas &lt;<a href=3D"mailto:akatlas@gmail.c=
om" target=3D"_blank">akatlas@gmail.com</a>&gt;, Benoit Claise &lt;<a href=
=3D"mailto:bclaise@cisco.com" target=3D"_blank">bclaise@cisco.com</a>&gt;, =
Jeffrey Haas &lt;<a href=3D"mailto:jhaas@pfrc.org" target=3D"_blank">jhaas@=
pfrc.org</a>&gt;, Susan Hares &lt;<a href=3D"mailto:shares@ndzh.com" target=
=3D"_blank">shares@ndzh.com</a>&gt; </div><div>Subject: Re: [i2rs] Can I2RS=
 focus on the &quot;Over the Wire&quot; data structure , not on how end poi=
nt handle the &quot;DataStore&quot;? </div><div><br></div></div>
<div>
<p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:&quot;Ca=
libri&quot;,&quot;sans-serif&quot;;color:#1f497d">Andy,
<u></u><u></u></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:&quot;Ca=
libri&quot;,&quot;sans-serif&quot;;color:#1f497d"><u></u>=C2=A0<u></u></spa=
n></p>
<p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:&quot;Ca=
libri&quot;,&quot;sans-serif&quot;;color:#1f497d">Agree with your suggested=
 approach.
<u></u><u></u></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:&quot;Ca=
libri&quot;,&quot;sans-serif&quot;;color:#1f497d"><u></u>=C2=A0<u></u></spa=
n></p>
<p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:&quot;Ca=
libri&quot;,&quot;sans-serif&quot;;color:#1f497d">Linda
<u></u><u></u></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:&quot;Ca=
libri&quot;,&quot;sans-serif&quot;;color:#1f497d"><u></u>=C2=A0<u></u></spa=
n></p>
<div style=3D"border:none;border-top:solid #b5c4df 1.0pt;padding:3.0pt 0in =
0in 0in">
<p class=3D"MsoNormal"><b><span style=3D"font-size:10.0pt;font-family:&quot=
;Tahoma&quot;,&quot;sans-serif&quot;">From:</span></b><span style=3D"font-s=
ize:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;"> Andy Bie=
rman [mailto:<a href=3D"mailto:andy@yumaworks.com" target=3D"_blank">andy@y=
umaworks.com</a>]
<br>
<b>Sent:</b> Tuesday, May 31, 2016 9:05 PM<br>
<b>To:</b> Linda Dunbar<br>
<b>Cc:</b> Jeffrey Haas; Benoit Claise; <a href=3D"mailto:i2rs@ietf.org" ta=
rget=3D"_blank">i2rs@ietf.org</a>; Juergen Schoenwaelder; Susan Hares; Alia=
 Atlas<br>
<b>Subject:</b> Re: Can I2RS focus on the &quot;Over the Wire&quot; data st=
ructure , not on how end point handle the &quot;DataStore&quot;?<u></u><u><=
/u></span></p>
</div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
<div>
<p class=3D"MsoNormal">Hi,<u></u><u></u></p>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
<div>
<p class=3D"MsoNormal">If your graphic advice means &quot;the requirements =
are good enough, move on&quot;<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">then I agree.<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
<div>
<p class=3D"MsoNormal">The datastore framework would be nice to have, but i=
t is very close<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">to the implementation details.=C2=A0 It is also atte=
mpting to be a superset of all<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">&quot;accepted&quot; implementation choices.<u></u><=
u></u></p>
</div>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
<div>
<p class=3D"MsoNormal">By &quot;on the wire&quot; we usually mean a protoco=
l specification.<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">IMO, all that is needed (for editing) is a set of RE=
STCONF extensions.<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">Some people want to describe the I2RS desired behavi=
or wrt/ how it<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">interacts with the local config. (and many more feat=
ures...)<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
<div>
<p class=3D"MsoNormal">Perhaps a good first step would be ephemeral data mo=
dels that do not<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">interact with the local config at all.=C2=A0 I2RS is=
 the only protocol of concern and the<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">highest priority client.=C2=A0 I2RS just needs to su=
pport read/write/notify of ephemeral data.<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">If this is not acceptable then be prepared to wait u=
ntil all the framework stuff is settled<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">and standardized.<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
<div>
<p class=3D"MsoNormal">Andy<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
<div>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
<div>
<p class=3D"MsoNormal">On Tue, May 31, 2016 at 4:09 PM, Linda Dunbar &lt;<a=
 href=3D"mailto:linda.dunbar@huawei.com" target=3D"_blank">linda.dunbar@hua=
wei.com</a>&gt; wrote:<u></u><u></u></p>
<div>
<div>
<p class=3D"MsoNormal"><span style=3D"font-family:&quot;Calibri&quot;,&quot=
;sans-serif&quot;;color:#1f497d">IETF has been successful for past 20 years=
 =C2=A0in focusing on =E2=80=9COver the Wire=E2=80=9D data structure.=C2=A0=
 It would be so much cleaner
 and straight forward if the YANG modules developed by I2RS =C2=A0focusing =
on the =E2=80=9COver the Wire=E2=80=9D data structure (and with NETMOD to f=
ocus on other aspects).</span><u></u><u></u></p>
<p class=3D"MsoNormal"><span style=3D"font-family:&quot;Calibri&quot;,&quot=
;sans-serif&quot;;color:#1f497d">The =E2=80=9CI2RS ephemeral State=E2=80=9D=
 has the needed description for the desired behavior =C2=A0of the data rece=
ived over I2RS interface.
 If we follow the IETF practice, =C2=A0it is good enough. </span><u></u><u>=
</u></p>
<p class=3D"MsoNormal"><span style=3D"font-family:&quot;Calibri&quot;,&quot=
;sans-serif&quot;;color:#1f497d">Internal implementation framework is alway=
s controversial, hard to converge, usually ending up with a document (if
 completed) that is too big and difficult to read. </span><u></u><u></u></p=
>
<p class=3D"MsoNormal"><span style=3D"font-family:&quot;Calibri&quot;,&quot=
;sans-serif&quot;;color:#1f497d">=C2=A0</span><u></u><u></u></p>
<p class=3D"MsoNormal"><span style=3D"font-family:&quot;Calibri&quot;,&quot=
;sans-serif&quot;;color:#1f497d">Providing some source code to show the int=
ernal implementation would be much more useful as a reference implementatio=
n.
</span><u></u><u></u></p>
<p class=3D"MsoNormal"><span style=3D"font-family:&quot;Calibri&quot;,&quot=
;sans-serif&quot;;color:#1f497d">=C2=A0</span><u></u><u></u></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none">
<span style=3D"font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color=
:#1f497d">The </span><span style=3D"font-family:Courier">draft-schoenw-netm=
od-revised-datastores-00
</span><span style=3D"font-family:&quot;Calibri&quot;,&quot;sans-serif&quot=
;;color:#1f497d">is on the architectural framework for datastores as they a=
re used by network management protocols. IMHO, how data stores are used are=
 internal to the end points.
</span><u></u><u></u></p>
<p class=3D"MsoNormal"><span style=3D"font-family:&quot;Calibri&quot;,&quot=
;sans-serif&quot;;color:#1f497d">=C2=A0</span><u></u><u></u></p>
<p class=3D"MsoNormal"><a href=3D"http://www.google.com/url?sa=3Di&amp;rct=
=3Dj&amp;q=3D&amp;esrc=3Ds&amp;source=3Dimages&amp;cd=3D&amp;cad=3Drja&amp;=
uact=3D8&amp;ved=3D0ahUKEwj50KWat4XNAhULxGMKHRhqDPQQjRwIBw&amp;url=3Dhttp%3=
A%2F%2Fwww.urbanblissmedia.com%2Fentrepreneur-rules-done-is-better-than-per=
fect%2F&amp;psig=3DAFQjCNGKEiPB2iHSqyBiF5609pd72H0L7w&amp;ust=3D14648225038=
65777" target=3D"_blank"><span style=3D"font-size:11.0pt;font-family:&quot;=
Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d;text-decoration:none"><i=
mg border=3D"0" width=3D"430" height=3D"558" alt=3D"http://www.urbanblissli=
fe.com/wp-content/uploads/2012/10/Done-is-Better-Than-Perfect.jpg"></span><=
/a><u></u><u></u></p>
<p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:&quot;Ca=
libri&quot;,&quot;sans-serif&quot;;color:#1f497d">=C2=A0</span><u></u><u></=
u></p>
<p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:&quot;Ca=
libri&quot;,&quot;sans-serif&quot;;color:#1f497d">Linda Dunbar</span><u></u=
><u></u></p>
<p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:&quot;Ca=
libri&quot;,&quot;sans-serif&quot;;color:#1f497d">=C2=A0</span><u></u><u></=
u></p>
<div style=3D"border:none;border-top:solid #b5c4df 1.0pt;padding:3.0pt 0in =
0in 0in">
<p class=3D"MsoNormal"><b><span style=3D"font-size:10.0pt;font-family:&quot=
;Tahoma&quot;,&quot;sans-serif&quot;">From:</span></b><span style=3D"font-s=
ize:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;"> i2rs [ma=
ilto:<a href=3D"mailto:i2rs-bounces@ietf.org" target=3D"_blank">i2rs-bounce=
s@ietf.org</a>]
<b>On Behalf Of </b>Andy Bierman<br>
<b>Sent:</b> Tuesday, May 31, 2016 4:09 PM<br>
<b>To:</b> Jeffrey Haas<br>
<b>Cc:</b> Benoit Claise; <a href=3D"mailto:i2rs@ietf.org" target=3D"_blank=
">i2rs@ietf.org</a>; Juergen Schoenwaelder; Susan Hares; Alia Atlas<br>
<b>Subject:</b> Re: [i2rs] I2RS Interim Meeting - June 1, 2016 - 10:00am - =
11:00am - Topic: Ephemeral State Requirements</span><u></u><u></u></p>
</div>
<p class=3D"MsoNormal">=C2=A0<u></u><u></u></p>
<div>
<p class=3D"MsoNormal">Hi,<u></u><u></u></p>
<div>
<p class=3D"MsoNormal">=C2=A0<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">I am not convinced the IETF can be forced to functio=
n as if it were<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">a dev-group in some corporation.=C2=A0 This is a vol=
unteer organization so<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">usually solution proposals come from people who have=
 created a solution<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">and they want the WG to standardize it.<u></u><u></u=
></p>
</div>
<div>
<p class=3D"MsoNormal">=C2=A0<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">=C2=A0<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">Andy<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">=C2=A0<u></u><u></u></p>
</div>
<div>
<div>
<p class=3D"MsoNormal">=C2=A0<u></u><u></u></p>
<div>
<p class=3D"MsoNormal">On Tue, May 31, 2016 at 12:51 PM, Jeffrey Haas &lt;<=
a href=3D"mailto:jhaas@pfrc.org" target=3D"_blank">jhaas@pfrc.org</a>&gt; w=
rote:<u></u><u></u></p>
<p class=3D"MsoNormal">Andy,<br>
<br>
On Tue, May 31, 2016 at 11:41:59AM -0700, Andy Bierman wrote:<br>
&gt; At some point the WG needs to agree on normative text instead of itera=
ting<br>
&gt; on requirements forever.<br>
<br>
IMO, it would be in I2RS&#39;s best interests if netconf/netmod provided dr=
afts<br>
in appropriately normative language covering I2RS requirements.=C2=A0 Howev=
er,<br>
we&#39;ve been in a pathological cycle of:<br>
&quot;We don&#39;t understand, please give us requirements&quot;<br>
&quot;We don&#39;t understand your requirements&quot;<br>
&quot;You provided examples with your requirements that appear to be attemp=
ts to<br>
change our protocol - don&#39;t do that.&quot;<br>
<br>
The most recent revised-datastore draft would be a good place to document<b=
r>
where netmod(/netconf) believes ephemeral datastores (if that&#39;s the<br>
instantiation) could live, and also how ephemeral configuration state could=
<br>
interact with candidate, startup and running configuration.<br>
<br>
yang-push covers much of our desired pub-sub behavior. (Yay!)<br>
<br>
Discussion is required for how to tag security considerations impacting<br>
transport into the yang model, in particular for notification.<br>
<br>
Proposals for secondary identity and priority are also needed.<br>
<br>
-- Jeff<u></u><u></u></p>
</div>
<p class=3D"MsoNormal">=C2=A0<u></u><u></u></p>
</div>
</div>
</div>
</div>
</div>
</div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
</div>
</div>
</div>
</div></blockquote></div><br></div></div>

--001a113d456a8d338005343c42d7--


From nobody Wed Jun  1 13:32:53 2016
Return-Path: <shares@ndzh.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 002F512D604 for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 13:32:50 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.096
X-Spam-Level: 
X-Spam-Status: No, score=-1.096 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RDNS_NONE=0.793, T_REMOTE_IMAGE=0.01] autolearn=no autolearn_force=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 kjEol-HjCwbh for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 13:32:48 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 2345D12D0E9 for <i2rs@ietf.org>; Wed,  1 Jun 2016 13:32:48 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=107.92.120.142; 
Date: Wed, 01 Jun 2016 16:32:25 -0400
Message-ID: <xsbys52cmpraxwbpij02xg0x.1464813145704@email.android.com>
Importance: normal
From: Susan Hares <shares@ndzh.com>
To: Andy Bierman <andy@yumaworks.com>
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="--_com.samsung.android.email_5673070165926870"
X-Authenticated-User: skh@ndzh.com 
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/QsDDr0LvxKYW2R5EdnZcfc-9Vks>
Cc: "i2rs@ietf.org" <i2rs@ietf.org>, Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>, Alia Atlas <akatlas@gmail.com>, Jeffrey Haas <jhaas@pfrc.org>, Benoit Claise <bclaise@cisco.com>, Linda Dunbar <linda.dunbar@huawei.com>
Subject: Re: [i2rs] Can I2RS focus on the "Over the Wire" data structure , not on how end point handle the "DataStore"?
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 01 Jun 2016 20:32:51 -0000

----_com.samsung.android.email_5673070165926870
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: base64

CkFoLi4gSW50ZXJlc3RpbmcgwqB2aWV3cG9pbnQgb24gdGhlIHdvcmQgIm92ZXJ3cml0ZSIuIEFu
ZCBJIGZpbmQgbm90aGluZyB3cm9uZyB3aXRoIHlvdXIgdmlld3BvaW50LgpJZiBpMnJzIG9ubHkg
Y29uZmlnIGRvZXMgbm90IHJlc29sdmUgdG8gaW5zdGFsbGFibGUgc3RhdGUsIGhvdyB3b3VsZCB5
b3UgaGFuZGxlIGl0LiDCoElzIHRoaXMgYSBjYXNlIHdoZXJlIGkycnMgY29uZmlnIHZhbHVlIGRv
ZXMgbm90IGV4aXN0IHNvIGxvY2FsIGNvbmZpZyBpcyB1c2VkPyDCoEkgYW0gc2hvd2luZyBwYXJ0
aWFsIGluc3RhbGxhdGlvbiBvZiBpMnJzIHJpYiBtb2RlbC7CoApJZiBJIGNhbiBzZWUgaG93IHRo
aXMgd29ya3MsIG1heWJlIEkgY2FuIGZpbmQgYSB3YXkgdG8gdW5kZXJzdGFuZCBqdWVyZ2VuJ3Mg
bW9kZWwuIMKgClN1ZcKgClNlbnQgdmlhIHRoZSBTYW1zdW5nIEdhbGF4eSBOb3RlNSwgYW4gQVQm
VCA0RyBMVEUgc21hcnRwaG9uZS0tLS0tLS0tIE9yaWdpbmFsIG1lc3NhZ2UgLS0tLS0tLS1Gcm9t
OiBBbmR5IEJpZXJtYW4gPGFuZHlAeXVtYXdvcmtzLmNvbT4gRGF0ZTogNi8xLzIwMTYgIDM6MTEg
UE0gIChHTVQtMDU6MDApIFRvOiBTdXNhbiBIYXJlcyA8c2hhcmVzQG5kemguY29tPiBDYzogTGlu
ZGEgRHVuYmFyIDxsaW5kYS5kdW5iYXJAaHVhd2VpLmNvbT4sIGkycnNAaWV0Zi5vcmcsIEp1ZXJn
ZW4gU2Nob2Vud2FlbGRlciA8ai5zY2hvZW53YWVsZGVyQGphY29icy11bml2ZXJzaXR5LmRlPiwg
QWxpYSBBdGxhcyA8YWthdGxhc0BnbWFpbC5jb20+LCBCZW5vaXQgQ2xhaXNlIDxiY2xhaXNlQGNp
c2NvLmNvbT4sIEplZmZyZXkgSGFhcyA8amhhYXNAcGZyYy5vcmc+IFN1YmplY3Q6IFJlOiBbaTJy
c10gQ2FuIEkyUlMgZm9jdXMgb24gdGhlICJPdmVyIHRoZSBXaXJlIiBkYXRhIHN0cnVjdHVyZSAs
IG5vdCBvbiBob3cgZW5kIHBvaW50IGhhbmRsZSB0aGUgIkRhdGFTdG9yZSI/IAoKCk9uIFdlZCwg
SnVuIDEsIDIwMTYgYXQgMTI6MDQgUE0sIFN1c2FuIEhhcmVzIDxzaGFyZXNAbmR6aC5jb20+IHdy
b3RlOgpBbmR5CldlIGN1cnJlbnRseSBhcmUgc3BlY2lmeWluZyBpMnJzIHJpYiBtb2RlbCB3aGlj
aCBjYW4gb3ZlcndyaXRlIHRoZSBsb2NhbCBjb25maWcuIMKgIMKgSW1wbGVtZW50YXRpb25zIGV4
cGVyaWVuY2Ugd2lsbCBwcm92aWRlIHVzIHdpdGggaW5wdXQgb24gdGhlIHByb3RvY29scy7CoAoK
SSBkb24ndCB2aWV3IGl0IHRoYXQgd2F5LlRoZSBsb2NhbCBjb25maWcgcmVtYWlucyB1bnRvdWNo
ZWQgdGhyb3VnaG91dC5UaGUgaGlnaGVyIHByaW9yaXR5IGVwaGVtZXJhbCBjb25maWcgdmFsdWUg
aXMgdXNlZCBpbnN0ZWFkIG9mIHRoZSBsb2NhbCBjb25maWcgdmFsdWUuVGhlIG9wZXJhdGlvbmFs
IHN0YXRlIHNob3VsZCByZWZsZWN0IHRoYXQgZXBoZW1lcmFsIGNvbmZpZyBpcyBvdmVycmlkaW5n
IHRoZSBsb2NhbCBjb25maWcuVGhlIGRhdGEgbW9kZWwgZm9yIHRoZSBJMlJTIHZlcnNpb24gZG9l
cyBub3QgaGF2ZSB0byBiZSB0aGUgbG9jYWwgY29uZmlnIG1vZGVsLgrCoFN1ZQoKCkFuZHnCoApT
ZW50IHZpYSB0aGUgU2Ftc3VuZyBHYWxheHkgTm90ZTUsIGFuIEFUJlQgNEcgTFRFIHNtYXJ0cGhv
bmUtLS0tLS0tLSBPcmlnaW5hbCBtZXNzYWdlIC0tLS0tLS0tRnJvbTogTGluZGEgRHVuYmFyIDxs
aW5kYS5kdW5iYXJAaHVhd2VpLmNvbT4gRGF0ZTogNi8xLzIwMTYgIDEyOjM0IFBNICAoR01ULTA1
OjAwKSBUbzogQW5keSBCaWVybWFuIDxhbmR5QHl1bWF3b3Jrcy5jb20+IENjOiBpMnJzQGlldGYu
b3JnLCBKdWVyZ2VuIFNjaG9lbndhZWxkZXIgPGouc2Nob2Vud2FlbGRlckBqYWNvYnMtdW5pdmVy
c2l0eS5kZT4sIEFsaWEgQXRsYXMgPGFrYXRsYXNAZ21haWwuY29tPiwgQmVub2l0IENsYWlzZSA8
YmNsYWlzZUBjaXNjby5jb20+LCBKZWZmcmV5IEhhYXMgPGpoYWFzQHBmcmMub3JnPiwgU3VzYW4g
SGFyZXMgPHNoYXJlc0BuZHpoLmNvbT4gU3ViamVjdDogUmU6IFtpMnJzXSBDYW4gSTJSUyBmb2N1
cyBvbiB0aGUgIk92ZXIgdGhlIFdpcmUiIGRhdGEgc3RydWN0dXJlICwgbm90IG9uIGhvdyBlbmQg
cG9pbnQgaGFuZGxlIHRoZSAiRGF0YVN0b3JlIj8gCgoKQW5keSwKCsKgCkFncmVlIHdpdGggeW91
ciBzdWdnZXN0ZWQgYXBwcm9hY2guCgrCoApMaW5kYQoKwqAKCkZyb206IEFuZHkgQmllcm1hbiBb
bWFpbHRvOmFuZHlAeXVtYXdvcmtzLmNvbV0KCgpTZW50OiBUdWVzZGF5LCBNYXkgMzEsIDIwMTYg
OTowNSBQTQoKVG86IExpbmRhIER1bmJhcgoKQ2M6IEplZmZyZXkgSGFhczsgQmVub2l0IENsYWlz
ZTsgaTJyc0BpZXRmLm9yZzsgSnVlcmdlbiBTY2hvZW53YWVsZGVyOyBTdXNhbiBIYXJlczsgQWxp
YSBBdGxhcwoKU3ViamVjdDogUmU6IENhbiBJMlJTIGZvY3VzIG9uIHRoZSAiT3ZlciB0aGUgV2ly
ZSIgZGF0YSBzdHJ1Y3R1cmUgLCBub3Qgb24gaG93IGVuZCBwb2ludCBoYW5kbGUgdGhlICJEYXRh
U3RvcmUiPwoKwqAKCkhpLAoKwqAKCgpJZiB5b3VyIGdyYXBoaWMgYWR2aWNlIG1lYW5zICJ0aGUg
cmVxdWlyZW1lbnRzIGFyZSBnb29kIGVub3VnaCwgbW92ZSBvbiIKCgp0aGVuIEkgYWdyZWUuCgoK
wqAKCgpUaGUgZGF0YXN0b3JlIGZyYW1ld29yayB3b3VsZCBiZSBuaWNlIHRvIGhhdmUsIGJ1dCBp
dCBpcyB2ZXJ5IGNsb3NlCgoKdG8gdGhlIGltcGxlbWVudGF0aW9uIGRldGFpbHMuwqAgSXQgaXMg
YWxzbyBhdHRlbXB0aW5nIHRvIGJlIGEgc3VwZXJzZXQgb2YgYWxsCgoKImFjY2VwdGVkIiBpbXBs
ZW1lbnRhdGlvbiBjaG9pY2VzLgoKCsKgCgoKQnkgIm9uIHRoZSB3aXJlIiB3ZSB1c3VhbGx5IG1l
YW4gYSBwcm90b2NvbCBzcGVjaWZpY2F0aW9uLgoKCklNTywgYWxsIHRoYXQgaXMgbmVlZGVkIChm
b3IgZWRpdGluZykgaXMgYSBzZXQgb2YgUkVTVENPTkYgZXh0ZW5zaW9ucy4KCgpTb21lIHBlb3Bs
ZSB3YW50IHRvIGRlc2NyaWJlIHRoZSBJMlJTIGRlc2lyZWQgYmVoYXZpb3Igd3J0LyBob3cgaXQK
CgppbnRlcmFjdHMgd2l0aCB0aGUgbG9jYWwgY29uZmlnLiAoYW5kIG1hbnkgbW9yZSBmZWF0dXJl
cy4uLikKCgrCoAoKClBlcmhhcHMgYSBnb29kIGZpcnN0IHN0ZXAgd291bGQgYmUgZXBoZW1lcmFs
IGRhdGEgbW9kZWxzIHRoYXQgZG8gbm90CgoKaW50ZXJhY3Qgd2l0aCB0aGUgbG9jYWwgY29uZmln
IGF0IGFsbC7CoCBJMlJTIGlzIHRoZSBvbmx5IHByb3RvY29sIG9mIGNvbmNlcm4gYW5kIHRoZQoK
CmhpZ2hlc3QgcHJpb3JpdHkgY2xpZW50LsKgIEkyUlMganVzdCBuZWVkcyB0byBzdXBwb3J0IHJl
YWQvd3JpdGUvbm90aWZ5IG9mIGVwaGVtZXJhbCBkYXRhLgoKCklmIHRoaXMgaXMgbm90IGFjY2Vw
dGFibGUgdGhlbiBiZSBwcmVwYXJlZCB0byB3YWl0IHVudGlsIGFsbCB0aGUgZnJhbWV3b3JrIHN0
dWZmIGlzIHNldHRsZWQKCgphbmQgc3RhbmRhcmRpemVkLgoKCsKgCgoKwqAKCgpBbmR5CgoKwqAK
CgrCoAoKCsKgCgoKCsKgCgpPbiBUdWUsIE1heSAzMSwgMjAxNiBhdCA0OjA5IFBNLCBMaW5kYSBE
dW5iYXIgPGxpbmRhLmR1bmJhckBodWF3ZWkuY29tPiB3cm90ZToKCgpJRVRGIGhhcyBiZWVuIHN1
Y2Nlc3NmdWwgZm9yIHBhc3QgMjAgeWVhcnMgwqBpbiBmb2N1c2luZyBvbiDigJxPdmVyIHRoZSBX
aXJl4oCdIGRhdGEgc3RydWN0dXJlLsKgIEl0IHdvdWxkIGJlIHNvIG11Y2ggY2xlYW5lcgogYW5k
IHN0cmFpZ2h0IGZvcndhcmQgaWYgdGhlIFlBTkcgbW9kdWxlcyBkZXZlbG9wZWQgYnkgSTJSUyDC
oGZvY3VzaW5nIG9uIHRoZSDigJxPdmVyIHRoZSBXaXJl4oCdIGRhdGEgc3RydWN0dXJlIChhbmQg
d2l0aCBORVRNT0QgdG8gZm9jdXMgb24gb3RoZXIgYXNwZWN0cykuClRoZSDigJxJMlJTIGVwaGVt
ZXJhbCBTdGF0ZeKAnSBoYXMgdGhlIG5lZWRlZCBkZXNjcmlwdGlvbiBmb3IgdGhlIGRlc2lyZWQg
YmVoYXZpb3IgwqBvZiB0aGUgZGF0YSByZWNlaXZlZCBvdmVyIEkyUlMgaW50ZXJmYWNlLgogSWYg
d2UgZm9sbG93IHRoZSBJRVRGIHByYWN0aWNlLCDCoGl0IGlzIGdvb2QgZW5vdWdoLiAKSW50ZXJu
YWwgaW1wbGVtZW50YXRpb24gZnJhbWV3b3JrIGlzIGFsd2F5cyBjb250cm92ZXJzaWFsLCBoYXJk
IHRvIGNvbnZlcmdlLCB1c3VhbGx5IGVuZGluZyB1cCB3aXRoIGEgZG9jdW1lbnQgKGlmCiBjb21w
bGV0ZWQpIHRoYXQgaXMgdG9vIGJpZyBhbmQgZGlmZmljdWx0IHRvIHJlYWQuIArCoApQcm92aWRp
bmcgc29tZSBzb3VyY2UgY29kZSB0byBzaG93IHRoZSBpbnRlcm5hbCBpbXBsZW1lbnRhdGlvbiB3
b3VsZCBiZSBtdWNoIG1vcmUgdXNlZnVsIGFzIGEgcmVmZXJlbmNlIGltcGxlbWVudGF0aW9uLgoK
wqAKClRoZSBkcmFmdC1zY2hvZW53LW5ldG1vZC1yZXZpc2VkLWRhdGFzdG9yZXMtMDAKaXMgb24g
dGhlIGFyY2hpdGVjdHVyYWwgZnJhbWV3b3JrIGZvciBkYXRhc3RvcmVzIGFzIHRoZXkgYXJlIHVz
ZWQgYnkgbmV0d29yayBtYW5hZ2VtZW50IHByb3RvY29scy4gSU1ITywgaG93IGRhdGEgc3RvcmVz
IGFyZSB1c2VkIGFyZSBpbnRlcm5hbCB0byB0aGUgZW5kIHBvaW50cy4KCsKgCgrCoApMaW5kYSBE
dW5iYXIKwqAKCkZyb206IGkycnMgW21haWx0bzppMnJzLWJvdW5jZXNAaWV0Zi5vcmddCk9uIEJl
aGFsZiBPZiBBbmR5IEJpZXJtYW4KClNlbnQ6IFR1ZXNkYXksIE1heSAzMSwgMjAxNiA0OjA5IFBN
CgpUbzogSmVmZnJleSBIYWFzCgpDYzogQmVub2l0IENsYWlzZTsgaTJyc0BpZXRmLm9yZzsgSnVl
cmdlbiBTY2hvZW53YWVsZGVyOyBTdXNhbiBIYXJlczsgQWxpYSBBdGxhcwoKU3ViamVjdDogUmU6
IFtpMnJzXSBJMlJTIEludGVyaW0gTWVldGluZyAtIEp1bmUgMSwgMjAxNiAtIDEwOjAwYW0gLSAx
MTowMGFtIC0gVG9waWM6IEVwaGVtZXJhbCBTdGF0ZSBSZXF1aXJlbWVudHMKCsKgCgpIaSwKCsKg
CgoKSSBhbSBub3QgY29udmluY2VkIHRoZSBJRVRGIGNhbiBiZSBmb3JjZWQgdG8gZnVuY3Rpb24g
YXMgaWYgaXQgd2VyZQoKCmEgZGV2LWdyb3VwIGluIHNvbWUgY29ycG9yYXRpb24uwqAgVGhpcyBp
cyBhIHZvbHVudGVlciBvcmdhbml6YXRpb24gc28KCgp1c3VhbGx5IHNvbHV0aW9uIHByb3Bvc2Fs
cyBjb21lIGZyb20gcGVvcGxlIHdobyBoYXZlIGNyZWF0ZWQgYSBzb2x1dGlvbgoKCmFuZCB0aGV5
IHdhbnQgdGhlIFdHIHRvIHN0YW5kYXJkaXplIGl0LgoKCsKgCgoKwqAKCgpBbmR5CgoKwqAKCgoK
wqAKCk9uIFR1ZSwgTWF5IDMxLCAyMDE2IGF0IDEyOjUxIFBNLCBKZWZmcmV5IEhhYXMgPGpoYWFz
QHBmcmMub3JnPiB3cm90ZToKQW5keSwKCgoKT24gVHVlLCBNYXkgMzEsIDIwMTYgYXQgMTE6NDE6
NTlBTSAtMDcwMCwgQW5keSBCaWVybWFuIHdyb3RlOgoKPiBBdCBzb21lIHBvaW50IHRoZSBXRyBu
ZWVkcyB0byBhZ3JlZSBvbiBub3JtYXRpdmUgdGV4dCBpbnN0ZWFkIG9mIGl0ZXJhdGluZwoKPiBv
biByZXF1aXJlbWVudHMgZm9yZXZlci4KCgoKSU1PLCBpdCB3b3VsZCBiZSBpbiBJMlJTJ3MgYmVz
dCBpbnRlcmVzdHMgaWYgbmV0Y29uZi9uZXRtb2QgcHJvdmlkZWQgZHJhZnRzCgppbiBhcHByb3By
aWF0ZWx5IG5vcm1hdGl2ZSBsYW5ndWFnZSBjb3ZlcmluZyBJMlJTIHJlcXVpcmVtZW50cy7CoCBI
b3dldmVyLAoKd2UndmUgYmVlbiBpbiBhIHBhdGhvbG9naWNhbCBjeWNsZSBvZjoKCiJXZSBkb24n
dCB1bmRlcnN0YW5kLCBwbGVhc2UgZ2l2ZSB1cyByZXF1aXJlbWVudHMiCgoiV2UgZG9uJ3QgdW5k
ZXJzdGFuZCB5b3VyIHJlcXVpcmVtZW50cyIKCiJZb3UgcHJvdmlkZWQgZXhhbXBsZXMgd2l0aCB5
b3VyIHJlcXVpcmVtZW50cyB0aGF0IGFwcGVhciB0byBiZSBhdHRlbXB0cyB0bwoKY2hhbmdlIG91
ciBwcm90b2NvbCAtIGRvbid0IGRvIHRoYXQuIgoKCgpUaGUgbW9zdCByZWNlbnQgcmV2aXNlZC1k
YXRhc3RvcmUgZHJhZnQgd291bGQgYmUgYSBnb29kIHBsYWNlIHRvIGRvY3VtZW50Cgp3aGVyZSBu
ZXRtb2QoL25ldGNvbmYpIGJlbGlldmVzIGVwaGVtZXJhbCBkYXRhc3RvcmVzIChpZiB0aGF0J3Mg
dGhlCgppbnN0YW50aWF0aW9uKSBjb3VsZCBsaXZlLCBhbmQgYWxzbyBob3cgZXBoZW1lcmFsIGNv
bmZpZ3VyYXRpb24gc3RhdGUgY291bGQKCmludGVyYWN0IHdpdGggY2FuZGlkYXRlLCBzdGFydHVw
IGFuZCBydW5uaW5nIGNvbmZpZ3VyYXRpb24uCgoKCnlhbmctcHVzaCBjb3ZlcnMgbXVjaCBvZiBv
dXIgZGVzaXJlZCBwdWItc3ViIGJlaGF2aW9yLiAoWWF5ISkKCgoKRGlzY3Vzc2lvbiBpcyByZXF1
aXJlZCBmb3IgaG93IHRvIHRhZyBzZWN1cml0eSBjb25zaWRlcmF0aW9ucyBpbXBhY3RpbmcKCnRy
YW5zcG9ydCBpbnRvIHRoZSB5YW5nIG1vZGVsLCBpbiBwYXJ0aWN1bGFyIGZvciBub3RpZmljYXRp
b24uCgoKClByb3Bvc2FscyBmb3Igc2Vjb25kYXJ5IGlkZW50aXR5IGFuZCBwcmlvcml0eSBhcmUg
YWxzbyBuZWVkZWQuCgoKCi0tIEplZmYKCsKgCgoKCgoKCsKgCgoKCgoKCg==

----_com.samsung.android.email_5673070165926870
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: base64

PGh0bWw+PGhlYWQ+PG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0
L2h0bWw7IGNoYXJzZXQ9VVRGLTgiPjwvaGVhZD48Ym9keT48ZGl2Pjxicj48L2Rpdj48ZGl2PkFo
Li4gSW50ZXJlc3RpbmcgJm5ic3A7dmlld3BvaW50IG9uIHRoZSB3b3JkICJvdmVyd3JpdGUiLiBB
bmQgSSBmaW5kIG5vdGhpbmcgd3Jvbmcgd2l0aCB5b3VyIHZpZXdwb2ludC48L2Rpdj48ZGl2Pjxi
cj48L2Rpdj48ZGl2PklmIGkycnMgb25seSBjb25maWcgZG9lcyBub3QgcmVzb2x2ZSB0byBpbnN0
YWxsYWJsZSBzdGF0ZSwgaG93IHdvdWxkIHlvdSBoYW5kbGUgaXQuICZuYnNwO0lzIHRoaXMgYSBj
YXNlIHdoZXJlIGkycnMgY29uZmlnIHZhbHVlIGRvZXMgbm90IGV4aXN0IHNvIGxvY2FsIGNvbmZp
ZyBpcyB1c2VkPyAmbmJzcDtJIGFtIHNob3dpbmcgcGFydGlhbCBpbnN0YWxsYXRpb24gb2YgaTJy
cyByaWIgbW9kZWwuJm5ic3A7PC9kaXY+PGRpdj48YnI+PC9kaXY+PGRpdj5JZiBJIGNhbiBzZWUg
aG93IHRoaXMgd29ya3MsIG1heWJlIEkgY2FuIGZpbmQgYSB3YXkgdG8gdW5kZXJzdGFuZCBqdWVy
Z2VuJ3MgbW9kZWwuICZuYnNwOzwvZGl2PjxkaXY+PGJyPjwvZGl2PjxkaXY+U3VlJm5ic3A7PC9k
aXY+PGRpdj48YnI+PC9kaXY+PGRpdiBpZD0iY29tcG9zZXJfc2lnbmF0dXJlIj48ZGl2IHN0eWxl
PSJmb250LXNpemU6ODUlO2NvbG9yOiM1NzU3NTciPlNlbnQgdmlhIHRoZSBTYW1zdW5nIEdhbGF4
eSBOb3RlNSwgYW4gQVQmYW1wO1QgNEcgTFRFIHNtYXJ0cGhvbmU8L2Rpdj48L2Rpdj48ZGl2IHN0
eWxlPSJmb250LXNpemU6MTAwJTtjb2xvcjojMDAwMDAwIj48IS0tIG9yaWdpbmFsTWVzc2FnZSAt
LT48ZGl2Pi0tLS0tLS0tIE9yaWdpbmFsIG1lc3NhZ2UgLS0tLS0tLS08L2Rpdj48ZGl2PkZyb206
IEFuZHkgQmllcm1hbiAmbHQ7YW5keUB5dW1hd29ya3MuY29tJmd0OyA8L2Rpdj48ZGl2PkRhdGU6
IDYvMS8yMDE2ICAzOjExIFBNICAoR01ULTA1OjAwKSA8L2Rpdj48ZGl2PlRvOiBTdXNhbiBIYXJl
cyAmbHQ7c2hhcmVzQG5kemguY29tJmd0OyA8L2Rpdj48ZGl2PkNjOiBMaW5kYSBEdW5iYXIgJmx0
O2xpbmRhLmR1bmJhckBodWF3ZWkuY29tJmd0OywgaTJyc0BpZXRmLm9yZywgSnVlcmdlbiBTY2hv
ZW53YWVsZGVyICZsdDtqLnNjaG9lbndhZWxkZXJAamFjb2JzLXVuaXZlcnNpdHkuZGUmZ3Q7LCBB
bGlhIEF0bGFzICZsdDtha2F0bGFzQGdtYWlsLmNvbSZndDssIEJlbm9pdCBDbGFpc2UgJmx0O2Jj
bGFpc2VAY2lzY28uY29tJmd0OywgSmVmZnJleSBIYWFzICZsdDtqaGFhc0BwZnJjLm9yZyZndDsg
PC9kaXY+PGRpdj5TdWJqZWN0OiBSZTogW2kycnNdIENhbiBJMlJTIGZvY3VzIG9uIHRoZSAiT3Zl
ciB0aGUgV2lyZSIgZGF0YSBzdHJ1Y3R1cmUgLCBub3Qgb24gaG93IGVuZCBwb2ludCBoYW5kbGUg
dGhlICJEYXRhU3RvcmUiPyA8L2Rpdj48ZGl2Pjxicj48L2Rpdj48L2Rpdj48ZGl2IGRpcj0ibHRy
Ij48YnI+PGRpdiBjbGFzcz0iZ21haWxfZXh0cmEiPjxicj48ZGl2IGNsYXNzPSJnbWFpbF9xdW90
ZSI+T24gV2VkLCBKdW4gMSwgMjAxNiBhdCAxMjowNCBQTSwgU3VzYW4gSGFyZXMgPHNwYW4gZGly
PSJsdHIiPiZsdDs8YSBocmVmPSJtYWlsdG86c2hhcmVzQG5kemguY29tIiB0YXJnZXQ9Il9ibGFu
ayI+c2hhcmVzQG5kemguY29tPC9hPiZndDs8L3NwYW4+IHdyb3RlOjxicj48YmxvY2txdW90ZSBj
bGFzcz0iZ21haWxfcXVvdGUiIHN0eWxlPSJtYXJnaW46MCAwIDAgLjhleDtib3JkZXItbGVmdDox
cHggI2NjYyBzb2xpZDtwYWRkaW5nLWxlZnQ6MWV4Ij48ZGl2PjxkaXY+QW5keTwvZGl2PjxkaXY+
PGJyPjwvZGl2PjxkaXY+V2UgY3VycmVudGx5IGFyZSBzcGVjaWZ5aW5nIGkycnMgcmliIG1vZGVs
IHdoaWNoIGNhbiBvdmVyd3JpdGUgdGhlIGxvY2FsIGNvbmZpZy4gJm5ic3A7ICZuYnNwO0ltcGxl
bWVudGF0aW9ucyBleHBlcmllbmNlIHdpbGwgcHJvdmlkZSB1cyB3aXRoIGlucHV0IG9uIHRoZSBw
cm90b2NvbHMuJm5ic3A7PC9kaXY+PGRpdj48YnI+PC9kaXY+PC9kaXY+PC9ibG9ja3F1b3RlPjxk
aXY+PGJyPjwvZGl2PjxkaXY+SSBkb24ndCB2aWV3IGl0IHRoYXQgd2F5LjwvZGl2PjxkaXY+VGhl
IGxvY2FsIGNvbmZpZyByZW1haW5zIHVudG91Y2hlZCB0aHJvdWdob3V0LjwvZGl2PjxkaXY+VGhl
IGhpZ2hlciBwcmlvcml0eSBlcGhlbWVyYWwgY29uZmlnIHZhbHVlIGlzIHVzZWQgaW5zdGVhZCBv
ZiB0aGUgbG9jYWwgY29uZmlnIHZhbHVlLjwvZGl2PjxkaXY+VGhlIG9wZXJhdGlvbmFsIHN0YXRl
IHNob3VsZCByZWZsZWN0IHRoYXQgZXBoZW1lcmFsIGNvbmZpZyBpcyBvdmVycmlkaW5nIHRoZSBs
b2NhbCBjb25maWcuPC9kaXY+PGRpdj5UaGUgZGF0YSBtb2RlbCBmb3IgdGhlIEkyUlMgdmVyc2lv
biBkb2VzIG5vdCBoYXZlIHRvIGJlIHRoZSBsb2NhbCBjb25maWcgbW9kZWwuPC9kaXY+PGRpdj48
YnI+PC9kaXY+PGRpdj4mbmJzcDs8L2Rpdj48YmxvY2txdW90ZSBjbGFzcz0iZ21haWxfcXVvdGUi
IHN0eWxlPSJtYXJnaW46MCAwIDAgLjhleDtib3JkZXItbGVmdDoxcHggI2NjYyBzb2xpZDtwYWRk
aW5nLWxlZnQ6MWV4Ij48ZGl2PjxkaXY+PC9kaXY+PGRpdj5TdWU8L2Rpdj48ZGl2Pjxicj48L2Rp
dj48ZGl2Pjxicj48L2Rpdj48L2Rpdj48L2Jsb2NrcXVvdGU+PGRpdj48YnI+PC9kaXY+PGRpdj5B
bmR5PC9kaXY+PGRpdj4mbmJzcDs8L2Rpdj48YmxvY2txdW90ZSBjbGFzcz0iZ21haWxfcXVvdGUi
IHN0eWxlPSJtYXJnaW46MCAwIDAgLjhleDtib3JkZXItbGVmdDoxcHggI2NjYyBzb2xpZDtwYWRk
aW5nLWxlZnQ6MWV4Ij48ZGl2PjxkaXY+PC9kaXY+PGRpdj48YnI+PC9kaXY+PGRpdj48ZGl2IHN0
eWxlPSJmb250LXNpemU6ODUlO2NvbG9yOiM1NzU3NTciPlNlbnQgdmlhIHRoZSBTYW1zdW5nIEdh
bGF4eSBOb3RlNSwgYW4gQVQmYW1wO1QgNEcgTFRFIHNtYXJ0cGhvbmU8L2Rpdj48L2Rpdj48ZGl2
IHN0eWxlPSJmb250LXNpemU6MTAwJTtjb2xvcjojMDAwMDAwIj48ZGl2Pi0tLS0tLS0tIE9yaWdp
bmFsIG1lc3NhZ2UgLS0tLS0tLS08L2Rpdj48ZGl2PkZyb206IExpbmRhIER1bmJhciAmbHQ7PGEg
aHJlZj0ibWFpbHRvOmxpbmRhLmR1bmJhckBodWF3ZWkuY29tIiB0YXJnZXQ9Il9ibGFuayI+bGlu
ZGEuZHVuYmFyQGh1YXdlaS5jb208L2E+Jmd0OyA8L2Rpdj48ZGl2PkRhdGU6IDYvMS8yMDE2ICAx
MjozNCBQTSAgKEdNVC0wNTowMCkgPC9kaXY+PGRpdj5UbzogQW5keSBCaWVybWFuICZsdDs8YSBo
cmVmPSJtYWlsdG86YW5keUB5dW1hd29ya3MuY29tIiB0YXJnZXQ9Il9ibGFuayI+YW5keUB5dW1h
d29ya3MuY29tPC9hPiZndDsgPC9kaXY+PGRpdj5DYzogPGEgaHJlZj0ibWFpbHRvOmkycnNAaWV0
Zi5vcmciIHRhcmdldD0iX2JsYW5rIj5pMnJzQGlldGYub3JnPC9hPiwgSnVlcmdlbiBTY2hvZW53
YWVsZGVyICZsdDs8YSBocmVmPSJtYWlsdG86ai5zY2hvZW53YWVsZGVyQGphY29icy11bml2ZXJz
aXR5LmRlIiB0YXJnZXQ9Il9ibGFuayI+ai5zY2hvZW53YWVsZGVyQGphY29icy11bml2ZXJzaXR5
LmRlPC9hPiZndDssIEFsaWEgQXRsYXMgJmx0OzxhIGhyZWY9Im1haWx0bzpha2F0bGFzQGdtYWls
LmNvbSIgdGFyZ2V0PSJfYmxhbmsiPmFrYXRsYXNAZ21haWwuY29tPC9hPiZndDssIEJlbm9pdCBD
bGFpc2UgJmx0OzxhIGhyZWY9Im1haWx0bzpiY2xhaXNlQGNpc2NvLmNvbSIgdGFyZ2V0PSJfYmxh
bmsiPmJjbGFpc2VAY2lzY28uY29tPC9hPiZndDssIEplZmZyZXkgSGFhcyAmbHQ7PGEgaHJlZj0i
bWFpbHRvOmpoYWFzQHBmcmMub3JnIiB0YXJnZXQ9Il9ibGFuayI+amhhYXNAcGZyYy5vcmc8L2E+
Jmd0OywgU3VzYW4gSGFyZXMgJmx0OzxhIGhyZWY9Im1haWx0bzpzaGFyZXNAbmR6aC5jb20iIHRh
cmdldD0iX2JsYW5rIj5zaGFyZXNAbmR6aC5jb208L2E+Jmd0OyA8L2Rpdj48ZGl2PlN1YmplY3Q6
IFJlOiBbaTJyc10gQ2FuIEkyUlMgZm9jdXMgb24gdGhlICJPdmVyIHRoZSBXaXJlIiBkYXRhIHN0
cnVjdHVyZSAsIG5vdCBvbiBob3cgZW5kIHBvaW50IGhhbmRsZSB0aGUgIkRhdGFTdG9yZSI/IDwv
ZGl2PjxkaXY+PGJyPjwvZGl2PjwvZGl2Pgo8ZGl2Pgo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3Bh
biBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7
LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFmNDk3ZCI+QW5keSwKPHU+PC91Pjx1Pjwv
dT48L3NwYW4+PC9wPgo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXpl
OjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYm
cXVvdDs7Y29sb3I6IzFmNDk3ZCI+PHU+PC91PiZuYnNwOzx1PjwvdT48L3NwYW4+PC9wPgo8cCBj
bGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWls
eTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFmNDk3
ZCI+QWdyZWUgd2l0aCB5b3VyIHN1Z2dlc3RlZCBhcHByb2FjaC4KPHU+PC91Pjx1PjwvdT48L3Nw
YW4+PC9wPgo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBw
dDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7
Y29sb3I6IzFmNDk3ZCI+PHU+PC91PiZuYnNwOzx1PjwvdT48L3NwYW4+PC9wPgo8cCBjbGFzcz0i
TXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVv
dDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFmNDk3ZCI+TGlu
ZGEKPHU+PC91Pjx1PjwvdT48L3NwYW4+PC9wPgo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBz
dHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZx
dW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFmNDk3ZCI+PHU+PC91PiZuYnNwOzx1PjwvdT48
L3NwYW4+PC9wPgo8ZGl2IHN0eWxlPSJib3JkZXI6bm9uZTtib3JkZXItdG9wOnNvbGlkICNiNWM0
ZGYgMS4wcHQ7cGFkZGluZzozLjBwdCAwaW4gMGluIDBpbiI+CjxwIGNsYXNzPSJNc29Ob3JtYWwi
PjxiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O1RhaG9t
YSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7Ij5Gcm9tOjwvc3Bhbj48L2I+PHNwYW4gc3R5
bGU9ImZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7VGFob21hJnF1b3Q7LCZxdW90
O3NhbnMtc2VyaWYmcXVvdDsiPiBBbmR5IEJpZXJtYW4gW21haWx0bzo8YSBocmVmPSJtYWlsdG86
YW5keUB5dW1hd29ya3MuY29tIiB0YXJnZXQ9Il9ibGFuayI+YW5keUB5dW1hd29ya3MuY29tPC9h
Pl0KPGJyPgo8Yj5TZW50OjwvYj4gVHVlc2RheSwgTWF5IDMxLCAyMDE2IDk6MDUgUE08YnI+Cjxi
PlRvOjwvYj4gTGluZGEgRHVuYmFyPGJyPgo8Yj5DYzo8L2I+IEplZmZyZXkgSGFhczsgQmVub2l0
IENsYWlzZTsgPGEgaHJlZj0ibWFpbHRvOmkycnNAaWV0Zi5vcmciIHRhcmdldD0iX2JsYW5rIj5p
MnJzQGlldGYub3JnPC9hPjsgSnVlcmdlbiBTY2hvZW53YWVsZGVyOyBTdXNhbiBIYXJlczsgQWxp
YSBBdGxhczxicj4KPGI+U3ViamVjdDo8L2I+IFJlOiBDYW4gSTJSUyBmb2N1cyBvbiB0aGUgIk92
ZXIgdGhlIFdpcmUiIGRhdGEgc3RydWN0dXJlICwgbm90IG9uIGhvdyBlbmQgcG9pbnQgaGFuZGxl
IHRoZSAiRGF0YVN0b3JlIj88dT48L3U+PHU+PC91Pjwvc3Bhbj48L3A+CjwvZGl2Pgo8cCBjbGFz
cz0iTXNvTm9ybWFsIj48dT48L3U+Jm5ic3A7PHU+PC91PjwvcD4KPGRpdj4KPHAgY2xhc3M9Ik1z
b05vcm1hbCI+SGksPHU+PC91Pjx1PjwvdT48L3A+CjxkaXY+CjxwIGNsYXNzPSJNc29Ob3JtYWwi
Pjx1PjwvdT4mbmJzcDs8dT48L3U+PC9wPgo8L2Rpdj4KPGRpdj4KPHAgY2xhc3M9Ik1zb05vcm1h
bCI+SWYgeW91ciBncmFwaGljIGFkdmljZSBtZWFucyAidGhlIHJlcXVpcmVtZW50cyBhcmUgZ29v
ZCBlbm91Z2gsIG1vdmUgb24iPHU+PC91Pjx1PjwvdT48L3A+CjwvZGl2Pgo8ZGl2Pgo8cCBjbGFz
cz0iTXNvTm9ybWFsIj50aGVuIEkgYWdyZWUuPHU+PC91Pjx1PjwvdT48L3A+CjwvZGl2Pgo8ZGl2
Pgo8cCBjbGFzcz0iTXNvTm9ybWFsIj48dT48L3U+Jm5ic3A7PHU+PC91PjwvcD4KPC9kaXY+Cjxk
aXY+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPlRoZSBkYXRhc3RvcmUgZnJhbWV3b3JrIHdvdWxkIGJl
IG5pY2UgdG8gaGF2ZSwgYnV0IGl0IGlzIHZlcnkgY2xvc2U8dT48L3U+PHU+PC91PjwvcD4KPC9k
aXY+CjxkaXY+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPnRvIHRoZSBpbXBsZW1lbnRhdGlvbiBkZXRh
aWxzLiZuYnNwOyBJdCBpcyBhbHNvIGF0dGVtcHRpbmcgdG8gYmUgYSBzdXBlcnNldCBvZiBhbGw8
dT48L3U+PHU+PC91PjwvcD4KPC9kaXY+CjxkaXY+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPiJhY2Nl
cHRlZCIgaW1wbGVtZW50YXRpb24gY2hvaWNlcy48dT48L3U+PHU+PC91PjwvcD4KPC9kaXY+Cjxk
aXY+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjx1PjwvdT4mbmJzcDs8dT48L3U+PC9wPgo8L2Rpdj4K
PGRpdj4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+QnkgIm9uIHRoZSB3aXJlIiB3ZSB1c3VhbGx5IG1l
YW4gYSBwcm90b2NvbCBzcGVjaWZpY2F0aW9uLjx1PjwvdT48dT48L3U+PC9wPgo8L2Rpdj4KPGRp
dj4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+SU1PLCBhbGwgdGhhdCBpcyBuZWVkZWQgKGZvciBlZGl0
aW5nKSBpcyBhIHNldCBvZiBSRVNUQ09ORiBleHRlbnNpb25zLjx1PjwvdT48dT48L3U+PC9wPgo8
L2Rpdj4KPGRpdj4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+U29tZSBwZW9wbGUgd2FudCB0byBkZXNj
cmliZSB0aGUgSTJSUyBkZXNpcmVkIGJlaGF2aW9yIHdydC8gaG93IGl0PHU+PC91Pjx1PjwvdT48
L3A+CjwvZGl2Pgo8ZGl2Pgo8cCBjbGFzcz0iTXNvTm9ybWFsIj5pbnRlcmFjdHMgd2l0aCB0aGUg
bG9jYWwgY29uZmlnLiAoYW5kIG1hbnkgbW9yZSBmZWF0dXJlcy4uLik8dT48L3U+PHU+PC91Pjwv
cD4KPC9kaXY+CjxkaXY+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjx1PjwvdT4mbmJzcDs8dT48L3U+
PC9wPgo8L2Rpdj4KPGRpdj4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+UGVyaGFwcyBhIGdvb2QgZmly
c3Qgc3RlcCB3b3VsZCBiZSBlcGhlbWVyYWwgZGF0YSBtb2RlbHMgdGhhdCBkbyBub3Q8dT48L3U+
PHU+PC91PjwvcD4KPC9kaXY+CjxkaXY+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPmludGVyYWN0IHdp
dGggdGhlIGxvY2FsIGNvbmZpZyBhdCBhbGwuJm5ic3A7IEkyUlMgaXMgdGhlIG9ubHkgcHJvdG9j
b2wgb2YgY29uY2VybiBhbmQgdGhlPHU+PC91Pjx1PjwvdT48L3A+CjwvZGl2Pgo8ZGl2Pgo8cCBj
bGFzcz0iTXNvTm9ybWFsIj5oaWdoZXN0IHByaW9yaXR5IGNsaWVudC4mbmJzcDsgSTJSUyBqdXN0
IG5lZWRzIHRvIHN1cHBvcnQgcmVhZC93cml0ZS9ub3RpZnkgb2YgZXBoZW1lcmFsIGRhdGEuPHU+
PC91Pjx1PjwvdT48L3A+CjwvZGl2Pgo8ZGl2Pgo8cCBjbGFzcz0iTXNvTm9ybWFsIj5JZiB0aGlz
IGlzIG5vdCBhY2NlcHRhYmxlIHRoZW4gYmUgcHJlcGFyZWQgdG8gd2FpdCB1bnRpbCBhbGwgdGhl
IGZyYW1ld29yayBzdHVmZiBpcyBzZXR0bGVkPHU+PC91Pjx1PjwvdT48L3A+CjwvZGl2Pgo8ZGl2
Pgo8cCBjbGFzcz0iTXNvTm9ybWFsIj5hbmQgc3RhbmRhcmRpemVkLjx1PjwvdT48dT48L3U+PC9w
Pgo8L2Rpdj4KPGRpdj4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHU+PC91PiZuYnNwOzx1PjwvdT48
L3A+CjwvZGl2Pgo8ZGl2Pgo8cCBjbGFzcz0iTXNvTm9ybWFsIj48dT48L3U+Jm5ic3A7PHU+PC91
PjwvcD4KPC9kaXY+CjxkaXY+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPkFuZHk8dT48L3U+PHU+PC91
PjwvcD4KPC9kaXY+CjxkaXY+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjx1PjwvdT4mbmJzcDs8dT48
L3U+PC9wPgo8L2Rpdj4KPGRpdj4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHU+PC91PiZuYnNwOzx1
PjwvdT48L3A+CjwvZGl2Pgo8ZGl2Pgo8cCBjbGFzcz0iTXNvTm9ybWFsIj48dT48L3U+Jm5ic3A7
PHU+PC91PjwvcD4KPC9kaXY+CjxkaXY+CjxkaXY+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjx1Pjwv
dT4mbmJzcDs8dT48L3U+PC9wPgo8ZGl2Pgo8cCBjbGFzcz0iTXNvTm9ybWFsIj5PbiBUdWUsIE1h
eSAzMSwgMjAxNiBhdCA0OjA5IFBNLCBMaW5kYSBEdW5iYXIgJmx0OzxhIGhyZWY9Im1haWx0bzps
aW5kYS5kdW5iYXJAaHVhd2VpLmNvbSIgdGFyZ2V0PSJfYmxhbmsiPmxpbmRhLmR1bmJhckBodWF3
ZWkuY29tPC9hPiZndDsgd3JvdGU6PHU+PC91Pjx1PjwvdT48L3A+CjxkaXY+CjxkaXY+CjxwIGNs
YXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1
b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFmNDk3ZCI+SUVURiBoYXMgYmVlbiBz
dWNjZXNzZnVsIGZvciBwYXN0IDIwIHllYXJzICZuYnNwO2luIGZvY3VzaW5nIG9uIOKAnE92ZXIg
dGhlIFdpcmXigJ0gZGF0YSBzdHJ1Y3R1cmUuJm5ic3A7IEl0IHdvdWxkIGJlIHNvIG11Y2ggY2xl
YW5lcgogYW5kIHN0cmFpZ2h0IGZvcndhcmQgaWYgdGhlIFlBTkcgbW9kdWxlcyBkZXZlbG9wZWQg
YnkgSTJSUyAmbmJzcDtmb2N1c2luZyBvbiB0aGUg4oCcT3ZlciB0aGUgV2lyZeKAnSBkYXRhIHN0
cnVjdHVyZSAoYW5kIHdpdGggTkVUTU9EIHRvIGZvY3VzIG9uIG90aGVyIGFzcGVjdHMpLjwvc3Bh
bj48dT48L3U+PHU+PC91PjwvcD4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZv
bnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xv
cjojMWY0OTdkIj5UaGUg4oCcSTJSUyBlcGhlbWVyYWwgU3RhdGXigJ0gaGFzIHRoZSBuZWVkZWQg
ZGVzY3JpcHRpb24gZm9yIHRoZSBkZXNpcmVkIGJlaGF2aW9yICZuYnNwO29mIHRoZSBkYXRhIHJl
Y2VpdmVkIG92ZXIgSTJSUyBpbnRlcmZhY2UuCiBJZiB3ZSBmb2xsb3cgdGhlIElFVEYgcHJhY3Rp
Y2UsICZuYnNwO2l0IGlzIGdvb2QgZW5vdWdoLiA8L3NwYW4+PHU+PC91Pjx1PjwvdT48L3A+Cjxw
IGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTomcXVvdDtDYWxpYnJp
JnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFmNDk3ZCI+SW50ZXJuYWwgaW1w
bGVtZW50YXRpb24gZnJhbWV3b3JrIGlzIGFsd2F5cyBjb250cm92ZXJzaWFsLCBoYXJkIHRvIGNv
bnZlcmdlLCB1c3VhbGx5IGVuZGluZyB1cCB3aXRoIGEgZG9jdW1lbnQgKGlmCiBjb21wbGV0ZWQp
IHRoYXQgaXMgdG9vIGJpZyBhbmQgZGlmZmljdWx0IHRvIHJlYWQuIDwvc3Bhbj48dT48L3U+PHU+
PC91PjwvcD4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OiZx
dW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMWY0OTdkIj4m
bmJzcDs8L3NwYW4+PHU+PC91Pjx1PjwvdT48L3A+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFu
IHN0eWxlPSJmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYm
cXVvdDs7Y29sb3I6IzFmNDk3ZCI+UHJvdmlkaW5nIHNvbWUgc291cmNlIGNvZGUgdG8gc2hvdyB0
aGUgaW50ZXJuYWwgaW1wbGVtZW50YXRpb24gd291bGQgYmUgbXVjaCBtb3JlIHVzZWZ1bCBhcyBh
IHJlZmVyZW5jZSBpbXBsZW1lbnRhdGlvbi4KPC9zcGFuPjx1PjwvdT48dT48L3U+PC9wPgo8cCBj
bGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZx
dW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxZjQ5N2QiPiZuYnNwOzwvc3Bhbj48
dT48L3U+PHU+PC91PjwvcD4KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9InRleHQtYXV0b3Nw
YWNlOm5vbmUiPgo8c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90Oywm
cXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxZjQ5N2QiPlRoZSA8L3NwYW4+PHNwYW4gc3R5
bGU9ImZvbnQtZmFtaWx5OkNvdXJpZXIiPmRyYWZ0LXNjaG9lbnctbmV0bW9kLXJldmlzZWQtZGF0
YXN0b3Jlcy0wMAo8L3NwYW4+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkm
cXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMWY0OTdkIj5pcyBvbiB0aGUgYXJj
aGl0ZWN0dXJhbCBmcmFtZXdvcmsgZm9yIGRhdGFzdG9yZXMgYXMgdGhleSBhcmUgdXNlZCBieSBu
ZXR3b3JrIG1hbmFnZW1lbnQgcHJvdG9jb2xzLiBJTUhPLCBob3cgZGF0YSBzdG9yZXMgYXJlIHVz
ZWQgYXJlIGludGVybmFsIHRvIHRoZSBlbmQgcG9pbnRzLgo8L3NwYW4+PHU+PC91Pjx1PjwvdT48
L3A+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTomcXVvdDtD
YWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFmNDk3ZCI+Jm5ic3A7
PC9zcGFuPjx1PjwvdT48dT48L3U+PC9wPgo8cCBjbGFzcz0iTXNvTm9ybWFsIj48YSBocmVmPSJo
dHRwOi8vd3d3Lmdvb2dsZS5jb20vdXJsP3NhPWkmYW1wO3JjdD1qJmFtcDtxPSZhbXA7ZXNyYz1z
JmFtcDtzb3VyY2U9aW1hZ2VzJmFtcDtjZD0mYW1wO2NhZD1yamEmYW1wO3VhY3Q9OCZhbXA7dmVk
PTBhaFVLRXdqNTBLV2F0NFhOQWhVTHhHTUtIUmhxRFBRUWpSd0lCdyZhbXA7dXJsPWh0dHAlM0El
MkYlMkZ3d3cudXJiYW5ibGlzc21lZGlhLmNvbSUyRmVudHJlcHJlbmV1ci1ydWxlcy1kb25lLWlz
LWJldHRlci10aGFuLXBlcmZlY3QlMkYmYW1wO3BzaWc9QUZRakNOR0tFaVBCMmlIU3F5QmlGNTYw
OXBkNzJIMEw3dyZhbXA7dXN0PTE0NjQ4MjI1MDM4NjU3NzciIHRhcmdldD0iX2JsYW5rIj48c3Bh
biBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7
LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFmNDk3ZDt0ZXh0LWRlY29yYXRpb246bm9u
ZSI+PGltZyBib3JkZXI9IjAiIHdpZHRoPSI0MzAiIGhlaWdodD0iNTU4IiBhbHQ9Imh0dHA6Ly93
d3cudXJiYW5ibGlzc2xpZmUuY29tL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDEyLzEwL0RvbmUtaXMt
QmV0dGVyLVRoYW4tUGVyZmVjdC5qcGciIGlkPSIxNDY0ODEyNDYyMDUwIj48L3NwYW4+PC9hPjx1
PjwvdT48dT48L3U+PC9wPgo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1z
aXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2Vy
aWYmcXVvdDs7Y29sb3I6IzFmNDk3ZCI+Jm5ic3A7PC9zcGFuPjx1PjwvdT48dT48L3U+PC9wPgo8
cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZh
bWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFm
NDk3ZCI+TGluZGEgRHVuYmFyPC9zcGFuPjx1PjwvdT48dT48L3U+PC9wPgo8cCBjbGFzcz0iTXNv
Tm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtD
YWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFmNDk3ZCI+Jm5ic3A7
PC9zcGFuPjx1PjwvdT48dT48L3U+PC9wPgo8ZGl2IHN0eWxlPSJib3JkZXI6bm9uZTtib3JkZXIt
dG9wOnNvbGlkICNiNWM0ZGYgMS4wcHQ7cGFkZGluZzozLjBwdCAwaW4gMGluIDBpbiI+CjxwIGNs
YXNzPSJNc29Ob3JtYWwiPjxiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFt
aWx5OiZxdW90O1RhaG9tYSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7Ij5Gcm9tOjwvc3Bh
bj48L2I+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7VGFo
b21hJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDsiPiBpMnJzIFttYWlsdG86PGEgaHJlZj0i
bWFpbHRvOmkycnMtYm91bmNlc0BpZXRmLm9yZyIgdGFyZ2V0PSJfYmxhbmsiPmkycnMtYm91bmNl
c0BpZXRmLm9yZzwvYT5dCjxiPk9uIEJlaGFsZiBPZiA8L2I+QW5keSBCaWVybWFuPGJyPgo8Yj5T
ZW50OjwvYj4gVHVlc2RheSwgTWF5IDMxLCAyMDE2IDQ6MDkgUE08YnI+CjxiPlRvOjwvYj4gSmVm
ZnJleSBIYWFzPGJyPgo8Yj5DYzo8L2I+IEJlbm9pdCBDbGFpc2U7IDxhIGhyZWY9Im1haWx0bzpp
MnJzQGlldGYub3JnIiB0YXJnZXQ9Il9ibGFuayI+aTJyc0BpZXRmLm9yZzwvYT47IEp1ZXJnZW4g
U2Nob2Vud2FlbGRlcjsgU3VzYW4gSGFyZXM7IEFsaWEgQXRsYXM8YnI+CjxiPlN1YmplY3Q6PC9i
PiBSZTogW2kycnNdIEkyUlMgSW50ZXJpbSBNZWV0aW5nIC0gSnVuZSAxLCAyMDE2IC0gMTA6MDBh
bSAtIDExOjAwYW0gLSBUb3BpYzogRXBoZW1lcmFsIFN0YXRlIFJlcXVpcmVtZW50czwvc3Bhbj48
dT48L3U+PHU+PC91PjwvcD4KPC9kaXY+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPiZuYnNwOzx1Pjwv
dT48dT48L3U+PC9wPgo8ZGl2Pgo8cCBjbGFzcz0iTXNvTm9ybWFsIj5IaSw8dT48L3U+PHU+PC91
PjwvcD4KPGRpdj4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+Jm5ic3A7PHU+PC91Pjx1PjwvdT48L3A+
CjwvZGl2Pgo8ZGl2Pgo8cCBjbGFzcz0iTXNvTm9ybWFsIj5JIGFtIG5vdCBjb252aW5jZWQgdGhl
IElFVEYgY2FuIGJlIGZvcmNlZCB0byBmdW5jdGlvbiBhcyBpZiBpdCB3ZXJlPHU+PC91Pjx1Pjwv
dT48L3A+CjwvZGl2Pgo8ZGl2Pgo8cCBjbGFzcz0iTXNvTm9ybWFsIj5hIGRldi1ncm91cCBpbiBz
b21lIGNvcnBvcmF0aW9uLiZuYnNwOyBUaGlzIGlzIGEgdm9sdW50ZWVyIG9yZ2FuaXphdGlvbiBz
bzx1PjwvdT48dT48L3U+PC9wPgo8L2Rpdj4KPGRpdj4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+dXN1
YWxseSBzb2x1dGlvbiBwcm9wb3NhbHMgY29tZSBmcm9tIHBlb3BsZSB3aG8gaGF2ZSBjcmVhdGVk
IGEgc29sdXRpb248dT48L3U+PHU+PC91PjwvcD4KPC9kaXY+CjxkaXY+CjxwIGNsYXNzPSJNc29O
b3JtYWwiPmFuZCB0aGV5IHdhbnQgdGhlIFdHIHRvIHN0YW5kYXJkaXplIGl0Ljx1PjwvdT48dT48
L3U+PC9wPgo8L2Rpdj4KPGRpdj4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+Jm5ic3A7PHU+PC91Pjx1
PjwvdT48L3A+CjwvZGl2Pgo8ZGl2Pgo8cCBjbGFzcz0iTXNvTm9ybWFsIj4mbmJzcDs8dT48L3U+
PHU+PC91PjwvcD4KPC9kaXY+CjxkaXY+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPkFuZHk8dT48L3U+
PHU+PC91PjwvcD4KPC9kaXY+CjxkaXY+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPiZuYnNwOzx1Pjwv
dT48dT48L3U+PC9wPgo8L2Rpdj4KPGRpdj4KPGRpdj4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+Jm5i
c3A7PHU+PC91Pjx1PjwvdT48L3A+CjxkaXY+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPk9uIFR1ZSwg
TWF5IDMxLCAyMDE2IGF0IDEyOjUxIFBNLCBKZWZmcmV5IEhhYXMgJmx0OzxhIGhyZWY9Im1haWx0
bzpqaGFhc0BwZnJjLm9yZyIgdGFyZ2V0PSJfYmxhbmsiPmpoYWFzQHBmcmMub3JnPC9hPiZndDsg
d3JvdGU6PHU+PC91Pjx1PjwvdT48L3A+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPkFuZHksPGJyPgo8
YnI+Ck9uIFR1ZSwgTWF5IDMxLCAyMDE2IGF0IDExOjQxOjU5QU0gLTA3MDAsIEFuZHkgQmllcm1h
biB3cm90ZTo8YnI+CiZndDsgQXQgc29tZSBwb2ludCB0aGUgV0cgbmVlZHMgdG8gYWdyZWUgb24g
bm9ybWF0aXZlIHRleHQgaW5zdGVhZCBvZiBpdGVyYXRpbmc8YnI+CiZndDsgb24gcmVxdWlyZW1l
bnRzIGZvcmV2ZXIuPGJyPgo8YnI+CklNTywgaXQgd291bGQgYmUgaW4gSTJSUydzIGJlc3QgaW50
ZXJlc3RzIGlmIG5ldGNvbmYvbmV0bW9kIHByb3ZpZGVkIGRyYWZ0czxicj4KaW4gYXBwcm9wcmlh
dGVseSBub3JtYXRpdmUgbGFuZ3VhZ2UgY292ZXJpbmcgSTJSUyByZXF1aXJlbWVudHMuJm5ic3A7
IEhvd2V2ZXIsPGJyPgp3ZSd2ZSBiZWVuIGluIGEgcGF0aG9sb2dpY2FsIGN5Y2xlIG9mOjxicj4K
IldlIGRvbid0IHVuZGVyc3RhbmQsIHBsZWFzZSBnaXZlIHVzIHJlcXVpcmVtZW50cyI8YnI+CiJX
ZSBkb24ndCB1bmRlcnN0YW5kIHlvdXIgcmVxdWlyZW1lbnRzIjxicj4KIllvdSBwcm92aWRlZCBl
eGFtcGxlcyB3aXRoIHlvdXIgcmVxdWlyZW1lbnRzIHRoYXQgYXBwZWFyIHRvIGJlIGF0dGVtcHRz
IHRvPGJyPgpjaGFuZ2Ugb3VyIHByb3RvY29sIC0gZG9uJ3QgZG8gdGhhdC4iPGJyPgo8YnI+ClRo
ZSBtb3N0IHJlY2VudCByZXZpc2VkLWRhdGFzdG9yZSBkcmFmdCB3b3VsZCBiZSBhIGdvb2QgcGxh
Y2UgdG8gZG9jdW1lbnQ8YnI+CndoZXJlIG5ldG1vZCgvbmV0Y29uZikgYmVsaWV2ZXMgZXBoZW1l
cmFsIGRhdGFzdG9yZXMgKGlmIHRoYXQncyB0aGU8YnI+Cmluc3RhbnRpYXRpb24pIGNvdWxkIGxp
dmUsIGFuZCBhbHNvIGhvdyBlcGhlbWVyYWwgY29uZmlndXJhdGlvbiBzdGF0ZSBjb3VsZDxicj4K
aW50ZXJhY3Qgd2l0aCBjYW5kaWRhdGUsIHN0YXJ0dXAgYW5kIHJ1bm5pbmcgY29uZmlndXJhdGlv
bi48YnI+Cjxicj4KeWFuZy1wdXNoIGNvdmVycyBtdWNoIG9mIG91ciBkZXNpcmVkIHB1Yi1zdWIg
YmVoYXZpb3IuIChZYXkhKTxicj4KPGJyPgpEaXNjdXNzaW9uIGlzIHJlcXVpcmVkIGZvciBob3cg
dG8gdGFnIHNlY3VyaXR5IGNvbnNpZGVyYXRpb25zIGltcGFjdGluZzxicj4KdHJhbnNwb3J0IGlu
dG8gdGhlIHlhbmcgbW9kZWwsIGluIHBhcnRpY3VsYXIgZm9yIG5vdGlmaWNhdGlvbi48YnI+Cjxi
cj4KUHJvcG9zYWxzIGZvciBzZWNvbmRhcnkgaWRlbnRpdHkgYW5kIHByaW9yaXR5IGFyZSBhbHNv
IG5lZWRlZC48YnI+Cjxicj4KLS0gSmVmZjx1PjwvdT48dT48L3U+PC9wPgo8L2Rpdj4KPHAgY2xh
c3M9Ik1zb05vcm1hbCI+Jm5ic3A7PHU+PC91Pjx1PjwvdT48L3A+CjwvZGl2Pgo8L2Rpdj4KPC9k
aXY+CjwvZGl2Pgo8L2Rpdj4KPC9kaXY+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjx1PjwvdT4mbmJz
cDs8dT48L3U+PC9wPgo8L2Rpdj4KPC9kaXY+CjwvZGl2Pgo8L2Rpdj4KPC9kaXY+PC9ibG9ja3F1
b3RlPjwvZGl2Pjxicj48L2Rpdj48L2Rpdj4KPC9ib2R5PjwvaHRtbD4=

----_com.samsung.android.email_5673070165926870--


From nobody Wed Jun  1 13:41:39 2016
Return-Path: <andy@yumaworks.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 3FF0F12D60E for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 13:41:36 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.59
X-Spam-Level: 
X-Spam-Status: No, score=-2.59 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001, T_REMOTE_IMAGE=0.01] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=yumaworks-com.20150623.gappssmtp.com
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 Dx7kxIhn_OUg for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 13:41:33 -0700 (PDT)
Received: from mail-yw0-x235.google.com (mail-yw0-x235.google.com [IPv6:2607:f8b0:4002:c05::235]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id B68A212D19D for <i2rs@ietf.org>; Wed,  1 Jun 2016 13:41:32 -0700 (PDT)
Received: by mail-yw0-x235.google.com with SMTP id h19so30560921ywc.0 for <i2rs@ietf.org>; Wed, 01 Jun 2016 13:41:32 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yumaworks-com.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc; bh=M3Tp51UWmrHMpFrD1TVFQ4fPfwBLlyni7+n4giX88qU=; b=wn0SQ7jI4H4hLhZxA+py18TyGuo8mEpmA/fYue0PL7Oy0EN97zNTnl/YaaSfD1Natt S2YI39Rfs3btnbjvSOEyFFXqz7sF/sdcCHQENhxdrDIN0Q/SCjs1JdjNmrofAKhnf/QE kmRMd+yqMMlSl/GDidjoj5ek44lTz0PNpV98uWDElDae0VdPXyxV3juUc9nXs0oDZq1B mRhbVHs9BR0Ky0DOD/S3qzYg0kdMx4JenjdBloKA585ndCgZdvMUkUgOvqrGh1JE2DOU D5yXm8nKaTDHkB+BHstszxpTkUhRoa3weHNZRHwNGWziz5wTdbAgANdRzyUD96whqU6+ 8nEg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc; bh=M3Tp51UWmrHMpFrD1TVFQ4fPfwBLlyni7+n4giX88qU=; b=IhvjzyjkiQV/1H7FMm+LWpJZKi/TwppPfqhhnp+x/z3c0wYVQ2WqsCGL67VrQA6wxG SYT/Sr/dhPsR76SR2MePyDQ9k7VPzt6BdJtXGnqs9Y2gbdtYQ0RFnHk2sEQE93aZLwx5 lO8bWOQ6DebHrgGCEfLJiHBuhbJv2l1MRmUDvrD6VAXrvqE66j8vKastwEDUEOLf5Yp9 /aM9taLA0yZ+0KxxtPNZANSUxb1p57UpggjlxIfwqO8qjU7c9/1JKmAiIRcICJNCJzLD MvSaAWYz5nubS8aWmRs4pHqEHs/Vpq1nNM2vvgSzpNTcGwN6wUEPRCqG+IDsyJAkZDNj hPhg==
X-Gm-Message-State: ALyK8tLWqkf2590CJ8uxepc837GV3U3dt65F1yePTW16d7wovXxPuAIcHCiFKTMm33feVdzmzg02nlflMbnCcw==
MIME-Version: 1.0
X-Received: by 10.129.111.132 with SMTP id k126mr3686631ywc.11.1464813691780;  Wed, 01 Jun 2016 13:41:31 -0700 (PDT)
Received: by 10.37.115.208 with HTTP; Wed, 1 Jun 2016 13:41:31 -0700 (PDT)
In-Reply-To: <xsbys52cmpraxwbpij02xg0x.1464813145704@email.android.com>
References: <xsbys52cmpraxwbpij02xg0x.1464813145704@email.android.com>
Date: Wed, 1 Jun 2016 13:41:31 -0700
Message-ID: <CABCOCHR6A5hxtpun7Qjko7xAek5YqTAmqCzurt=zU662TH6ujA@mail.gmail.com>
From: Andy Bierman <andy@yumaworks.com>
To: Susan Hares <shares@ndzh.com>
Content-Type: multipart/alternative; boundary=001a11492606c2e97f05343d83cf
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/I9IEk7b-nBD4DuOPM3wrna02wrs>
Cc: "i2rs@ietf.org" <i2rs@ietf.org>, Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>, Linda Dunbar <linda.dunbar@huawei.com>, Benoit Claise <bclaise@cisco.com>, Jeffrey Haas <jhaas@pfrc.org>, Alia Atlas <akatlas@gmail.com>
Subject: Re: [i2rs] Can I2RS focus on the "Over the Wire" data structure , not on how end point handle the "DataStore"?
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 01 Jun 2016 20:41:36 -0000

--001a11492606c2e97f05343d83cf
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

On Wed, Jun 1, 2016 at 1:32 PM, Susan Hares <shares@ndzh.com> wrote:

>
> Ah.. Interesting  viewpoint on the word "overwrite". And I find nothing
> wrong with your viewpoint.
>
> If i2rs only config does not resolve to installable state, how would you
> handle it.  Is this a case where i2rs config value does not exist so loca=
l
> config is used?  I am showing partial installation of i2rs rib model.
>
> If I can see how this works, maybe I can find a way to understand
> juergen's model.
>
>
Why would this work?
You mean the I2RS agent incorrectly accepts an edit that cannot be installe=
d
because it is invalid, or there are insufficient resources?

This is the same as the "no-validate" case for I2RS.
If there is a "when IPv4" clause that is ignored by the agent, such that
the agent
appears to accept "IPv4" fields in an "IPv6" entry, what happens?
(IMO this is 1 reason the no-validate mode is so broken).

Does the hopelessly invalid data stay in the ephemeral datastore?
Does the agent attempt to (incorrectly) apply the IPv4 parameters to an
IPv6 entry
or does the agent ignore the data (i.e., must be validating the data someho=
w
if it knows to ignore it)


Sue
>


Andy


>
> Sent via the Samsung Galaxy Note5, an AT&T 4G LTE smartphone
> -------- Original message --------
> From: Andy Bierman <andy@yumaworks.com>
> Date: 6/1/2016 3:11 PM (GMT-05:00)
> To: Susan Hares <shares@ndzh.com>
> Cc: Linda Dunbar <linda.dunbar@huawei.com>, i2rs@ietf.org, Juergen
> Schoenwaelder <j.schoenwaelder@jacobs-university.de>, Alia Atlas <
> akatlas@gmail.com>, Benoit Claise <bclaise@cisco.com>, Jeffrey Haas <
> jhaas@pfrc.org>
> Subject: Re: [i2rs] Can I2RS focus on the "Over the Wire" data structure =
,
> not on how end point handle the "DataStore"?
>
>
>
> On Wed, Jun 1, 2016 at 12:04 PM, Susan Hares <shares@ndzh.com> wrote:
>
>> Andy
>>
>> We currently are specifying i2rs rib model which can overwrite the local
>> config.    Implementations experience will provide us with input on the
>> protocols.
>>
>>
> I don't view it that way.
> The local config remains untouched throughout.
> The higher priority ephemeral config value is used instead of the local
> config value.
> The operational state should reflect that ephemeral config is overriding
> the local config.
> The data model for the I2RS version does not have to be the local config
> model.
>
>
>
>> Sue
>>
>>
>>
> Andy
>
>
>>
>> Sent via the Samsung Galaxy Note5, an AT&T 4G LTE smartphone
>> -------- Original message --------
>> From: Linda Dunbar <linda.dunbar@huawei.com>
>> Date: 6/1/2016 12:34 PM (GMT-05:00)
>> To: Andy Bierman <andy@yumaworks.com>
>> Cc: i2rs@ietf.org, Juergen Schoenwaelder <
>> j.schoenwaelder@jacobs-university.de>, Alia Atlas <akatlas@gmail.com>,
>> Benoit Claise <bclaise@cisco.com>, Jeffrey Haas <jhaas@pfrc.org>, Susan
>> Hares <shares@ndzh.com>
>> Subject: Re: [i2rs] Can I2RS focus on the "Over the Wire" data structure
>> , not on how end point handle the "DataStore"?
>>
>> Andy,
>>
>>
>>
>> Agree with your suggested approach.
>>
>>
>>
>> Linda
>>
>>
>>
>> *From:* Andy Bierman [mailto:andy@yumaworks.com]
>> *Sent:* Tuesday, May 31, 2016 9:05 PM
>> *To:* Linda Dunbar
>> *Cc:* Jeffrey Haas; Benoit Claise; i2rs@ietf.org; Juergen Schoenwaelder;
>> Susan Hares; Alia Atlas
>> *Subject:* Re: Can I2RS focus on the "Over the Wire" data structure ,
>> not on how end point handle the "DataStore"?
>>
>>
>>
>> Hi,
>>
>>
>>
>> If your graphic advice means "the requirements are good enough, move on"
>>
>> then I agree.
>>
>>
>>
>> The datastore framework would be nice to have, but it is very close
>>
>> to the implementation details.  It is also attempting to be a superset o=
f
>> all
>>
>> "accepted" implementation choices.
>>
>>
>>
>> By "on the wire" we usually mean a protocol specification.
>>
>> IMO, all that is needed (for editing) is a set of RESTCONF extensions.
>>
>> Some people want to describe the I2RS desired behavior wrt/ how it
>>
>> interacts with the local config. (and many more features...)
>>
>>
>>
>> Perhaps a good first step would be ephemeral data models that do not
>>
>> interact with the local config at all.  I2RS is the only protocol of
>> concern and the
>>
>> highest priority client.  I2RS just needs to support read/write/notify o=
f
>> ephemeral data.
>>
>> If this is not acceptable then be prepared to wait until all the
>> framework stuff is settled
>>
>> and standardized.
>>
>>
>>
>>
>>
>> Andy
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> On Tue, May 31, 2016 at 4:09 PM, Linda Dunbar <linda.dunbar@huawei.com>
>> wrote:
>>
>> IETF has been successful for past 20 years  in focusing on =E2=80=9COver=
 the
>> Wire=E2=80=9D data structure.  It would be so much cleaner and straight =
forward if
>> the YANG modules developed by I2RS  focusing on the =E2=80=9COver the Wi=
re=E2=80=9D data
>> structure (and with NETMOD to focus on other aspects).
>>
>> The =E2=80=9CI2RS ephemeral State=E2=80=9D has the needed description fo=
r the desired
>> behavior  of the data received over I2RS interface. If we follow the IET=
F
>> practice,  it is good enough.
>>
>> Internal implementation framework is always controversial, hard to
>> converge, usually ending up with a document (if completed) that is too b=
ig
>> and difficult to read.
>>
>>
>>
>> Providing some source code to show the internal implementation would be
>> much more useful as a reference implementation.
>>
>>
>>
>> The draft-schoenw-netmod-revised-datastores-00 is on the architectural
>> framework for datastores as they are used by network management protocol=
s.
>> IMHO, how data stores are used are internal to the end points.
>>
>>
>>
>> [image:
>> http://www.urbanblisslife.com/wp-content/uploads/2012/10/Done-is-Better-=
Than-Perfect.jpg]
>> <http://www.google.com/url?sa=3Di&rct=3Dj&q=3D&esrc=3Ds&source=3Dimages&=
cd=3D&cad=3Drja&uact=3D8&ved=3D0ahUKEwj50KWat4XNAhULxGMKHRhqDPQQjRwIBw&url=
=3Dhttp%3A%2F%2Fwww.urbanblissmedia.com%2Fentrepreneur-rules-done-is-better=
-than-perfect%2F&psig=3DAFQjCNGKEiPB2iHSqyBiF5609pd72H0L7w&ust=3D1464822503=
865777>
>>
>>
>>
>> Linda Dunbar
>>
>>
>>
>> *From:* i2rs [mailto:i2rs-bounces@ietf.org] *On Behalf Of *Andy Bierman
>> *Sent:* Tuesday, May 31, 2016 4:09 PM
>> *To:* Jeffrey Haas
>> *Cc:* Benoit Claise; i2rs@ietf.org; Juergen Schoenwaelder; Susan Hares;
>> Alia Atlas
>> *Subject:* Re: [i2rs] I2RS Interim Meeting - June 1, 2016 - 10:00am -
>> 11:00am - Topic: Ephemeral State Requirements
>>
>>
>>
>> Hi,
>>
>>
>>
>> I am not convinced the IETF can be forced to function as if it were
>>
>> a dev-group in some corporation.  This is a volunteer organization so
>>
>> usually solution proposals come from people who have created a solution
>>
>> and they want the WG to standardize it.
>>
>>
>>
>>
>>
>> Andy
>>
>>
>>
>>
>>
>> On Tue, May 31, 2016 at 12:51 PM, Jeffrey Haas <jhaas@pfrc.org> wrote:
>>
>> Andy,
>>
>> On Tue, May 31, 2016 at 11:41:59AM -0700, Andy Bierman wrote:
>> > At some point the WG needs to agree on normative text instead of
>> iterating
>> > on requirements forever.
>>
>> IMO, it would be in I2RS's best interests if netconf/netmod provided
>> drafts
>> in appropriately normative language covering I2RS requirements.  However=
,
>> we've been in a pathological cycle of:
>> "We don't understand, please give us requirements"
>> "We don't understand your requirements"
>> "You provided examples with your requirements that appear to be attempts
>> to
>> change our protocol - don't do that."
>>
>> The most recent revised-datastore draft would be a good place to documen=
t
>> where netmod(/netconf) believes ephemeral datastores (if that's the
>> instantiation) could live, and also how ephemeral configuration state
>> could
>> interact with candidate, startup and running configuration.
>>
>> yang-push covers much of our desired pub-sub behavior. (Yay!)
>>
>> Discussion is required for how to tag security considerations impacting
>> transport into the yang model, in particular for notification.
>>
>> Proposals for secondary identity and priority are also needed.
>>
>> -- Jeff
>>
>>
>>
>>
>>
>
>
> _______________________________________________
> i2rs mailing list
> i2rs@ietf.org
> https://www.ietf.org/mailman/listinfo/i2rs
>
>

--001a11492606c2e97f05343d83cf
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><br><div class=3D"gmail_extra"><br><div class=3D"gmail_quo=
te">On Wed, Jun 1, 2016 at 1:32 PM, Susan Hares <span dir=3D"ltr">&lt;<a hr=
ef=3D"mailto:shares@ndzh.com" target=3D"_blank">shares@ndzh.com</a>&gt;</sp=
an> wrote:<br><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;=
border-left:1px #ccc solid;padding-left:1ex"><div><div><br></div><div>Ah.. =
Interesting =C2=A0viewpoint on the word &quot;overwrite&quot;. And I find n=
othing wrong with your viewpoint.</div><div><br></div><div>If i2rs only con=
fig does not resolve to installable state, how would you handle it.=C2=A0 I=
s this a case where i2rs config value does not exist so local config is use=
d?=C2=A0 I am showing partial installation of i2rs rib model.=C2=A0</div><d=
iv><br></div><div>If I can see how this works, maybe I can find a way to un=
derstand juergen&#39;s model. =C2=A0</div><div><br></div></div></blockquote=
><div><br></div><div>Why would this work?</div><div>You mean the I2RS agent=
 incorrectly accepts an edit that cannot be installed</div><div>because it =
is invalid, or there are insufficient resources?</div><div><br></div><div>T=
his is the same as the &quot;no-validate&quot; case for I2RS.</div><div>If =
there is a &quot;when IPv4&quot; clause that is ignored by the agent, such =
that the agent</div><div>appears to accept &quot;IPv4&quot; fields in an &q=
uot;IPv6&quot; entry, what happens?<br></div><div>(IMO this is 1 reason the=
 no-validate mode is so broken).</div><div><br></div><div>Does the hopeless=
ly invalid data stay in the ephemeral datastore?</div><div>Does the agent a=
ttempt to (incorrectly) apply the IPv4 parameters to an IPv6 entry</div><di=
v>or does the agent ignore the data (i.e., must be validating the data some=
how</div><div>if it knows to ignore it)</div><div><br></div><div><br></div>=
<blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p=
x #ccc solid;padding-left:1ex"><div><div></div><div>Sue=C2=A0</div></div></=
blockquote><div><br></div><div><br></div><div>Andy</div><div>=C2=A0</div><b=
lockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px =
#ccc solid;padding-left:1ex"><div><div><br></div><div><div style=3D"font-si=
ze:85%;color:#575757">Sent via the Samsung Galaxy Note5, an AT&amp;T 4G LTE=
 smartphone</div></div><div style=3D"font-size:100%;color:#000000"><div>---=
----- Original message --------</div><div>From: Andy Bierman &lt;<a href=3D=
"mailto:andy@yumaworks.com" target=3D"_blank">andy@yumaworks.com</a>&gt; </=
div><div>Date: 6/1/2016  3:11 PM  (GMT-05:00) </div><div>To: Susan Hares &l=
t;<a href=3D"mailto:shares@ndzh.com" target=3D"_blank">shares@ndzh.com</a>&=
gt; </div><div>Cc: Linda Dunbar &lt;<a href=3D"mailto:linda.dunbar@huawei.c=
om" target=3D"_blank">linda.dunbar@huawei.com</a>&gt;, <a href=3D"mailto:i2=
rs@ietf.org" target=3D"_blank">i2rs@ietf.org</a>, Juergen Schoenwaelder &lt=
;<a href=3D"mailto:j.schoenwaelder@jacobs-university.de" target=3D"_blank">=
j.schoenwaelder@jacobs-university.de</a>&gt;, Alia Atlas &lt;<a href=3D"mai=
lto:akatlas@gmail.com" target=3D"_blank">akatlas@gmail.com</a>&gt;, Benoit =
Claise &lt;<a href=3D"mailto:bclaise@cisco.com" target=3D"_blank">bclaise@c=
isco.com</a>&gt;, Jeffrey Haas &lt;<a href=3D"mailto:jhaas@pfrc.org" target=
=3D"_blank">jhaas@pfrc.org</a>&gt; </div><div>Subject: Re: [i2rs] Can I2RS =
focus on the &quot;Over the Wire&quot; data structure , not on how end poin=
t handle the &quot;DataStore&quot;? </div><div><br></div></div><div dir=3D"=
ltr"><br><div class=3D"gmail_extra"><br><div class=3D"gmail_quote">On Wed, =
Jun 1, 2016 at 12:04 PM, Susan Hares <span dir=3D"ltr">&lt;<a href=3D"mailt=
o:shares@ndzh.com" target=3D"_blank">shares@ndzh.com</a>&gt;</span> wrote:<=
br><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left=
:1px #ccc solid;padding-left:1ex"><div><div>Andy</div><div><br></div><div>W=
e currently are specifying i2rs rib model which can overwrite the local con=
fig. =C2=A0 =C2=A0Implementations experience will provide us with input on =
the protocols.=C2=A0</div><div><br></div></div></blockquote><div><br></div>=
<div>I don&#39;t view it that way.</div><div>The local config remains untou=
ched throughout.</div><div>The higher priority ephemeral config value is us=
ed instead of the local config value.</div><div>The operational state shoul=
d reflect that ephemeral config is overriding the local config.</div><div>T=
he data model for the I2RS version does not have to be the local config mod=
el.</div><div><br></div><div>=C2=A0</div><blockquote class=3D"gmail_quote" =
style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><di=
v><div></div><div>Sue</div><div><br></div><div><br></div></div></blockquote=
><div><br></div><div>Andy</div><div>=C2=A0</div><blockquote class=3D"gmail_=
quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1=
ex"><div><div></div><div><br></div><div><div style=3D"font-size:85%;color:#=
575757">Sent via the Samsung Galaxy Note5, an AT&amp;T 4G LTE smartphone</d=
iv></div><div style=3D"font-size:100%;color:#000000"><div>-------- Original=
 message --------</div><div>From: Linda Dunbar &lt;<a href=3D"mailto:linda.=
dunbar@huawei.com" target=3D"_blank">linda.dunbar@huawei.com</a>&gt; </div>=
<div>Date: 6/1/2016  12:34 PM  (GMT-05:00) </div><div>To: Andy Bierman &lt;=
<a href=3D"mailto:andy@yumaworks.com" target=3D"_blank">andy@yumaworks.com<=
/a>&gt; </div><div>Cc: <a href=3D"mailto:i2rs@ietf.org" target=3D"_blank">i=
2rs@ietf.org</a>, Juergen Schoenwaelder &lt;<a href=3D"mailto:j.schoenwaeld=
er@jacobs-university.de" target=3D"_blank">j.schoenwaelder@jacobs-universit=
y.de</a>&gt;, Alia Atlas &lt;<a href=3D"mailto:akatlas@gmail.com" target=3D=
"_blank">akatlas@gmail.com</a>&gt;, Benoit Claise &lt;<a href=3D"mailto:bcl=
aise@cisco.com" target=3D"_blank">bclaise@cisco.com</a>&gt;, Jeffrey Haas &=
lt;<a href=3D"mailto:jhaas@pfrc.org" target=3D"_blank">jhaas@pfrc.org</a>&g=
t;, Susan Hares &lt;<a href=3D"mailto:shares@ndzh.com" target=3D"_blank">sh=
ares@ndzh.com</a>&gt; </div><div>Subject: Re: [i2rs] Can I2RS focus on the =
&quot;Over the Wire&quot; data structure , not on how end point handle the =
&quot;DataStore&quot;? </div><div><br></div></div>
<div>
<p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:&quot;Ca=
libri&quot;,&quot;sans-serif&quot;;color:#1f497d">Andy,
<u></u><u></u></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:&quot;Ca=
libri&quot;,&quot;sans-serif&quot;;color:#1f497d"><u></u>=C2=A0<u></u></spa=
n></p>
<p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:&quot;Ca=
libri&quot;,&quot;sans-serif&quot;;color:#1f497d">Agree with your suggested=
 approach.
<u></u><u></u></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:&quot;Ca=
libri&quot;,&quot;sans-serif&quot;;color:#1f497d"><u></u>=C2=A0<u></u></spa=
n></p>
<p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:&quot;Ca=
libri&quot;,&quot;sans-serif&quot;;color:#1f497d">Linda
<u></u><u></u></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:&quot;Ca=
libri&quot;,&quot;sans-serif&quot;;color:#1f497d"><u></u>=C2=A0<u></u></spa=
n></p>
<div style=3D"border:none;border-top:solid #b5c4df 1.0pt;padding:3.0pt 0in =
0in 0in">
<p class=3D"MsoNormal"><b><span style=3D"font-size:10.0pt;font-family:&quot=
;Tahoma&quot;,&quot;sans-serif&quot;">From:</span></b><span style=3D"font-s=
ize:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;"> Andy Bie=
rman [mailto:<a href=3D"mailto:andy@yumaworks.com" target=3D"_blank">andy@y=
umaworks.com</a>]
<br>
<b>Sent:</b> Tuesday, May 31, 2016 9:05 PM<br>
<b>To:</b> Linda Dunbar<br>
<b>Cc:</b> Jeffrey Haas; Benoit Claise; <a href=3D"mailto:i2rs@ietf.org" ta=
rget=3D"_blank">i2rs@ietf.org</a>; Juergen Schoenwaelder; Susan Hares; Alia=
 Atlas<br>
<b>Subject:</b> Re: Can I2RS focus on the &quot;Over the Wire&quot; data st=
ructure , not on how end point handle the &quot;DataStore&quot;?<u></u><u><=
/u></span></p>
</div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
<div>
<p class=3D"MsoNormal">Hi,<u></u><u></u></p>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
<div>
<p class=3D"MsoNormal">If your graphic advice means &quot;the requirements =
are good enough, move on&quot;<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">then I agree.<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
<div>
<p class=3D"MsoNormal">The datastore framework would be nice to have, but i=
t is very close<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">to the implementation details.=C2=A0 It is also atte=
mpting to be a superset of all<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">&quot;accepted&quot; implementation choices.<u></u><=
u></u></p>
</div>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
<div>
<p class=3D"MsoNormal">By &quot;on the wire&quot; we usually mean a protoco=
l specification.<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">IMO, all that is needed (for editing) is a set of RE=
STCONF extensions.<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">Some people want to describe the I2RS desired behavi=
or wrt/ how it<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">interacts with the local config. (and many more feat=
ures...)<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
<div>
<p class=3D"MsoNormal">Perhaps a good first step would be ephemeral data mo=
dels that do not<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">interact with the local config at all.=C2=A0 I2RS is=
 the only protocol of concern and the<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">highest priority client.=C2=A0 I2RS just needs to su=
pport read/write/notify of ephemeral data.<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">If this is not acceptable then be prepared to wait u=
ntil all the framework stuff is settled<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">and standardized.<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
<div>
<p class=3D"MsoNormal">Andy<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
<div>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
<div>
<p class=3D"MsoNormal">On Tue, May 31, 2016 at 4:09 PM, Linda Dunbar &lt;<a=
 href=3D"mailto:linda.dunbar@huawei.com" target=3D"_blank">linda.dunbar@hua=
wei.com</a>&gt; wrote:<u></u><u></u></p>
<div>
<div>
<p class=3D"MsoNormal"><span style=3D"font-family:&quot;Calibri&quot;,&quot=
;sans-serif&quot;;color:#1f497d">IETF has been successful for past 20 years=
 =C2=A0in focusing on =E2=80=9COver the Wire=E2=80=9D data structure.=C2=A0=
 It would be so much cleaner
 and straight forward if the YANG modules developed by I2RS =C2=A0focusing =
on the =E2=80=9COver the Wire=E2=80=9D data structure (and with NETMOD to f=
ocus on other aspects).</span><u></u><u></u></p>
<p class=3D"MsoNormal"><span style=3D"font-family:&quot;Calibri&quot;,&quot=
;sans-serif&quot;;color:#1f497d">The =E2=80=9CI2RS ephemeral State=E2=80=9D=
 has the needed description for the desired behavior =C2=A0of the data rece=
ived over I2RS interface.
 If we follow the IETF practice, =C2=A0it is good enough. </span><u></u><u>=
</u></p>
<p class=3D"MsoNormal"><span style=3D"font-family:&quot;Calibri&quot;,&quot=
;sans-serif&quot;;color:#1f497d">Internal implementation framework is alway=
s controversial, hard to converge, usually ending up with a document (if
 completed) that is too big and difficult to read. </span><u></u><u></u></p=
>
<p class=3D"MsoNormal"><span style=3D"font-family:&quot;Calibri&quot;,&quot=
;sans-serif&quot;;color:#1f497d">=C2=A0</span><u></u><u></u></p>
<p class=3D"MsoNormal"><span style=3D"font-family:&quot;Calibri&quot;,&quot=
;sans-serif&quot;;color:#1f497d">Providing some source code to show the int=
ernal implementation would be much more useful as a reference implementatio=
n.
</span><u></u><u></u></p>
<p class=3D"MsoNormal"><span style=3D"font-family:&quot;Calibri&quot;,&quot=
;sans-serif&quot;;color:#1f497d">=C2=A0</span><u></u><u></u></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none">
<span style=3D"font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color=
:#1f497d">The </span><span style=3D"font-family:Courier">draft-schoenw-netm=
od-revised-datastores-00
</span><span style=3D"font-family:&quot;Calibri&quot;,&quot;sans-serif&quot=
;;color:#1f497d">is on the architectural framework for datastores as they a=
re used by network management protocols. IMHO, how data stores are used are=
 internal to the end points.
</span><u></u><u></u></p>
<p class=3D"MsoNormal"><span style=3D"font-family:&quot;Calibri&quot;,&quot=
;sans-serif&quot;;color:#1f497d">=C2=A0</span><u></u><u></u></p>
<p class=3D"MsoNormal"><a href=3D"http://www.google.com/url?sa=3Di&amp;rct=
=3Dj&amp;q=3D&amp;esrc=3Ds&amp;source=3Dimages&amp;cd=3D&amp;cad=3Drja&amp;=
uact=3D8&amp;ved=3D0ahUKEwj50KWat4XNAhULxGMKHRhqDPQQjRwIBw&amp;url=3Dhttp%3=
A%2F%2Fwww.urbanblissmedia.com%2Fentrepreneur-rules-done-is-better-than-per=
fect%2F&amp;psig=3DAFQjCNGKEiPB2iHSqyBiF5609pd72H0L7w&amp;ust=3D14648225038=
65777" target=3D"_blank"><span style=3D"font-size:11.0pt;font-family:&quot;=
Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d;text-decoration:none"><i=
mg border=3D"0" width=3D"430" height=3D"558" alt=3D"http://www.urbanblissli=
fe.com/wp-content/uploads/2012/10/Done-is-Better-Than-Perfect.jpg"></span><=
/a><u></u><u></u></p>
<p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:&quot;Ca=
libri&quot;,&quot;sans-serif&quot;;color:#1f497d">=C2=A0</span><u></u><u></=
u></p>
<p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:&quot;Ca=
libri&quot;,&quot;sans-serif&quot;;color:#1f497d">Linda Dunbar</span><u></u=
><u></u></p>
<p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:&quot;Ca=
libri&quot;,&quot;sans-serif&quot;;color:#1f497d">=C2=A0</span><u></u><u></=
u></p>
<div style=3D"border:none;border-top:solid #b5c4df 1.0pt;padding:3.0pt 0in =
0in 0in">
<p class=3D"MsoNormal"><b><span style=3D"font-size:10.0pt;font-family:&quot=
;Tahoma&quot;,&quot;sans-serif&quot;">From:</span></b><span style=3D"font-s=
ize:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;"> i2rs [ma=
ilto:<a href=3D"mailto:i2rs-bounces@ietf.org" target=3D"_blank">i2rs-bounce=
s@ietf.org</a>]
<b>On Behalf Of </b>Andy Bierman<br>
<b>Sent:</b> Tuesday, May 31, 2016 4:09 PM<br>
<b>To:</b> Jeffrey Haas<br>
<b>Cc:</b> Benoit Claise; <a href=3D"mailto:i2rs@ietf.org" target=3D"_blank=
">i2rs@ietf.org</a>; Juergen Schoenwaelder; Susan Hares; Alia Atlas<br>
<b>Subject:</b> Re: [i2rs] I2RS Interim Meeting - June 1, 2016 - 10:00am - =
11:00am - Topic: Ephemeral State Requirements</span><u></u><u></u></p>
</div>
<p class=3D"MsoNormal">=C2=A0<u></u><u></u></p>
<div>
<p class=3D"MsoNormal">Hi,<u></u><u></u></p>
<div>
<p class=3D"MsoNormal">=C2=A0<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">I am not convinced the IETF can be forced to functio=
n as if it were<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">a dev-group in some corporation.=C2=A0 This is a vol=
unteer organization so<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">usually solution proposals come from people who have=
 created a solution<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">and they want the WG to standardize it.<u></u><u></u=
></p>
</div>
<div>
<p class=3D"MsoNormal">=C2=A0<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">=C2=A0<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">Andy<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">=C2=A0<u></u><u></u></p>
</div>
<div>
<div>
<p class=3D"MsoNormal">=C2=A0<u></u><u></u></p>
<div>
<p class=3D"MsoNormal">On Tue, May 31, 2016 at 12:51 PM, Jeffrey Haas &lt;<=
a href=3D"mailto:jhaas@pfrc.org" target=3D"_blank">jhaas@pfrc.org</a>&gt; w=
rote:<u></u><u></u></p>
<p class=3D"MsoNormal">Andy,<br>
<br>
On Tue, May 31, 2016 at 11:41:59AM -0700, Andy Bierman wrote:<br>
&gt; At some point the WG needs to agree on normative text instead of itera=
ting<br>
&gt; on requirements forever.<br>
<br>
IMO, it would be in I2RS&#39;s best interests if netconf/netmod provided dr=
afts<br>
in appropriately normative language covering I2RS requirements.=C2=A0 Howev=
er,<br>
we&#39;ve been in a pathological cycle of:<br>
&quot;We don&#39;t understand, please give us requirements&quot;<br>
&quot;We don&#39;t understand your requirements&quot;<br>
&quot;You provided examples with your requirements that appear to be attemp=
ts to<br>
change our protocol - don&#39;t do that.&quot;<br>
<br>
The most recent revised-datastore draft would be a good place to document<b=
r>
where netmod(/netconf) believes ephemeral datastores (if that&#39;s the<br>
instantiation) could live, and also how ephemeral configuration state could=
<br>
interact with candidate, startup and running configuration.<br>
<br>
yang-push covers much of our desired pub-sub behavior. (Yay!)<br>
<br>
Discussion is required for how to tag security considerations impacting<br>
transport into the yang model, in particular for notification.<br>
<br>
Proposals for secondary identity and priority are also needed.<br>
<br>
-- Jeff<u></u><u></u></p>
</div>
<p class=3D"MsoNormal">=C2=A0<u></u><u></u></p>
</div>
</div>
</div>
</div>
</div>
</div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
</div>
</div>
</div>
</div></blockquote></div><br></div></div>
</div><br>_______________________________________________<br>
i2rs mailing list<br>
<a href=3D"mailto:i2rs@ietf.org">i2rs@ietf.org</a><br>
<a href=3D"https://www.ietf.org/mailman/listinfo/i2rs" rel=3D"noreferrer" t=
arget=3D"_blank">https://www.ietf.org/mailman/listinfo/i2rs</a><br>
<br></blockquote></div><br></div></div>

--001a11492606c2e97f05343d83cf--


From nobody Wed Jun  1 13:59:16 2016
Return-Path: <shares@ndzh.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 1DCEB12D618 for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 13:59:02 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.096
X-Spam-Level: 
X-Spam-Status: No, score=-1.096 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RDNS_NONE=0.793, T_REMOTE_IMAGE=0.01] autolearn=no autolearn_force=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 g7LlUfD5UwnF for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 13:58:59 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 70BAB12D616 for <i2rs@ietf.org>; Wed,  1 Jun 2016 13:58:59 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=107.92.120.142; 
Date: Wed, 01 Jun 2016 16:58:33 -0400
Message-ID: <xtacw4gpqi42sf3pimiu1rc7.1464814713797@email.android.com>
Importance: normal
From: Susan Hares <shares@ndzh.com>
To: Andy Bierman <andy@yumaworks.com>
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="--_com.samsung.android.email_5686063055465150"
X-Authenticated-User: skh@ndzh.com 
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/eO7VYAIJ33uwhFD-PInddYuBjwU>
Cc: "i2rs@ietf.org" <i2rs@ietf.org>, Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>, Alia Atlas <akatlas@gmail.com>, Jeffrey Haas <jhaas@pfrc.org>, Benoit Claise <bclaise@cisco.com>, Linda Dunbar <linda.dunbar@huawei.com>
Subject: Re: [i2rs] Can I2RS focus on the "Over the Wire" data structure , not on how end point handle the "DataStore"?
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 01 Jun 2016 20:59:02 -0000

----_com.samsung.android.email_5686063055465150
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: base64

QW5keQpTZWUgYmVsb3cuCgoKU2VudCB2aWEgdGhlIFNhbXN1bmcgR2FsYXh5IE5vdGU1LCBhbiBB
VCZUIDRHIExURSBzbWFydHBob25lLS0tLS0tLS0gT3JpZ2luYWwgbWVzc2FnZSAtLS0tLS0tLUZy
b206IEFuZHkgQmllcm1hbiA8YW5keUB5dW1hd29ya3MuY29tPiBEYXRlOiA2LzEvMjAxNiAgNDo0
MSBQTSAgKEdNVC0wNTowMCkgVG86IFN1c2FuIEhhcmVzIDxzaGFyZXNAbmR6aC5jb20+IENjOiBp
MnJzQGlldGYub3JnLCBKdWVyZ2VuIFNjaG9lbndhZWxkZXIgPGouc2Nob2Vud2FlbGRlckBqYWNv
YnMtdW5pdmVyc2l0eS5kZT4sIExpbmRhIER1bmJhciA8bGluZGEuZHVuYmFyQGh1YXdlaS5jb20+
LCBCZW5vaXQgQ2xhaXNlIDxiY2xhaXNlQGNpc2NvLmNvbT4sIEplZmZyZXkgSGFhcyA8amhhYXNA
cGZyYy5vcmc+LCBBbGlhIEF0bGFzIDxha2F0bGFzQGdtYWlsLmNvbT4gU3ViamVjdDogUmU6IFtp
MnJzXSBDYW4gSTJSUyBmb2N1cyBvbiB0aGUgIk92ZXIgdGhlIFdpcmUiIGRhdGEgc3RydWN0dXJl
ICwgbm90IG9uIGhvdyBlbmQgcG9pbnQgaGFuZGxlIHRoZSAiRGF0YVN0b3JlIj8gCgoKT24gV2Vk
LCBKdW4gMSwgMjAxNiBhdCAxOjMyIFBNLCBTdXNhbiBIYXJlcyA8c2hhcmVzQG5kemguY29tPiB3
cm90ZToKCkFoLi4gSW50ZXJlc3RpbmcgwqB2aWV3cG9pbnQgb24gdGhlIHdvcmQgIm92ZXJ3cml0
ZSIuIEFuZCBJIGZpbmQgbm90aGluZyB3cm9uZyB3aXRoIHlvdXIgdmlld3BvaW50LgpJZiBpMnJz
IG9ubHkgY29uZmlnIGRvZXMgbm90IHJlc29sdmUgdG8gaW5zdGFsbGFibGUgc3RhdGUsIGhvdyB3
b3VsZCB5b3UgaGFuZGxlIGl0LsKgIElzIHRoaXMgYSBjYXNlIHdoZXJlIGkycnMgY29uZmlnIHZh
bHVlIGRvZXMgbm90IGV4aXN0IHNvIGxvY2FsIGNvbmZpZyBpcyB1c2VkP8KgIEkgYW0gc2hvd2lu
ZyBwYXJ0aWFsIGluc3RhbGxhdGlvbiBvZiBpMnJzIHJpYiBtb2RlbC7CoApJZiBJIGNhbiBzZWUg
aG93IHRoaXMgd29ya3MsIG1heWJlIEkgY2FuIGZpbmQgYSB3YXkgdG8gdW5kZXJzdGFuZCBqdWVy
Z2VuJ3MgbW9kZWwuIMKgCgpXaHkgd291bGQgdGhpcyB3b3JrP1lvdSBtZWFuIHRoZSBJMlJTIGFn
ZW50IGluY29ycmVjdGx5IGFjY2VwdHMgYW4gZWRpdCB0aGF0IGNhbm5vdCBiZSBpbnN0YWxsZWRi
ZWNhdXNlIGl0IGlzIGludmFsaWQsIG9yIHRoZXJlIGFyZSBpbnN1ZmZpY2llbnQgcmVzb3VyY2Vz
PwpTdWU6OiB2YWxpZCBjb25maWcuIMKgUm91dGUgbmVlZHMgdG8gcmVzb2x2ZSBuZXh0IGhvcCB0
byBzcGVjaWZpYyBpbnRlcmZhY2UuClRoaXMgaXMgdGhlIHNhbWUgYXMgdGhlICJuby12YWxpZGF0
ZSIgY2FzZSBmb3IgSTJSUy5JZiB0aGVyZSBpcyBhICJ3aGVuIElQdjQiIGNsYXVzZSB0aGF0IGlz
IGlnbm9yZWQgYnkgdGhlIGFnZW50LCBzdWNoIHRoYXQgdGhlIGFnZW50YXBwZWFycyB0byBhY2Nl
cHQgIklQdjQiIGZpZWxkcyBpbiBhbiAiSVB2NiIgZW50cnksIHdoYXQgaGFwcGVucz8KKElNTyB0
aGlzIGlzIDEgcmVhc29uIHRoZSBuby12YWxpZGF0ZSBtb2RlIGlzIHNvIGJyb2tlbikuClN1ZTog
bm90IHRoZSBzYW1lIGNhc2UuIE5vdCBpbnZhbGlkIGNvbmZpZy4gwqBKdXN0IG5vdCByZXNvbHZl
IHRvIGludGVyZmFjZSB0byBzZW5kIHBhY2tldCBvdXQKRG9lcyB0aGUgaG9wZWxlc3NseSBpbnZh
bGlkIGRhdGEgc3RheSBpbiB0aGUgZXBoZW1lcmFsIGRhdGFzdG9yZT9Eb2VzIHRoZSBhZ2VudCBh
dHRlbXB0IHRvIChpbmNvcnJlY3RseSkgYXBwbHkgdGhlIElQdjQgcGFyYW1ldGVycyB0byBhbiBJ
UHY2IGVudHJ5b3IgZG9lcyB0aGUgYWdlbnQgaWdub3JlIHRoZSBkYXRhIChpLmUuLCBtdXN0IGJl
IHZhbGlkYXRpbmcgdGhlIGRhdGEgc29tZWhvd2lmIGl0IGtub3dzIHRvIGlnbm9yZSBpdCkKU3Vl
OiBub3QgdGhpcyBjYXNlLiDCoEVwaGVtZXJhbCBjb25maWcgaGFzIGJlZW4gdmFsaWRhdGVkIGxp
a2UgYWxsIHlhbmcgdmFsaWRhdGlvbi4KU3VlwqAKCkFuZHnCoApTZW50IHZpYSB0aGUgU2Ftc3Vu
ZyBHYWxheHkgTm90ZTUsIGFuIEFUJlQgNEcgTFRFIHNtYXJ0cGhvbmUtLS0tLS0tLSBPcmlnaW5h
bCBtZXNzYWdlIC0tLS0tLS0tRnJvbTogQW5keSBCaWVybWFuIDxhbmR5QHl1bWF3b3Jrcy5jb20+
IERhdGU6IDYvMS8yMDE2ICAzOjExIFBNICAoR01ULTA1OjAwKSBUbzogU3VzYW4gSGFyZXMgPHNo
YXJlc0BuZHpoLmNvbT4gQ2M6IExpbmRhIER1bmJhciA8bGluZGEuZHVuYmFyQGh1YXdlaS5jb20+
LCBpMnJzQGlldGYub3JnLCBKdWVyZ2VuIFNjaG9lbndhZWxkZXIgPGouc2Nob2Vud2FlbGRlckBq
YWNvYnMtdW5pdmVyc2l0eS5kZT4sIEFsaWEgQXRsYXMgPGFrYXRsYXNAZ21haWwuY29tPiwgQmVu
b2l0IENsYWlzZSA8YmNsYWlzZUBjaXNjby5jb20+LCBKZWZmcmV5IEhhYXMgPGpoYWFzQHBmcmMu
b3JnPiBTdWJqZWN0OiBSZTogW2kycnNdIENhbiBJMlJTIGZvY3VzIG9uIHRoZSAiT3ZlciB0aGUg
V2lyZSIgZGF0YSBzdHJ1Y3R1cmUgLCBub3Qgb24gaG93IGVuZCBwb2ludCBoYW5kbGUgdGhlICJE
YXRhU3RvcmUiPyAKCgpPbiBXZWQsIEp1biAxLCAyMDE2IGF0IDEyOjA0IFBNLCBTdXNhbiBIYXJl
cyA8c2hhcmVzQG5kemguY29tPiB3cm90ZToKQW5keQpXZSBjdXJyZW50bHkgYXJlIHNwZWNpZnlp
bmcgaTJycyByaWIgbW9kZWwgd2hpY2ggY2FuIG92ZXJ3cml0ZSB0aGUgbG9jYWwgY29uZmlnLiDC
oCDCoEltcGxlbWVudGF0aW9ucyBleHBlcmllbmNlIHdpbGwgcHJvdmlkZSB1cyB3aXRoIGlucHV0
IG9uIHRoZSBwcm90b2NvbHMuwqAKCkkgZG9uJ3QgdmlldyBpdCB0aGF0IHdheS5UaGUgbG9jYWwg
Y29uZmlnIHJlbWFpbnMgdW50b3VjaGVkIHRocm91Z2hvdXQuVGhlIGhpZ2hlciBwcmlvcml0eSBl
cGhlbWVyYWwgY29uZmlnIHZhbHVlIGlzIHVzZWQgaW5zdGVhZCBvZiB0aGUgbG9jYWwgY29uZmln
IHZhbHVlLlRoZSBvcGVyYXRpb25hbCBzdGF0ZSBzaG91bGQgcmVmbGVjdCB0aGF0IGVwaGVtZXJh
bCBjb25maWcgaXMgb3ZlcnJpZGluZyB0aGUgbG9jYWwgY29uZmlnLlRoZSBkYXRhIG1vZGVsIGZv
ciB0aGUgSTJSUyB2ZXJzaW9uIGRvZXMgbm90IGhhdmUgdG8gYmUgdGhlIGxvY2FsIGNvbmZpZyBt
b2RlbC4KwqBTdWUKCgpBbmR5wqAKU2VudCB2aWEgdGhlIFNhbXN1bmcgR2FsYXh5IE5vdGU1LCBh
biBBVCZUIDRHIExURSBzbWFydHBob25lLS0tLS0tLS0gT3JpZ2luYWwgbWVzc2FnZSAtLS0tLS0t
LUZyb206IExpbmRhIER1bmJhciA8bGluZGEuZHVuYmFyQGh1YXdlaS5jb20+IERhdGU6IDYvMS8y
MDE2ICAxMjozNCBQTSAgKEdNVC0wNTowMCkgVG86IEFuZHkgQmllcm1hbiA8YW5keUB5dW1hd29y
a3MuY29tPiBDYzogaTJyc0BpZXRmLm9yZywgSnVlcmdlbiBTY2hvZW53YWVsZGVyIDxqLnNjaG9l
bndhZWxkZXJAamFjb2JzLXVuaXZlcnNpdHkuZGU+LCBBbGlhIEF0bGFzIDxha2F0bGFzQGdtYWls
LmNvbT4sIEJlbm9pdCBDbGFpc2UgPGJjbGFpc2VAY2lzY28uY29tPiwgSmVmZnJleSBIYWFzIDxq
aGFhc0BwZnJjLm9yZz4sIFN1c2FuIEhhcmVzIDxzaGFyZXNAbmR6aC5jb20+IFN1YmplY3Q6IFJl
OiBbaTJyc10gQ2FuIEkyUlMgZm9jdXMgb24gdGhlICJPdmVyIHRoZSBXaXJlIiBkYXRhIHN0cnVj
dHVyZSAsIG5vdCBvbiBob3cgZW5kIHBvaW50IGhhbmRsZSB0aGUgIkRhdGFTdG9yZSI/IAoKCkFu
ZHksCgrCoApBZ3JlZSB3aXRoIHlvdXIgc3VnZ2VzdGVkIGFwcHJvYWNoLgoKwqAKTGluZGEKCsKg
CgpGcm9tOiBBbmR5IEJpZXJtYW4gW21haWx0bzphbmR5QHl1bWF3b3Jrcy5jb21dCgoKU2VudDog
VHVlc2RheSwgTWF5IDMxLCAyMDE2IDk6MDUgUE0KClRvOiBMaW5kYSBEdW5iYXIKCkNjOiBKZWZm
cmV5IEhhYXM7IEJlbm9pdCBDbGFpc2U7IGkycnNAaWV0Zi5vcmc7IEp1ZXJnZW4gU2Nob2Vud2Fl
bGRlcjsgU3VzYW4gSGFyZXM7IEFsaWEgQXRsYXMKClN1YmplY3Q6IFJlOiBDYW4gSTJSUyBmb2N1
cyBvbiB0aGUgIk92ZXIgdGhlIFdpcmUiIGRhdGEgc3RydWN0dXJlICwgbm90IG9uIGhvdyBlbmQg
cG9pbnQgaGFuZGxlIHRoZSAiRGF0YVN0b3JlIj8KCsKgCgpIaSwKCsKgCgoKSWYgeW91ciBncmFw
aGljIGFkdmljZSBtZWFucyAidGhlIHJlcXVpcmVtZW50cyBhcmUgZ29vZCBlbm91Z2gsIG1vdmUg
b24iCgoKdGhlbiBJIGFncmVlLgoKCsKgCgoKVGhlIGRhdGFzdG9yZSBmcmFtZXdvcmsgd291bGQg
YmUgbmljZSB0byBoYXZlLCBidXQgaXQgaXMgdmVyeSBjbG9zZQoKCnRvIHRoZSBpbXBsZW1lbnRh
dGlvbiBkZXRhaWxzLsKgIEl0IGlzIGFsc28gYXR0ZW1wdGluZyB0byBiZSBhIHN1cGVyc2V0IG9m
IGFsbAoKCiJhY2NlcHRlZCIgaW1wbGVtZW50YXRpb24gY2hvaWNlcy4KCgrCoAoKCkJ5ICJvbiB0
aGUgd2lyZSIgd2UgdXN1YWxseSBtZWFuIGEgcHJvdG9jb2wgc3BlY2lmaWNhdGlvbi4KCgpJTU8s
IGFsbCB0aGF0IGlzIG5lZWRlZCAoZm9yIGVkaXRpbmcpIGlzIGEgc2V0IG9mIFJFU1RDT05GIGV4
dGVuc2lvbnMuCgoKU29tZSBwZW9wbGUgd2FudCB0byBkZXNjcmliZSB0aGUgSTJSUyBkZXNpcmVk
IGJlaGF2aW9yIHdydC8gaG93IGl0CgoKaW50ZXJhY3RzIHdpdGggdGhlIGxvY2FsIGNvbmZpZy4g
KGFuZCBtYW55IG1vcmUgZmVhdHVyZXMuLi4pCgoKwqAKCgpQZXJoYXBzIGEgZ29vZCBmaXJzdCBz
dGVwIHdvdWxkIGJlIGVwaGVtZXJhbCBkYXRhIG1vZGVscyB0aGF0IGRvIG5vdAoKCmludGVyYWN0
IHdpdGggdGhlIGxvY2FsIGNvbmZpZyBhdCBhbGwuwqAgSTJSUyBpcyB0aGUgb25seSBwcm90b2Nv
bCBvZiBjb25jZXJuIGFuZCB0aGUKCgpoaWdoZXN0IHByaW9yaXR5IGNsaWVudC7CoCBJMlJTIGp1
c3QgbmVlZHMgdG8gc3VwcG9ydCByZWFkL3dyaXRlL25vdGlmeSBvZiBlcGhlbWVyYWwgZGF0YS4K
CgpJZiB0aGlzIGlzIG5vdCBhY2NlcHRhYmxlIHRoZW4gYmUgcHJlcGFyZWQgdG8gd2FpdCB1bnRp
bCBhbGwgdGhlIGZyYW1ld29yayBzdHVmZiBpcyBzZXR0bGVkCgoKYW5kIHN0YW5kYXJkaXplZC4K
CgrCoAoKCsKgCgoKQW5keQoKCsKgCgoKwqAKCgrCoAoKCgrCoAoKT24gVHVlLCBNYXkgMzEsIDIw
MTYgYXQgNDowOSBQTSwgTGluZGEgRHVuYmFyIDxsaW5kYS5kdW5iYXJAaHVhd2VpLmNvbT4gd3Jv
dGU6CgoKSUVURiBoYXMgYmVlbiBzdWNjZXNzZnVsIGZvciBwYXN0IDIwIHllYXJzIMKgaW4gZm9j
dXNpbmcgb24g4oCcT3ZlciB0aGUgV2lyZeKAnSBkYXRhIHN0cnVjdHVyZS7CoCBJdCB3b3VsZCBi
ZSBzbyBtdWNoIGNsZWFuZXIKIGFuZCBzdHJhaWdodCBmb3J3YXJkIGlmIHRoZSBZQU5HIG1vZHVs
ZXMgZGV2ZWxvcGVkIGJ5IEkyUlMgwqBmb2N1c2luZyBvbiB0aGUg4oCcT3ZlciB0aGUgV2lyZeKA
nSBkYXRhIHN0cnVjdHVyZSAoYW5kIHdpdGggTkVUTU9EIHRvIGZvY3VzIG9uIG90aGVyIGFzcGVj
dHMpLgpUaGUg4oCcSTJSUyBlcGhlbWVyYWwgU3RhdGXigJ0gaGFzIHRoZSBuZWVkZWQgZGVzY3Jp
cHRpb24gZm9yIHRoZSBkZXNpcmVkIGJlaGF2aW9yIMKgb2YgdGhlIGRhdGEgcmVjZWl2ZWQgb3Zl
ciBJMlJTIGludGVyZmFjZS4KIElmIHdlIGZvbGxvdyB0aGUgSUVURiBwcmFjdGljZSwgwqBpdCBp
cyBnb29kIGVub3VnaC4gCkludGVybmFsIGltcGxlbWVudGF0aW9uIGZyYW1ld29yayBpcyBhbHdh
eXMgY29udHJvdmVyc2lhbCwgaGFyZCB0byBjb252ZXJnZSwgdXN1YWxseSBlbmRpbmcgdXAgd2l0
aCBhIGRvY3VtZW50IChpZgogY29tcGxldGVkKSB0aGF0IGlzIHRvbyBiaWcgYW5kIGRpZmZpY3Vs
dCB0byByZWFkLiAKwqAKUHJvdmlkaW5nIHNvbWUgc291cmNlIGNvZGUgdG8gc2hvdyB0aGUgaW50
ZXJuYWwgaW1wbGVtZW50YXRpb24gd291bGQgYmUgbXVjaCBtb3JlIHVzZWZ1bCBhcyBhIHJlZmVy
ZW5jZSBpbXBsZW1lbnRhdGlvbi4KCsKgCgpUaGUgZHJhZnQtc2Nob2Vudy1uZXRtb2QtcmV2aXNl
ZC1kYXRhc3RvcmVzLTAwCmlzIG9uIHRoZSBhcmNoaXRlY3R1cmFsIGZyYW1ld29yayBmb3IgZGF0
YXN0b3JlcyBhcyB0aGV5IGFyZSB1c2VkIGJ5IG5ldHdvcmsgbWFuYWdlbWVudCBwcm90b2NvbHMu
IElNSE8sIGhvdyBkYXRhIHN0b3JlcyBhcmUgdXNlZCBhcmUgaW50ZXJuYWwgdG8gdGhlIGVuZCBw
b2ludHMuCgrCoAoKwqAKTGluZGEgRHVuYmFyCsKgCgpGcm9tOiBpMnJzIFttYWlsdG86aTJycy1i
b3VuY2VzQGlldGYub3JnXQpPbiBCZWhhbGYgT2YgQW5keSBCaWVybWFuCgpTZW50OiBUdWVzZGF5
LCBNYXkgMzEsIDIwMTYgNDowOSBQTQoKVG86IEplZmZyZXkgSGFhcwoKQ2M6IEJlbm9pdCBDbGFp
c2U7IGkycnNAaWV0Zi5vcmc7IEp1ZXJnZW4gU2Nob2Vud2FlbGRlcjsgU3VzYW4gSGFyZXM7IEFs
aWEgQXRsYXMKClN1YmplY3Q6IFJlOiBbaTJyc10gSTJSUyBJbnRlcmltIE1lZXRpbmcgLSBKdW5l
IDEsIDIwMTYgLSAxMDowMGFtIC0gMTE6MDBhbSAtIFRvcGljOiBFcGhlbWVyYWwgU3RhdGUgUmVx
dWlyZW1lbnRzCgrCoAoKSGksCgrCoAoKCkkgYW0gbm90IGNvbnZpbmNlZCB0aGUgSUVURiBjYW4g
YmUgZm9yY2VkIHRvIGZ1bmN0aW9uIGFzIGlmIGl0IHdlcmUKCgphIGRldi1ncm91cCBpbiBzb21l
IGNvcnBvcmF0aW9uLsKgIFRoaXMgaXMgYSB2b2x1bnRlZXIgb3JnYW5pemF0aW9uIHNvCgoKdXN1
YWxseSBzb2x1dGlvbiBwcm9wb3NhbHMgY29tZSBmcm9tIHBlb3BsZSB3aG8gaGF2ZSBjcmVhdGVk
IGEgc29sdXRpb24KCgphbmQgdGhleSB3YW50IHRoZSBXRyB0byBzdGFuZGFyZGl6ZSBpdC4KCgrC
oAoKCsKgCgoKQW5keQoKCsKgCgoKCsKgCgpPbiBUdWUsIE1heSAzMSwgMjAxNiBhdCAxMjo1MSBQ
TSwgSmVmZnJleSBIYWFzIDxqaGFhc0BwZnJjLm9yZz4gd3JvdGU6CkFuZHksCgoKCk9uIFR1ZSwg
TWF5IDMxLCAyMDE2IGF0IDExOjQxOjU5QU0gLTA3MDAsIEFuZHkgQmllcm1hbiB3cm90ZToKCj4g
QXQgc29tZSBwb2ludCB0aGUgV0cgbmVlZHMgdG8gYWdyZWUgb24gbm9ybWF0aXZlIHRleHQgaW5z
dGVhZCBvZiBpdGVyYXRpbmcKCj4gb24gcmVxdWlyZW1lbnRzIGZvcmV2ZXIuCgoKCklNTywgaXQg
d291bGQgYmUgaW4gSTJSUydzIGJlc3QgaW50ZXJlc3RzIGlmIG5ldGNvbmYvbmV0bW9kIHByb3Zp
ZGVkIGRyYWZ0cwoKaW4gYXBwcm9wcmlhdGVseSBub3JtYXRpdmUgbGFuZ3VhZ2UgY292ZXJpbmcg
STJSUyByZXF1aXJlbWVudHMuwqAgSG93ZXZlciwKCndlJ3ZlIGJlZW4gaW4gYSBwYXRob2xvZ2lj
YWwgY3ljbGUgb2Y6CgoiV2UgZG9uJ3QgdW5kZXJzdGFuZCwgcGxlYXNlIGdpdmUgdXMgcmVxdWly
ZW1lbnRzIgoKIldlIGRvbid0IHVuZGVyc3RhbmQgeW91ciByZXF1aXJlbWVudHMiCgoiWW91IHBy
b3ZpZGVkIGV4YW1wbGVzIHdpdGggeW91ciByZXF1aXJlbWVudHMgdGhhdCBhcHBlYXIgdG8gYmUg
YXR0ZW1wdHMgdG8KCmNoYW5nZSBvdXIgcHJvdG9jb2wgLSBkb24ndCBkbyB0aGF0LiIKCgoKVGhl
IG1vc3QgcmVjZW50IHJldmlzZWQtZGF0YXN0b3JlIGRyYWZ0IHdvdWxkIGJlIGEgZ29vZCBwbGFj
ZSB0byBkb2N1bWVudAoKd2hlcmUgbmV0bW9kKC9uZXRjb25mKSBiZWxpZXZlcyBlcGhlbWVyYWwg
ZGF0YXN0b3JlcyAoaWYgdGhhdCdzIHRoZQoKaW5zdGFudGlhdGlvbikgY291bGQgbGl2ZSwgYW5k
IGFsc28gaG93IGVwaGVtZXJhbCBjb25maWd1cmF0aW9uIHN0YXRlIGNvdWxkCgppbnRlcmFjdCB3
aXRoIGNhbmRpZGF0ZSwgc3RhcnR1cCBhbmQgcnVubmluZyBjb25maWd1cmF0aW9uLgoKCgp5YW5n
LXB1c2ggY292ZXJzIG11Y2ggb2Ygb3VyIGRlc2lyZWQgcHViLXN1YiBiZWhhdmlvci4gKFlheSEp
CgoKCkRpc2N1c3Npb24gaXMgcmVxdWlyZWQgZm9yIGhvdyB0byB0YWcgc2VjdXJpdHkgY29uc2lk
ZXJhdGlvbnMgaW1wYWN0aW5nCgp0cmFuc3BvcnQgaW50byB0aGUgeWFuZyBtb2RlbCwgaW4gcGFy
dGljdWxhciBmb3Igbm90aWZpY2F0aW9uLgoKCgpQcm9wb3NhbHMgZm9yIHNlY29uZGFyeSBpZGVu
dGl0eSBhbmQgcHJpb3JpdHkgYXJlIGFsc28gbmVlZGVkLgoKCgotLSBKZWZmCgrCoAoKCgoKCgrC
oAoKCgoKCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18K
CmkycnMgbWFpbGluZyBsaXN0CgppMnJzQGlldGYub3JnCgpodHRwczovL3d3dy5pZXRmLm9yZy9t
YWlsbWFuL2xpc3RpbmZvL2kycnMKCgoKCg==

----_com.samsung.android.email_5686063055465150
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: base64

PGh0bWw+PGhlYWQ+PG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0
L2h0bWw7IGNoYXJzZXQ9VVRGLTgiPjwvaGVhZD48Ym9keT48ZGl2PkFuZHk8L2Rpdj48ZGl2Pjxi
cj48L2Rpdj48ZGl2PlNlZSBiZWxvdy48L2Rpdj48ZGl2Pjxicj48L2Rpdj48ZGl2Pjxicj48L2Rp
dj48ZGl2Pjxicj48L2Rpdj48ZGl2IGlkPSJjb21wb3Nlcl9zaWduYXR1cmUiPjxkaXYgc3R5bGU9
ImZvbnQtc2l6ZTo4NSU7Y29sb3I6IzU3NTc1NyI+U2VudCB2aWEgdGhlIFNhbXN1bmcgR2FsYXh5
IE5vdGU1LCBhbiBBVCZhbXA7VCA0RyBMVEUgc21hcnRwaG9uZTwvZGl2PjwvZGl2PjxkaXYgc3R5
bGU9ImZvbnQtc2l6ZToxMDAlO2NvbG9yOiMwMDAwMDAiPjwhLS0gb3JpZ2luYWxNZXNzYWdlIC0t
PjxkaXY+LS0tLS0tLS0gT3JpZ2luYWwgbWVzc2FnZSAtLS0tLS0tLTwvZGl2PjxkaXY+RnJvbTog
QW5keSBCaWVybWFuICZsdDthbmR5QHl1bWF3b3Jrcy5jb20mZ3Q7IDwvZGl2PjxkaXY+RGF0ZTog
Ni8xLzIwMTYgIDQ6NDEgUE0gIChHTVQtMDU6MDApIDwvZGl2PjxkaXY+VG86IFN1c2FuIEhhcmVz
ICZsdDtzaGFyZXNAbmR6aC5jb20mZ3Q7IDwvZGl2PjxkaXY+Q2M6IGkycnNAaWV0Zi5vcmcsIEp1
ZXJnZW4gU2Nob2Vud2FlbGRlciAmbHQ7ai5zY2hvZW53YWVsZGVyQGphY29icy11bml2ZXJzaXR5
LmRlJmd0OywgTGluZGEgRHVuYmFyICZsdDtsaW5kYS5kdW5iYXJAaHVhd2VpLmNvbSZndDssIEJl
bm9pdCBDbGFpc2UgJmx0O2JjbGFpc2VAY2lzY28uY29tJmd0OywgSmVmZnJleSBIYWFzICZsdDtq
aGFhc0BwZnJjLm9yZyZndDssIEFsaWEgQXRsYXMgJmx0O2FrYXRsYXNAZ21haWwuY29tJmd0OyA8
L2Rpdj48ZGl2PlN1YmplY3Q6IFJlOiBbaTJyc10gQ2FuIEkyUlMgZm9jdXMgb24gdGhlICJPdmVy
IHRoZSBXaXJlIiBkYXRhIHN0cnVjdHVyZSAsIG5vdCBvbiBob3cgZW5kIHBvaW50IGhhbmRsZSB0
aGUgIkRhdGFTdG9yZSI/IDwvZGl2PjxkaXY+PGJyPjwvZGl2PjwvZGl2PjxkaXYgZGlyPSJsdHIi
Pjxicj48ZGl2IGNsYXNzPSJnbWFpbF9leHRyYSI+PGJyPjxkaXYgY2xhc3M9ImdtYWlsX3F1b3Rl
Ij5PbiBXZWQsIEp1biAxLCAyMDE2IGF0IDE6MzIgUE0sIFN1c2FuIEhhcmVzIDxzcGFuIGRpcj0i
bHRyIj4mbHQ7PGEgaHJlZj0ibWFpbHRvOnNoYXJlc0BuZHpoLmNvbSIgdGFyZ2V0PSJfYmxhbmsi
PnNoYXJlc0BuZHpoLmNvbTwvYT4mZ3Q7PC9zcGFuPiB3cm90ZTo8YnI+PGJsb2NrcXVvdGUgY2xh
c3M9ImdtYWlsX3F1b3RlIiBzdHlsZT0ibWFyZ2luOjAgMCAwIC44ZXg7Ym9yZGVyLWxlZnQ6MXB4
ICNjY2Mgc29saWQ7cGFkZGluZy1sZWZ0OjFleCI+PGRpdj48ZGl2Pjxicj48L2Rpdj48ZGl2PkFo
Li4gSW50ZXJlc3RpbmcgJm5ic3A7dmlld3BvaW50IG9uIHRoZSB3b3JkICJvdmVyd3JpdGUiLiBB
bmQgSSBmaW5kIG5vdGhpbmcgd3Jvbmcgd2l0aCB5b3VyIHZpZXdwb2ludC48L2Rpdj48ZGl2Pjxi
cj48L2Rpdj48ZGl2PklmIGkycnMgb25seSBjb25maWcgZG9lcyBub3QgcmVzb2x2ZSB0byBpbnN0
YWxsYWJsZSBzdGF0ZSwgaG93IHdvdWxkIHlvdSBoYW5kbGUgaXQuJm5ic3A7IElzIHRoaXMgYSBj
YXNlIHdoZXJlIGkycnMgY29uZmlnIHZhbHVlIGRvZXMgbm90IGV4aXN0IHNvIGxvY2FsIGNvbmZp
ZyBpcyB1c2VkPyZuYnNwOyBJIGFtIHNob3dpbmcgcGFydGlhbCBpbnN0YWxsYXRpb24gb2YgaTJy
cyByaWIgbW9kZWwuJm5ic3A7PC9kaXY+PGRpdj48YnI+PC9kaXY+PGRpdj5JZiBJIGNhbiBzZWUg
aG93IHRoaXMgd29ya3MsIG1heWJlIEkgY2FuIGZpbmQgYSB3YXkgdG8gdW5kZXJzdGFuZCBqdWVy
Z2VuJ3MgbW9kZWwuICZuYnNwOzwvZGl2PjxkaXY+PGJyPjwvZGl2PjwvZGl2PjwvYmxvY2txdW90
ZT48ZGl2Pjxicj48L2Rpdj48ZGl2PldoeSB3b3VsZCB0aGlzIHdvcms/PC9kaXY+PGRpdj5Zb3Ug
bWVhbiB0aGUgSTJSUyBhZ2VudCBpbmNvcnJlY3RseSBhY2NlcHRzIGFuIGVkaXQgdGhhdCBjYW5u
b3QgYmUgaW5zdGFsbGVkPC9kaXY+PGRpdj5iZWNhdXNlIGl0IGlzIGludmFsaWQsIG9yIHRoZXJl
IGFyZSBpbnN1ZmZpY2llbnQgcmVzb3VyY2VzPzwvZGl2PjxkaXY+PGJyPjwvZGl2PjxkaXY+U3Vl
OjogdmFsaWQgY29uZmlnLiAmbmJzcDtSb3V0ZSBuZWVkcyB0byByZXNvbHZlIG5leHQgaG9wIHRv
IHNwZWNpZmljIGludGVyZmFjZS48L2Rpdj48ZGl2Pjxicj48L2Rpdj48ZGl2PlRoaXMgaXMgdGhl
IHNhbWUgYXMgdGhlICJuby12YWxpZGF0ZSIgY2FzZSBmb3IgSTJSUy48L2Rpdj48ZGl2PklmIHRo
ZXJlIGlzIGEgIndoZW4gSVB2NCIgY2xhdXNlIHRoYXQgaXMgaWdub3JlZCBieSB0aGUgYWdlbnQs
IHN1Y2ggdGhhdCB0aGUgYWdlbnQ8L2Rpdj48ZGl2PmFwcGVhcnMgdG8gYWNjZXB0ICJJUHY0IiBm
aWVsZHMgaW4gYW4gIklQdjYiIGVudHJ5LCB3aGF0IGhhcHBlbnM/PGJyPjwvZGl2PjxkaXY+KElN
TyB0aGlzIGlzIDEgcmVhc29uIHRoZSBuby12YWxpZGF0ZSBtb2RlIGlzIHNvIGJyb2tlbikuPC9k
aXY+PGRpdj48YnI+PC9kaXY+PGRpdj5TdWU6IG5vdCB0aGUgc2FtZSBjYXNlLiBOb3QgaW52YWxp
ZCBjb25maWcuICZuYnNwO0p1c3Qgbm90IHJlc29sdmUgdG8gaW50ZXJmYWNlIHRvIHNlbmQgcGFj
a2V0IG91dDwvZGl2PjxkaXY+PGJyPjwvZGl2PjxkaXY+RG9lcyB0aGUgaG9wZWxlc3NseSBpbnZh
bGlkIGRhdGEgc3RheSBpbiB0aGUgZXBoZW1lcmFsIGRhdGFzdG9yZT88L2Rpdj48ZGl2PkRvZXMg
dGhlIGFnZW50IGF0dGVtcHQgdG8gKGluY29ycmVjdGx5KSBhcHBseSB0aGUgSVB2NCBwYXJhbWV0
ZXJzIHRvIGFuIElQdjYgZW50cnk8L2Rpdj48ZGl2Pm9yIGRvZXMgdGhlIGFnZW50IGlnbm9yZSB0
aGUgZGF0YSAoaS5lLiwgbXVzdCBiZSB2YWxpZGF0aW5nIHRoZSBkYXRhIHNvbWVob3c8L2Rpdj48
ZGl2PmlmIGl0IGtub3dzIHRvIGlnbm9yZSBpdCk8L2Rpdj48ZGl2Pjxicj48L2Rpdj48ZGl2PlN1
ZTogbm90IHRoaXMgY2FzZS4gJm5ic3A7RXBoZW1lcmFsIGNvbmZpZyBoYXMgYmVlbiB2YWxpZGF0
ZWQgbGlrZSBhbGwgeWFuZyB2YWxpZGF0aW9uLjwvZGl2PjxkaXY+PGJyPjwvZGl2PjxibG9ja3F1
b3RlIGNsYXNzPSJnbWFpbF9xdW90ZSIgc3R5bGU9Im1hcmdpbjowIDAgMCAuOGV4O2JvcmRlci1s
ZWZ0OjFweCAjY2NjIHNvbGlkO3BhZGRpbmctbGVmdDoxZXgiPjxkaXY+PGRpdj48L2Rpdj48ZGl2
PlN1ZSZuYnNwOzwvZGl2PjwvZGl2PjwvYmxvY2txdW90ZT48ZGl2Pjxicj48L2Rpdj48ZGl2Pjxi
cj48L2Rpdj48ZGl2PkFuZHk8L2Rpdj48ZGl2PiZuYnNwOzwvZGl2PjxibG9ja3F1b3RlIGNsYXNz
PSJnbWFpbF9xdW90ZSIgc3R5bGU9Im1hcmdpbjowIDAgMCAuOGV4O2JvcmRlci1sZWZ0OjFweCAj
Y2NjIHNvbGlkO3BhZGRpbmctbGVmdDoxZXgiPjxkaXY+PGRpdj48YnI+PC9kaXY+PGRpdj48ZGl2
IHN0eWxlPSJmb250LXNpemU6ODUlO2NvbG9yOiM1NzU3NTciPlNlbnQgdmlhIHRoZSBTYW1zdW5n
IEdhbGF4eSBOb3RlNSwgYW4gQVQmYW1wO1QgNEcgTFRFIHNtYXJ0cGhvbmU8L2Rpdj48L2Rpdj48
ZGl2IHN0eWxlPSJmb250LXNpemU6MTAwJTtjb2xvcjojMDAwMDAwIj48ZGl2Pi0tLS0tLS0tIE9y
aWdpbmFsIG1lc3NhZ2UgLS0tLS0tLS08L2Rpdj48ZGl2PkZyb206IEFuZHkgQmllcm1hbiAmbHQ7
PGEgaHJlZj0ibWFpbHRvOmFuZHlAeXVtYXdvcmtzLmNvbSIgdGFyZ2V0PSJfYmxhbmsiPmFuZHlA
eXVtYXdvcmtzLmNvbTwvYT4mZ3Q7IDwvZGl2PjxkaXY+RGF0ZTogNi8xLzIwMTYgIDM6MTEgUE0g
IChHTVQtMDU6MDApIDwvZGl2PjxkaXY+VG86IFN1c2FuIEhhcmVzICZsdDs8YSBocmVmPSJtYWls
dG86c2hhcmVzQG5kemguY29tIiB0YXJnZXQ9Il9ibGFuayI+c2hhcmVzQG5kemguY29tPC9hPiZn
dDsgPC9kaXY+PGRpdj5DYzogTGluZGEgRHVuYmFyICZsdDs8YSBocmVmPSJtYWlsdG86bGluZGEu
ZHVuYmFyQGh1YXdlaS5jb20iIHRhcmdldD0iX2JsYW5rIj5saW5kYS5kdW5iYXJAaHVhd2VpLmNv
bTwvYT4mZ3Q7LCA8YSBocmVmPSJtYWlsdG86aTJyc0BpZXRmLm9yZyIgdGFyZ2V0PSJfYmxhbmsi
PmkycnNAaWV0Zi5vcmc8L2E+LCBKdWVyZ2VuIFNjaG9lbndhZWxkZXIgJmx0OzxhIGhyZWY9Im1h
aWx0bzpqLnNjaG9lbndhZWxkZXJAamFjb2JzLXVuaXZlcnNpdHkuZGUiIHRhcmdldD0iX2JsYW5r
Ij5qLnNjaG9lbndhZWxkZXJAamFjb2JzLXVuaXZlcnNpdHkuZGU8L2E+Jmd0OywgQWxpYSBBdGxh
cyAmbHQ7PGEgaHJlZj0ibWFpbHRvOmFrYXRsYXNAZ21haWwuY29tIiB0YXJnZXQ9Il9ibGFuayI+
YWthdGxhc0BnbWFpbC5jb208L2E+Jmd0OywgQmVub2l0IENsYWlzZSAmbHQ7PGEgaHJlZj0ibWFp
bHRvOmJjbGFpc2VAY2lzY28uY29tIiB0YXJnZXQ9Il9ibGFuayI+YmNsYWlzZUBjaXNjby5jb208
L2E+Jmd0OywgSmVmZnJleSBIYWFzICZsdDs8YSBocmVmPSJtYWlsdG86amhhYXNAcGZyYy5vcmci
IHRhcmdldD0iX2JsYW5rIj5qaGFhc0BwZnJjLm9yZzwvYT4mZ3Q7IDwvZGl2PjxkaXY+U3ViamVj
dDogUmU6IFtpMnJzXSBDYW4gSTJSUyBmb2N1cyBvbiB0aGUgIk92ZXIgdGhlIFdpcmUiIGRhdGEg
c3RydWN0dXJlICwgbm90IG9uIGhvdyBlbmQgcG9pbnQgaGFuZGxlIHRoZSAiRGF0YVN0b3JlIj8g
PC9kaXY+PGRpdj48YnI+PC9kaXY+PC9kaXY+PGRpdiBkaXI9Imx0ciI+PGJyPjxkaXYgY2xhc3M9
ImdtYWlsX2V4dHJhIj48YnI+PGRpdiBjbGFzcz0iZ21haWxfcXVvdGUiPk9uIFdlZCwgSnVuIDEs
IDIwMTYgYXQgMTI6MDQgUE0sIFN1c2FuIEhhcmVzIDxzcGFuIGRpcj0ibHRyIj4mbHQ7PGEgaHJl
Zj0ibWFpbHRvOnNoYXJlc0BuZHpoLmNvbSIgdGFyZ2V0PSJfYmxhbmsiPnNoYXJlc0BuZHpoLmNv
bTwvYT4mZ3Q7PC9zcGFuPiB3cm90ZTo8YnI+PGJsb2NrcXVvdGUgY2xhc3M9ImdtYWlsX3F1b3Rl
IiBzdHlsZT0ibWFyZ2luOjAgMCAwIC44ZXg7Ym9yZGVyLWxlZnQ6MXB4ICNjY2Mgc29saWQ7cGFk
ZGluZy1sZWZ0OjFleCI+PGRpdj48ZGl2PkFuZHk8L2Rpdj48ZGl2Pjxicj48L2Rpdj48ZGl2Pldl
IGN1cnJlbnRseSBhcmUgc3BlY2lmeWluZyBpMnJzIHJpYiBtb2RlbCB3aGljaCBjYW4gb3Zlcndy
aXRlIHRoZSBsb2NhbCBjb25maWcuICZuYnNwOyAmbmJzcDtJbXBsZW1lbnRhdGlvbnMgZXhwZXJp
ZW5jZSB3aWxsIHByb3ZpZGUgdXMgd2l0aCBpbnB1dCBvbiB0aGUgcHJvdG9jb2xzLiZuYnNwOzwv
ZGl2PjxkaXY+PGJyPjwvZGl2PjwvZGl2PjwvYmxvY2txdW90ZT48ZGl2Pjxicj48L2Rpdj48ZGl2
PkkgZG9uJ3QgdmlldyBpdCB0aGF0IHdheS48L2Rpdj48ZGl2PlRoZSBsb2NhbCBjb25maWcgcmVt
YWlucyB1bnRvdWNoZWQgdGhyb3VnaG91dC48L2Rpdj48ZGl2PlRoZSBoaWdoZXIgcHJpb3JpdHkg
ZXBoZW1lcmFsIGNvbmZpZyB2YWx1ZSBpcyB1c2VkIGluc3RlYWQgb2YgdGhlIGxvY2FsIGNvbmZp
ZyB2YWx1ZS48L2Rpdj48ZGl2PlRoZSBvcGVyYXRpb25hbCBzdGF0ZSBzaG91bGQgcmVmbGVjdCB0
aGF0IGVwaGVtZXJhbCBjb25maWcgaXMgb3ZlcnJpZGluZyB0aGUgbG9jYWwgY29uZmlnLjwvZGl2
PjxkaXY+VGhlIGRhdGEgbW9kZWwgZm9yIHRoZSBJMlJTIHZlcnNpb24gZG9lcyBub3QgaGF2ZSB0
byBiZSB0aGUgbG9jYWwgY29uZmlnIG1vZGVsLjwvZGl2PjxkaXY+PGJyPjwvZGl2PjxkaXY+Jm5i
c3A7PC9kaXY+PGJsb2NrcXVvdGUgY2xhc3M9ImdtYWlsX3F1b3RlIiBzdHlsZT0ibWFyZ2luOjAg
MCAwIC44ZXg7Ym9yZGVyLWxlZnQ6MXB4ICNjY2Mgc29saWQ7cGFkZGluZy1sZWZ0OjFleCI+PGRp
dj48ZGl2PjwvZGl2PjxkaXY+U3VlPC9kaXY+PGRpdj48YnI+PC9kaXY+PGRpdj48YnI+PC9kaXY+
PC9kaXY+PC9ibG9ja3F1b3RlPjxkaXY+PGJyPjwvZGl2PjxkaXY+QW5keTwvZGl2PjxkaXY+Jm5i
c3A7PC9kaXY+PGJsb2NrcXVvdGUgY2xhc3M9ImdtYWlsX3F1b3RlIiBzdHlsZT0ibWFyZ2luOjAg
MCAwIC44ZXg7Ym9yZGVyLWxlZnQ6MXB4ICNjY2Mgc29saWQ7cGFkZGluZy1sZWZ0OjFleCI+PGRp
dj48ZGl2PjwvZGl2PjxkaXY+PGJyPjwvZGl2PjxkaXY+PGRpdiBzdHlsZT0iZm9udC1zaXplOjg1
JTtjb2xvcjojNTc1NzU3Ij5TZW50IHZpYSB0aGUgU2Ftc3VuZyBHYWxheHkgTm90ZTUsIGFuIEFU
JmFtcDtUIDRHIExURSBzbWFydHBob25lPC9kaXY+PC9kaXY+PGRpdiBzdHlsZT0iZm9udC1zaXpl
OjEwMCU7Y29sb3I6IzAwMDAwMCI+PGRpdj4tLS0tLS0tLSBPcmlnaW5hbCBtZXNzYWdlIC0tLS0t
LS0tPC9kaXY+PGRpdj5Gcm9tOiBMaW5kYSBEdW5iYXIgJmx0OzxhIGhyZWY9Im1haWx0bzpsaW5k
YS5kdW5iYXJAaHVhd2VpLmNvbSIgdGFyZ2V0PSJfYmxhbmsiPmxpbmRhLmR1bmJhckBodWF3ZWku
Y29tPC9hPiZndDsgPC9kaXY+PGRpdj5EYXRlOiA2LzEvMjAxNiAgMTI6MzQgUE0gIChHTVQtMDU6
MDApIDwvZGl2PjxkaXY+VG86IEFuZHkgQmllcm1hbiAmbHQ7PGEgaHJlZj0ibWFpbHRvOmFuZHlA
eXVtYXdvcmtzLmNvbSIgdGFyZ2V0PSJfYmxhbmsiPmFuZHlAeXVtYXdvcmtzLmNvbTwvYT4mZ3Q7
IDwvZGl2PjxkaXY+Q2M6IDxhIGhyZWY9Im1haWx0bzppMnJzQGlldGYub3JnIiB0YXJnZXQ9Il9i
bGFuayI+aTJyc0BpZXRmLm9yZzwvYT4sIEp1ZXJnZW4gU2Nob2Vud2FlbGRlciAmbHQ7PGEgaHJl
Zj0ibWFpbHRvOmouc2Nob2Vud2FlbGRlckBqYWNvYnMtdW5pdmVyc2l0eS5kZSIgdGFyZ2V0PSJf
YmxhbmsiPmouc2Nob2Vud2FlbGRlckBqYWNvYnMtdW5pdmVyc2l0eS5kZTwvYT4mZ3Q7LCBBbGlh
IEF0bGFzICZsdDs8YSBocmVmPSJtYWlsdG86YWthdGxhc0BnbWFpbC5jb20iIHRhcmdldD0iX2Js
YW5rIj5ha2F0bGFzQGdtYWlsLmNvbTwvYT4mZ3Q7LCBCZW5vaXQgQ2xhaXNlICZsdDs8YSBocmVm
PSJtYWlsdG86YmNsYWlzZUBjaXNjby5jb20iIHRhcmdldD0iX2JsYW5rIj5iY2xhaXNlQGNpc2Nv
LmNvbTwvYT4mZ3Q7LCBKZWZmcmV5IEhhYXMgJmx0OzxhIGhyZWY9Im1haWx0bzpqaGFhc0BwZnJj
Lm9yZyIgdGFyZ2V0PSJfYmxhbmsiPmpoYWFzQHBmcmMub3JnPC9hPiZndDssIFN1c2FuIEhhcmVz
ICZsdDs8YSBocmVmPSJtYWlsdG86c2hhcmVzQG5kemguY29tIiB0YXJnZXQ9Il9ibGFuayI+c2hh
cmVzQG5kemguY29tPC9hPiZndDsgPC9kaXY+PGRpdj5TdWJqZWN0OiBSZTogW2kycnNdIENhbiBJ
MlJTIGZvY3VzIG9uIHRoZSAiT3ZlciB0aGUgV2lyZSIgZGF0YSBzdHJ1Y3R1cmUgLCBub3Qgb24g
aG93IGVuZCBwb2ludCBoYW5kbGUgdGhlICJEYXRhU3RvcmUiPyA8L2Rpdj48ZGl2Pjxicj48L2Rp
dj48L2Rpdj4KPGRpdj4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6
ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlm
JnF1b3Q7O2NvbG9yOiMxZjQ5N2QiPkFuZHksCjx1PjwvdT48dT48L3U+PC9zcGFuPjwvcD4KPHAg
Y2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1p
bHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxZjQ5
N2QiPjx1PjwvdT4mbmJzcDs8dT48L3U+PC9zcGFuPjwvcD4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+
PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZx
dW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxZjQ5N2QiPkFncmVlIHdpdGggeW91
ciBzdWdnZXN0ZWQgYXBwcm9hY2guCjx1PjwvdT48dT48L3U+PC9zcGFuPjwvcD4KPHAgY2xhc3M9
Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1
b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxZjQ5N2QiPjx1
PjwvdT4mbmJzcDs8dT48L3U+PC9zcGFuPjwvcD4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4g
c3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90Oywm
cXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxZjQ5N2QiPkxpbmRhCjx1PjwvdT48dT48L3U+
PC9zcGFuPjwvcD4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZTox
MS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1
b3Q7O2NvbG9yOiMxZjQ5N2QiPjx1PjwvdT4mbmJzcDs8dT48L3U+PC9zcGFuPjwvcD4KPGRpdiBz
dHlsZT0iYm9yZGVyOm5vbmU7Ym9yZGVyLXRvcDpzb2xpZCAjYjVjNGRmIDEuMHB0O3BhZGRpbmc6
My4wcHQgMGluIDBpbiAwaW4iPgo8cCBjbGFzcz0iTXNvTm9ybWFsIj48Yj48c3BhbiBzdHlsZT0i
Zm9udC1zaXplOjEwLjBwdDtmb250LWZhbWlseTomcXVvdDtUYWhvbWEmcXVvdDssJnF1b3Q7c2Fu
cy1zZXJpZiZxdW90OyI+RnJvbTo8L3NwYW4+PC9iPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTAu
MHB0O2ZvbnQtZmFtaWx5OiZxdW90O1RhaG9tYSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7
Ij4gQW5keSBCaWVybWFuIFttYWlsdG86PGEgaHJlZj0ibWFpbHRvOmFuZHlAeXVtYXdvcmtzLmNv
bSIgdGFyZ2V0PSJfYmxhbmsiPmFuZHlAeXVtYXdvcmtzLmNvbTwvYT5dCjxicj4KPGI+U2VudDo8
L2I+IFR1ZXNkYXksIE1heSAzMSwgMjAxNiA5OjA1IFBNPGJyPgo8Yj5Ubzo8L2I+IExpbmRhIER1
bmJhcjxicj4KPGI+Q2M6PC9iPiBKZWZmcmV5IEhhYXM7IEJlbm9pdCBDbGFpc2U7IDxhIGhyZWY9
Im1haWx0bzppMnJzQGlldGYub3JnIiB0YXJnZXQ9Il9ibGFuayI+aTJyc0BpZXRmLm9yZzwvYT47
IEp1ZXJnZW4gU2Nob2Vud2FlbGRlcjsgU3VzYW4gSGFyZXM7IEFsaWEgQXRsYXM8YnI+CjxiPlN1
YmplY3Q6PC9iPiBSZTogQ2FuIEkyUlMgZm9jdXMgb24gdGhlICJPdmVyIHRoZSBXaXJlIiBkYXRh
IHN0cnVjdHVyZSAsIG5vdCBvbiBob3cgZW5kIHBvaW50IGhhbmRsZSB0aGUgIkRhdGFTdG9yZSI/
PHU+PC91Pjx1PjwvdT48L3NwYW4+PC9wPgo8L2Rpdj4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHU+
PC91PiZuYnNwOzx1PjwvdT48L3A+CjxkaXY+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPkhpLDx1Pjwv
dT48dT48L3U+PC9wPgo8ZGl2Pgo8cCBjbGFzcz0iTXNvTm9ybWFsIj48dT48L3U+Jm5ic3A7PHU+
PC91PjwvcD4KPC9kaXY+CjxkaXY+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPklmIHlvdXIgZ3JhcGhp
YyBhZHZpY2UgbWVhbnMgInRoZSByZXF1aXJlbWVudHMgYXJlIGdvb2QgZW5vdWdoLCBtb3ZlIG9u
Ijx1PjwvdT48dT48L3U+PC9wPgo8L2Rpdj4KPGRpdj4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+dGhl
biBJIGFncmVlLjx1PjwvdT48dT48L3U+PC9wPgo8L2Rpdj4KPGRpdj4KPHAgY2xhc3M9Ik1zb05v
cm1hbCI+PHU+PC91PiZuYnNwOzx1PjwvdT48L3A+CjwvZGl2Pgo8ZGl2Pgo8cCBjbGFzcz0iTXNv
Tm9ybWFsIj5UaGUgZGF0YXN0b3JlIGZyYW1ld29yayB3b3VsZCBiZSBuaWNlIHRvIGhhdmUsIGJ1
dCBpdCBpcyB2ZXJ5IGNsb3NlPHU+PC91Pjx1PjwvdT48L3A+CjwvZGl2Pgo8ZGl2Pgo8cCBjbGFz
cz0iTXNvTm9ybWFsIj50byB0aGUgaW1wbGVtZW50YXRpb24gZGV0YWlscy4mbmJzcDsgSXQgaXMg
YWxzbyBhdHRlbXB0aW5nIHRvIGJlIGEgc3VwZXJzZXQgb2YgYWxsPHU+PC91Pjx1PjwvdT48L3A+
CjwvZGl2Pgo8ZGl2Pgo8cCBjbGFzcz0iTXNvTm9ybWFsIj4iYWNjZXB0ZWQiIGltcGxlbWVudGF0
aW9uIGNob2ljZXMuPHU+PC91Pjx1PjwvdT48L3A+CjwvZGl2Pgo8ZGl2Pgo8cCBjbGFzcz0iTXNv
Tm9ybWFsIj48dT48L3U+Jm5ic3A7PHU+PC91PjwvcD4KPC9kaXY+CjxkaXY+CjxwIGNsYXNzPSJN
c29Ob3JtYWwiPkJ5ICJvbiB0aGUgd2lyZSIgd2UgdXN1YWxseSBtZWFuIGEgcHJvdG9jb2wgc3Bl
Y2lmaWNhdGlvbi48dT48L3U+PHU+PC91PjwvcD4KPC9kaXY+CjxkaXY+CjxwIGNsYXNzPSJNc29O
b3JtYWwiPklNTywgYWxsIHRoYXQgaXMgbmVlZGVkIChmb3IgZWRpdGluZykgaXMgYSBzZXQgb2Yg
UkVTVENPTkYgZXh0ZW5zaW9ucy48dT48L3U+PHU+PC91PjwvcD4KPC9kaXY+CjxkaXY+CjxwIGNs
YXNzPSJNc29Ob3JtYWwiPlNvbWUgcGVvcGxlIHdhbnQgdG8gZGVzY3JpYmUgdGhlIEkyUlMgZGVz
aXJlZCBiZWhhdmlvciB3cnQvIGhvdyBpdDx1PjwvdT48dT48L3U+PC9wPgo8L2Rpdj4KPGRpdj4K
PHAgY2xhc3M9Ik1zb05vcm1hbCI+aW50ZXJhY3RzIHdpdGggdGhlIGxvY2FsIGNvbmZpZy4gKGFu
ZCBtYW55IG1vcmUgZmVhdHVyZXMuLi4pPHU+PC91Pjx1PjwvdT48L3A+CjwvZGl2Pgo8ZGl2Pgo8
cCBjbGFzcz0iTXNvTm9ybWFsIj48dT48L3U+Jm5ic3A7PHU+PC91PjwvcD4KPC9kaXY+CjxkaXY+
CjxwIGNsYXNzPSJNc29Ob3JtYWwiPlBlcmhhcHMgYSBnb29kIGZpcnN0IHN0ZXAgd291bGQgYmUg
ZXBoZW1lcmFsIGRhdGEgbW9kZWxzIHRoYXQgZG8gbm90PHU+PC91Pjx1PjwvdT48L3A+CjwvZGl2
Pgo8ZGl2Pgo8cCBjbGFzcz0iTXNvTm9ybWFsIj5pbnRlcmFjdCB3aXRoIHRoZSBsb2NhbCBjb25m
aWcgYXQgYWxsLiZuYnNwOyBJMlJTIGlzIHRoZSBvbmx5IHByb3RvY29sIG9mIGNvbmNlcm4gYW5k
IHRoZTx1PjwvdT48dT48L3U+PC9wPgo8L2Rpdj4KPGRpdj4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+
aGlnaGVzdCBwcmlvcml0eSBjbGllbnQuJm5ic3A7IEkyUlMganVzdCBuZWVkcyB0byBzdXBwb3J0
IHJlYWQvd3JpdGUvbm90aWZ5IG9mIGVwaGVtZXJhbCBkYXRhLjx1PjwvdT48dT48L3U+PC9wPgo8
L2Rpdj4KPGRpdj4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+SWYgdGhpcyBpcyBub3QgYWNjZXB0YWJs
ZSB0aGVuIGJlIHByZXBhcmVkIHRvIHdhaXQgdW50aWwgYWxsIHRoZSBmcmFtZXdvcmsgc3R1ZmYg
aXMgc2V0dGxlZDx1PjwvdT48dT48L3U+PC9wPgo8L2Rpdj4KPGRpdj4KPHAgY2xhc3M9Ik1zb05v
cm1hbCI+YW5kIHN0YW5kYXJkaXplZC48dT48L3U+PHU+PC91PjwvcD4KPC9kaXY+CjxkaXY+Cjxw
IGNsYXNzPSJNc29Ob3JtYWwiPjx1PjwvdT4mbmJzcDs8dT48L3U+PC9wPgo8L2Rpdj4KPGRpdj4K
PHAgY2xhc3M9Ik1zb05vcm1hbCI+PHU+PC91PiZuYnNwOzx1PjwvdT48L3A+CjwvZGl2Pgo8ZGl2
Pgo8cCBjbGFzcz0iTXNvTm9ybWFsIj5BbmR5PHU+PC91Pjx1PjwvdT48L3A+CjwvZGl2Pgo8ZGl2
Pgo8cCBjbGFzcz0iTXNvTm9ybWFsIj48dT48L3U+Jm5ic3A7PHU+PC91PjwvcD4KPC9kaXY+Cjxk
aXY+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjx1PjwvdT4mbmJzcDs8dT48L3U+PC9wPgo8L2Rpdj4K
PGRpdj4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHU+PC91PiZuYnNwOzx1PjwvdT48L3A+CjwvZGl2
Pgo8ZGl2Pgo8ZGl2Pgo8cCBjbGFzcz0iTXNvTm9ybWFsIj48dT48L3U+Jm5ic3A7PHU+PC91Pjwv
cD4KPGRpdj4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+T24gVHVlLCBNYXkgMzEsIDIwMTYgYXQgNDow
OSBQTSwgTGluZGEgRHVuYmFyICZsdDs8YSBocmVmPSJtYWlsdG86bGluZGEuZHVuYmFyQGh1YXdl
aS5jb20iIHRhcmdldD0iX2JsYW5rIj5saW5kYS5kdW5iYXJAaHVhd2VpLmNvbTwvYT4mZ3Q7IHdy
b3RlOjx1PjwvdT48dT48L3U+PC9wPgo8ZGl2Pgo8ZGl2Pgo8cCBjbGFzcz0iTXNvTm9ybWFsIj48
c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNl
cmlmJnF1b3Q7O2NvbG9yOiMxZjQ5N2QiPklFVEYgaGFzIGJlZW4gc3VjY2Vzc2Z1bCBmb3IgcGFz
dCAyMCB5ZWFycyAmbmJzcDtpbiBmb2N1c2luZyBvbiDigJxPdmVyIHRoZSBXaXJl4oCdIGRhdGEg
c3RydWN0dXJlLiZuYnNwOyBJdCB3b3VsZCBiZSBzbyBtdWNoIGNsZWFuZXIKIGFuZCBzdHJhaWdo
dCBmb3J3YXJkIGlmIHRoZSBZQU5HIG1vZHVsZXMgZGV2ZWxvcGVkIGJ5IEkyUlMgJm5ic3A7Zm9j
dXNpbmcgb24gdGhlIOKAnE92ZXIgdGhlIFdpcmXigJ0gZGF0YSBzdHJ1Y3R1cmUgKGFuZCB3aXRo
IE5FVE1PRCB0byBmb2N1cyBvbiBvdGhlciBhc3BlY3RzKS48L3NwYW4+PHU+PC91Pjx1PjwvdT48
L3A+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTomcXVvdDtD
YWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFmNDk3ZCI+VGhlIOKA
nEkyUlMgZXBoZW1lcmFsIFN0YXRl4oCdIGhhcyB0aGUgbmVlZGVkIGRlc2NyaXB0aW9uIGZvciB0
aGUgZGVzaXJlZCBiZWhhdmlvciAmbmJzcDtvZiB0aGUgZGF0YSByZWNlaXZlZCBvdmVyIEkyUlMg
aW50ZXJmYWNlLgogSWYgd2UgZm9sbG93IHRoZSBJRVRGIHByYWN0aWNlLCAmbmJzcDtpdCBpcyBn
b29kIGVub3VnaC4gPC9zcGFuPjx1PjwvdT48dT48L3U+PC9wPgo8cCBjbGFzcz0iTXNvTm9ybWFs
Ij48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5z
LXNlcmlmJnF1b3Q7O2NvbG9yOiMxZjQ5N2QiPkludGVybmFsIGltcGxlbWVudGF0aW9uIGZyYW1l
d29yayBpcyBhbHdheXMgY29udHJvdmVyc2lhbCwgaGFyZCB0byBjb252ZXJnZSwgdXN1YWxseSBl
bmRpbmcgdXAgd2l0aCBhIGRvY3VtZW50IChpZgogY29tcGxldGVkKSB0aGF0IGlzIHRvbyBiaWcg
YW5kIGRpZmZpY3VsdCB0byByZWFkLiA8L3NwYW4+PHU+PC91Pjx1PjwvdT48L3A+CjxwIGNsYXNz
PSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7
LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFmNDk3ZCI+Jm5ic3A7PC9zcGFuPjx1Pjwv
dT48dT48L3U+PC9wPgo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1mYW1p
bHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxZjQ5
N2QiPlByb3ZpZGluZyBzb21lIHNvdXJjZSBjb2RlIHRvIHNob3cgdGhlIGludGVybmFsIGltcGxl
bWVudGF0aW9uIHdvdWxkIGJlIG11Y2ggbW9yZSB1c2VmdWwgYXMgYSByZWZlcmVuY2UgaW1wbGVt
ZW50YXRpb24uCjwvc3Bhbj48dT48L3U+PHU+PC91PjwvcD4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+
PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1z
ZXJpZiZxdW90Oztjb2xvcjojMWY0OTdkIj4mbmJzcDs8L3NwYW4+PHU+PC91Pjx1PjwvdT48L3A+
CjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJ0ZXh0LWF1dG9zcGFjZTpub25lIj4KPHNwYW4g
c3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZx
dW90Oztjb2xvcjojMWY0OTdkIj5UaGUgPC9zcGFuPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTpD
b3VyaWVyIj5kcmFmdC1zY2hvZW53LW5ldG1vZC1yZXZpc2VkLWRhdGFzdG9yZXMtMDAKPC9zcGFu
PjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMt
c2VyaWYmcXVvdDs7Y29sb3I6IzFmNDk3ZCI+aXMgb24gdGhlIGFyY2hpdGVjdHVyYWwgZnJhbWV3
b3JrIGZvciBkYXRhc3RvcmVzIGFzIHRoZXkgYXJlIHVzZWQgYnkgbmV0d29yayBtYW5hZ2VtZW50
IHByb3RvY29scy4gSU1ITywgaG93IGRhdGEgc3RvcmVzIGFyZSB1c2VkIGFyZSBpbnRlcm5hbCB0
byB0aGUgZW5kIHBvaW50cy4KPC9zcGFuPjx1PjwvdT48dT48L3U+PC9wPgo8cCBjbGFzcz0iTXNv
Tm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVv
dDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxZjQ5N2QiPiZuYnNwOzwvc3Bhbj48dT48L3U+PHU+
PC91PjwvcD4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PGEgaHJlZj0iaHR0cDovL3d3dy5nb29nbGUu
Y29tL3VybD9zYT1pJmFtcDtyY3Q9aiZhbXA7cT0mYW1wO2VzcmM9cyZhbXA7c291cmNlPWltYWdl
cyZhbXA7Y2Q9JmFtcDtjYWQ9cmphJmFtcDt1YWN0PTgmYW1wO3ZlZD0wYWhVS0V3ajUwS1dhdDRY
TkFoVUx4R01LSFJocURQUVFqUndJQncmYW1wO3VybD1odHRwJTNBJTJGJTJGd3d3LnVyYmFuYmxp
c3NtZWRpYS5jb20lMkZlbnRyZXByZW5ldXItcnVsZXMtZG9uZS1pcy1iZXR0ZXItdGhhbi1wZXJm
ZWN0JTJGJmFtcDtwc2lnPUFGUWpDTkdLRWlQQjJpSFNxeUJpRjU2MDlwZDcySDBMN3cmYW1wO3Vz
dD0xNDY0ODIyNTAzODY1Nzc3IiB0YXJnZXQ9Il9ibGFuayI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6
ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlm
JnF1b3Q7O2NvbG9yOiMxZjQ5N2Q7dGV4dC1kZWNvcmF0aW9uOm5vbmUiPjxpbWcgYm9yZGVyPSIw
IiB3aWR0aD0iNDMwIiBoZWlnaHQ9IjU1OCIgYWx0PSJodHRwOi8vd3d3LnVyYmFuYmxpc3NsaWZl
LmNvbS93cC1jb250ZW50L3VwbG9hZHMvMjAxMi8xMC9Eb25lLWlzLUJldHRlci1UaGFuLVBlcmZl
Y3QuanBnIiBpZD0iMTQ2NDgxNDM4MTk1NiI+PC9zcGFuPjwvYT48dT48L3U+PHU+PC91PjwvcD4K
PHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1m
YW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMx
ZjQ5N2QiPiZuYnNwOzwvc3Bhbj48dT48L3U+PHU+PC91PjwvcD4KPHAgY2xhc3M9Ik1zb05vcm1h
bCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJy
aSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxZjQ5N2QiPkxpbmRhIER1bmJh
cjwvc3Bhbj48dT48L3U+PHU+PC91PjwvcD4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5
bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVv
dDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxZjQ5N2QiPiZuYnNwOzwvc3Bhbj48dT48L3U+PHU+
PC91PjwvcD4KPGRpdiBzdHlsZT0iYm9yZGVyOm5vbmU7Ym9yZGVyLXRvcDpzb2xpZCAjYjVjNGRm
IDEuMHB0O3BhZGRpbmc6My4wcHQgMGluIDBpbiAwaW4iPgo8cCBjbGFzcz0iTXNvTm9ybWFsIj48
Yj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjEwLjBwdDtmb250LWZhbWlseTomcXVvdDtUYWhvbWEm
cXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90OyI+RnJvbTo8L3NwYW4+PC9iPjxzcGFuIHN0eWxl
PSJmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O1RhaG9tYSZxdW90OywmcXVvdDtz
YW5zLXNlcmlmJnF1b3Q7Ij4gaTJycyBbbWFpbHRvOjxhIGhyZWY9Im1haWx0bzppMnJzLWJvdW5j
ZXNAaWV0Zi5vcmciIHRhcmdldD0iX2JsYW5rIj5pMnJzLWJvdW5jZXNAaWV0Zi5vcmc8L2E+XQo8
Yj5PbiBCZWhhbGYgT2YgPC9iPkFuZHkgQmllcm1hbjxicj4KPGI+U2VudDo8L2I+IFR1ZXNkYXks
IE1heSAzMSwgMjAxNiA0OjA5IFBNPGJyPgo8Yj5Ubzo8L2I+IEplZmZyZXkgSGFhczxicj4KPGI+
Q2M6PC9iPiBCZW5vaXQgQ2xhaXNlOyA8YSBocmVmPSJtYWlsdG86aTJyc0BpZXRmLm9yZyIgdGFy
Z2V0PSJfYmxhbmsiPmkycnNAaWV0Zi5vcmc8L2E+OyBKdWVyZ2VuIFNjaG9lbndhZWxkZXI7IFN1
c2FuIEhhcmVzOyBBbGlhIEF0bGFzPGJyPgo8Yj5TdWJqZWN0OjwvYj4gUmU6IFtpMnJzXSBJMlJT
IEludGVyaW0gTWVldGluZyAtIEp1bmUgMSwgMjAxNiAtIDEwOjAwYW0gLSAxMTowMGFtIC0gVG9w
aWM6IEVwaGVtZXJhbCBTdGF0ZSBSZXF1aXJlbWVudHM8L3NwYW4+PHU+PC91Pjx1PjwvdT48L3A+
CjwvZGl2Pgo8cCBjbGFzcz0iTXNvTm9ybWFsIj4mbmJzcDs8dT48L3U+PHU+PC91PjwvcD4KPGRp
dj4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+SGksPHU+PC91Pjx1PjwvdT48L3A+CjxkaXY+CjxwIGNs
YXNzPSJNc29Ob3JtYWwiPiZuYnNwOzx1PjwvdT48dT48L3U+PC9wPgo8L2Rpdj4KPGRpdj4KPHAg
Y2xhc3M9Ik1zb05vcm1hbCI+SSBhbSBub3QgY29udmluY2VkIHRoZSBJRVRGIGNhbiBiZSBmb3Jj
ZWQgdG8gZnVuY3Rpb24gYXMgaWYgaXQgd2VyZTx1PjwvdT48dT48L3U+PC9wPgo8L2Rpdj4KPGRp
dj4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+YSBkZXYtZ3JvdXAgaW4gc29tZSBjb3Jwb3JhdGlvbi4m
bmJzcDsgVGhpcyBpcyBhIHZvbHVudGVlciBvcmdhbml6YXRpb24gc288dT48L3U+PHU+PC91Pjwv
cD4KPC9kaXY+CjxkaXY+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPnVzdWFsbHkgc29sdXRpb24gcHJv
cG9zYWxzIGNvbWUgZnJvbSBwZW9wbGUgd2hvIGhhdmUgY3JlYXRlZCBhIHNvbHV0aW9uPHU+PC91
Pjx1PjwvdT48L3A+CjwvZGl2Pgo8ZGl2Pgo8cCBjbGFzcz0iTXNvTm9ybWFsIj5hbmQgdGhleSB3
YW50IHRoZSBXRyB0byBzdGFuZGFyZGl6ZSBpdC48dT48L3U+PHU+PC91PjwvcD4KPC9kaXY+Cjxk
aXY+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPiZuYnNwOzx1PjwvdT48dT48L3U+PC9wPgo8L2Rpdj4K
PGRpdj4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+Jm5ic3A7PHU+PC91Pjx1PjwvdT48L3A+CjwvZGl2
Pgo8ZGl2Pgo8cCBjbGFzcz0iTXNvTm9ybWFsIj5BbmR5PHU+PC91Pjx1PjwvdT48L3A+CjwvZGl2
Pgo8ZGl2Pgo8cCBjbGFzcz0iTXNvTm9ybWFsIj4mbmJzcDs8dT48L3U+PHU+PC91PjwvcD4KPC9k
aXY+CjxkaXY+CjxkaXY+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPiZuYnNwOzx1PjwvdT48dT48L3U+
PC9wPgo8ZGl2Pgo8cCBjbGFzcz0iTXNvTm9ybWFsIj5PbiBUdWUsIE1heSAzMSwgMjAxNiBhdCAx
Mjo1MSBQTSwgSmVmZnJleSBIYWFzICZsdDs8YSBocmVmPSJtYWlsdG86amhhYXNAcGZyYy5vcmci
IHRhcmdldD0iX2JsYW5rIj5qaGFhc0BwZnJjLm9yZzwvYT4mZ3Q7IHdyb3RlOjx1PjwvdT48dT48
L3U+PC9wPgo8cCBjbGFzcz0iTXNvTm9ybWFsIj5BbmR5LDxicj4KPGJyPgpPbiBUdWUsIE1heSAz
MSwgMjAxNiBhdCAxMTo0MTo1OUFNIC0wNzAwLCBBbmR5IEJpZXJtYW4gd3JvdGU6PGJyPgomZ3Q7
IEF0IHNvbWUgcG9pbnQgdGhlIFdHIG5lZWRzIHRvIGFncmVlIG9uIG5vcm1hdGl2ZSB0ZXh0IGlu
c3RlYWQgb2YgaXRlcmF0aW5nPGJyPgomZ3Q7IG9uIHJlcXVpcmVtZW50cyBmb3JldmVyLjxicj4K
PGJyPgpJTU8sIGl0IHdvdWxkIGJlIGluIEkyUlMncyBiZXN0IGludGVyZXN0cyBpZiBuZXRjb25m
L25ldG1vZCBwcm92aWRlZCBkcmFmdHM8YnI+CmluIGFwcHJvcHJpYXRlbHkgbm9ybWF0aXZlIGxh
bmd1YWdlIGNvdmVyaW5nIEkyUlMgcmVxdWlyZW1lbnRzLiZuYnNwOyBIb3dldmVyLDxicj4Kd2Un
dmUgYmVlbiBpbiBhIHBhdGhvbG9naWNhbCBjeWNsZSBvZjo8YnI+CiJXZSBkb24ndCB1bmRlcnN0
YW5kLCBwbGVhc2UgZ2l2ZSB1cyByZXF1aXJlbWVudHMiPGJyPgoiV2UgZG9uJ3QgdW5kZXJzdGFu
ZCB5b3VyIHJlcXVpcmVtZW50cyI8YnI+CiJZb3UgcHJvdmlkZWQgZXhhbXBsZXMgd2l0aCB5b3Vy
IHJlcXVpcmVtZW50cyB0aGF0IGFwcGVhciB0byBiZSBhdHRlbXB0cyB0bzxicj4KY2hhbmdlIG91
ciBwcm90b2NvbCAtIGRvbid0IGRvIHRoYXQuIjxicj4KPGJyPgpUaGUgbW9zdCByZWNlbnQgcmV2
aXNlZC1kYXRhc3RvcmUgZHJhZnQgd291bGQgYmUgYSBnb29kIHBsYWNlIHRvIGRvY3VtZW50PGJy
Pgp3aGVyZSBuZXRtb2QoL25ldGNvbmYpIGJlbGlldmVzIGVwaGVtZXJhbCBkYXRhc3RvcmVzIChp
ZiB0aGF0J3MgdGhlPGJyPgppbnN0YW50aWF0aW9uKSBjb3VsZCBsaXZlLCBhbmQgYWxzbyBob3cg
ZXBoZW1lcmFsIGNvbmZpZ3VyYXRpb24gc3RhdGUgY291bGQ8YnI+CmludGVyYWN0IHdpdGggY2Fu
ZGlkYXRlLCBzdGFydHVwIGFuZCBydW5uaW5nIGNvbmZpZ3VyYXRpb24uPGJyPgo8YnI+Cnlhbmct
cHVzaCBjb3ZlcnMgbXVjaCBvZiBvdXIgZGVzaXJlZCBwdWItc3ViIGJlaGF2aW9yLiAoWWF5ISk8
YnI+Cjxicj4KRGlzY3Vzc2lvbiBpcyByZXF1aXJlZCBmb3IgaG93IHRvIHRhZyBzZWN1cml0eSBj
b25zaWRlcmF0aW9ucyBpbXBhY3Rpbmc8YnI+CnRyYW5zcG9ydCBpbnRvIHRoZSB5YW5nIG1vZGVs
LCBpbiBwYXJ0aWN1bGFyIGZvciBub3RpZmljYXRpb24uPGJyPgo8YnI+ClByb3Bvc2FscyBmb3Ig
c2Vjb25kYXJ5IGlkZW50aXR5IGFuZCBwcmlvcml0eSBhcmUgYWxzbyBuZWVkZWQuPGJyPgo8YnI+
Ci0tIEplZmY8dT48L3U+PHU+PC91PjwvcD4KPC9kaXY+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPiZu
YnNwOzx1PjwvdT48dT48L3U+PC9wPgo8L2Rpdj4KPC9kaXY+CjwvZGl2Pgo8L2Rpdj4KPC9kaXY+
CjwvZGl2Pgo8cCBjbGFzcz0iTXNvTm9ybWFsIj48dT48L3U+Jm5ic3A7PHU+PC91PjwvcD4KPC9k
aXY+CjwvZGl2Pgo8L2Rpdj4KPC9kaXY+CjwvZGl2PjwvYmxvY2txdW90ZT48L2Rpdj48YnI+PC9k
aXY+PC9kaXY+CjwvZGl2Pjxicj5fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fXzxicj4KaTJycyBtYWlsaW5nIGxpc3Q8YnI+CjxhIGhyZWY9Im1haWx0bzppMnJz
QGlldGYub3JnIj5pMnJzQGlldGYub3JnPC9hPjxicj4KPGEgaHJlZj0iaHR0cHM6Ly93d3cuaWV0
Zi5vcmcvbWFpbG1hbi9saXN0aW5mby9pMnJzIiByZWw9Im5vcmVmZXJyZXIiIHRhcmdldD0iX2Js
YW5rIj5odHRwczovL3d3dy5pZXRmLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2kycnM8L2E+PGJyPgo8
YnI+PC9ibG9ja3F1b3RlPjwvZGl2Pjxicj48L2Rpdj48L2Rpdj4KPC9ib2R5PjwvaHRtbD4=

----_com.samsung.android.email_5686063055465150--


From nobody Wed Jun  1 14:21:35 2016
Return-Path: <andy@yumaworks.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 3BB0312D0C5 for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 14:21:33 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.59
X-Spam-Level: 
X-Spam-Status: No, score=-2.59 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001, T_REMOTE_IMAGE=0.01] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=yumaworks-com.20150623.gappssmtp.com
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 fLX6vW7fWZBs for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 14:21:30 -0700 (PDT)
Received: from mail-yw0-x230.google.com (mail-yw0-x230.google.com [IPv6:2607:f8b0:4002:c05::230]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 5053412B01F for <i2rs@ietf.org>; Wed,  1 Jun 2016 14:21:30 -0700 (PDT)
Received: by mail-yw0-x230.google.com with SMTP id h19so31559082ywc.0 for <i2rs@ietf.org>; Wed, 01 Jun 2016 14:21:30 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yumaworks-com.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc; bh=LfZj6HG+4eEzFZn9NJZUZThEnkD2ZZBstNqb7X/Yuz0=; b=KxqTjVyHJYL24Zrf4jCOlG6og+2m7iL0OiRmURD4LptemleRFvHDu+4WKv+tVHEPgS JjZ5PdMM+1WWWdnyB/1uMeioJHsNmqbX6/kEUcv3oAGTxP7JT1VqW42zRwFwh4Ng/pdt Tx5gIxMEoik6IfLAk0PUYC9823PFtQgdLTmFB+T3dZcCof7eYaGxC8VKje0BnNXh3c70 htN0q2w3rLbFcKe/G+nH6zT/n3c+l3aFFKUfPWwTEBA1AA4RCvJRQ/XtE92l7ct3IrnR ObDA7nGjdQ8dzkb0hLLHtQMsfeZGBZ0PSEnx3rkccohzWkoUKcSN0emmra39CE24yaHC EIqQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc; bh=LfZj6HG+4eEzFZn9NJZUZThEnkD2ZZBstNqb7X/Yuz0=; b=GSgOUj8xDkGsn1y6UwGJllQk3ULlCSZIwOH6P+lZt9/f2J9oRd3H+7TTxUh6nMvV3W IniJMhGgjnp8d8R2NIAOlcFbZI7BCIuaDfPP035XB6u3S5V5HToZ/TgdC3hpIrKTylsz Hy8+EPGazJaShOhuD5zxdNa0QBJCVZmdNUfqy3Qfdux/CyKbu+dzfAgoxPQgiY915NNF 2DQo6ve1dI+hkr1sWCv3jUOroGjbWn2+GFRFufvrPAixT0VAczeFiTuNUgbXSxuDvNOb 11Kvx39jLhUQxQE2dH9ENUJ7JeEwN3Xj2HCbTGIMWQv0c1E6k4zAJ3l+zIQXoyf/36lJ KcYA==
X-Gm-Message-State: ALyK8tLwlhZeuq0E1WqA3w2Nzo/wdbhKVPf2NPZrnVOABS4gy3NBPcjF9Gx3QNpNxCCkJZPAohNt0wDClFJxsg==
MIME-Version: 1.0
X-Received: by 10.129.111.132 with SMTP id k126mr3798470ywc.11.1464816089484;  Wed, 01 Jun 2016 14:21:29 -0700 (PDT)
Received: by 10.37.115.208 with HTTP; Wed, 1 Jun 2016 14:21:29 -0700 (PDT)
In-Reply-To: <xtacw4gpqi42sf3pimiu1rc7.1464814713797@email.android.com>
References: <xtacw4gpqi42sf3pimiu1rc7.1464814713797@email.android.com>
Date: Wed, 1 Jun 2016 14:21:29 -0700
Message-ID: <CABCOCHTfHnch6__Dv-xZvhvwMsZPBuBdzhVygsKfexZ7ut4AyQ@mail.gmail.com>
From: Andy Bierman <andy@yumaworks.com>
To: Susan Hares <shares@ndzh.com>
Content-Type: multipart/alternative; boundary=001a11492606ad07f905343e12eb
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/UHAJLl7g2ClvW44hyR8WM9seYq8>
Cc: "i2rs@ietf.org" <i2rs@ietf.org>, Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>, Alia Atlas <akatlas@gmail.com>, Jeffrey Haas <jhaas@pfrc.org>, Benoit Claise <bclaise@cisco.com>, Linda Dunbar <linda.dunbar@huawei.com>
Subject: Re: [i2rs] Can I2RS focus on the "Over the Wire" data structure , not on how end point handle the "DataStore"?
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 01 Jun 2016 21:21:33 -0000

--001a11492606ad07f905343e12eb
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

Hi,

IMO ephemeral data needs to specify all ancestor nodes.
This decouples ephemeral and local config.
e.g,  ephemeral "ipv4" MUST include ancestors /interfaces/interface/ipv4.
It MUST NOT borrow the "/interfaces/interface" nodes from local config.

I2RS config validation can refer to config=3Dfalse nodes.
This handles the case where the installed ephemeral data depends
on operational state.


Andy


On Wed, Jun 1, 2016 at 1:58 PM, Susan Hares <shares@ndzh.com> wrote:

> Andy
>
> See below.
>
>
>
> Sent via the Samsung Galaxy Note5, an AT&T 4G LTE smartphone
> -------- Original message --------
> From: Andy Bierman <andy@yumaworks.com>
> Date: 6/1/2016 4:41 PM (GMT-05:00)
> To: Susan Hares <shares@ndzh.com>
> Cc: i2rs@ietf.org, Juergen Schoenwaelder <
> j.schoenwaelder@jacobs-university.de>, Linda Dunbar <
> linda.dunbar@huawei.com>, Benoit Claise <bclaise@cisco.com>, Jeffrey Haas
> <jhaas@pfrc.org>, Alia Atlas <akatlas@gmail.com>
> Subject: Re: [i2rs] Can I2RS focus on the "Over the Wire" data structure =
,
> not on how end point handle the "DataStore"?
>
>
>
> On Wed, Jun 1, 2016 at 1:32 PM, Susan Hares <shares@ndzh.com> wrote:
>
>>
>> Ah.. Interesting  viewpoint on the word "overwrite". And I find nothing
>> wrong with your viewpoint.
>>
>> If i2rs only config does not resolve to installable state, how would you
>> handle it.  Is this a case where i2rs config value does not exist so loc=
al
>> config is used?  I am showing partial installation of i2rs rib model.
>>
>> If I can see how this works, maybe I can find a way to understand
>> juergen's model.
>>
>>
> Why would this work?
> You mean the I2RS agent incorrectly accepts an edit that cannot be
> installed
> because it is invalid, or there are insufficient resources?
>
> Sue:: valid config.  Route needs to resolve next hop to specific interfac=
e.
>
> This is the same as the "no-validate" case for I2RS.
> If there is a "when IPv4" clause that is ignored by the agent, such that
> the agent
> appears to accept "IPv4" fields in an "IPv6" entry, what happens?
> (IMO this is 1 reason the no-validate mode is so broken).
>
> Sue: not the same case. Not invalid config.  Just not resolve to interfac=
e
> to send packet out
>
> Does the hopelessly invalid data stay in the ephemeral datastore?
> Does the agent attempt to (incorrectly) apply the IPv4 parameters to an
> IPv6 entry
> or does the agent ignore the data (i.e., must be validating the data
> somehow
> if it knows to ignore it)
>
> Sue: not this case.  Ephemeral config has been validated like all yang
> validation.
>
> Sue
>>
>
>
> Andy
>
>
>>
>> Sent via the Samsung Galaxy Note5, an AT&T 4G LTE smartphone
>> -------- Original message --------
>> From: Andy Bierman <andy@yumaworks.com>
>> Date: 6/1/2016 3:11 PM (GMT-05:00)
>> To: Susan Hares <shares@ndzh.com>
>> Cc: Linda Dunbar <linda.dunbar@huawei.com>, i2rs@ietf.org, Juergen
>> Schoenwaelder <j.schoenwaelder@jacobs-university.de>, Alia Atlas <
>> akatlas@gmail.com>, Benoit Claise <bclaise@cisco.com>, Jeffrey Haas <
>> jhaas@pfrc.org>
>> Subject: Re: [i2rs] Can I2RS focus on the "Over the Wire" data structure
>> , not on how end point handle the "DataStore"?
>>
>>
>>
>> On Wed, Jun 1, 2016 at 12:04 PM, Susan Hares <shares@ndzh.com> wrote:
>>
>>> Andy
>>>
>>> We currently are specifying i2rs rib model which can overwrite the loca=
l
>>> config.    Implementations experience will provide us with input on the
>>> protocols.
>>>
>>>
>> I don't view it that way.
>> The local config remains untouched throughout.
>> The higher priority ephemeral config value is used instead of the local
>> config value.
>> The operational state should reflect that ephemeral config is overriding
>> the local config.
>> The data model for the I2RS version does not have to be the local config
>> model.
>>
>>
>>
>>> Sue
>>>
>>>
>>>
>> Andy
>>
>>
>>>
>>> Sent via the Samsung Galaxy Note5, an AT&T 4G LTE smartphone
>>> -------- Original message --------
>>> From: Linda Dunbar <linda.dunbar@huawei.com>
>>> Date: 6/1/2016 12:34 PM (GMT-05:00)
>>> To: Andy Bierman <andy@yumaworks.com>
>>> Cc: i2rs@ietf.org, Juergen Schoenwaelder <
>>> j.schoenwaelder@jacobs-university.de>, Alia Atlas <akatlas@gmail.com>,
>>> Benoit Claise <bclaise@cisco.com>, Jeffrey Haas <jhaas@pfrc.org>, Susan
>>> Hares <shares@ndzh.com>
>>> Subject: Re: [i2rs] Can I2RS focus on the "Over the Wire" data structur=
e
>>> , not on how end point handle the "DataStore"?
>>>
>>> Andy,
>>>
>>>
>>>
>>> Agree with your suggested approach.
>>>
>>>
>>>
>>> Linda
>>>
>>>
>>>
>>> *From:* Andy Bierman [mailto:andy@yumaworks.com]
>>> *Sent:* Tuesday, May 31, 2016 9:05 PM
>>> *To:* Linda Dunbar
>>> *Cc:* Jeffrey Haas; Benoit Claise; i2rs@ietf.org; Juergen
>>> Schoenwaelder; Susan Hares; Alia Atlas
>>> *Subject:* Re: Can I2RS focus on the "Over the Wire" data structure ,
>>> not on how end point handle the "DataStore"?
>>>
>>>
>>>
>>> Hi,
>>>
>>>
>>>
>>> If your graphic advice means "the requirements are good enough, move on=
"
>>>
>>> then I agree.
>>>
>>>
>>>
>>> The datastore framework would be nice to have, but it is very close
>>>
>>> to the implementation details.  It is also attempting to be a superset
>>> of all
>>>
>>> "accepted" implementation choices.
>>>
>>>
>>>
>>> By "on the wire" we usually mean a protocol specification.
>>>
>>> IMO, all that is needed (for editing) is a set of RESTCONF extensions.
>>>
>>> Some people want to describe the I2RS desired behavior wrt/ how it
>>>
>>> interacts with the local config. (and many more features...)
>>>
>>>
>>>
>>> Perhaps a good first step would be ephemeral data models that do not
>>>
>>> interact with the local config at all.  I2RS is the only protocol of
>>> concern and the
>>>
>>> highest priority client.  I2RS just needs to support read/write/notify
>>> of ephemeral data.
>>>
>>> If this is not acceptable then be prepared to wait until all the
>>> framework stuff is settled
>>>
>>> and standardized.
>>>
>>>
>>>
>>>
>>>
>>> Andy
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> On Tue, May 31, 2016 at 4:09 PM, Linda Dunbar <linda.dunbar@huawei.com>
>>> wrote:
>>>
>>> IETF has been successful for past 20 years  in focusing on =E2=80=9COve=
r the
>>> Wire=E2=80=9D data structure.  It would be so much cleaner and straight=
 forward if
>>> the YANG modules developed by I2RS  focusing on the =E2=80=9COver the W=
ire=E2=80=9D data
>>> structure (and with NETMOD to focus on other aspects).
>>>
>>> The =E2=80=9CI2RS ephemeral State=E2=80=9D has the needed description f=
or the desired
>>> behavior  of the data received over I2RS interface. If we follow the IE=
TF
>>> practice,  it is good enough.
>>>
>>> Internal implementation framework is always controversial, hard to
>>> converge, usually ending up with a document (if completed) that is too =
big
>>> and difficult to read.
>>>
>>>
>>>
>>> Providing some source code to show the internal implementation would be
>>> much more useful as a reference implementation.
>>>
>>>
>>>
>>> The draft-schoenw-netmod-revised-datastores-00 is on the architectural
>>> framework for datastores as they are used by network management protoco=
ls.
>>> IMHO, how data stores are used are internal to the end points.
>>>
>>>
>>>
>>> [image:
>>> http://www.urbanblisslife.com/wp-content/uploads/2012/10/Done-is-Better=
-Than-Perfect.jpg]
>>> <http://www.google.com/url?sa=3Di&rct=3Dj&q=3D&esrc=3Ds&source=3Dimages=
&cd=3D&cad=3Drja&uact=3D8&ved=3D0ahUKEwj50KWat4XNAhULxGMKHRhqDPQQjRwIBw&url=
=3Dhttp%3A%2F%2Fwww.urbanblissmedia.com%2Fentrepreneur-rules-done-is-better=
-than-perfect%2F&psig=3DAFQjCNGKEiPB2iHSqyBiF5609pd72H0L7w&ust=3D1464822503=
865777>
>>>
>>>
>>>
>>> Linda Dunbar
>>>
>>>
>>>
>>> *From:* i2rs [mailto:i2rs-bounces@ietf.org] *On Behalf Of *Andy Bierman
>>> *Sent:* Tuesday, May 31, 2016 4:09 PM
>>> *To:* Jeffrey Haas
>>> *Cc:* Benoit Claise; i2rs@ietf.org; Juergen Schoenwaelder; Susan Hares;
>>> Alia Atlas
>>> *Subject:* Re: [i2rs] I2RS Interim Meeting - June 1, 2016 - 10:00am -
>>> 11:00am - Topic: Ephemeral State Requirements
>>>
>>>
>>>
>>> Hi,
>>>
>>>
>>>
>>> I am not convinced the IETF can be forced to function as if it were
>>>
>>> a dev-group in some corporation.  This is a volunteer organization so
>>>
>>> usually solution proposals come from people who have created a solution
>>>
>>> and they want the WG to standardize it.
>>>
>>>
>>>
>>>
>>>
>>> Andy
>>>
>>>
>>>
>>>
>>>
>>> On Tue, May 31, 2016 at 12:51 PM, Jeffrey Haas <jhaas@pfrc.org> wrote:
>>>
>>> Andy,
>>>
>>> On Tue, May 31, 2016 at 11:41:59AM -0700, Andy Bierman wrote:
>>> > At some point the WG needs to agree on normative text instead of
>>> iterating
>>> > on requirements forever.
>>>
>>> IMO, it would be in I2RS's best interests if netconf/netmod provided
>>> drafts
>>> in appropriately normative language covering I2RS requirements.  Howeve=
r,
>>> we've been in a pathological cycle of:
>>> "We don't understand, please give us requirements"
>>> "We don't understand your requirements"
>>> "You provided examples with your requirements that appear to be attempt=
s
>>> to
>>> change our protocol - don't do that."
>>>
>>> The most recent revised-datastore draft would be a good place to docume=
nt
>>> where netmod(/netconf) believes ephemeral datastores (if that's the
>>> instantiation) could live, and also how ephemeral configuration state
>>> could
>>> interact with candidate, startup and running configuration.
>>>
>>> yang-push covers much of our desired pub-sub behavior. (Yay!)
>>>
>>> Discussion is required for how to tag security considerations impacting
>>> transport into the yang model, in particular for notification.
>>>
>>> Proposals for secondary identity and priority are also needed.
>>>
>>> -- Jeff
>>>
>>>
>>>
>>>
>>>
>>
>>
>> _______________________________________________
>> i2rs mailing list
>> i2rs@ietf.org
>> https://www.ietf.org/mailman/listinfo/i2rs
>>
>>
>

--001a11492606ad07f905343e12eb
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">Hi,<div><br></div><div>IMO ephemeral data needs to specify=
 all ancestor nodes.</div><div>This decouples ephemeral and local config.</=
div><div>e.g, =C2=A0ephemeral &quot;ipv4&quot; MUST include ancestors /inte=
rfaces/interface/ipv4.</div><div>It MUST NOT borrow the &quot;/interfaces/i=
nterface&quot; nodes from local config.</div><div><br></div><div>I2RS confi=
g validation can refer to config=3Dfalse nodes.</div><div>This handles the =
case where the installed ephemeral data depends</div><div>on operational st=
ate.</div><div><br></div><div><br></div><div>Andy</div><div><br></div><div =
class=3D"gmail_extra"><br><div class=3D"gmail_quote">On Wed, Jun 1, 2016 at=
 1:58 PM, Susan Hares <span dir=3D"ltr">&lt;<a href=3D"mailto:shares@ndzh.c=
om" target=3D"_blank">shares@ndzh.com</a>&gt;</span> wrote:<br><blockquote =
class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid=
;padding-left:1ex"><div><div>Andy</div><div><br></div><div>See below.</div>=
<div><br></div><div><br></div><div><br></div><div><div style=3D"font-size:8=
5%;color:#575757">Sent via the Samsung Galaxy Note5, an AT&amp;T 4G LTE sma=
rtphone</div></div><div style=3D"font-size:100%;color:#000000"><div>-------=
- Original message --------</div><div>From: Andy Bierman &lt;<a href=3D"mai=
lto:andy@yumaworks.com" target=3D"_blank">andy@yumaworks.com</a>&gt; </div>=
<div>Date: 6/1/2016  4:41 PM  (GMT-05:00) </div><div>To: Susan Hares &lt;<a=
 href=3D"mailto:shares@ndzh.com" target=3D"_blank">shares@ndzh.com</a>&gt; =
</div><div>Cc: <a href=3D"mailto:i2rs@ietf.org" target=3D"_blank">i2rs@ietf=
.org</a>, Juergen Schoenwaelder &lt;<a href=3D"mailto:j.schoenwaelder@jacob=
s-university.de" target=3D"_blank">j.schoenwaelder@jacobs-university.de</a>=
&gt;, Linda Dunbar &lt;<a href=3D"mailto:linda.dunbar@huawei.com" target=3D=
"_blank">linda.dunbar@huawei.com</a>&gt;, Benoit Claise &lt;<a href=3D"mail=
to:bclaise@cisco.com" target=3D"_blank">bclaise@cisco.com</a>&gt;, Jeffrey =
Haas &lt;<a href=3D"mailto:jhaas@pfrc.org" target=3D"_blank">jhaas@pfrc.org=
</a>&gt;, Alia Atlas &lt;<a href=3D"mailto:akatlas@gmail.com" target=3D"_bl=
ank">akatlas@gmail.com</a>&gt; </div><div>Subject: Re: [i2rs] Can I2RS focu=
s on the &quot;Over the Wire&quot; data structure , not on how end point ha=
ndle the &quot;DataStore&quot;? </div><div><br></div></div><div dir=3D"ltr"=
><br><div class=3D"gmail_extra"><br><div class=3D"gmail_quote">On Wed, Jun =
1, 2016 at 1:32 PM, Susan Hares <span dir=3D"ltr">&lt;<a href=3D"mailto:sha=
res@ndzh.com" target=3D"_blank">shares@ndzh.com</a>&gt;</span> wrote:<br><b=
lockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px =
#ccc solid;padding-left:1ex"><div><div><br></div><div>Ah.. Interesting =C2=
=A0viewpoint on the word &quot;overwrite&quot;. And I find nothing wrong wi=
th your viewpoint.</div><div><br></div><div>If i2rs only config does not re=
solve to installable state, how would you handle it.=C2=A0 Is this a case w=
here i2rs config value does not exist so local config is used?=C2=A0 I am s=
howing partial installation of i2rs rib model.=C2=A0</div><div><br></div><d=
iv>If I can see how this works, maybe I can find a way to understand juerge=
n&#39;s model. =C2=A0</div><div><br></div></div></blockquote><div><br></div=
><div>Why would this work?</div><div>You mean the I2RS agent incorrectly ac=
cepts an edit that cannot be installed</div><div>because it is invalid, or =
there are insufficient resources?</div><div><br></div><div>Sue:: valid conf=
ig.=C2=A0 Route needs to resolve next hop to specific interface.</div><div>=
<br></div><div>This is the same as the &quot;no-validate&quot; case for I2R=
S.</div><div>If there is a &quot;when IPv4&quot; clause that is ignored by =
the agent, such that the agent</div><div>appears to accept &quot;IPv4&quot;=
 fields in an &quot;IPv6&quot; entry, what happens?<br></div><div>(IMO this=
 is 1 reason the no-validate mode is so broken).</div><div><br></div><div>S=
ue: not the same case. Not invalid config.=C2=A0 Just not resolve to interf=
ace to send packet out</div><div><br></div><div>Does the hopelessly invalid=
 data stay in the ephemeral datastore?</div><div>Does the agent attempt to =
(incorrectly) apply the IPv4 parameters to an IPv6 entry</div><div>or does =
the agent ignore the data (i.e., must be validating the data somehow</div><=
div>if it knows to ignore it)</div><div><br></div><div>Sue: not this case.=
=C2=A0 Ephemeral config has been validated like all yang validation.</div><=
div><br></div><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;=
border-left:1px #ccc solid;padding-left:1ex"><div><div></div><div>Sue=C2=A0=
</div></div></blockquote><div><br></div><div><br></div><div>Andy</div><div>=
=C2=A0</div><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;bo=
rder-left:1px #ccc solid;padding-left:1ex"><div><div><br></div><div><div st=
yle=3D"font-size:85%;color:#575757">Sent via the Samsung Galaxy Note5, an A=
T&amp;T 4G LTE smartphone</div></div><div style=3D"font-size:100%;color:#00=
0000"><div>-------- Original message --------</div><div>From: Andy Bierman =
&lt;<a href=3D"mailto:andy@yumaworks.com" target=3D"_blank">andy@yumaworks.=
com</a>&gt; </div><div>Date: 6/1/2016  3:11 PM  (GMT-05:00) </div><div>To: =
Susan Hares &lt;<a href=3D"mailto:shares@ndzh.com" target=3D"_blank">shares=
@ndzh.com</a>&gt; </div><div>Cc: Linda Dunbar &lt;<a href=3D"mailto:linda.d=
unbar@huawei.com" target=3D"_blank">linda.dunbar@huawei.com</a>&gt;, <a hre=
f=3D"mailto:i2rs@ietf.org" target=3D"_blank">i2rs@ietf.org</a>, Juergen Sch=
oenwaelder &lt;<a href=3D"mailto:j.schoenwaelder@jacobs-university.de" targ=
et=3D"_blank">j.schoenwaelder@jacobs-university.de</a>&gt;, Alia Atlas &lt;=
<a href=3D"mailto:akatlas@gmail.com" target=3D"_blank">akatlas@gmail.com</a=
>&gt;, Benoit Claise &lt;<a href=3D"mailto:bclaise@cisco.com" target=3D"_bl=
ank">bclaise@cisco.com</a>&gt;, Jeffrey Haas &lt;<a href=3D"mailto:jhaas@pf=
rc.org" target=3D"_blank">jhaas@pfrc.org</a>&gt; </div><div>Subject: Re: [i=
2rs] Can I2RS focus on the &quot;Over the Wire&quot; data structure , not o=
n how end point handle the &quot;DataStore&quot;? </div><div><br></div></di=
v><div dir=3D"ltr"><br><div class=3D"gmail_extra"><br><div class=3D"gmail_q=
uote">On Wed, Jun 1, 2016 at 12:04 PM, Susan Hares <span dir=3D"ltr">&lt;<a=
 href=3D"mailto:shares@ndzh.com" target=3D"_blank">shares@ndzh.com</a>&gt;<=
/span> wrote:<br><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8=
ex;border-left:1px #ccc solid;padding-left:1ex"><div><div>Andy</div><div><b=
r></div><div>We currently are specifying i2rs rib model which can overwrite=
 the local config. =C2=A0 =C2=A0Implementations experience will provide us =
with input on the protocols.=C2=A0</div><div><br></div></div></blockquote><=
div><br></div><div>I don&#39;t view it that way.</div><div>The local config=
 remains untouched throughout.</div><div>The higher priority ephemeral conf=
ig value is used instead of the local config value.</div><div>The operation=
al state should reflect that ephemeral config is overriding the local confi=
g.</div><div>The data model for the I2RS version does not have to be the lo=
cal config model.</div><div><br></div><div>=C2=A0</div><blockquote class=3D=
"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding=
-left:1ex"><div><div></div><div>Sue</div><div><br></div><div><br></div></di=
v></blockquote><div><br></div><div>Andy</div><div>=C2=A0</div><blockquote c=
lass=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;=
padding-left:1ex"><div><div></div><div><br></div><div><div style=3D"font-si=
ze:85%;color:#575757">Sent via the Samsung Galaxy Note5, an AT&amp;T 4G LTE=
 smartphone</div></div><div style=3D"font-size:100%;color:#000000"><div>---=
----- Original message --------</div><div>From: Linda Dunbar &lt;<a href=3D=
"mailto:linda.dunbar@huawei.com" target=3D"_blank">linda.dunbar@huawei.com<=
/a>&gt; </div><div>Date: 6/1/2016  12:34 PM  (GMT-05:00) </div><div>To: And=
y Bierman &lt;<a href=3D"mailto:andy@yumaworks.com" target=3D"_blank">andy@=
yumaworks.com</a>&gt; </div><div>Cc: <a href=3D"mailto:i2rs@ietf.org" targe=
t=3D"_blank">i2rs@ietf.org</a>, Juergen Schoenwaelder &lt;<a href=3D"mailto=
:j.schoenwaelder@jacobs-university.de" target=3D"_blank">j.schoenwaelder@ja=
cobs-university.de</a>&gt;, Alia Atlas &lt;<a href=3D"mailto:akatlas@gmail.=
com" target=3D"_blank">akatlas@gmail.com</a>&gt;, Benoit Claise &lt;<a href=
=3D"mailto:bclaise@cisco.com" target=3D"_blank">bclaise@cisco.com</a>&gt;, =
Jeffrey Haas &lt;<a href=3D"mailto:jhaas@pfrc.org" target=3D"_blank">jhaas@=
pfrc.org</a>&gt;, Susan Hares &lt;<a href=3D"mailto:shares@ndzh.com" target=
=3D"_blank">shares@ndzh.com</a>&gt; </div><div>Subject: Re: [i2rs] Can I2RS=
 focus on the &quot;Over the Wire&quot; data structure , not on how end poi=
nt handle the &quot;DataStore&quot;? </div><div><br></div></div>
<div>
<p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:&quot;Ca=
libri&quot;,&quot;sans-serif&quot;;color:#1f497d">Andy,
<u></u><u></u></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:&quot;Ca=
libri&quot;,&quot;sans-serif&quot;;color:#1f497d"><u></u>=C2=A0<u></u></spa=
n></p>
<p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:&quot;Ca=
libri&quot;,&quot;sans-serif&quot;;color:#1f497d">Agree with your suggested=
 approach.
<u></u><u></u></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:&quot;Ca=
libri&quot;,&quot;sans-serif&quot;;color:#1f497d"><u></u>=C2=A0<u></u></spa=
n></p>
<p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:&quot;Ca=
libri&quot;,&quot;sans-serif&quot;;color:#1f497d">Linda
<u></u><u></u></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:&quot;Ca=
libri&quot;,&quot;sans-serif&quot;;color:#1f497d"><u></u>=C2=A0<u></u></spa=
n></p>
<div style=3D"border:none;border-top:solid #b5c4df 1.0pt;padding:3.0pt 0in =
0in 0in">
<p class=3D"MsoNormal"><b><span style=3D"font-size:10.0pt;font-family:&quot=
;Tahoma&quot;,&quot;sans-serif&quot;">From:</span></b><span style=3D"font-s=
ize:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;"> Andy Bie=
rman [mailto:<a href=3D"mailto:andy@yumaworks.com" target=3D"_blank">andy@y=
umaworks.com</a>]
<br>
<b>Sent:</b> Tuesday, May 31, 2016 9:05 PM<br>
<b>To:</b> Linda Dunbar<br>
<b>Cc:</b> Jeffrey Haas; Benoit Claise; <a href=3D"mailto:i2rs@ietf.org" ta=
rget=3D"_blank">i2rs@ietf.org</a>; Juergen Schoenwaelder; Susan Hares; Alia=
 Atlas<br>
<b>Subject:</b> Re: Can I2RS focus on the &quot;Over the Wire&quot; data st=
ructure , not on how end point handle the &quot;DataStore&quot;?<u></u><u><=
/u></span></p>
</div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
<div>
<p class=3D"MsoNormal">Hi,<u></u><u></u></p>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
<div>
<p class=3D"MsoNormal">If your graphic advice means &quot;the requirements =
are good enough, move on&quot;<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">then I agree.<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
<div>
<p class=3D"MsoNormal">The datastore framework would be nice to have, but i=
t is very close<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">to the implementation details.=C2=A0 It is also atte=
mpting to be a superset of all<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">&quot;accepted&quot; implementation choices.<u></u><=
u></u></p>
</div>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
<div>
<p class=3D"MsoNormal">By &quot;on the wire&quot; we usually mean a protoco=
l specification.<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">IMO, all that is needed (for editing) is a set of RE=
STCONF extensions.<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">Some people want to describe the I2RS desired behavi=
or wrt/ how it<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">interacts with the local config. (and many more feat=
ures...)<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
<div>
<p class=3D"MsoNormal">Perhaps a good first step would be ephemeral data mo=
dels that do not<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">interact with the local config at all.=C2=A0 I2RS is=
 the only protocol of concern and the<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">highest priority client.=C2=A0 I2RS just needs to su=
pport read/write/notify of ephemeral data.<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">If this is not acceptable then be prepared to wait u=
ntil all the framework stuff is settled<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">and standardized.<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
<div>
<p class=3D"MsoNormal">Andy<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
<div>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
<div>
<p class=3D"MsoNormal">On Tue, May 31, 2016 at 4:09 PM, Linda Dunbar &lt;<a=
 href=3D"mailto:linda.dunbar@huawei.com" target=3D"_blank">linda.dunbar@hua=
wei.com</a>&gt; wrote:<u></u><u></u></p>
<div>
<div>
<p class=3D"MsoNormal"><span style=3D"font-family:&quot;Calibri&quot;,&quot=
;sans-serif&quot;;color:#1f497d">IETF has been successful for past 20 years=
 =C2=A0in focusing on =E2=80=9COver the Wire=E2=80=9D data structure.=C2=A0=
 It would be so much cleaner
 and straight forward if the YANG modules developed by I2RS =C2=A0focusing =
on the =E2=80=9COver the Wire=E2=80=9D data structure (and with NETMOD to f=
ocus on other aspects).</span><u></u><u></u></p>
<p class=3D"MsoNormal"><span style=3D"font-family:&quot;Calibri&quot;,&quot=
;sans-serif&quot;;color:#1f497d">The =E2=80=9CI2RS ephemeral State=E2=80=9D=
 has the needed description for the desired behavior =C2=A0of the data rece=
ived over I2RS interface.
 If we follow the IETF practice, =C2=A0it is good enough. </span><u></u><u>=
</u></p>
<p class=3D"MsoNormal"><span style=3D"font-family:&quot;Calibri&quot;,&quot=
;sans-serif&quot;;color:#1f497d">Internal implementation framework is alway=
s controversial, hard to converge, usually ending up with a document (if
 completed) that is too big and difficult to read. </span><u></u><u></u></p=
>
<p class=3D"MsoNormal"><span style=3D"font-family:&quot;Calibri&quot;,&quot=
;sans-serif&quot;;color:#1f497d">=C2=A0</span><u></u><u></u></p>
<p class=3D"MsoNormal"><span style=3D"font-family:&quot;Calibri&quot;,&quot=
;sans-serif&quot;;color:#1f497d">Providing some source code to show the int=
ernal implementation would be much more useful as a reference implementatio=
n.
</span><u></u><u></u></p>
<p class=3D"MsoNormal"><span style=3D"font-family:&quot;Calibri&quot;,&quot=
;sans-serif&quot;;color:#1f497d">=C2=A0</span><u></u><u></u></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none">
<span style=3D"font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color=
:#1f497d">The </span><span style=3D"font-family:Courier">draft-schoenw-netm=
od-revised-datastores-00
</span><span style=3D"font-family:&quot;Calibri&quot;,&quot;sans-serif&quot=
;;color:#1f497d">is on the architectural framework for datastores as they a=
re used by network management protocols. IMHO, how data stores are used are=
 internal to the end points.
</span><u></u><u></u></p>
<p class=3D"MsoNormal"><span style=3D"font-family:&quot;Calibri&quot;,&quot=
;sans-serif&quot;;color:#1f497d">=C2=A0</span><u></u><u></u></p>
<p class=3D"MsoNormal"><a href=3D"http://www.google.com/url?sa=3Di&amp;rct=
=3Dj&amp;q=3D&amp;esrc=3Ds&amp;source=3Dimages&amp;cd=3D&amp;cad=3Drja&amp;=
uact=3D8&amp;ved=3D0ahUKEwj50KWat4XNAhULxGMKHRhqDPQQjRwIBw&amp;url=3Dhttp%3=
A%2F%2Fwww.urbanblissmedia.com%2Fentrepreneur-rules-done-is-better-than-per=
fect%2F&amp;psig=3DAFQjCNGKEiPB2iHSqyBiF5609pd72H0L7w&amp;ust=3D14648225038=
65777" target=3D"_blank"><span style=3D"font-size:11.0pt;font-family:&quot;=
Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d;text-decoration:none"><i=
mg border=3D"0" width=3D"430" height=3D"558" alt=3D"http://www.urbanblissli=
fe.com/wp-content/uploads/2012/10/Done-is-Better-Than-Perfect.jpg"></span><=
/a><u></u><u></u></p>
<p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:&quot;Ca=
libri&quot;,&quot;sans-serif&quot;;color:#1f497d">=C2=A0</span><u></u><u></=
u></p>
<p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:&quot;Ca=
libri&quot;,&quot;sans-serif&quot;;color:#1f497d">Linda Dunbar</span><u></u=
><u></u></p>
<p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:&quot;Ca=
libri&quot;,&quot;sans-serif&quot;;color:#1f497d">=C2=A0</span><u></u><u></=
u></p>
<div style=3D"border:none;border-top:solid #b5c4df 1.0pt;padding:3.0pt 0in =
0in 0in">
<p class=3D"MsoNormal"><b><span style=3D"font-size:10.0pt;font-family:&quot=
;Tahoma&quot;,&quot;sans-serif&quot;">From:</span></b><span style=3D"font-s=
ize:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;"> i2rs [ma=
ilto:<a href=3D"mailto:i2rs-bounces@ietf.org" target=3D"_blank">i2rs-bounce=
s@ietf.org</a>]
<b>On Behalf Of </b>Andy Bierman<br>
<b>Sent:</b> Tuesday, May 31, 2016 4:09 PM<br>
<b>To:</b> Jeffrey Haas<br>
<b>Cc:</b> Benoit Claise; <a href=3D"mailto:i2rs@ietf.org" target=3D"_blank=
">i2rs@ietf.org</a>; Juergen Schoenwaelder; Susan Hares; Alia Atlas<br>
<b>Subject:</b> Re: [i2rs] I2RS Interim Meeting - June 1, 2016 - 10:00am - =
11:00am - Topic: Ephemeral State Requirements</span><u></u><u></u></p>
</div>
<p class=3D"MsoNormal">=C2=A0<u></u><u></u></p>
<div>
<p class=3D"MsoNormal">Hi,<u></u><u></u></p>
<div>
<p class=3D"MsoNormal">=C2=A0<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">I am not convinced the IETF can be forced to functio=
n as if it were<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">a dev-group in some corporation.=C2=A0 This is a vol=
unteer organization so<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">usually solution proposals come from people who have=
 created a solution<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">and they want the WG to standardize it.<u></u><u></u=
></p>
</div>
<div>
<p class=3D"MsoNormal">=C2=A0<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">=C2=A0<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">Andy<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">=C2=A0<u></u><u></u></p>
</div>
<div>
<div>
<p class=3D"MsoNormal">=C2=A0<u></u><u></u></p>
<div>
<p class=3D"MsoNormal">On Tue, May 31, 2016 at 12:51 PM, Jeffrey Haas &lt;<=
a href=3D"mailto:jhaas@pfrc.org" target=3D"_blank">jhaas@pfrc.org</a>&gt; w=
rote:<u></u><u></u></p>
<p class=3D"MsoNormal">Andy,<br>
<br>
On Tue, May 31, 2016 at 11:41:59AM -0700, Andy Bierman wrote:<br>
&gt; At some point the WG needs to agree on normative text instead of itera=
ting<br>
&gt; on requirements forever.<br>
<br>
IMO, it would be in I2RS&#39;s best interests if netconf/netmod provided dr=
afts<br>
in appropriately normative language covering I2RS requirements.=C2=A0 Howev=
er,<br>
we&#39;ve been in a pathological cycle of:<br>
&quot;We don&#39;t understand, please give us requirements&quot;<br>
&quot;We don&#39;t understand your requirements&quot;<br>
&quot;You provided examples with your requirements that appear to be attemp=
ts to<br>
change our protocol - don&#39;t do that.&quot;<br>
<br>
The most recent revised-datastore draft would be a good place to document<b=
r>
where netmod(/netconf) believes ephemeral datastores (if that&#39;s the<br>
instantiation) could live, and also how ephemeral configuration state could=
<br>
interact with candidate, startup and running configuration.<br>
<br>
yang-push covers much of our desired pub-sub behavior. (Yay!)<br>
<br>
Discussion is required for how to tag security considerations impacting<br>
transport into the yang model, in particular for notification.<br>
<br>
Proposals for secondary identity and priority are also needed.<br>
<br>
-- Jeff<u></u><u></u></p>
</div>
<p class=3D"MsoNormal">=C2=A0<u></u><u></u></p>
</div>
</div>
</div>
</div>
</div>
</div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
</div>
</div>
</div>
</div></blockquote></div><br></div></div>
</div><br>_______________________________________________<br>
i2rs mailing list<br>
<a href=3D"mailto:i2rs@ietf.org" target=3D"_blank">i2rs@ietf.org</a><br>
<a href=3D"https://www.ietf.org/mailman/listinfo/i2rs" rel=3D"noreferrer" t=
arget=3D"_blank">https://www.ietf.org/mailman/listinfo/i2rs</a><br>
<br></blockquote></div><br></div></div>
</div></blockquote></div><br></div></div>

--001a11492606ad07f905343e12eb--


From nobody Wed Jun  1 15:29:00 2016
Return-Path: <linda.dunbar@huawei.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 E39EA12D0C7 for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 15:28:57 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.646
X-Spam-Level: 
X-Spam-Status: No, score=-5.646 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-1.426, SPF_PASS=-0.001] autolearn=ham autolearn_force=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 RrUixXmf3Oie for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 15:28:55 -0700 (PDT)
Received: from lhrrgout.huawei.com (lhrrgout.huawei.com [194.213.3.17]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 5FB0E12B00F for <i2rs@ietf.org>; Wed,  1 Jun 2016 15:28:54 -0700 (PDT)
Received: from 172.18.7.190 (EHLO lhreml701-cah.china.huawei.com) ([172.18.7.190]) by lhrrg01-dlp.huawei.com (MOS 4.3.7-GA FastPath queued) with ESMTP id CQB88401; Wed, 01 Jun 2016 22:28:51 +0000 (GMT)
Received: from DFWEML701-CAH.china.huawei.com (10.193.5.175) by lhreml701-cah.china.huawei.com (10.201.5.93) with Microsoft SMTP Server (TLS) id 14.3.235.1; Wed, 1 Jun 2016 23:28:51 +0100
Received: from DFWEML501-MBB.china.huawei.com ([10.193.5.179]) by dfweml701-cah.china.huawei.com ([10.193.5.175]) with mapi id 14.03.0235.001; Wed, 1 Jun 2016 15:28:45 -0700
From: Linda Dunbar <linda.dunbar@huawei.com>
To: Susan Hares <shares@ndzh.com>, "i2rs@ietf.org" <i2rs@ietf.org>
Thread-Topic: [i2rs] Ephemeral-REQ-05 - new text for Resource constraints for OAM
Thread-Index: AdG8HbeDq5jLWRJCQGavg/vHr49PGQANx/Bg
Date: Wed, 1 Jun 2016 22:28:45 +0000
Message-ID: <4A95BA014132FF49AE685FAB4B9F17F657EAD798@dfweml501-mbb>
References: <005401d1bc1e$b4c00960$1e401c20$@ndzh.com>
In-Reply-To: <005401d1bc1e$b4c00960$1e401c20$@ndzh.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-originating-ip: [10.192.11.71]
Content-Type: multipart/alternative; boundary="_000_4A95BA014132FF49AE685FAB4B9F17F657EAD798dfweml501mbb_"
MIME-Version: 1.0
X-CFilter-Loop: Reflected
X-Mirapoint-Virus-RAPID-Raw: score=unknown(0), refid=str=0001.0A020201.574F61A4.013A, ss=1, re=0.000, recu=0.000, reip=0.000,  cl=1, cld=1, fgs=0, ip=0.0.0.0, so=2013-06-18 04:22:30, dmn=2013-03-21 17:37:32
X-Mirapoint-Loop-Id: 5c881a55804bf662ca327f89c464c4b1
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/vE-JwYzWCu9Yl6A0M4BfFuTbqJg>
Cc: 'Jeffrey Haas' <jhaas@pfrc.org>, "'Joel M. Halpern'" <jmh@joelhalpern.com>
Subject: Re: [i2rs] Ephemeral-REQ-05 - new text for Resource constraints for OAM
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 01 Jun 2016 22:28:58 -0000

--_000_4A95BA014132FF49AE685FAB4B9F17F657EAD798dfweml501mbb_
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

I think the new text for Ephemeral-REQ-05 is much better than the old one.

Support.

Linda Dunbar

From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Susan Hares
Sent: Wednesday, June 01, 2016 11:00 AM
To: i2rs@ietf.org
Cc: 'Jeffrey Haas'; 'Joel M. Halpern'
Subject: [i2rs] Ephemeral-REQ-05 - new text for Resource constraints for OA=
M

I2RS WG:

I would like feedback on the following text as replacement for ephemeral-re=
q-05.

Thank you,
Sue

---------------------

Proposal for new text for Ephemeral-REQ-05:

Ephemeral state handling, notifications, and OAM could increase the data fl=
ow rates across transport, or the rate of publication of data in a subscrip=
tion, or logging needed for traceability.   It is RECOMMENDED that the I2RS=
 Agent should have the ability to limit, prioritize or split data flows in =
the I2RS protocol.



=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
Old text:

   Ephemeral-REQ-05: Ephemeral state handling and notifications could
   increase need for CPU processing, data flow rates across a transport,
   or the rate of publication of data in a subscription or the logging
   for traceability.  The I2RS Agent SHOULD have the ability to
   constraints for OAM functions operating to limit CPU processing, data
   rate across a transport, the rate of publication of data in a
   subscription, and logging rates; and the I2RS Agent SHOULD have the
   ability to prioritize some of the management data flows between the
   I2RS Agent and I2RS Client.  In order to constrain resources needed,
   the I2RS Agent MAY also schedule data flows or split data flows unto
   multiple data flow streams.

--_000_4A95BA014132FF49AE685FAB4B9F17F657EAD798dfweml501mbb_
Content-Type: text/html; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" xmlns:o=3D"urn:schemas-micr=
osoft-com:office:office" xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" xmlns=3D"http:=
//www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3Dus-ascii"=
>
<meta name=3D"Generator" content=3D"Microsoft Word 12 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
	{font-family:SimSun;
	panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
	{font-family:Tahoma;
	panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
	{font-family:"\@SimSun";
	panose-1:2 1 6 0 3 1 1 1 1 1;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0in;
	margin-bottom:.0001pt;
	font-size:11.0pt;
	font-family:"Calibri","sans-serif";}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:blue;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:purple;
	text-decoration:underline;}
pre
	{mso-style-priority:99;
	mso-style-link:"HTML Preformatted Char";
	margin:0in;
	margin-bottom:.0001pt;
	font-size:10.0pt;
	font-family:"Courier New";}
span.HTMLPreformattedChar
	{mso-style-name:"HTML Preformatted Char";
	mso-style-priority:99;
	mso-style-link:"HTML Preformatted";
	font-family:"Courier New";}
span.EmailStyle19
	{mso-style-type:personal;
	font-family:"Calibri","sans-serif";
	color:windowtext;}
span.EmailStyle20
	{mso-style-type:personal-reply;
	font-family:"Calibri","sans-serif";
	color:#1F497D;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-size:10.0pt;}
@page WordSection1
	{size:8.5in 11.0in;
	margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
	{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang=3D"EN-US" link=3D"blue" vlink=3D"purple">
<div class=3D"WordSection1">
<p class=3D"MsoNormal"><span style=3D"color:#1F497D">I think the new text f=
or </span>
<b>Ephemeral-REQ-05 </b><span style=3D"color:#1F497D">is much better than t=
he old one.
<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D"><o:p>&nbsp;</o:p></spa=
n></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D">Support. <o:p></o:p></=
span></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D"><o:p>&nbsp;</o:p></spa=
n></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D">Linda Dunbar<o:p></o:p=
></span></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D"><o:p>&nbsp;</o:p></spa=
n></p>
<div>
<div style=3D"border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in =
0in 0in">
<p class=3D"MsoNormal"><b><span style=3D"font-size:10.0pt;font-family:&quot=
;Tahoma&quot;,&quot;sans-serif&quot;">From:</span></b><span style=3D"font-s=
ize:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;"> i2rs [ma=
ilto:i2rs-bounces@ietf.org]
<b>On Behalf Of </b>Susan Hares<br>
<b>Sent:</b> Wednesday, June 01, 2016 11:00 AM<br>
<b>To:</b> i2rs@ietf.org<br>
<b>Cc:</b> 'Jeffrey Haas'; 'Joel M. Halpern'<br>
<b>Subject:</b> [i2rs] Ephemeral-REQ-05 - new text for Resource constraints=
 for OAM<o:p></o:p></span></p>
</div>
</div>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal"><b>I2RS WG: <o:p></o:p></b></p>
<p class=3D"MsoNormal"><b><o:p>&nbsp;</o:p></b></p>
<p class=3D"MsoNormal">I would like feedback on the following text as repla=
cement for ephemeral-req-05.
<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">Thank you, <o:p></o:p></p>
<p class=3D"MsoNormal">Sue <o:p></o:p></p>
<p class=3D"MsoNormal"><b><o:p>&nbsp;</o:p></b></p>
<p class=3D"MsoNormal"><b>---------------------<o:p></o:p></b></p>
<p class=3D"MsoNormal"><b><o:p>&nbsp;</o:p></b></p>
<p class=3D"MsoNormal"><b>Proposal for new text for Ephemeral-REQ-05: <o:p>=
</o:p></b></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">Ephemeral state handling, notifications, and OAM cou=
ld increase the data flow rates across transport, or the rate of publicatio=
n of data in a subscription, or logging needed for traceability.&nbsp; &nbs=
p;It is RECOMMENDED that the I2RS Agent should
 have the ability to limit, prioritize or split data flows in the I2RS prot=
ocol. <o:p>
</o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D<o:p></o:p></p>
<p class=3D"MsoNormal">Old text: <o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp; Ephemeral-REQ-05: Ephemeral state handl=
ing and notifications could<o:p></o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp; increase need for CPU processing, data =
flow rates across a transport,<o:p></o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp; or the rate of publication of data in a=
 subscription or the logging<o:p></o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp; for traceability.&nbsp; The I2RS Agent =
SHOULD have the ability to<o:p></o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp; constraints for OAM functions operating=
 to limit CPU processing, data<o:p></o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp; rate across a transport, the rate of pu=
blication of data in a<o:p></o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp; subscription, and logging rates; and th=
e I2RS Agent SHOULD have the<o:p></o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp; ability to prioritize some of the manag=
ement data flows between the<o:p></o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp; I2RS Agent and I2RS Client.&nbsp; In or=
der to constrain resources needed,<o:p></o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp; the I2RS Agent MAY also schedule data f=
lows or split data flows unto<o:p></o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp; multiple data flow streams.<o:p></o:p><=
/p>
</div>
</body>
</html>

--_000_4A95BA014132FF49AE685FAB4B9F17F657EAD798dfweml501mbb_--


From nobody Wed Jun  1 15:48:29 2016
Return-Path: <linda.dunbar@huawei.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 2522F12D0C7 for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 15:48:28 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.647
X-Spam-Level: 
X-Spam-Status: No, score=-5.647 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-1.426, SPF_PASS=-0.001] autolearn=ham autolearn_force=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 E-sohNtK8Hth for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 15:48:25 -0700 (PDT)
Received: from lhrrgout.huawei.com (lhrrgout.huawei.com [194.213.3.17]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 6BBAB12D097 for <i2rs@ietf.org>; Wed,  1 Jun 2016 15:48:24 -0700 (PDT)
Received: from 172.18.7.190 (EHLO lhreml706-cah.china.huawei.com) ([172.18.7.190]) by lhrrg02-dlp.huawei.com (MOS 4.3.7-GA FastPath queued) with ESMTP id CLF56366; Wed, 01 Jun 2016 22:48:22 +0000 (GMT)
Received: from DFWEML703-CAH.china.huawei.com (10.193.5.177) by lhreml706-cah.china.huawei.com (10.201.5.182) with Microsoft SMTP Server (TLS) id 14.3.235.1; Wed, 1 Jun 2016 23:48:18 +0100
Received: from DFWEML501-MBB.china.huawei.com ([10.193.5.179]) by DFWEML703-CAH.china.huawei.com ([10.193.5.177]) with mapi id 14.03.0235.001; Wed, 1 Jun 2016 15:48:15 -0700
From: Linda Dunbar <linda.dunbar@huawei.com>
To: "Joel M. Halpern" <jmh@joelhalpern.com>, "i2rs@ietf.org" <i2rs@ietf.org>
Thread-Topic: [i2rs] ephemeral requirements - REQ 08 bullet 1
Thread-Index: AQHRvBTLfP9v5AjEwUCElwQ21BiU/p/VNiKQ
Date: Wed, 1 Jun 2016 22:48:15 +0000
Message-ID: <4A95BA014132FF49AE685FAB4B9F17F657EAD7E1@dfweml501-mbb>
References: <f9dd38f6-8350-ab9e-a880-c27dfd2a610d@joelhalpern.com>
In-Reply-To: <f9dd38f6-8350-ab9e-a880-c27dfd2a610d@joelhalpern.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-originating-ip: [10.192.11.71]
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-CFilter-Loop: Reflected
X-Mirapoint-Virus-RAPID-Raw: score=unknown(0), refid=str=0001.0A020204.574F6636.012B, ss=1, re=0.000, recu=0.000, reip=0.000,  cl=1, cld=1, fgs=0, ip=0.0.0.0, so=2013-06-18 04:22:30, dmn=2013-03-21 17:37:32
X-Mirapoint-Loop-Id: 4d67b3a9eae2892b618b49efaff88947
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/NtYDE26EwTUafxmdti1QuaZW1qI>
Subject: Re: [i2rs] ephemeral requirements - REQ 08 bullet 1
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 01 Jun 2016 22:48:28 -0000

Joel,=20

The existing text and the proposed test mean different things to me. The ex=
isting text is to say support I2RS Version 1, whereas the proposed text sta=
tes a very obvious statement.=20

If I2RS client didn't have the needed "communication mechanisms" to I2RS ag=
ent or can't decide if the communications mechanisms needed is supported, h=
ow can I2RS client even start to send commands to I2RS agent? =20

Linda

-----Original Message-----
From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Joel M. Halpern
Sent: Wednesday, June 01, 2016 9:48 AM
To: i2rs@ietf.org
Subject: [i2rs] ephemeral requirements - REQ 08 bullet 1

Existing Text:
1.  protocol version support for I2RS modifications - (e.g.  I2RS
        version 1)

Proposed Text:
1. Support for communication mechanisms to enable an I2RS client to determi=
ne that an I2RS agent supports the mechanisms needed for I2RS operation.


This probably is already met by existing NetConf mechanisms.  I think it is=
 useful to state anyway, so that solution development will verify that it i=
s met.

Yours,
Joel

_______________________________________________
i2rs mailing list
i2rs@ietf.org
https://www.ietf.org/mailman/listinfo/i2rs


From nobody Wed Jun  1 16:03:05 2016
Return-Path: <linda.dunbar@huawei.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 CBF0712B05D for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 16:03:03 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.647
X-Spam-Level: 
X-Spam-Status: No, score=-5.647 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-1.426, SPF_PASS=-0.001] autolearn=ham autolearn_force=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 3Vym1w4WtLOw for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 16:03:01 -0700 (PDT)
Received: from lhrrgout.huawei.com (lhrrgout.huawei.com [194.213.3.17]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 3B9E812B005 for <i2rs@ietf.org>; Wed,  1 Jun 2016 16:03:01 -0700 (PDT)
Received: from 172.18.7.190 (EHLO lhreml705-cah.china.huawei.com) ([172.18.7.190]) by lhrrg01-dlp.huawei.com (MOS 4.3.7-GA FastPath queued) with ESMTP id CQB90960; Wed, 01 Jun 2016 23:02:59 +0000 (GMT)
Received: from DFWEML701-CAH.china.huawei.com (10.193.5.175) by lhreml705-cah.china.huawei.com (10.201.5.168) with Microsoft SMTP Server (TLS) id 14.3.235.1; Thu, 2 Jun 2016 00:02:55 +0100
Received: from DFWEML501-MBB.china.huawei.com ([10.193.5.179]) by dfweml701-cah.china.huawei.com ([10.193.5.175]) with mapi id 14.03.0235.001; Wed, 1 Jun 2016 16:02:48 -0700
From: Linda Dunbar <linda.dunbar@huawei.com>
To: "Dongjie (Jimmy)" <jie.dong@huawei.com>, Jeffrey Haas <jhaas@pfrc.org>, "i2rs@ietf.org" <i2rs@ietf.org>
Thread-Topic: [i2rs] Extending WG adoption call for FB-RIB drafts (ending June 10)
Thread-Index: AQHRuH3aEmArtBXSe0efSbkpz5gLBZ/VQmFg
Date: Wed, 1 Jun 2016 23:02:47 +0000
Message-ID: <4A95BA014132FF49AE685FAB4B9F17F657EAD86F@dfweml501-mbb>
References: <002201d18c6f$24bab790$6e3026b0$@ndzh.com> <20160524161622.GK17462@pfrc.org> <76CD132C3ADEF848BD84D028D243C92774E837BD@NKGEML515-MBS.china.huawei.com>
In-Reply-To: <76CD132C3ADEF848BD84D028D243C92774E837BD@NKGEML515-MBS.china.huawei.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-originating-ip: [10.192.11.71]
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-CFilter-Loop: Reflected
X-Mirapoint-Virus-RAPID-Raw: score=unknown(0), refid=str=0001.0A020206.574F69A3.0230, ss=1, re=0.000, recu=0.000, reip=0.000,  cl=1, cld=1, fgs=0, ip=0.0.0.0, so=2013-06-18 04:22:30, dmn=2013-03-21 17:37:32
X-Mirapoint-Loop-Id: d1508a8c1e37e90a8235905065dd2d68
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/7knB3tipZHYm563g-aZazKgTimk>
Subject: Re: [i2rs] Extending WG adoption call for FB-RIB drafts (ending June 10)
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 01 Jun 2016 23:03:04 -0000

I support the adoption of these drafts.=20

Linda Dunbar

> -----Original Message-----
> From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Jeffrey Haas
> Sent: Wednesday, May 25, 2016 12:16 AM
> To: i2rs@ietf.org
> Subject: [i2rs] Extending WG adoption call for FB-RIB drafts (ending June=
 10)
>=20
> Working Group,
>=20
> In the prior poll, we didn't get much in the way of input for adopting th=
e
> filter-based RIB work.  This work is explicitly in charter, and more
> importantly is *modeling* work and doesn't have to immediately deal with
> our protocol headaches. :-)
>=20
> Please respond to the list whether you would support or don't support
> adoption of this draft.
>=20
> The extended WGLC ends on June 10.
>=20
> -- Jeff
>=20
> On Fri, Apr 01, 2016 at 07:35:13PM -0400, Susan Hares wrote:
> > This begins a 2 week WG Adoption call for:
> >
> >
> >
> > draft-kini-i2rs-fb-rib-info-model-03
> >
> > draft-hares-i2rs-fb-rib-data-model-03
> >
> > draft-hares-i2rs-pkt-eca-data-model-02
> >
> >
> >
> > Please send your comments on the technical merits and usefulness of
> > these models.
> >
> >
> >
> > Sue  and Jeff
> >
>=20
> > _______________________________________________
> > i2rs mailing list
> > i2rs@ietf.org
> > https://www.ietf.org/mailman/listinfo/i2rs
>=20
> _______________________________________________
> 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


From nobody Wed Jun  1 16:13:18 2016
Return-Path: <jmh@joelhalpern.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 5EC8D12D125 for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 16:13:17 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.702
X-Spam-Level: 
X-Spam-Status: No, score=-2.702 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=joelhalpern.com
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 0whDbNGZB013 for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 16:13:15 -0700 (PDT)
Received: from maila2.tigertech.net (maila2.tigertech.net [208.80.4.152]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 9D27912B05D for <i2rs@ietf.org>; Wed,  1 Jun 2016 16:13:15 -0700 (PDT)
Received: from localhost (localhost [127.0.0.1]) by maila2.tigertech.net (Postfix) with ESMTP id 6EF442406B3; Wed,  1 Jun 2016 16:13:15 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=joelhalpern.com; s=1.tigertech; t=1464822795; bh=q9bGrA907TLh0d+7Yu8ZZA394+tenIvM5Strv1inrpw=; h=Subject:To:References:From:Date:In-Reply-To:From; b=HqMeWLmVZRQ256d9IrtcaEXKmyw6LuJ//FctvLI+RU5CvU4dVZKM3/DfVezpveMrv BV32YwCp9aWzFEzjKZlxaN16TaJfDl46NVU+V4EA27ksbSP5v9yNpzlUNX18S8Vger dcBZOwbsxBm13DsPGs24RC3BIEU7cm2g0/iV3Frs=
X-Virus-Scanned: Debian amavisd-new at maila2.tigertech.net
Received: from Joels-MacBook-Pro.local (209-255-163-147.ip.mcleodusa.net [209.255.163.147]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by maila2.tigertech.net (Postfix) with ESMTPSA id 06D7724059C; Wed,  1 Jun 2016 16:13:14 -0700 (PDT)
To: Linda Dunbar <linda.dunbar@huawei.com>, "i2rs@ietf.org" <i2rs@ietf.org>
References: <f9dd38f6-8350-ab9e-a880-c27dfd2a610d@joelhalpern.com> <4A95BA014132FF49AE685FAB4B9F17F657EAD7E1@dfweml501-mbb>
From: "Joel M. Halpern" <jmh@joelhalpern.com>
Message-ID: <bf913585-d4ab-bd94-7c60-6ab292bebcf4@joelhalpern.com>
Date: Wed, 1 Jun 2016 19:13:09 -0400
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:45.0) Gecko/20100101 Thunderbird/45.1.0
MIME-Version: 1.0
In-Reply-To: <4A95BA014132FF49AE685FAB4B9F17F657EAD7E1@dfweml501-mbb>
Content-Type: text/plain; charset=windows-1252; format=flowed
Content-Transfer-Encoding: 7bit
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/GIbVIP9v6XvuHe5bmIFOIUe8cls>
Subject: Re: [i2rs] ephemeral requirements - REQ 08 bullet 1
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 01 Jun 2016 23:13:17 -0000

Linda, the problem is that there is no such thing as an I2RS protocol, 
much less version 1 of such a protocol.  If I2RS is using NetConf, the 
protocol is NetConf.  If it is using RestConf, then that is the protocol.

Further, the exact mechanism to express what the agent can do over these 
protocols is defined by those mechanisms.

I can't argue with your observation that there is not much to the 
requirement as reworded.  I consider that it is not vacuous because it 
confirms that we need the relevant capability information.  I recognize 
that the NetConf and NetMod working groups have been very good about 
doing that.

My primary point, as I have said several times on the list, and saqid on 
the webex, is that the requirement as written was not a description of 
what we requried, but of a possible (and in my personal view incorrect) 
way of meeting the requirement.

Yours,
Joel

On 6/1/16 6:48 PM, Linda Dunbar wrote:
> Joel,
>
> The existing text and the proposed test mean different things to me. The existing text is to say support I2RS Version 1, whereas the proposed text states a very obvious statement.
>
> If I2RS client didn't have the needed "communication mechanisms" to I2RS agent or can't decide if the communications mechanisms needed is supported, how can I2RS client even start to send commands to I2RS agent?
>
> Linda
>
> -----Original Message-----
> From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Joel M. Halpern
> Sent: Wednesday, June 01, 2016 9:48 AM
> To: i2rs@ietf.org
> Subject: [i2rs] ephemeral requirements - REQ 08 bullet 1
>
> Existing Text:
> 1.  protocol version support for I2RS modifications - (e.g.  I2RS
>         version 1)
>
> Proposed Text:
> 1. Support for communication mechanisms to enable an I2RS client to determine that an I2RS agent supports the mechanisms needed for I2RS operation.
>
>
> This probably is already met by existing NetConf mechanisms.  I think it is useful to state anyway, so that solution development will verify that it is met.
>
> Yours,
> Joel
>
> _______________________________________________
> i2rs mailing list
> i2rs@ietf.org
> https://www.ietf.org/mailman/listinfo/i2rs
>


From nobody Wed Jun  1 16:48:44 2016
Return-Path: <linda.dunbar@huawei.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 7C3D512D125 for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 16:48:43 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.647
X-Spam-Level: 
X-Spam-Status: No, score=-5.647 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-1.426, SPF_PASS=-0.001] autolearn=ham autolearn_force=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 uD_VEURM6zUO for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 16:48:41 -0700 (PDT)
Received: from lhrrgout.huawei.com (lhrrgout.huawei.com [194.213.3.17]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 9DD0312D0AB for <i2rs@ietf.org>; Wed,  1 Jun 2016 16:48:40 -0700 (PDT)
Received: from 172.18.7.190 (EHLO lhreml702-cah.china.huawei.com) ([172.18.7.190]) by lhrrg02-dlp.huawei.com (MOS 4.3.7-GA FastPath queued) with ESMTP id CLF60804; Wed, 01 Jun 2016 23:48:38 +0000 (GMT)
Received: from DFWEML701-CAH.china.huawei.com (10.193.5.175) by lhreml702-cah.china.huawei.com (10.201.5.99) with Microsoft SMTP Server (TLS) id 14.3.235.1; Thu, 2 Jun 2016 00:48:37 +0100
Received: from DFWEML501-MBB.china.huawei.com ([10.193.5.179]) by dfweml701-cah.china.huawei.com ([10.193.5.175]) with mapi id 14.03.0235.001; Wed, 1 Jun 2016 16:48:33 -0700
From: Linda Dunbar <linda.dunbar@huawei.com>
To: "Joel M. Halpern" <jmh@joelhalpern.com>, "i2rs@ietf.org" <i2rs@ietf.org>
Thread-Topic: [i2rs] ephemeral requirements - REQ 08 bullet 1
Thread-Index: AQHRvBTLfP9v5AjEwUCElwQ21BiU/p/VNiKQgAB9X4D//5NxIA==
Date: Wed, 1 Jun 2016 23:48:33 +0000
Message-ID: <4A95BA014132FF49AE685FAB4B9F17F657EAD911@dfweml501-mbb>
References: <f9dd38f6-8350-ab9e-a880-c27dfd2a610d@joelhalpern.com> <4A95BA014132FF49AE685FAB4B9F17F657EAD7E1@dfweml501-mbb> <bf913585-d4ab-bd94-7c60-6ab292bebcf4@joelhalpern.com>
In-Reply-To: <bf913585-d4ab-bd94-7c60-6ab292bebcf4@joelhalpern.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-originating-ip: [10.192.11.71]
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-CFilter-Loop: Reflected
X-Mirapoint-Virus-RAPID-Raw: score=unknown(0), refid=str=0001.0A020206.574F7457.0006, ss=1, re=0.000, recu=0.000, reip=0.000,  cl=1, cld=1, fgs=0, ip=0.0.0.0, so=2013-06-18 04:22:30, dmn=2013-03-21 17:37:32
X-Mirapoint-Loop-Id: 4d67b3a9eae2892b618b49efaff88947
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/n0d9p1RUtR15cPO_I5RUUcrWBoY>
Subject: Re: [i2rs] ephemeral requirements - REQ 08 bullet 1
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 01 Jun 2016 23:48:43 -0000

Joel,

Does it hurt if this requirement is removed from the document?=20

To me, it is more to say needing a reliable communication channel between I=
2RS client and agent (which should be assumed with NETCONF protocol). There=
fore, I don't think we need to have it in the I2RS Ephemeral requirement.

Linda =20

-----Original Message-----
From: Joel M. Halpern [mailto:jmh@joelhalpern.com]=20
Sent: Wednesday, June 01, 2016 6:13 PM
To: Linda Dunbar; i2rs@ietf.org
Subject: Re: [i2rs] ephemeral requirements - REQ 08 bullet 1

Linda, the problem is that there is no such thing as an I2RS protocol, much=
 less version 1 of such a protocol.  If I2RS is using NetConf, the protocol=
 is NetConf.  If it is using RestConf, then that is the protocol.

Further, the exact mechanism to express what the agent can do over these pr=
otocols is defined by those mechanisms.

I can't argue with your observation that there is not much to the requireme=
nt as reworded.  I consider that it is not vacuous because it confirms that=
 we need the relevant capability information.  I recognize that the NetConf=
 and NetMod working groups have been very good about doing that.

My primary point, as I have said several times on the list, and saqid on th=
e webex, is that the requirement as written was not a description of what w=
e requried, but of a possible (and in my personal view incorrect) way of me=
eting the requirement.

Yours,
Joel

On 6/1/16 6:48 PM, Linda Dunbar wrote:
> Joel,
>
> The existing text and the proposed test mean different things to me. The =
existing text is to say support I2RS Version 1, whereas the proposed text s=
tates a very obvious statement.
>
> If I2RS client didn't have the needed "communication mechanisms" to I2RS =
agent or can't decide if the communications mechanisms needed is supported,=
 how can I2RS client even start to send commands to I2RS agent?
>
> Linda
>
> -----Original Message-----
> From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Joel M. Halpern
> Sent: Wednesday, June 01, 2016 9:48 AM
> To: i2rs@ietf.org
> Subject: [i2rs] ephemeral requirements - REQ 08 bullet 1
>
> Existing Text:
> 1.  protocol version support for I2RS modifications - (e.g.  I2RS
>         version 1)
>
> Proposed Text:
> 1. Support for communication mechanisms to enable an I2RS client to deter=
mine that an I2RS agent supports the mechanisms needed for I2RS operation.
>
>
> This probably is already met by existing NetConf mechanisms.  I think it =
is useful to state anyway, so that solution development will verify that it=
 is met.
>
> Yours,
> Joel
>
> _______________________________________________
> i2rs mailing list
> i2rs@ietf.org
> https://www.ietf.org/mailman/listinfo/i2rs
>


From nobody Wed Jun  1 16:50:12 2016
Return-Path: <jmh.direct@joelhalpern.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 AEB9E12D0AB for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 16:50:11 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.702
X-Spam-Level: 
X-Spam-Status: No, score=-2.702 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=joelhalpern.com
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 Ekn6c9A5T57A for <i2rs@ietfa.amsl.com>; Wed,  1 Jun 2016 16:50:10 -0700 (PDT)
Received: from maila2.tigertech.net (maila2.tigertech.net [208.80.4.152]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 286A212D531 for <i2rs@ietf.org>; Wed,  1 Jun 2016 16:50:10 -0700 (PDT)
Received: from localhost (localhost [127.0.0.1]) by maila2.tigertech.net (Postfix) with ESMTP id 14D5324EA94; Wed,  1 Jun 2016 16:50:10 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=joelhalpern.com; s=1.tigertech; t=1464825010; bh=WvNvJx0e6bhOONFMLtEBKnRBqxWQJKf9rfU8tNh34hg=; h=Subject:To:References:From:Date:In-Reply-To:From; b=nqmMOtwR5LrxTR4LwYNosvS9SvMPn4hcANd6Akr9PdLxGW2m2XbjPv2IUWgUsGCD8 YGjx1S+vOnTNzMVYi/4UUYxWpcNI3jnpi2cMPWtDdBAwXvvQ1MMvIPh5Vcjo2hQ91H wvolAl1UhYCtdniDjy5aFJvT553Rtl2u1tCX932s=
X-Virus-Scanned: Debian amavisd-new at maila2.tigertech.net
Received: from Joels-MacBook-Pro.local (209-255-163-147.ip.mcleodusa.net [209.255.163.147]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by maila2.tigertech.net (Postfix) with ESMTPSA id 578D324075F; Wed,  1 Jun 2016 16:50:09 -0700 (PDT)
To: Linda Dunbar <linda.dunbar@huawei.com>, "Joel M. Halpern" <jmh@joelhalpern.com>, "i2rs@ietf.org" <i2rs@ietf.org>
References: <f9dd38f6-8350-ab9e-a880-c27dfd2a610d@joelhalpern.com> <4A95BA014132FF49AE685FAB4B9F17F657EAD7E1@dfweml501-mbb> <bf913585-d4ab-bd94-7c60-6ab292bebcf4@joelhalpern.com> <4A95BA014132FF49AE685FAB4B9F17F657EAD911@dfweml501-mbb>
From: Joel Halpern Direct <jmh.direct@joelhalpern.com>
Message-ID: <eb046a5a-7e3e-90a7-2462-ce20be24b212@joelhalpern.com>
Date: Wed, 1 Jun 2016 19:50:03 -0400
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:45.0) Gecko/20100101 Thunderbird/45.1.0
MIME-Version: 1.0
In-Reply-To: <4A95BA014132FF49AE685FAB4B9F17F657EAD911@dfweml501-mbb>
Content-Type: text/plain; charset=windows-1252; format=flowed
Content-Transfer-Encoding: 7bit
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/Z_TnNatY8d8OfKuACPzqGFEt4nc>
Subject: Re: [i2rs] ephemeral requirements - REQ 08 bullet 1
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 01 Jun 2016 23:50:11 -0000

I can live with removing it entirely.  Others had expressed that they 
felt it was important to include.

Yours,
Joel

On 6/1/16 7:48 PM, Linda Dunbar wrote:
> Joel,
>
> Does it hurt if this requirement is removed from the document?
>
> To me, it is more to say needing a reliable communication channel between I2RS client and agent (which should be assumed with NETCONF protocol). Therefore, I don't think we need to have it in the I2RS Ephemeral requirement.
>
> Linda
>
> -----Original Message-----
> From: Joel M. Halpern [mailto:jmh@joelhalpern.com]
> Sent: Wednesday, June 01, 2016 6:13 PM
> To: Linda Dunbar; i2rs@ietf.org
> Subject: Re: [i2rs] ephemeral requirements - REQ 08 bullet 1
>
> Linda, the problem is that there is no such thing as an I2RS protocol, much less version 1 of such a protocol.  If I2RS is using NetConf, the protocol is NetConf.  If it is using RestConf, then that is the protocol.
>
> Further, the exact mechanism to express what the agent can do over these protocols is defined by those mechanisms.
>
> I can't argue with your observation that there is not much to the requirement as reworded.  I consider that it is not vacuous because it confirms that we need the relevant capability information.  I recognize that the NetConf and NetMod working groups have been very good about doing that.
>
> My primary point, as I have said several times on the list, and saqid on the webex, is that the requirement as written was not a description of what we requried, but of a possible (and in my personal view incorrect) way of meeting the requirement.
>
> Yours,
> Joel
>
> On 6/1/16 6:48 PM, Linda Dunbar wrote:
>> Joel,
>>
>> The existing text and the proposed test mean different things to me. The existing text is to say support I2RS Version 1, whereas the proposed text states a very obvious statement.
>>
>> If I2RS client didn't have the needed "communication mechanisms" to I2RS agent or can't decide if the communications mechanisms needed is supported, how can I2RS client even start to send commands to I2RS agent?
>>
>> Linda
>>
>> -----Original Message-----
>> From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Joel M. Halpern
>> Sent: Wednesday, June 01, 2016 9:48 AM
>> To: i2rs@ietf.org
>> Subject: [i2rs] ephemeral requirements - REQ 08 bullet 1
>>
>> Existing Text:
>> 1.  protocol version support for I2RS modifications - (e.g.  I2RS
>>         version 1)
>>
>> Proposed Text:
>> 1. Support for communication mechanisms to enable an I2RS client to determine that an I2RS agent supports the mechanisms needed for I2RS operation.
>>
>>
>> This probably is already met by existing NetConf mechanisms.  I think it is useful to state anyway, so that solution development will verify that it is met.
>>
>> Yours,
>> Joel
>>
>> _______________________________________________
>> i2rs mailing list
>> i2rs@ietf.org
>> https://www.ietf.org/mailman/listinfo/i2rs
>>


From nobody Thu Jun  2 03:36:34 2016
Return-Path: <j.schoenwaelder@jacobs-university.de>
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 3B15D12D569 for <i2rs@ietfa.amsl.com>; Thu,  2 Jun 2016 03:36:33 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.626
X-Spam-Level: 
X-Spam-Status: No, score=-5.626 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, RP_MATCHES_RCVD=-1.426] autolearn=ham autolearn_force=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 Aqx58QthB1Sr for <i2rs@ietfa.amsl.com>; Thu,  2 Jun 2016 03:36:30 -0700 (PDT)
Received: from atlas3.jacobs-university.de (atlas3.jacobs-university.de [212.201.44.18]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 50B9712D0BE for <i2rs@ietf.org>; Thu,  2 Jun 2016 03:36:30 -0700 (PDT)
Received: from localhost (demetrius5.irc-it.jacobs-university.de [10.70.0.222]) by atlas3.jacobs-university.de (Postfix) with ESMTP id 9D6AA10CB; Thu,  2 Jun 2016 12:36:28 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from atlas3.jacobs-university.de ([10.70.0.220]) by localhost (demetrius5.jacobs-university.de [10.70.0.222]) (amavisd-new, port 10030) with ESMTP id OtHgzprzTLFq; Thu,  2 Jun 2016 12:36:23 +0200 (CEST)
Received: from hermes.jacobs-university.de (hermes.jacobs-university.de [212.201.44.23]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "hermes.jacobs-university.de", Issuer "Jacobs University CA - G01" (verified OK)) by atlas3.jacobs-university.de (Postfix) with ESMTPS; Thu,  2 Jun 2016 12:36:27 +0200 (CEST)
Received: from localhost (demetrius1.jacobs-university.de [212.201.44.46]) by hermes.jacobs-university.de (Postfix) with ESMTP id DC17F2004E; Thu,  2 Jun 2016 12:36:26 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from hermes.jacobs-university.de ([212.201.44.23]) by localhost (demetrius1.jacobs-university.de [212.201.44.32]) (amavisd-new, port 10024) with ESMTP id z3ZkSXoGztN1; Thu,  2 Jun 2016 12:36:24 +0200 (CEST)
Received: from elstar.local (elstar.jacobs.jacobs-university.de [10.50.231.133]) by hermes.jacobs-university.de (Postfix) with ESMTP id B12AB20047; Thu,  2 Jun 2016 12:36:24 +0200 (CEST)
Received: by elstar.local (Postfix, from userid 501) id D35383B02A57; Thu,  2 Jun 2016 12:36:23 +0200 (CEST)
Date: Thu, 2 Jun 2016 12:36:23 +0200
From: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
To: Susan Hares <shares@ndzh.com>
Message-ID: <20160602103621.GA26659@elstar.local>
Mail-Followup-To: Susan Hares <shares@ndzh.com>, 'Jeffrey Haas' <jhaas@pfrc.org>, i2rs@ietf.org, 'Benoit Claise' <bclaise@cisco.com>, 'Alia Atlas' <akatlas@gmail.com>
References: <6qtqondee9e8m6od11bh1ilt.1464783874424@email.android.com> <20160601123117.GB24741@elstar.local> <014801d1bc06$98eed670$cacc8350$@ndzh.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: inline
X-Clacks-Overhead: GNU Terry Pratchett
Content-Transfer-Encoding: 8bit
In-Reply-To: <014801d1bc06$98eed670$cacc8350$@ndzh.com>
User-Agent: Mutt/1.6.0 (2016-04-01)
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/TzGTfiUdqJUBBy7goMsENARXMiY>
Cc: 'Jeffrey Haas' <jhaas@pfrc.org>, i2rs@ietf.org, 'Benoit Claise' <bclaise@cisco.com>, 'Alia Atlas' <akatlas@gmail.com>
Subject: Re: [i2rs] I2RS Interim Meeting - June 1, 2016 - 10:00am - 11:00am -?  Topic: Ephemeral State Requirements
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
Reply-To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 02 Jun 2016 10:36:33 -0000

If a document uses a term like 'ephemeral operational state' then I
think it should be defined somewhere (and ideally there would be an
indication where the definition can be found).

/js

On Wed, Jun 01, 2016 at 09:07:43AM -0400, Susan Hares wrote:
> Juergen: 
> 
> The I2RS architecture document has passed to RFC editor.  Your time to
> request the definitions in that document has long past.  If you are asking
> for a definition of ephemeral state in the I2RS ephemeral requirements
> document, this is a valid comment.  Is this what you are asking for? 
> 
> Sue  
> 
> -----Original Message-----
> From: Juergen Schoenwaelder [mailto:j.schoenwaelder@jacobs-university.de] 
> Sent: Wednesday, June 01, 2016 8:31 AM
> To: Susan Hares
> Cc: 'Jeffrey Haas'; i2rs@ietf.org; 'Benoit Claise'; 'Alia Atlas'
> Subject: Re: [i2rs] I2RS Interim Meeting - June 1, 2016 - 10:00am - 11:00am
> -? Topic: Ephemeral State Requirements
> 
> OK. So if ephemeral state is the same as ephemeral data, can we simply get
> rid of one of the terms?
> 
> Still looking for a definition of 'ephemeral operational state' (since I
> consider operational state by nature to be ephemeral). And without it, I
> can't really resolve the 'defined as' relationships.
> 
> /js
> 
> On Wed, Jun 01, 2016 at 08:24:34AM -0400, Susan Hares wrote:
> > :== is a symbol that translates to defines as.
> > 
> > Left side :== (defines as) right side info Cat:== animal small furry 
> > Sue
> > 
> > 
> > Sent via the Samsung Galaxy Note5, an AT&T 4G LTE smartphone--------
> Original message --------From: Juergen Schoenwaelder
> <j.schoenwaelder@jacobs-university.de> Date: 6/1/2016  4:25 AM  (GMT-05:00)
> To: Susan Hares <shares@ndzh.com> Cc: 'Jeffrey Haas' <jhaas@pfrc.org>,
> i2rs@ietf.org, 'Benoit Claise' <bclaise@cisco.com>, 'Alia Atlas'
> <akatlas@gmail.com> Subject: Re: [i2rs] I2RS Interim Meeting - June 1, 2016
> - 10:00am - 11:00am -
> >   Topic: Ephemeral State Requirements On Tue, May 31, 2016 at 
> > 03:29:55PM -0400, Susan Hares wrote:
> > > Juergen: 
> > > 
> > > 
> > > >I understand YANG validation rules and I understand YANG's notion 
> > > >of
> > > configuration datastores. I do not >think this matches your 
> > > ephemeral configuration validation.
> > > 
> > > This does not provide a technical discussion of: 
> > > a) what you understand the ephemeral configuration validation rules 
> > > to be,
> > > b) why you do not the model matches the configuration validation rules. 
> > > 
> > > 1 Data Model is a great idea for NETCONF/NETMOD.  However, it should 
> > > encompass
> > > 
> > > Ephemeral data:== ephemeral state ::== Ephemeral configuration + 
> > > Ephemeral operational state
> > >
> > 
> > Unless you define what the terms mean and what ::== means I have no 
> > clue what you are trying to convey here.
> > 
> > /js
> > 
> > --
> > Juergen Schoenwaelder           Jacobs University Bremen gGmbH
> > Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
> > Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>
> 
> -- 
> Juergen Schoenwaelder           Jacobs University Bremen gGmbH
> Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
> Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>
> 

-- 
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>


From nobody Thu Jun  2 03:50:39 2016
Return-Path: <j.schoenwaelder@jacobs-university.de>
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 D912512D118 for <i2rs@ietfa.amsl.com>; Thu,  2 Jun 2016 03:50:37 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.626
X-Spam-Level: 
X-Spam-Status: No, score=-5.626 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, RP_MATCHES_RCVD=-1.426] autolearn=ham autolearn_force=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 EfKmLRSrPyLq for <i2rs@ietfa.amsl.com>; Thu,  2 Jun 2016 03:50:35 -0700 (PDT)
Received: from atlas3.jacobs-university.de (atlas3.jacobs-university.de [212.201.44.18]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 3B4D812D116 for <i2rs@ietf.org>; Thu,  2 Jun 2016 03:50:34 -0700 (PDT)
Received: from localhost (demetrius5.irc-it.jacobs-university.de [10.70.0.222]) by atlas3.jacobs-university.de (Postfix) with ESMTP id EBE421236; Thu,  2 Jun 2016 12:50:32 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from atlas3.jacobs-university.de ([10.70.0.220]) by localhost (demetrius5.jacobs-university.de [10.70.0.222]) (amavisd-new, port 10030) with ESMTP id 7F9FAMsVa_kT; Thu,  2 Jun 2016 12:50:27 +0200 (CEST)
Received: from hermes.jacobs-university.de (hermes.jacobs-university.de [212.201.44.23]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "hermes.jacobs-university.de", Issuer "Jacobs University CA - G01" (verified OK)) by atlas3.jacobs-university.de (Postfix) with ESMTPS; Thu,  2 Jun 2016 12:50:31 +0200 (CEST)
Received: from localhost (demetrius4.jacobs-university.de [212.201.44.49]) by hermes.jacobs-university.de (Postfix) with ESMTP id EEA782004E; Thu,  2 Jun 2016 12:50:30 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from hermes.jacobs-university.de ([212.201.44.23]) by localhost (demetrius4.jacobs-university.de [212.201.44.32]) (amavisd-new, port 10024) with ESMTP id QO8EUf7DyxrN; Thu,  2 Jun 2016 12:50:29 +0200 (CEST)
Received: from elstar.local (elstar.jacobs.jacobs-university.de [10.50.231.133]) by hermes.jacobs-university.de (Postfix) with ESMTP id C92CC20047; Thu,  2 Jun 2016 12:50:28 +0200 (CEST)
Received: by elstar.local (Postfix, from userid 501) id 69EE23B02C34; Thu,  2 Jun 2016 12:50:28 +0200 (CEST)
Date: Thu, 2 Jun 2016 12:50:28 +0200
From: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
To: Linda Dunbar <linda.dunbar@huawei.com>
Message-ID: <20160602105028.GB26659@elstar.local>
Mail-Followup-To: Linda Dunbar <linda.dunbar@huawei.com>, "Joel M. Halpern" <jmh@joelhalpern.com>, "i2rs@ietf.org" <i2rs@ietf.org>
References: <f9dd38f6-8350-ab9e-a880-c27dfd2a610d@joelhalpern.com> <4A95BA014132FF49AE685FAB4B9F17F657EAD7E1@dfweml501-mbb> <bf913585-d4ab-bd94-7c60-6ab292bebcf4@joelhalpern.com> <4A95BA014132FF49AE685FAB4B9F17F657EAD911@dfweml501-mbb>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <4A95BA014132FF49AE685FAB4B9F17F657EAD911@dfweml501-mbb>
User-Agent: Mutt/1.6.0 (2016-04-01)
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/C7Iv0rPH9MyHZFDGLNbH7LWWxHg>
Cc: "i2rs@ietf.org" <i2rs@ietf.org>, "Joel M. Halpern" <jmh@joelhalpern.com>
Subject: Re: [i2rs] ephemeral requirements - REQ 08 bullet 1
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
Reply-To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 02 Jun 2016 10:50:38 -0000

I understood the proposed text as 'be able to determine whether the
protocol implementation supports the mechanisms required by I2RS',
which is different from 'needing a reliable communication channel'.

/js

On Wed, Jun 01, 2016 at 11:48:33PM +0000, Linda Dunbar wrote:
> Joel,
> 
> Does it hurt if this requirement is removed from the document? 
> 
> To me, it is more to say needing a reliable communication channel between I2RS client and agent (which should be assumed with NETCONF protocol). Therefore, I don't think we need to have it in the I2RS Ephemeral requirement.
> 
> Linda  
> 
> -----Original Message-----
> From: Joel M. Halpern [mailto:jmh@joelhalpern.com] 
> Sent: Wednesday, June 01, 2016 6:13 PM
> To: Linda Dunbar; i2rs@ietf.org
> Subject: Re: [i2rs] ephemeral requirements - REQ 08 bullet 1
> 
> Linda, the problem is that there is no such thing as an I2RS protocol, much less version 1 of such a protocol.  If I2RS is using NetConf, the protocol is NetConf.  If it is using RestConf, then that is the protocol.
> 
> Further, the exact mechanism to express what the agent can do over these protocols is defined by those mechanisms.
> 
> I can't argue with your observation that there is not much to the requirement as reworded.  I consider that it is not vacuous because it confirms that we need the relevant capability information.  I recognize that the NetConf and NetMod working groups have been very good about doing that.
> 
> My primary point, as I have said several times on the list, and saqid on the webex, is that the requirement as written was not a description of what we requried, but of a possible (and in my personal view incorrect) way of meeting the requirement.
> 
> Yours,
> Joel
> 
> On 6/1/16 6:48 PM, Linda Dunbar wrote:
> > Joel,
> >
> > The existing text and the proposed test mean different things to me. The existing text is to say support I2RS Version 1, whereas the proposed text states a very obvious statement.
> >
> > If I2RS client didn't have the needed "communication mechanisms" to I2RS agent or can't decide if the communications mechanisms needed is supported, how can I2RS client even start to send commands to I2RS agent?
> >
> > Linda
> >
> > -----Original Message-----
> > From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Joel M. Halpern
> > Sent: Wednesday, June 01, 2016 9:48 AM
> > To: i2rs@ietf.org
> > Subject: [i2rs] ephemeral requirements - REQ 08 bullet 1
> >
> > Existing Text:
> > 1.  protocol version support for I2RS modifications - (e.g.  I2RS
> >         version 1)
> >
> > Proposed Text:
> > 1. Support for communication mechanisms to enable an I2RS client to determine that an I2RS agent supports the mechanisms needed for I2RS operation.
> >
> >
> > This probably is already met by existing NetConf mechanisms.  I think it is useful to state anyway, so that solution development will verify that it is met.
> >
> > Yours,
> > Joel
> >
> > _______________________________________________
> > 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

-- 
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>


From nobody Thu Jun  2 03:54:11 2016
Return-Path: <shares@ndzh.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 64ECC12D132 for <i2rs@ietfa.amsl.com>; Thu,  2 Jun 2016 03:54:10 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.738
X-Spam-Level: *
X-Spam-Status: No, score=1.738 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, RDNS_NONE=0.793] autolearn=no autolearn_force=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 gJuxwQTSFKOg for <i2rs@ietfa.amsl.com>; Thu,  2 Jun 2016 03:54:09 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id D02F212D126 for <i2rs@ietf.org>; Thu,  2 Jun 2016 03:54:08 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=74.43.47.63; 
From: "Susan Hares" <shares@ndzh.com>
To: "'Juergen Schoenwaelder'" <j.schoenwaelder@jacobs-university.de>
References: <6qtqondee9e8m6od11bh1ilt.1464783874424@email.android.com> <20160601123117.GB24741@elstar.local> <014801d1bc06$98eed670$cacc8350$@ndzh.com> <20160602103621.GA26659@elstar.local>
In-Reply-To: <20160602103621.GA26659@elstar.local>
Date: Thu, 2 Jun 2016 06:53:42 -0400
Message-ID: <016c01d1bcbd$10aa6ba0$31ff42e0$@ndzh.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
X-Mailer: Microsoft Outlook 14.0
Content-Language: en-us
thread-index: AQGbYteCLdCrzIxPBPS4NCrBr2pzpwL+zBapARJ2dYkCgJ24lqAOITYg
X-Authenticated-User: skh@ndzh.com 
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/--UD8vEgMfKVJgsZpIkXJG3AcKQ>
Cc: 'Jeffrey Haas' <jhaas@pfrc.org>, i2rs@ietf.org, 'Benoit Claise' <bclaise@cisco.com>, 'Alia Atlas' <akatlas@gmail.com>
Subject: Re: [i2rs] I2RS Interim Meeting - June 1, 2016 - 10:00am - 11:00am -?  Topic: Ephemeral State Requirements
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 02 Jun 2016 10:54:10 -0000

Juergen:

Do you think this definition belongs in the ephemeral requirements?  If =
so,
we can add it.   But perhaps we should define both ephemeral =
configuration
and ephemeral operational state.  Joel point out at the I2RS interim =
that
ephemeral operational state is just like all other operational state - =
it
disappears upon reboot.   It is ephemeral configuration which is =
different
than normal configuration - since it disappears upon reboot where normal
configuration does not.=20

Is this diagram close to your existing model where opstate and ephemeral
configuration are parallel? =20

+--------------------+    +--------------------------+
|    opstate         |    | ephemeral config  |
+--------------------+    +--------------------------+

Sue=20


=20

-----Original Message-----
From: Juergen Schoenwaelder =
[mailto:j.schoenwaelder@jacobs-university.de]=20
Sent: Thursday, June 02, 2016 6:36 AM
To: Susan Hares
Cc: 'Jeffrey Haas'; i2rs@ietf.org; 'Benoit Claise'; 'Alia Atlas'
Subject: Re: [i2rs] I2RS Interim Meeting - June 1, 2016 - 10:00am - =
11:00am
-? Topic: Ephemeral State Requirements

If a document uses a term like 'ephemeral operational state' then I =
think it
should be defined somewhere (and ideally there would be an indication =
where
the definition can be found).

/js

On Wed, Jun 01, 2016 at 09:07:43AM -0400, Susan Hares wrote:
> Juergen:=20
>=20
> The I2RS architecture document has passed to RFC editor.  Your time to =

> request the definitions in that document has long past.  If you are=20
> asking for a definition of ephemeral state in the I2RS ephemeral=20
> requirements document, this is a valid comment.  Is this what you are
asking for?
>=20
> Sue
>=20
> -----Original Message-----
> From: Juergen Schoenwaelder=20
> [mailto:j.schoenwaelder@jacobs-university.de]
> Sent: Wednesday, June 01, 2016 8:31 AM
> To: Susan Hares
> Cc: 'Jeffrey Haas'; i2rs@ietf.org; 'Benoit Claise'; 'Alia Atlas'
> Subject: Re: [i2rs] I2RS Interim Meeting - June 1, 2016 - 10:00am -=20
> 11:00am -? Topic: Ephemeral State Requirements
>=20
> OK. So if ephemeral state is the same as ephemeral data, can we simply =

> get rid of one of the terms?
>=20
> Still looking for a definition of 'ephemeral operational state' (since =

> I consider operational state by nature to be ephemeral). And without=20
> it, I can't really resolve the 'defined as' relationships.
>=20
> /js
>=20
> On Wed, Jun 01, 2016 at 08:24:34AM -0400, Susan Hares wrote:
> > :=3D=3D is a symbol that translates to defines as.
> >=20
> > Left side :=3D=3D (defines as) right side info Cat:=3D=3D animal =
small furry=20
> > Sue
> >=20
> >=20
> > Sent via the Samsung Galaxy Note5, an AT&T 4G LTE smartphone--------
> Original message --------From: Juergen Schoenwaelder=20
> <j.schoenwaelder@jacobs-university.de> Date: 6/1/2016  4:25 AM =20
> (GMT-05:00)
> To: Susan Hares <shares@ndzh.com> Cc: 'Jeffrey Haas' <jhaas@pfrc.org>, =

> i2rs@ietf.org, 'Benoit Claise' <bclaise@cisco.com>, 'Alia Atlas'
> <akatlas@gmail.com> Subject: Re: [i2rs] I2RS Interim Meeting - June 1, =

> 2016
> - 10:00am - 11:00am -
> >   Topic: Ephemeral State Requirements On Tue, May 31, 2016 at=20
> > 03:29:55PM -0400, Susan Hares wrote:
> > > Juergen:=20
> > >=20
> > >=20
> > > >I understand YANG validation rules and I understand YANG's notion =

> > > >of
> > > configuration datastores. I do not >think this matches your=20
> > > ephemeral configuration validation.
> > >=20
> > > This does not provide a technical discussion of:=20
> > > a) what you understand the ephemeral configuration validation=20
> > > rules to be,
> > > b) why you do not the model matches the configuration validation
rules.=20
> > >=20
> > > 1 Data Model is a great idea for NETCONF/NETMOD.=A0 However, it=20
> > > should encompass
> > >=20
> > > Ephemeral data:=3D=3D ephemeral state ::=3D=3D Ephemeral =
configuration +=20
> > > Ephemeral operational state
> > >
> >=20
> > Unless you define what the terms mean and what ::=3D=3D means I have =
no=20
> > clue what you are trying to convey here.
> >=20
> > /js
> >=20
> > --
> > Juergen Schoenwaelder=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 Jacobs =
University Bremen gGmbH
> > Phone: +49 421 200 3587=A0=A0=A0=A0=A0=A0=A0=A0 Campus Ring 1 | =
28759 Bremen |=20
> > Germany
> > Fax:=A0=A0 +49 421 200 3103=A0=A0=A0=A0=A0=A0=A0=A0 =
<http://www.jacobs-university.de/>
>=20
> --=20
> Juergen Schoenwaelder           Jacobs University Bremen gGmbH
> Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
> Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>
>=20

--=20
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>


From nobody Thu Jun  2 04:05:17 2016
Return-Path: <j.schoenwaelder@jacobs-university.de>
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 CDD5E12D68E for <i2rs@ietfa.amsl.com>; Thu,  2 Jun 2016 04:05:15 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.626
X-Spam-Level: 
X-Spam-Status: No, score=-5.626 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, RP_MATCHES_RCVD=-1.426] autolearn=ham autolearn_force=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 x8kstGwK6RlA for <i2rs@ietfa.amsl.com>; Thu,  2 Jun 2016 04:05:14 -0700 (PDT)
Received: from atlas3.jacobs-university.de (atlas3.jacobs-university.de [212.201.44.18]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 2A10E12D625 for <i2rs@ietf.org>; Thu,  2 Jun 2016 04:04:53 -0700 (PDT)
Received: from localhost (demetrius5.irc-it.jacobs-university.de [10.70.0.222]) by atlas3.jacobs-university.de (Postfix) with ESMTP id E30FA11D1; Thu,  2 Jun 2016 13:04:51 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from atlas3.jacobs-university.de ([10.70.0.220]) by localhost (demetrius5.jacobs-university.de [10.70.0.222]) (amavisd-new, port 10030) with ESMTP id q-9IGXvo1bFw; Thu,  2 Jun 2016 13:04:47 +0200 (CEST)
Received: from hermes.jacobs-university.de (hermes.jacobs-university.de [212.201.44.23]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "hermes.jacobs-university.de", Issuer "Jacobs University CA - G01" (verified OK)) by atlas3.jacobs-university.de (Postfix) with ESMTPS; Thu,  2 Jun 2016 13:04:51 +0200 (CEST)
Received: from localhost (demetrius1.jacobs-university.de [212.201.44.46]) by hermes.jacobs-university.de (Postfix) with ESMTP id DCFAD20056; Thu,  2 Jun 2016 13:04:50 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from hermes.jacobs-university.de ([212.201.44.23]) by localhost (demetrius1.jacobs-university.de [212.201.44.32]) (amavisd-new, port 10024) with ESMTP id WIXz5CIajetm; Thu,  2 Jun 2016 13:04:49 +0200 (CEST)
Received: from elstar.local (elstar.jacobs.jacobs-university.de [10.50.231.133]) by hermes.jacobs-university.de (Postfix) with ESMTP id 7D2BD20054; Thu,  2 Jun 2016 13:04:49 +0200 (CEST)
Received: by elstar.local (Postfix, from userid 501) id 6F29D3B02D9C; Thu,  2 Jun 2016 13:04:49 +0200 (CEST)
Date: Thu, 2 Jun 2016 13:04:49 +0200
From: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
To: Susan Hares <shares@ndzh.com>
Message-ID: <20160602110449.GC26659@elstar.local>
Mail-Followup-To: Susan Hares <shares@ndzh.com>, 'Jeffrey Haas' <jhaas@pfrc.org>, i2rs@ietf.org, 'Benoit Claise' <bclaise@cisco.com>, 'Alia Atlas' <akatlas@gmail.com>
References: <6qtqondee9e8m6od11bh1ilt.1464783874424@email.android.com> <20160601123117.GB24741@elstar.local> <014801d1bc06$98eed670$cacc8350$@ndzh.com> <20160602103621.GA26659@elstar.local> <016c01d1bcbd$10aa6ba0$31ff42e0$@ndzh.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <016c01d1bcbd$10aa6ba0$31ff42e0$@ndzh.com>
User-Agent: Mutt/1.6.0 (2016-04-01)
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/DQQJ--gM0WLPK1jhdkhJ-Ryq5ek>
Cc: 'Jeffrey Haas' <jhaas@pfrc.org>, i2rs@ietf.org, 'Benoit Claise' <bclaise@cisco.com>, 'Alia Atlas' <akatlas@gmail.com>
Subject: Re: [i2rs] I2RS Interim Meeting - June 1, 2016 - 10:00am - 11:00am -?  Topic: Ephemeral State Requirements
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
Reply-To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 02 Jun 2016 11:05:16 -0000

On Thu, Jun 02, 2016 at 06:53:42AM -0400, Susan Hares wrote:
> Juergen:
> 
> Do you think this definition belongs in the ephemeral requirements?  If so,
> we can add it.   But perhaps we should define both ephemeral configuration
> and ephemeral operational state.  Joel point out at the I2RS interim that
> ephemeral operational state is just like all other operational state - it
> disappears upon reboot.   It is ephemeral configuration which is different
> than normal configuration - since it disappears upon reboot where normal
> configuration does not. 
> 
> Is this diagram close to your existing model where opstate and ephemeral
> configuration are parallel?  
> 
> +--------------------+    +--------------------------+
> |    opstate         |    | ephemeral config  |
> +--------------------+    +--------------------------+
>

I see two boxes, I am unsure what you think these boxes drawn this way
mean. What is 'this definition' in your first sentence? I really have
problems to follow what is going on.

/js

-- 
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>


From nobody Thu Jun  2 04:15:58 2016
Return-Path: <shares@ndzh.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 F2FED12D110 for <i2rs@ietfa.amsl.com>; Thu,  2 Jun 2016 04:15:56 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.749
X-Spam-Level: *
X-Spam-Status: No, score=1.749 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, HTML_MESSAGE=0.001, RDNS_NONE=0.793, T_KAM_HTML_FONT_INVALID=0.01] autolearn=no autolearn_force=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 KhoevTLYIymi for <i2rs@ietfa.amsl.com>; Thu,  2 Jun 2016 04:15:55 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id BCA2412B076 for <i2rs@ietf.org>; Thu,  2 Jun 2016 04:15:54 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=74.43.47.63; 
From: "Susan Hares" <shares@ndzh.com>
To: "'Juergen Schoenwaelder'" <j.schoenwaelder@jacobs-university.de>
References: <6qtqondee9e8m6od11bh1ilt.1464783874424@email.android.com> <20160601123117.GB24741@elstar.local> <014801d1bc06$98eed670$cacc8350$@ndzh.com> <20160602103621.GA26659@elstar.local> <016c01d1bcbd$10aa6ba0$31ff42e0$@ndzh.com> <20160602110449.GC26659@elstar.local>
In-Reply-To: <20160602110449.GC26659@elstar.local>
Date: Thu, 2 Jun 2016 07:15:34 -0400
Message-ID: <017101d1bcc0$1b3a18b0$51ae4a10$@ndzh.com>
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="----=_NextPart_000_0172_01D1BC9E.942E9330"
X-Mailer: Microsoft Outlook 14.0
Content-Language: en-us
thread-index: AQGbYteCLdCrzIxPBPS4NCrBr2pzpwL+zBapARJ2dYkCgJ24lgHgYBRGAiQAaU+f7gZWkA==
X-Authenticated-User: skh@ndzh.com 
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/0VzKVX0xnifZAbCC7pvOSKC5zTg>
Cc: 'Jeffrey Haas' <jhaas@pfrc.org>, i2rs@ietf.org, 'Benoit Claise' <bclaise@cisco.com>, 'Alia Atlas' <akatlas@gmail.com>
Subject: Re: [i2rs] I2RS Interim Meeting - June 1, 2016 - 10:00am - 11:00am -?  Topic: Ephemeral State Requirements
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 02 Jun 2016 11:15:57 -0000

This is a multipart message in MIME format.

------=_NextPart_000_0172_01D1BC9E.942E9330
Content-Type: text/plain;
	charset="us-ascii"
Content-Transfer-Encoding: 7bit

Juergen: 

 

On first sentence, ... restated 

Do you believe the "ephemeral operational state" belongs in the ephemeral
requirements? If so, we can add it.  Perhaps we should also add a definition
for ephemeral configuration. 

 

On picture -- here is your picture: 

 

   +-------------+                  +-----------+

   | <candidate> |                  | <startup> |

   |  (ct, rw)   |<---+        +--->| (ct, rw)  |

   +-------------+    |        |    +-----------+

          |           |        |           |

          |         +------------+         |

          +-------->| <running>  |<--------+

                    | (ct, rw)   |

                    +------------+

                          |         // e.g., removal of 'inactive' nodes

                          v

                    +------------+

                    | <intended> |  // subject to validation

                    | (ct, ro)   |

                    +------------+

                          |         // e.g., missing resources or delays

                          v

                    +------------+

                    | <applied>  |

                    | (ct, ro)   |

                    +------------+

                          |         // e.g., autodiscovery of values

                          v

          +--------------------------------+

          | <operational-state>            |<-- control plane and

          | (ct + cf, ro)                  |    ephemeral datastores

          +--------------------------------+

 

Is this part of the picture 

 

          +--------------------------------+

          | <operational-state>            |<-- control plane and

          | (ct + cf, ro)                  |    ephemeral datastores

          +--------------------------------+

 

Really 

  +--------------------+    +--------------------------+
+-----------------------+

 |    opstate         |    | ephemeral config  |   | applied  config    |

 | (cf, ro)               |    |   (ct, ro, ephemeral|  | (ct, ro)
|

 +--------------------+    +---------------------------+
+-------------------------+

 

Or just 

  +--------------------+    +--------------------------+    

  |    opstate         |    | ephemeral config  |    

  | (cf, ro)               |    |   (ct, ro, ephemeral 

  +--------------------+    +---------------------------+   

 

 

Sue 

 

-----Original Message-----
From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Juergen Schoenwaelder
Sent: Thursday, June 02, 2016 7:05 AM
To: Susan Hares
Cc: 'Jeffrey Haas'; i2rs@ietf.org; 'Benoit Claise'; 'Alia Atlas'
Subject: Re: [i2rs] I2RS Interim Meeting - June 1, 2016 - 10:00am - 11:00am
-? Topic: Ephemeral State Requirements

 

On Thu, Jun 02, 2016 at 06:53:42AM -0400, Susan Hares wrote:

> Juergen:

> 

> Do you think this definition belongs in the ephemeral requirements?  If
so,

> we can add it.   But perhaps we should define both ephemeral configuration

> and ephemeral operational state.  Joel point out at the I2RS interim 

> that ephemeral operational state is just like all other operational state
- it

> disappears upon reboot.   It is ephemeral configuration which is different

> than normal configuration - since it disappears upon reboot where 

> normal configuration does not.

> 

> Is this diagram close to your existing model where opstate and 

> ephemeral configuration are parallel?

> 

> +--------------------+    +--------------------------+

> |    opstate         |    | ephemeral config  |

> +--------------------+    +--------------------------+

> 

 

I see two boxes, I am unsure what you think these boxes drawn this way mean.
What is 'this definition' in your first sentence? I really have problems to
follow what is going on.

 

/js

 

-- 

Juergen Schoenwaelder           Jacobs University Bremen gGmbH

Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany

Fax:   +49 421 200 3103         < <http://www.jacobs-university.de/>
http://www.jacobs-university.de/>

 

_______________________________________________

i2rs mailing list

 <mailto:i2rs@ietf.org> i2rs@ietf.org

 <https://www.ietf.org/mailman/listinfo/i2rs>
https://www.ietf.org/mailman/listinfo/i2rs


------=_NextPart_000_0172_01D1BC9E.942E9330
Content-Type: text/html;
	charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" =
xmlns:o=3D"urn:schemas-microsoft-com:office:office" =
xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" =
xmlns=3D"http://www.w3.org/TR/REC-html40"><head><meta =
http-equiv=3DContent-Type content=3D"text/html; =
charset=3Dus-ascii"><meta name=3DGenerator content=3D"Microsoft Word 14 =
(filtered medium)"><style><!--
/* Font Definitions */
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0in;
	margin-bottom:.0001pt;
	font-size:11.0pt;
	font-family:"Calibri","sans-serif";}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:blue;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:purple;
	text-decoration:underline;}
p.MsoPlainText, li.MsoPlainText, div.MsoPlainText
	{mso-style-priority:99;
	mso-style-link:"Plain Text Char";
	margin:0in;
	margin-bottom:.0001pt;
	font-size:11.0pt;
	font-family:"Calibri","sans-serif";}
span.PlainTextChar
	{mso-style-name:"Plain Text Char";
	mso-style-priority:99;
	mso-style-link:"Plain Text";
	font-family:"Calibri","sans-serif";}
.MsoChpDefault
	{mso-style-type:export-only;
	font-family:"Calibri","sans-serif";}
@page WordSection1
	{size:8.5in 11.0in;
	margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
	{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]--></head><body lang=3DEN-US link=3Dblue =
vlink=3Dpurple><div class=3DWordSection1><p =
class=3DMsoPlainText>Juergen: <o:p></o:p></p><p =
class=3DMsoPlainText><o:p>&nbsp;</o:p></p><p class=3DMsoPlainText>On =
first sentence, ... restated <o:p></o:p></p><p class=3DMsoPlainText>Do =
you believe the &quot;ephemeral operational state&quot; belongs in the =
ephemeral requirements? If so, we can add it.&nbsp; Perhaps we should =
also add a definition for ephemeral configuration. <o:p></o:p></p><p =
class=3DMsoPlainText><o:p>&nbsp;</o:p></p><p class=3DMsoPlainText>On =
picture -- here is your picture: <o:p></o:p></p><p =
class=3DMsoPlainText><span style=3D'font-size:9.0pt;font-family:"Courier =
New"'><o:p>&nbsp;</o:p></span></p><p class=3DMsoPlainText><span =
style=3D'font-size:9.0pt;font-family:"Courier New"'>&nbsp;&nbsp; =
+-------------+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
&nbsp;+-----------+<o:p></o:p></span></p><p class=3DMsoPlainText><span =
style=3D'font-size:9.0pt;font-family:"Courier New"'>&nbsp;&nbsp; | =
&lt;candidate&gt; =
|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | &lt;startup&gt; =
|<o:p></o:p></span></p><p class=3DMsoPlainText><span =
style=3D'font-size:9.0pt;font-family:"Courier New"'>&nbsp;&nbsp; |&nbsp; =
(ct, rw)&nbsp;&nbsp; |&lt;---+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
+---&gt;| (ct, rw)&nbsp; |<o:p></o:p></span></p><p =
class=3DMsoPlainText><span style=3D'font-size:9.0pt;font-family:"Courier =
New"'>&nbsp;&nbsp; +-------------+&nbsp;&nbsp;&nbsp; =
|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |&nbsp;&nbsp;&nbsp; =
+-----------+<o:p></o:p></span></p><p class=3DMsoPlainText><span =
style=3D'font-size:9.0pt;font-family:"Courier =
New"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
|<o:p></o:p></span></p><p class=3DMsoPlainText><span =
style=3D'font-size:9.0pt;font-family:"Courier =
New"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
+------------+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
|<o:p></o:p></span></p><p class=3DMsoPlainText><span =
style=3D'font-size:9.0pt;font-family:"Courier =
New"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
+--------&gt;| &lt;running&gt;&nbsp; =
|&lt;--------+<o:p></o:p></span></p><p class=3DMsoPlainText><span =
style=3D'font-size:9.0pt;font-family:"Courier =
New"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | (ct, rw)&nbsp;&nbsp; =
|<o:p></o:p></span></p><p class=3DMsoPlainText><span =
style=3D'font-size:9.0pt;font-family:"Courier =
New"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
+------------+<o:p></o:p></span></p><p class=3DMsoPlainText><span =
style=3D'font-size:9.0pt;font-family:"Courier =
New"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp;&nbsp; |&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // e.g., =
removal of 'inactive' nodes<o:p></o:p></span></p><p =
class=3DMsoPlainText><span style=3D'font-size:9.0pt;font-family:"Courier =
New"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp;&nbsp; v<o:p></o:p></span></p><p class=3DMsoPlainText><span =
style=3D'font-size:9.0pt;font-family:"Courier =
New"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
+------------+<o:p></o:p></span></p><p class=3DMsoPlainText><span =
style=3D'font-size:9.0pt;font-family:"Courier =
New"'>&nbsp;&nbsp;&nbsp;&nbsp; =
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;| &lt;intended&gt; |&nbsp; // subject to =
validation<o:p></o:p></span></p><p class=3DMsoPlainText><span =
style=3D'font-size:9.0pt;font-family:"Courier =
New"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | (ct, ro)&nbsp;&nbsp; =
|<o:p></o:p></span></p><p class=3DMsoPlainText><span =
style=3D'font-size:9.0pt;font-family:"Courier =
New"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
+------------+<o:p></o:p></span></p><p class=3DMsoPlainText><span =
style=3D'font-size:9.0pt;font-family:"Courier =
New"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp;&nbsp; |&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // e.g., =
missing resources or delays<o:p></o:p></span></p><p =
class=3DMsoPlainText><span style=3D'font-size:9.0pt;font-family:"Courier =
New"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp;&nbsp; v<o:p></o:p></span></p><p class=3DMsoPlainText><span =
style=3D'font-size:9.0pt;font-family:"Courier =
New"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
+------------+<o:p></o:p></span></p><p class=3DMsoPlainText><span =
style=3D'font-size:9.0pt;font-family:"Courier =
New"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | &lt;applied&gt;&nbsp; =
|<o:p></o:p></span></p><p class=3DMsoPlainText><span =
style=3D'font-size:9.0pt;font-family:"Courier =
New"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | (ct, ro)&nbsp;&nbsp; =
|<o:p></o:p></span></p><p class=3DMsoPlainText><span =
style=3D'font-size:9.0pt;font-family:"Courier =
New"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
+------------+<o:p></o:p></span></p><p class=3DMsoPlainText><span =
style=3D'font-size:9.0pt;font-family:"Courier =
New"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp;&nbsp; |&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // e.g., =
autodiscovery of values<o:p></o:p></span></p><p =
class=3DMsoPlainText><span style=3D'font-size:9.0pt;font-family:"Courier =
New"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp;&nbsp; v<o:p></o:p></span></p><p class=3DMsoPlainText><span =
style=3D'font-size:9.0pt;font-family:"Courier =
New"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
+--------------------------------+<o:p></o:p></span></p><p =
class=3DMsoPlainText><span style=3D'font-size:9.0pt;font-family:"Courier =
New"'>&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| =
&lt;operational-state&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=
&nbsp;&nbsp;&nbsp; |&lt;-- control plane and<o:p></o:p></span></p><p =
class=3DMsoPlainText><span style=3D'font-size:9.0pt;font-family:"Courier =
New"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | (ct + cf, =
ro)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |&nbsp;&nbsp;&nbsp; ephemeral =
datastores<o:p></o:p></span></p><p class=3DMsoPlainText><span =
style=3D'font-size:9.0pt;font-family:"Courier =
New"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
+--------------------------------+<o:p></o:p></span></p><p =
class=3DMsoPlainText><o:p>&nbsp;</o:p></p><p class=3DMsoPlainText>Is =
this part of the picture <o:p></o:p></p><p =
class=3DMsoPlainText><o:p>&nbsp;</o:p></p><p class=3DMsoPlainText><span =
style=3D'font-size:9.0pt;font-family:"Courier =
New"'>&nbsp;&nbsp;&nbsp;&nbsp; =
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;+--------------------------------+<o:p></o:=
p></span></p><p class=3DMsoPlainText><span =
style=3D'font-size:9.0pt;font-family:"Courier New"'>&nbsp;&nbsp; =
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| =
&lt;operational-state&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=
&nbsp;&nbsp;&nbsp; |&lt;-- control plane and<o:p></o:p></span></p><p =
class=3DMsoPlainText><span style=3D'font-size:9.0pt;font-family:"Courier =
New"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | (ct + cf, =
ro)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |&nbsp;&nbsp;&nbsp; ephemeral =
datastores<o:p></o:p></span></p><p class=3DMsoPlainText><span =
style=3D'font-size:9.0pt;font-family:"Courier =
New"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
+--------------------------------+<o:p></o:p></span></p><p =
class=3DMsoPlainText><o:p>&nbsp;</o:p></p><p class=3DMsoPlainText>Really =
<o:p></o:p></p><p =
class=3DMsoPlainText>&nbsp;&nbsp;+--------------------+&nbsp;&nbsp;&nbsp;=
 +--------------------------+&nbsp;&nbsp; =
+-----------------------+<o:p></o:p></p><p class=3DMsoPlainText> =
&nbsp;|&nbsp;&nbsp;&nbsp; =
opstate&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
|&nbsp;&nbsp;&nbsp; | ephemeral config&nbsp; | &nbsp;&nbsp;| =
applied&nbsp; config &nbsp;&nbsp;&nbsp;|<o:p></o:p></p><p =
class=3DMsoPlainText> &nbsp;| (cf, =
ro)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;|&nbsp; &nbsp;(ct, ro, ephemeral| =
&nbsp;| (ct, =
ro)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|<o:p></o:p></p><p =
class=3DMsoPlainText> &nbsp;+--------------------+&nbsp;&nbsp;&nbsp; =
+---------------------------+&nbsp; =
+-------------------------+<o:p></o:p></p><p =
class=3DMsoPlainText><o:p>&nbsp;</o:p></p><p class=3DMsoPlainText>Or =
just <o:p></o:p></p><p =
class=3DMsoPlainText>&nbsp;&nbsp;+--------------------+&nbsp;&nbsp;&nbsp;=
 +--------------------------+&nbsp;&nbsp; &nbsp;<o:p></o:p></p><p =
class=3DMsoPlainText>&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp; =
opstate&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
|&nbsp;&nbsp;&nbsp; | ephemeral config&nbsp; | =
&nbsp;&nbsp;&nbsp;<o:p></o:p></p><p class=3DMsoPlainText>&nbsp;&nbsp;| =
(cf, =
ro)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;|&nbsp; &nbsp;(ct, ro, ephemeral =
<o:p></o:p></p><p =
class=3DMsoPlainText>&nbsp;&nbsp;+--------------------+&nbsp;&nbsp;&nbsp;=
 +---------------------------+&nbsp; &nbsp;<o:p></o:p></p><p =
class=3DMsoPlainText><o:p>&nbsp;</o:p></p><p =
class=3DMsoPlainText><o:p>&nbsp;</o:p></p><p class=3DMsoPlainText>Sue =
<o:p></o:p></p><p class=3DMsoPlainText><o:p>&nbsp;</o:p></p><p =
class=3DMsoPlainText>-----Original Message-----<br>From: i2rs =
[mailto:i2rs-bounces@ietf.org] On Behalf Of Juergen =
Schoenwaelder<br>Sent: Thursday, June 02, 2016 7:05 AM<br>To: Susan =
Hares<br>Cc: 'Jeffrey Haas'; i2rs@ietf.org; 'Benoit Claise'; 'Alia =
Atlas'<br>Subject: Re: [i2rs] I2RS Interim Meeting - June 1, 2016 - =
10:00am - 11:00am -? Topic: Ephemeral State Requirements</p><p =
class=3DMsoPlainText><o:p>&nbsp;</o:p></p><p class=3DMsoPlainText>On =
Thu, Jun 02, 2016 at 06:53:42AM -0400, Susan Hares =
wrote:<o:p></o:p></p><p class=3DMsoPlainText>&gt; =
Juergen:<o:p></o:p></p><p class=3DMsoPlainText>&gt; <o:p></o:p></p><p =
class=3DMsoPlainText>&gt; Do you think this definition belongs in the =
ephemeral requirements?&nbsp; If so,<o:p></o:p></p><p =
class=3DMsoPlainText>&gt; we can add it.&nbsp;&nbsp; But perhaps we =
should define both ephemeral configuration<o:p></o:p></p><p =
class=3DMsoPlainText>&gt; and ephemeral operational state.&nbsp; Joel =
point out at the I2RS interim <o:p></o:p></p><p =
class=3DMsoPlainText>&gt; that ephemeral operational state is just like =
all other operational state - it<o:p></o:p></p><p =
class=3DMsoPlainText>&gt; disappears upon reboot. &nbsp;&nbsp;It is =
ephemeral configuration which is different<o:p></o:p></p><p =
class=3DMsoPlainText>&gt; than normal configuration - since it =
disappears upon reboot where <o:p></o:p></p><p class=3DMsoPlainText>&gt; =
normal configuration does not.<o:p></o:p></p><p =
class=3DMsoPlainText>&gt; <o:p></o:p></p><p class=3DMsoPlainText>&gt; Is =
this diagram close to your existing model where opstate and =
<o:p></o:p></p><p class=3DMsoPlainText>&gt; ephemeral configuration are =
parallel?<o:p></o:p></p><p class=3DMsoPlainText>&gt; <o:p></o:p></p><p =
class=3DMsoPlainText>&gt; +--------------------+&nbsp;&nbsp;&nbsp; =
+--------------------------+<o:p></o:p></p><p class=3DMsoPlainText>&gt; =
|&nbsp;&nbsp;&nbsp; =
opstate&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
|&nbsp;&nbsp;&nbsp; | ephemeral config&nbsp; |<o:p></o:p></p><p =
class=3DMsoPlainText>&gt; +--------------------+&nbsp;&nbsp;&nbsp; =
+--------------------------+<o:p></o:p></p><p =
class=3DMsoPlainText>&gt;<o:p>&nbsp;</o:p></p><p =
class=3DMsoPlainText><o:p>&nbsp;</o:p></p><p class=3DMsoPlainText>I see =
two boxes, I am unsure what you think these boxes drawn this way mean. =
What is 'this definition' in your first sentence? I really have problems =
to follow what is going on.<o:p></o:p></p><p =
class=3DMsoPlainText><o:p>&nbsp;</o:p></p><p =
class=3DMsoPlainText>/js<o:p></o:p></p><p =
class=3DMsoPlainText><o:p>&nbsp;</o:p></p><p class=3DMsoPlainText>-- =
<o:p></o:p></p><p class=3DMsoPlainText>Juergen =
Schoenwaelder&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=
 Jacobs University Bremen gGmbH<o:p></o:p></p><p =
class=3DMsoPlainText>Phone: +49 421 200 =
3587&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Campus Ring 1 | =
28759 Bremen | Germany<o:p></o:p></p><p =
class=3DMsoPlainText>Fax:&nbsp;&nbsp; +49 421 200 =
3103&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;<a =
href=3D"http://www.jacobs-university.de/"><span =
style=3D'color:windowtext;text-decoration:none'>http://www.jacobs-univers=
ity.de/</span></a>&gt;<o:p></o:p></p><p =
class=3DMsoPlainText><o:p>&nbsp;</o:p></p><p =
class=3DMsoPlainText>_______________________________________________<o:p>=
</o:p></p><p class=3DMsoPlainText>i2rs mailing list<o:p></o:p></p><p =
class=3DMsoPlainText><a href=3D"mailto:i2rs@ietf.org"><span =
style=3D'color:windowtext;text-decoration:none'>i2rs@ietf.org</span></a><=
o:p></o:p></p><p class=3DMsoPlainText><a =
href=3D"https://www.ietf.org/mailman/listinfo/i2rs"><span =
style=3D'color:windowtext;text-decoration:none'>https://www.ietf.org/mail=
man/listinfo/i2rs</span></a><o:p></o:p></p></div></body></html>
------=_NextPart_000_0172_01D1BC9E.942E9330--


From nobody Thu Jun  2 04:50:13 2016
Return-Path: <j.schoenwaelder@jacobs-university.de>
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 D7D7512D09E for <i2rs@ietfa.amsl.com>; Thu,  2 Jun 2016 04:50:11 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.626
X-Spam-Level: 
X-Spam-Status: No, score=-5.626 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, RP_MATCHES_RCVD=-1.426] autolearn=ham autolearn_force=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 06fvF2CzZwXQ for <i2rs@ietfa.amsl.com>; Thu,  2 Jun 2016 04:50:10 -0700 (PDT)
Received: from atlas3.jacobs-university.de (atlas3.jacobs-university.de [212.201.44.18]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 2DFE812D0A0 for <i2rs@ietf.org>; Thu,  2 Jun 2016 04:50:10 -0700 (PDT)
Received: from localhost (demetrius5.irc-it.jacobs-university.de [10.70.0.222]) by atlas3.jacobs-university.de (Postfix) with ESMTP id E3D4B715; Thu,  2 Jun 2016 13:50:08 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from atlas3.jacobs-university.de ([10.70.0.220]) by localhost (demetrius5.jacobs-university.de [10.70.0.222]) (amavisd-new, port 10030) with ESMTP id 2K7k52YwXjrK; Thu,  2 Jun 2016 13:50:04 +0200 (CEST)
Received: from hermes.jacobs-university.de (hermes.jacobs-university.de [212.201.44.23]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "hermes.jacobs-university.de", Issuer "Jacobs University CA - G01" (verified OK)) by atlas3.jacobs-university.de (Postfix) with ESMTPS; Thu,  2 Jun 2016 13:50:07 +0200 (CEST)
Received: from localhost (demetrius3.jacobs-university.de [212.201.44.48]) by hermes.jacobs-university.de (Postfix) with ESMTP id 6752F2004E; Thu,  2 Jun 2016 13:50:07 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from hermes.jacobs-university.de ([212.201.44.23]) by localhost (demetrius3.jacobs-university.de [212.201.44.32]) (amavisd-new, port 10024) with ESMTP id L6o1bl8Xvu7c; Thu,  2 Jun 2016 13:50:06 +0200 (CEST)
Received: from elstar.local (elstar.jacobs.jacobs-university.de [10.50.231.133]) by hermes.jacobs-university.de (Postfix) with ESMTP id C103D20047; Thu,  2 Jun 2016 13:50:05 +0200 (CEST)
Received: by elstar.local (Postfix, from userid 501) id B1D9C3B03045; Thu,  2 Jun 2016 13:50:04 +0200 (CEST)
Date: Thu, 2 Jun 2016 13:50:04 +0200
From: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
To: Susan Hares <shares@ndzh.com>
Message-ID: <20160602115004.GF26659@elstar.local>
Mail-Followup-To: Susan Hares <shares@ndzh.com>, 'Jeffrey Haas' <jhaas@pfrc.org>, i2rs@ietf.org, 'Benoit Claise' <bclaise@cisco.com>, 'Alia Atlas' <akatlas@gmail.com>
References: <6qtqondee9e8m6od11bh1ilt.1464783874424@email.android.com> <20160601123117.GB24741@elstar.local> <014801d1bc06$98eed670$cacc8350$@ndzh.com> <20160602103621.GA26659@elstar.local> <016c01d1bcbd$10aa6ba0$31ff42e0$@ndzh.com> <20160602110449.GC26659@elstar.local> <017101d1bcc0$1b3a18b0$51ae4a10$@ndzh.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <017101d1bcc0$1b3a18b0$51ae4a10$@ndzh.com>
User-Agent: Mutt/1.6.0 (2016-04-01)
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/NevJHKmobiH4icwTUbI1xCwSN_c>
Cc: 'Jeffrey Haas' <jhaas@pfrc.org>, i2rs@ietf.org, 'Benoit Claise' <bclaise@cisco.com>, 'Alia Atlas' <akatlas@gmail.com>
Subject: Re: [i2rs] I2RS Interim Meeting - June 1, 2016 - 10:00am - 11:00am -?  Topic: Ephemeral State Requirements
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
Reply-To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 02 Jun 2016 11:50:12 -0000

I might be able to answer the picture question once I know what is
really meant by 'ephemeral operational state'.

/js

On Thu, Jun 02, 2016 at 07:15:34AM -0400, Susan Hares wrote:
> Juergen: 
> 
>  
> 
> On first sentence, ... restated 
> 
> Do you believe the "ephemeral operational state" belongs in the ephemeral
> requirements? If so, we can add it.  Perhaps we should also add a definition
> for ephemeral configuration. 
> 
>  
> 
> On picture -- here is your picture: 
> 
>  
> 
>    +-------------+                  +-----------+
> 
>    | <candidate> |                  | <startup> |
> 
>    |  (ct, rw)   |<---+        +--->| (ct, rw)  |
> 
>    +-------------+    |        |    +-----------+
> 
>           |           |        |           |
> 
>           |         +------------+         |
> 
>           +-------->| <running>  |<--------+
> 
>                     | (ct, rw)   |
> 
>                     +------------+
> 
>                           |         // e.g., removal of 'inactive' nodes
> 
>                           v
> 
>                     +------------+
> 
>                     | <intended> |  // subject to validation
> 
>                     | (ct, ro)   |
> 
>                     +------------+
> 
>                           |         // e.g., missing resources or delays
> 
>                           v
> 
>                     +------------+
> 
>                     | <applied>  |
> 
>                     | (ct, ro)   |
> 
>                     +------------+
> 
>                           |         // e.g., autodiscovery of values
> 
>                           v
> 
>           +--------------------------------+
> 
>           | <operational-state>            |<-- control plane and
> 
>           | (ct + cf, ro)                  |    ephemeral datastores
> 
>           +--------------------------------+
> 
>  
> 
> Is this part of the picture 
> 
>  
> 
>           +--------------------------------+
> 
>           | <operational-state>            |<-- control plane and
> 
>           | (ct + cf, ro)                  |    ephemeral datastores
> 
>           +--------------------------------+
> 
>  
> 
> Really 
> 
>   +--------------------+    +--------------------------+
> +-----------------------+
> 
>  |    opstate         |    | ephemeral config  |   | applied  config    |
> 
>  | (cf, ro)               |    |   (ct, ro, ephemeral|  | (ct, ro)
> |
> 
>  +--------------------+    +---------------------------+
> +-------------------------+
> 
>  
> 
> Or just 
> 
>   +--------------------+    +--------------------------+    
> 
>   |    opstate         |    | ephemeral config  |    
> 
>   | (cf, ro)               |    |   (ct, ro, ephemeral 
> 
>   +--------------------+    +---------------------------+   
> 
>  
> 
>  
> 
> Sue 
> 
>  
> 
> -----Original Message-----
> From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Juergen Schoenwaelder
> Sent: Thursday, June 02, 2016 7:05 AM
> To: Susan Hares
> Cc: 'Jeffrey Haas'; i2rs@ietf.org; 'Benoit Claise'; 'Alia Atlas'
> Subject: Re: [i2rs] I2RS Interim Meeting - June 1, 2016 - 10:00am - 11:00am
> -? Topic: Ephemeral State Requirements
> 
>  
> 
> On Thu, Jun 02, 2016 at 06:53:42AM -0400, Susan Hares wrote:
> 
> > Juergen:
> 
> > 
> 
> > Do you think this definition belongs in the ephemeral requirements?  If
> so,
> 
> > we can add it.   But perhaps we should define both ephemeral configuration
> 
> > and ephemeral operational state.  Joel point out at the I2RS interim 
> 
> > that ephemeral operational state is just like all other operational state
> - it
> 
> > disappears upon reboot.   It is ephemeral configuration which is different
> 
> > than normal configuration - since it disappears upon reboot where 
> 
> > normal configuration does not.
> 
> > 
> 
> > Is this diagram close to your existing model where opstate and 
> 
> > ephemeral configuration are parallel?
> 
> > 
> 
> > +--------------------+    +--------------------------+
> 
> > |    opstate         |    | ephemeral config  |
> 
> > +--------------------+    +--------------------------+
> 
> > 
> 
>  
> 
> I see two boxes, I am unsure what you think these boxes drawn this way mean.
> What is 'this definition' in your first sentence? I really have problems to
> follow what is going on.
> 
>  
> 
> /js
> 
>  
> 
> -- 
> 
> Juergen Schoenwaelder           Jacobs University Bremen gGmbH
> 
> Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
> 
> Fax:   +49 421 200 3103         < <http://www.jacobs-university.de/>
> http://www.jacobs-university.de/>
> 
>  
> 
> _______________________________________________
> 
> i2rs mailing list
> 
>  <mailto:i2rs@ietf.org> i2rs@ietf.org
> 
>  <https://www.ietf.org/mailman/listinfo/i2rs>
> https://www.ietf.org/mailman/listinfo/i2rs
> 

-- 
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>


From nobody Thu Jun  2 05:51:36 2016
Return-Path: <7riw77@gmail.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 DB41E12D6CB for <i2rs@ietfa.amsl.com>; Thu,  2 Jun 2016 05:51:34 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.45
X-Spam-Level: 
X-Spam-Status: No, score=-2.45 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
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 xjcz6z23J0ny for <i2rs@ietfa.amsl.com>; Thu,  2 Jun 2016 05:51:33 -0700 (PDT)
Received: from mail-yw0-x22a.google.com (mail-yw0-x22a.google.com [IPv6:2607:f8b0:4002:c05::22a]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 2FDF312D177 for <i2rs@ietf.org>; Thu,  2 Jun 2016 05:51:33 -0700 (PDT)
Received: by mail-yw0-x22a.google.com with SMTP id x189so48530969ywe.3 for <i2rs@ietf.org>; Thu, 02 Jun 2016 05:51:33 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;  h=from:to:cc:references:in-reply-to:subject:date:message-id :mime-version:content-transfer-encoding:thread-index :content-language; bh=6gPJvzwo7nu5iz1NtsvLiSydHyDl2pcftXenrgYNKE0=; b=Siz9YbG4nA39u+tpGVabWtfq72pvuGd435evbTyU3VUA4HohYN9rPuHbwz3L8D97ZK p7KfieNLY86GjQrMciYx1Xpy6yL5Wv9KJhOAzCXYfsAb3D4D99HS3oS6A8vQpwoBBq9U XA9Y1sgu97UPF6hC26v4qKRnIE+uaeZDY/Ay10sntdFJ6kA4Ajjzcm0DT8vZ3MO/5VK8 GqPKpvPtnt8UdhQi1vcakGlpScKRxVl7j8XfbH4P3S4hhn9z3Lc7884x6b3Hn+gRX9rE e0zFghyGC8atcf+lO/qRZHgUHriQ99oO1YSRV2r91hwGBZOqZJPums2ipT/a4sH+MIsh hZIA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:references:in-reply-to:subject:date :message-id:mime-version:content-transfer-encoding:thread-index :content-language; bh=6gPJvzwo7nu5iz1NtsvLiSydHyDl2pcftXenrgYNKE0=; b=QPbp74AL5sIFfRfre5oqeK22Sk+4U2IDEINp2PJ8tlIKgd3u4N6tvnbriIhTx6m23C I9qP/WEbXE0Afia8sBg+dez38Ocdv8LHq4AnrrmWvnETz+flVs88NDXJ3cA3jPECLtwb Zmr1WASeXqEzzU06VVO9S+GSUZb/exGtUR/QJJ5pM//biNsehsS4nXrpqCIMmIkfqqzK uhTcjbPS0zZipQBhmL7gyFfjCmYOHMDhsXdfIjEnnpb2q5NVn+LzLKNVXUK71RlNBpo9 wxCQVWardXSCcYz90/9hnpK2LGg5JKsxliDW2pgrAUJN6c+xzPuUUOOHBp2qKSbbduYZ BeMQ==
X-Gm-Message-State: ALyK8tKCNsSJgz8uZ2gy5zZbixZt2hJobi5AEiDnvVDt1JMurXVNK8vgrC47Cihyh40bng==
X-Received: by 10.129.162.141 with SMTP id z135mr5637962ywg.50.1464871892357;  Thu, 02 Jun 2016 05:51:32 -0700 (PDT)
Received: from Russ (108-78-210-25.lightspeed.chrlnc.sbcglobal.net. [108.78.210.25]) by smtp.gmail.com with ESMTPSA id l124sm200950ywf.24.2016.06.02.05.51.31 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 02 Jun 2016 05:51:31 -0700 (PDT)
From: "Russ White" <7riw77@gmail.com>
To: "'Andy Bierman'" <andy@yumaworks.com>, "'Joel M. Halpern'" <jmh@joelhalpern.com>
References: <20160526013921.2840.56377.idtracker@ietfa.amsl.com> <1d33bfff-bd6c-f376-8c9c-aef611670311@joelhalpern.com> <03fe01d1b771$4ac13ae0$e043b0a0$@ndzh.com> <9be08105-b5b1-4d34-caf4-c13ee3a12881@joelhalpern.com> <042201d1b77a$c74165a0$55c430e0$@ndzh.com> <94134224-d9ca-672d-9fc7-f24c9ef21055@joelhalpern.com> <CABCOCHRKNn_+iPD_7pk7e2=VAyGUPevvF1bg__YfXx9_yEyYFg@mail.gmail.com>
In-Reply-To: <CABCOCHRKNn_+iPD_7pk7e2=VAyGUPevvF1bg__YfXx9_yEyYFg@mail.gmail.com>
Date: Thu, 2 Jun 2016 08:51:30 -0400
Message-ID: <024501d1bccd$7cd3fc00$767bf400$@gmail.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Mailer: Microsoft Outlook 16.0
Thread-Index: AQHWZbgrR/rETZCVhEoXYOsiMgM15wKIt/qeAtGcDU4B3ysjXgEhdFz2AUz39L4CEoJqK59u+zYQ
Content-Language: en-us
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/4Psvg61IoV-hFSSinN8E7hiuvZs>
Cc: i2rs@ietf.org, 'Susan Hares' <shares@ndzh.com>
Subject: Re: [i2rs] draft-ietf-i2rs-ephemeral-state-07.txt - per-node transport security
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 02 Jun 2016 12:51:35 -0000

> I think I agree with you.

I would agree, as well -- indicating secure/insecure transport shouldn't =
be part of the data model. Instead, it should be available, but =
optional, based on operational needs. Not everyone is going to agree on =
what to encrypt or not -- some providers are determined to encrypt =
everything, while smaller experimental usage for development, testing, =
and learning, would be severely handicapped by requiring encryption in =
some situations.

:-)

Russ=20



From nobody Thu Jun  2 07:17:37 2016
Return-Path: <evoit@cisco.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 E0D1312D701 for <i2rs@ietfa.amsl.com>; Thu,  2 Jun 2016 07:17:35 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -15.947
X-Spam-Level: 
X-Spam-Status: No, score=-15.947 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-1.426, SPF_PASS=-0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.com
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 mMe74NIrDuke for <i2rs@ietfa.amsl.com>; Thu,  2 Jun 2016 07:17:34 -0700 (PDT)
Received: from rcdn-iport-3.cisco.com (rcdn-iport-3.cisco.com [173.37.86.74]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id D595E12D72C for <i2rs@ietf.org>; Thu,  2 Jun 2016 07:17:33 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=4278; q=dns/txt; s=iport; t=1464877053; x=1466086653; h=from:to:subject:date:message-id:references:in-reply-to: content-transfer-encoding:mime-version; bh=An3sHecQCpYzsh1RijibJoKjl0U1xfUrdFwrjJEfqlU=; b=lSNMGKBEbWFRv6JBYCcEER5nbSGAGtBB1g+zf/178bJoD3TZ1wS7pTPL WF78ZYBAcSP6lFPsUgicZV8ylv3u0F8XwvouC1nszcXzp4Lvex15wBzHb EA4gw2O+S7Mg0IoT5ZRd3QA1H9XAU2zgJQ+aQw3TW8ivn0CuQML7NTuOc U=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0D2AQB4P1BX/40NJK1dgzpWfQa6KIF5F?= =?us-ascii?q?wuFcAKBLzgUAQEBAQEBAWUnhEUBAQEDAQEBATc0EAcEAgEIDgMEAQEOEQkHJws?= =?us-ascii?q?UCQgCBAESCIgfCA7CCAEBAQEBAQEBAQEBAQEBAQEBAQEBARcFhieETYQdhX0Fm?= =?us-ascii?q?DcBiHeFIYFwjTOGM4kYAR42g25uiTgBJQMcfwEBAQ?=
X-IronPort-AV: E=Sophos;i="5.26,406,1459814400"; d="scan'208";a="114434794"
Received: from alln-core-8.cisco.com ([173.36.13.141]) by rcdn-iport-3.cisco.com with ESMTP/TLS/DHE-RSA-AES256-SHA; 02 Jun 2016 14:17:32 +0000
Received: from XCH-RTP-012.cisco.com (xch-rtp-012.cisco.com [64.101.220.152]) by alln-core-8.cisco.com (8.14.5/8.14.5) with ESMTP id u52EHWcu013950 (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=FAIL); Thu, 2 Jun 2016 14:17:32 GMT
Received: from xch-rtp-013.cisco.com (64.101.220.153) by XCH-RTP-012.cisco.com (64.101.220.152) with Microsoft SMTP Server (TLS) id 15.0.1104.5; Thu, 2 Jun 2016 10:17:31 -0400
Received: from xch-rtp-013.cisco.com ([64.101.220.153]) by XCH-RTP-013.cisco.com ([64.101.220.153]) with mapi id 15.00.1104.009; Thu, 2 Jun 2016 10:17:31 -0400
From: "Eric Voit (evoit)" <evoit@cisco.com>
To: Susan Hares <shares@ndzh.com>, "'Jeffrey Haas'" <jhaas@pfrc.org>, "i2rs@ietf.org" <i2rs@ietf.org>
Thread-Topic: [i2rs] draft-ietf-i2rs-ephemeral-state-09, Ephemeral-REQ-05
Thread-Index: AQJ9ndGW8PQQ92Z4NRJPX3Z02Pog4559AjbggAFmdvA=
Date: Thu, 2 Jun 2016 14:17:31 +0000
Message-ID: <ffb1b95650b847d19d8d90e390a5757c@XCH-RTP-013.cisco.com>
References: <20160601160450.GR17462@pfrc.org> <006f01d1bc1f$47014a50$d503def0$@ndzh.com>
In-Reply-To: <006f01d1bc1f$47014a50$d503def0$@ndzh.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-ms-exchange-transport-fromentityheader: Hosted
x-originating-ip: [10.118.56.228]
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/hER2JYoJxv3bDnz3mjrlhLvXA5o>
Subject: Re: [i2rs] draft-ietf-i2rs-ephemeral-state-09, Ephemeral-REQ-05
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 02 Jun 2016 14:17:36 -0000

> Susan Hares, June 01, 2016 12:04 PM
>=20
> I2RS WG:
>=20
> Two replacements for Ephemeral-REQ-05:
>=20
> Option 1:
> I2RS pub-sub, logging, RPC or other mechanisms may lead to undesirable or
> unsustainable resource consumption on a system implementing an I2RS Agent=
.
> It is RECOMMENDED that mechanisms be made available to permit prioritizat=
ion
> of I2RS operations, when appropriate, to permit implementations to shed w=
ork
> load when operating under constrained resources.  An example of such a wo=
rk
> shedding mechanism is rate-limiting.
>=20
> Option 2:
> Ephemeral state handling, notifications, and OAM could increase the data =
flow
> rates across transport, or the rate of publication of data in a
> subscription, or logging needed for traceability.   It is RECOMMENDED tha=
t
> the I2RS Agent should have the ability to limit, prioritize or split data=
 flows in the
> I2RS protocol.
>=20
> Any feedback?

In the Yang-push and Event notification technology drafts being worked in N=
ETCONF we have mechanisms to accomplish the functions in both Options 1 & 2=
 (except for the splitting of data flows, which perhaps might be addressabl=
e in the transport layer).

These mechanisms include:
(1) negotiation of subscription parameters=20
(2) relative prioritization for dequeuing of subscription updates as well a=
s absolute prioritization of one subscription relative to another for deque=
uing of subscription updates (direct match to mechanisms of HTTP2)
(3) DSCP by subscription, which could be used for selecting which subscript=
ions prioritize across a device should processing resources reach some limi=
t.
(4) notification to a subscriber of suspension of push updates for a subscr=
iption (as well as resumption of updates)
=20
Looking at the thread, we likely should include optional parameters in (4) =
which so that the notification indicates that the suspension occurred due t=
o resource exhaustion.   This would allow the subscriber to select whether =
it wishes to re-enter the negotiation phase for push updates in a way that =
might consume fewer resources.  This renegotiation would occur in parallel =
to the existing push update process.

Eric

> Sue
>=20
>=20
> -----Original Message-----
> From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Jeffrey Haas
> Sent: Wednesday, June 01, 2016 12:05 PM
> To: i2rs@ietf.org
> Subject: [i2rs] draft-ietf-i2rs-ephemeral-state-09, Ephemeral-REQ-05
>=20
> As per the interim, here is some suggested text changes:
>=20
> Existing text:
>=20
>    Ephemeral-REQ-05: Ephemeral state handling and notifications could
>    increase need for CPU processing, data flow rates across a transport,
>    or the rate of publication of data in a subscription or the logging
>    for traceability.  The I2RS Agent SHOULD have the ability to
>    constraints for OAM functions operating to limit CPU processing, data
>    rate across a transport, the rate of publication of data in a
>    subscription, and logging rates; and the I2RS Agent SHOULD have the
>    ability to prioritize some of the management data flows between the
>    I2RS Agent and I2RS Client.  In order to constrain resources needed,
>    the I2RS Agent MAY also schedule data flows or split data flows unto
>    multiple data flow streams.
>=20
> Suggested new text:
>=20
> I2RS pub-sub, logging, RPC or other mechanisms may lead to undesirable or
> unsustainable resource consumption on a system implementing an I2RS Agent=
.
> It is RECOMMENDED that mechanisms be made available to permit prioritizat=
ion
> of I2RS operations, when appropriate, to permit implementations to shed w=
ork
> load when operating under constrained resources.  An example of such a wo=
rk
> shedding mechanism is rate-limiting.
>=20
> -----
>=20
> Note that Subscription QoS in the pub-sub requirements provides for this =
type of
> behavior in that context.
>=20
> -- Jeff
>=20
> _______________________________________________
> i2rs mailing list
> i2rs@ietf.org
> https://www.ietf.org/mailman/listinfo/i2rs
>=20
> _______________________________________________
> i2rs mailing list
> i2rs@ietf.org
> https://www.ietf.org/mailman/listinfo/i2rs


From nobody Thu Jun  2 07:22:03 2016
Return-Path: <jhaas@slice.pfrc.org>
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 C6CC512D510 for <i2rs@ietfa.amsl.com>; Thu,  2 Jun 2016 07:22:00 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.328
X-Spam-Level: 
X-Spam-Status: No, score=-3.328 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RP_MATCHES_RCVD=-1.426, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=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 nrBdVWAEnkUz for <i2rs@ietfa.amsl.com>; Thu,  2 Jun 2016 07:21:58 -0700 (PDT)
Received: from slice.pfrc.org (slice.pfrc.org [67.207.130.108]) by ietfa.amsl.com (Postfix) with ESMTP id 6CBE512D140 for <i2rs@ietf.org>; Thu,  2 Jun 2016 07:21:58 -0700 (PDT)
Received: by slice.pfrc.org (Postfix, from userid 1001) id D15801E335; Thu,  2 Jun 2016 10:27:33 -0400 (EDT)
Date: Thu, 2 Jun 2016 10:27:33 -0400
From: Jeffrey Haas <jhaas@pfrc.org>
To: Susan Hares <shares@ndzh.com>, "'Joel M. Halpern'" <jmh@joelhalpern.com>, i2rs@ietf.org
Message-ID: <20160602142733.GU17462@pfrc.org>
References: <000601d1bad5$70523090$50f691b0$@ndzh.com> <20160531063840.GA21289@elstar.local> <026df5be-4a60-f340-60aa-d713a0e75c48@joelhalpern.com> <20160531184844.GB22928@elstar.local> <413ef504-49a8-2ba2-7fd4-582a41bd0ad0@joelhalpern.com> <20160531192729.GA23116@elstar.local> <005801d1bb7a$e7b2e440$b718acc0$@ndzh.com> <20160601091953.GD24118@elstar.local>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20160601091953.GD24118@elstar.local>
User-Agent: Mutt/1.5.21 (2010-09-15)
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/incQG01FVdqKH4UozxStF_D6Lqo>
Subject: Re: [i2rs] Ephemeral State Requirements discussion
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 02 Jun 2016 14:22:01 -0000

Juergen,

On Wed, Jun 01, 2016 at 11:19:53AM +0200, Juergen Schoenwaelder wrote:
> On Tue, May 31, 2016 at 04:27:51PM -0400, Susan Hares wrote:
> > How does ephemeral sitting next to the <applied> data store provide
> > the ability to augment configuration with ephemeral configuration or
> > operational state with ephemeral operational state?
> 
> At the schema level, you will augment the schema tree. If the current
> separation of /foo and /foo-state would go away, this will likely get
> simpler (but this is orthogonal to the question how an <ephemeral>
> datastore conceptually interacts with the other datastores).
> 
> At the data tree level, there is a magic merging (+) function involved
> that takes configuration data from a configuration datastore and data
> from an ephemeral data store and produces the resulting operational
> state. The idea was to not further detail how this is achieved and
> instead treat an ephemeral datastore pretty much like any other
> control plane interface interacting with <operational state>.

While such a solution-space seems mostly right, I had been under the
impression that the interactions necessary for validation meant that
ephemeral needed to move up closer to the top of your diagram.

Note that I'm not saying I2RS requires validation, however the lack of
validation has been a contentious point in prior discussions.

To confirm my understanding, ephemeral configuration state in the model
you're proposing above is treated as operational state (the output of the
netconf <get> operation for config true elements)?

-- Jeff


From nobody Thu Jun  2 07:24:32 2016
Return-Path: <jhaas@slice.pfrc.org>
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 0BF3C12D140 for <i2rs@ietfa.amsl.com>; Thu,  2 Jun 2016 07:24:31 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.328
X-Spam-Level: 
X-Spam-Status: No, score=-3.328 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RP_MATCHES_RCVD=-1.426, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=unavailable autolearn_force=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 pwbqLSvVZxc6 for <i2rs@ietfa.amsl.com>; Thu,  2 Jun 2016 07:24:30 -0700 (PDT)
Received: from slice.pfrc.org (slice.pfrc.org [67.207.130.108]) by ietfa.amsl.com (Postfix) with ESMTP id C60A312D738 for <i2rs@ietf.org>; Thu,  2 Jun 2016 07:16:03 -0700 (PDT)
Received: by slice.pfrc.org (Postfix, from userid 1001) id 055D91E335; Thu,  2 Jun 2016 10:21:39 -0400 (EDT)
Date: Thu, 2 Jun 2016 10:21:38 -0400
From: Jeffrey Haas <jhaas@pfrc.org>
To: Linda Dunbar <linda.dunbar@huawei.com>, "Joel M. Halpern" <jmh@joelhalpern.com>, "i2rs@ietf.org" <i2rs@ietf.org>
Message-ID: <20160602142138.GT17462@pfrc.org>
References: <f9dd38f6-8350-ab9e-a880-c27dfd2a610d@joelhalpern.com> <4A95BA014132FF49AE685FAB4B9F17F657EAD7E1@dfweml501-mbb> <bf913585-d4ab-bd94-7c60-6ab292bebcf4@joelhalpern.com> <4A95BA014132FF49AE685FAB4B9F17F657EAD911@dfweml501-mbb> <20160602105028.GB26659@elstar.local>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20160602105028.GB26659@elstar.local>
User-Agent: Mutt/1.5.21 (2010-09-15)
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/LdURvTL3pcnc2M8tOK0MjuIiVkk>
Subject: Re: [i2rs] ephemeral requirements - REQ 08 bullet 1
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 02 Jun 2016 14:24:31 -0000

On Thu, Jun 02, 2016 at 12:50:28PM +0200, Juergen Schoenwaelder wrote:
> I understood the proposed text as 'be able to determine whether the
> protocol implementation supports the mechanisms required by I2RS',
> which is different from 'needing a reliable communication channel'.

+1

Whether this is simply considered a profile of netconf/restconf is fine, in
my opinion.

-- Jeff


From nobody Thu Jun  2 07:32:47 2016
Return-Path: <evoit@cisco.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 4B8D412D73E for <i2rs@ietfa.amsl.com>; Thu,  2 Jun 2016 07:32:46 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -15.947
X-Spam-Level: 
X-Spam-Status: No, score=-15.947 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-1.426, SPF_PASS=-0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.com
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 z4n_2baU3qXw for <i2rs@ietfa.amsl.com>; Thu,  2 Jun 2016 07:32:44 -0700 (PDT)
Received: from rcdn-iport-7.cisco.com (rcdn-iport-7.cisco.com [173.37.86.78]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 7BE4E12D73A for <i2rs@ietf.org>; Thu,  2 Jun 2016 07:32:44 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=1507; q=dns/txt; s=iport; t=1464877964; x=1466087564; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=8wh0OOJWjV7HG7Q5E/72RoRdzcpQSf4GVb7VHoxIDGo=; b=N7Lo98onha6oGE6RQVG1jpNDUj7C/bPHFKTWNF8O1kZ/Y58dEeNRpjM2 W/lo9AVsIF9K19qIsx9ffH8lnxVjhIW1CE4DOKrD3PBDxgS63oUucJj90 Gv9aDj4961S3yeTCNfyKFIV4E3BQFWaaj1+VBSVE4onnrEdsOGbGEUtkA M=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0D2AQA4Q1BX/4oNJK1UCYM6Vn0GuiiBe?= =?us-ascii?q?RcLhXACgS84FAEBAQEBAQFlJ4RFAQEBAwEBAQE3NAsFCwIBCA4XEQULJwslAgQ?= =?us-ascii?q?BDQUIiB8IDsIPAQEBAQEBAQEBAQEBAQEBAQEBAQEBFwWGJ4RNgTmCWQcKAYV2B?= =?us-ascii?q?YgOhwmJIAGOGIFwh3uFOI9LAR42gjmBNW6JRzZ/AQEB?=
X-IronPort-AV: E=Sophos;i="5.26,406,1459814400"; d="scan'208";a="109070522"
Received: from alln-core-5.cisco.com ([173.36.13.138]) by rcdn-iport-7.cisco.com with ESMTP/TLS/DHE-RSA-AES256-SHA; 02 Jun 2016 14:32:20 +0000
Received: from XCH-RTP-008.cisco.com (xch-rtp-008.cisco.com [64.101.220.148]) by alln-core-5.cisco.com (8.14.5/8.14.5) with ESMTP id u52EWJto015497 (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=FAIL); Thu, 2 Jun 2016 14:32:19 GMT
Received: from xch-rtp-013.cisco.com (64.101.220.153) by XCH-RTP-008.cisco.com (64.101.220.148) with Microsoft SMTP Server (TLS) id 15.0.1104.5; Thu, 2 Jun 2016 10:32:18 -0400
Received: from xch-rtp-013.cisco.com ([64.101.220.153]) by XCH-RTP-013.cisco.com ([64.101.220.153]) with mapi id 15.00.1104.009; Thu, 2 Jun 2016 10:32:18 -0400
From: "Eric Voit (evoit)" <evoit@cisco.com>
To: Jeffrey Haas <jhaas@pfrc.org>, Andy Bierman <andy@yumaworks.com>
Thread-Topic: [i2rs] I2RS Interim Meeting - June 1, 2016 - 10:00am - 11:00am - Topic: Ephemeral State Requirements
Thread-Index: AQHRu3XPM7ljbP1C/TwjkI20GPnld5/WMB0w
Date: Thu, 2 Jun 2016 14:32:18 +0000
Message-ID: <d24de921d26b4a179461b491bd791a71@XCH-RTP-013.cisco.com>
References: <000601d1bad5$70523090$50f691b0$@ndzh.com> <20160531063840.GA21289@elstar.local> <00d501d1bb45$0da83500$28f89f00$@ndzh.com> <20160531142540.GA22420@elstar.local> <001401d1bb4e$cfaefd10$6f0cf730$@ndzh.com> <20160531171304.GA22857@elstar.local> <CABCOCHR2JChAg1zmKDy_qxVOGYVeTm9wGVLyxzpChb5Ht0uaww@mail.gmail.com> <20160531195123.GN17462@pfrc.org>
In-Reply-To: <20160531195123.GN17462@pfrc.org>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-ms-exchange-transport-fromentityheader: Hosted
x-originating-ip: [10.118.56.228]
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/fSupARSD6Q_Cqvv-QHwfqcHafc8>
Cc: "Benoit Claise \(bclaise\)" <bclaise@cisco.com>, "i2rs@ietf.org" <i2rs@ietf.org>, Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>, Susan Hares <shares@ndzh.com>, Alia Atlas <akatlas@gmail.com>
Subject: Re: [i2rs] I2RS Interim Meeting - June 1, 2016 - 10:00am - 11:00am - Topic: Ephemeral State Requirements
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 02 Jun 2016 14:32:46 -0000

> Jeffrey Haas, Tuesday, May 31, 2016 3:51 PM
>=20
> yang-push covers much of our desired pub-sub behavior. (Yay!)

Excellent
=20
> Discussion is required for how to tag security considerations impacting t=
ransport
> into the yang model, in particular for notification.

We have been working two mechanisms being worked in the pub-sub drafts:

(1) For dynamically established subscriptions, the security credentials use=
d for establishing the transport connection will also be used to determine =
either (a) access to an Event stream, or (b) access to nodes in a YANG data=
store.  For (b) if the subscription has no read access to the target node t=
hen the subscription is rejected; if subtree nodes have no read access, the=
n they are filtered out of the response.

(2) For subscriptions statically configured on a device, minimum security e=
xpectations and transport requirements will be included as part of the subs=
cription.  Once the transport connectivity is established, the process in (=
1) above would be followed.

Are these addressing the security concerns you have about the subscription =
mechanisms?   Is something else needed?

> Proposals for secondary identity and priority are also needed.

Per my other email, mechanisms for priority might be adoptable from the Sub=
scription drafts.

Eric
=20
> -- Jeff
>=20
> _______________________________________________
> i2rs mailing list
> i2rs@ietf.org
> https://www.ietf.org/mailman/listinfo/i2rs


From nobody Thu Jun  2 07:40:53 2016
Return-Path: <shares@ndzh.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 677EA12D0ED for <i2rs@ietfa.amsl.com>; Thu,  2 Jun 2016 07:40:51 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.106
X-Spam-Level: 
X-Spam-Status: No, score=-1.106 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RDNS_NONE=0.793] autolearn=no autolearn_force=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 h0qLTyTWCcIi for <i2rs@ietfa.amsl.com>; Thu,  2 Jun 2016 07:40:49 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id B640112D0F1 for <i2rs@ietf.org>; Thu,  2 Jun 2016 07:40:48 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=107.92.120.142; 
Date: Thu, 02 Jun 2016 10:40:38 -0400
Message-ID: <vgrpp9a37rgoga07jm7yt7rg.1464878438864@email.android.com>
Importance: normal
From: Susan Hares <shares@ndzh.com>
To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="--_com.samsung.android.email_5825557027023280"
X-Authenticated-User: skh@ndzh.com 
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/pcMO89XJj1bd9qJ30jFVdKXl6mo>
Cc: 'Jeffrey Haas' <jhaas@pfrc.org>, i2rs@ietf.org, 'Benoit Claise' <bclaise@cisco.com>, 'Alia Atlas' <akatlas@gmail.com>
Subject: Re: [i2rs] I2RS Interim Meeting - June 1, 2016 - 10:00am - 11:00am -?  Topic: Ephemeral State Requirements
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 02 Jun 2016 14:40:51 -0000

----_com.samsung.android.email_5825557027023280
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: base64

SnVlcmdlbgpUaGUgZGVmaW5pdGlvbiBJIHdhcyB1c2luZyB3YXMgb3BlcmF0aW9uYWwgc3RhdGUg
KHJlYWQgb25seSApIMKgdGhhdCBpcyBkZWZpbmVkIHVuZGVyIGEgbm9kZSBkZWZpbmVkIGVwaGVt
ZXJhbC4gwqBKb2VsIGNoYWxsZW5nZWQgdGhhdCBkZWZpbml0aW9uIHNheWluZyB3aXRoIHNwbGl0
IG9wZXJhdGlvbmFsIHN0YXRlIGZyb20gY29uZmlnIC0gb3BlcmF0aW9uYWwgc3RhdGUgZG9lcyBu
b3QgbmVlZCB0byBiZSB1bmRlciBhbiBlcGhlbWVyYWwgbm9kZS4KU3VlCgoKU2VudCB2aWEgdGhl
IFNhbXN1bmcgR2FsYXh5IE5vdGU1LCBhbiBBVCZUIDRHIExURSBzbWFydHBob25lLS0tLS0tLS0g
T3JpZ2luYWwgbWVzc2FnZSAtLS0tLS0tLUZyb206IEp1ZXJnZW4gU2Nob2Vud2FlbGRlciA8ai5z
Y2hvZW53YWVsZGVyQGphY29icy11bml2ZXJzaXR5LmRlPiBEYXRlOiA2LzIvMjAxNiAgNzo1MCBB
TSAgKEdNVC0wNTowMCkgVG86IFN1c2FuIEhhcmVzIDxzaGFyZXNAbmR6aC5jb20+IENjOiAnSmVm
ZnJleSBIYWFzJyA8amhhYXNAcGZyYy5vcmc+LCBpMnJzQGlldGYub3JnLCAnQmVub2l0IENsYWlz
ZScgPGJjbGFpc2VAY2lzY28uY29tPiwgJ0FsaWEgQXRsYXMnIDxha2F0bGFzQGdtYWlsLmNvbT4g
U3ViamVjdDogUmU6IFtpMnJzXSBJMlJTIEludGVyaW0gTWVldGluZyAtIEp1bmUgMSwKICAyMDE2
IC0gMTA6MDBhbSAtIDExOjAwYW0gLT8gIFRvcGljOiBFcGhlbWVyYWwgU3RhdGUgUmVxdWlyZW1l
bnRzIApJIG1pZ2h0IGJlIGFibGUgdG8gYW5zd2VyIHRoZSBwaWN0dXJlIHF1ZXN0aW9uIG9uY2Ug
SSBrbm93IHdoYXQgaXMKcmVhbGx5IG1lYW50IGJ5ICdlcGhlbWVyYWwgb3BlcmF0aW9uYWwgc3Rh
dGUnLgoKL2pzCgpPbiBUaHUsIEp1biAwMiwgMjAxNiBhdCAwNzoxNTozNEFNIC0wNDAwLCBTdXNh
biBIYXJlcyB3cm90ZToKPiBKdWVyZ2VuOiAKPiAKPsKgIAo+IAo+IE9uIGZpcnN0IHNlbnRlbmNl
LCAuLi4gcmVzdGF0ZWQgCj4gCj4gRG8geW91IGJlbGlldmUgdGhlICJlcGhlbWVyYWwgb3BlcmF0
aW9uYWwgc3RhdGUiIGJlbG9uZ3MgaW4gdGhlIGVwaGVtZXJhbAo+IHJlcXVpcmVtZW50cz8gSWYg
c28sIHdlIGNhbiBhZGQgaXQuwqAgUGVyaGFwcyB3ZSBzaG91bGQgYWxzbyBhZGQgYSBkZWZpbml0
aW9uCj4gZm9yIGVwaGVtZXJhbCBjb25maWd1cmF0aW9uLiAKPiAKPsKgIAo+IAo+IE9uIHBpY3R1
cmUgLS0gaGVyZSBpcyB5b3VyIHBpY3R1cmU6IAo+IAo+wqAgCj4gCj7CoMKgwqAgKy0tLS0tLS0t
LS0tLS0rwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCArLS0tLS0tLS0tLS0rCj4g
Cj7CoMKgwqAgfCA8Y2FuZGlkYXRlPiB8wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oCB8IDxzdGFydHVwPiB8Cj4gCj7CoMKgwqAgfMKgIChjdCwgcncpwqDCoCB8PC0tLSvCoMKgwqDC
oMKgwqDCoCArLS0tPnwgKGN0LCBydynCoCB8Cj4gCj7CoMKgwqAgKy0tLS0tLS0tLS0tLS0rwqDC
oMKgIHzCoMKgwqDCoMKgwqDCoCB8wqDCoMKgICstLS0tLS0tLS0tLSsKPiAKPsKgwqDCoMKgwqDC
oMKgwqDCoMKgIHzCoMKgwqDCoMKgwqDCoMKgwqDCoCB8wqDCoMKgwqDCoMKgwqAgfMKgwqDCoMKg
wqDCoMKgwqDCoMKgIHwKPiAKPsKgwqDCoMKgwqDCoMKgwqDCoMKgIHzCoMKgwqDCoMKgwqDCoMKg
ICstLS0tLS0tLS0tLS0rwqDCoMKgwqDCoMKgwqDCoCB8Cj4gCj7CoMKgwqDCoMKgwqDCoMKgwqDC
oCArLS0tLS0tLS0+fCA8cnVubmluZz7CoCB8PC0tLS0tLS0tKwo+IAo+wqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB8IChjdCwgcncpwqDCoCB8Cj4gCj7CoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICstLS0tLS0tLS0tLS0rCj4gCj7CoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHzCoMKgwqDCoMKg
wqDCoMKgIC8vIGUuZy4sIHJlbW92YWwgb2YgJ2luYWN0aXZlJyBub2Rlcwo+IAo+wqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB2Cj4gCj7CoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICstLS0tLS0tLS0tLS0rCj4gCj7CoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHwgPGludGVuZGVkPiB8wqAgLy8g
c3ViamVjdCB0byB2YWxpZGF0aW9uCj4gCj7CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgIHwgKGN0LCBybynCoMKgIHwKPiAKPsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqAgKy0tLS0tLS0tLS0tLSsKPiAKPsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgfMKgwqDCoMKgwqDCoMKgwqAgLy8gZS5nLiwg
bWlzc2luZyByZXNvdXJjZXMgb3IgZGVsYXlzCj4gCj7CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHYKPiAKPsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqAgKy0tLS0tLS0tLS0tLSsKPiAKPsKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqAgfCA8YXBwbGllZD7CoCB8Cj4gCj7CoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHwgKGN0LCBybynCoMKgIHwKPiAKPsKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKy0tLS0tLS0tLS0tLSsKPiAKPsKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgfMKgwqDCoMKgwqDC
oMKgwqAgLy8gZS5nLiwgYXV0b2Rpc2NvdmVyeSBvZiB2YWx1ZXMKPiAKPsKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgdgo+IAo+wqDCoMKgwqDCoMKg
wqDCoMKgwqAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwo+IAo+wqDCoMKgwqDC
oMKgwqDCoMKgwqAgfCA8b3BlcmF0aW9uYWwtc3RhdGU+wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB8
PC0tIGNvbnRyb2wgcGxhbmUgYW5kCj4gCj7CoMKgwqDCoMKgwqDCoMKgwqDCoCB8IChjdCArIGNm
LCBybynCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHzCoMKgwqAgZXBoZW1lcmFs
IGRhdGFzdG9yZXMKPiAKPsKgwqDCoMKgwqDCoMKgwqDCoMKgICstLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLSsKPiAKPsKgIAo+IAo+IElzIHRoaXMgcGFydCBvZiB0aGUgcGljdHVyZSAK
PiAKPsKgIAo+IAo+wqDCoMKgwqDCoMKgwqDCoMKgwqAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tKwo+IAo+wqDCoMKgwqDCoMKgwqDCoMKgwqAgfCA8b3BlcmF0aW9uYWwtc3RhdGU+
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB8PC0tIGNvbnRyb2wgcGxhbmUgYW5kCj4gCj7CoMKgwqDC
oMKgwqDCoMKgwqDCoCB8IChjdCArIGNmLCBybynCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgIHzCoMKgwqAgZXBoZW1lcmFsIGRhdGFzdG9yZXMKPiAKPsKgwqDCoMKgwqDCoMKgwqDC
oMKgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKPiAKPsKgIAo+IAo+IFJlYWxs
eSAKPiAKPsKgwqAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tK8KgwqDCoCArLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0rCj4gKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwo+IAo+wqAgfMKgwqDCoCBv
cHN0YXRlwqDCoMKgwqDCoMKgwqDCoCB8wqDCoMKgIHwgZXBoZW1lcmFsIGNvbmZpZ8KgIHzCoMKg
IHwgYXBwbGllZMKgIGNvbmZpZ8KgwqDCoCB8Cj4gCj7CoCB8IChjZiwgcm8pwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoCB8wqDCoMKgIHzCoMKgIChjdCwgcm8sIGVwaGVtZXJhbHzCoCB8IChj
dCwgcm8pCj4gfAo+IAo+wqAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tK8KgwqDCoCArLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tKwo+ICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwo+IAo+wqAg
Cj4gCj4gT3IganVzdCAKPiAKPsKgwqAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tK8KgwqDCoCArLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rwqDCoMKgIAo+IAo+wqDCoCB8wqDCoMKgIG9wc3RhdGXC
oMKgwqDCoMKgwqDCoMKgIHzCoMKgwqAgfCBlcGhlbWVyYWwgY29uZmlnwqAgfMKgwqDCoCAKPiAK
PsKgwqAgfCAoY2YsIHJvKcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgfMKgwqDCoCB8wqDC
oCAoY3QsIHJvLCBlcGhlbWVyYWwgCj4gCj7CoMKgICstLS0tLS0tLS0tLS0tLS0tLS0tLSvCoMKg
wqAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSvCoMKgIAo+IAo+wqAgCj4gCj7CoCAKPiAK
PiBTdWUgCj4gCj7CoCAKPiAKPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQo+IEZyb206IGky
cnMgW21haWx0bzppMnJzLWJvdW5jZXNAaWV0Zi5vcmddIE9uIEJlaGFsZiBPZiBKdWVyZ2VuIFNj
aG9lbndhZWxkZXIKPiBTZW50OiBUaHVyc2RheSwgSnVuZSAwMiwgMjAxNiA3OjA1IEFNCj4gVG86
IFN1c2FuIEhhcmVzCj4gQ2M6ICdKZWZmcmV5IEhhYXMnOyBpMnJzQGlldGYub3JnOyAnQmVub2l0
IENsYWlzZSc7ICdBbGlhIEF0bGFzJwo+IFN1YmplY3Q6IFJlOiBbaTJyc10gSTJSUyBJbnRlcmlt
IE1lZXRpbmcgLSBKdW5lIDEsIDIwMTYgLSAxMDowMGFtIC0gMTE6MDBhbQo+IC0/IFRvcGljOiBF
cGhlbWVyYWwgU3RhdGUgUmVxdWlyZW1lbnRzCj4gCj7CoCAKPiAKPiBPbiBUaHUsIEp1biAwMiwg
MjAxNiBhdCAwNjo1Mzo0MkFNIC0wNDAwLCBTdXNhbiBIYXJlcyB3cm90ZToKPiAKPiA+IEp1ZXJn
ZW46Cj4gCj4gPiAKPiAKPiA+IERvIHlvdSB0aGluayB0aGlzIGRlZmluaXRpb24gYmVsb25ncyBp
biB0aGUgZXBoZW1lcmFsIHJlcXVpcmVtZW50cz/CoCBJZgo+IHNvLAo+IAo+ID4gd2UgY2FuIGFk
ZCBpdC7CoMKgIEJ1dCBwZXJoYXBzIHdlIHNob3VsZCBkZWZpbmUgYm90aCBlcGhlbWVyYWwgY29u
ZmlndXJhdGlvbgo+IAo+ID4gYW5kIGVwaGVtZXJhbCBvcGVyYXRpb25hbCBzdGF0ZS7CoCBKb2Vs
IHBvaW50IG91dCBhdCB0aGUgSTJSUyBpbnRlcmltIAo+IAo+ID4gdGhhdCBlcGhlbWVyYWwgb3Bl
cmF0aW9uYWwgc3RhdGUgaXMganVzdCBsaWtlIGFsbCBvdGhlciBvcGVyYXRpb25hbCBzdGF0ZQo+
IC0gaXQKPiAKPiA+IGRpc2FwcGVhcnMgdXBvbiByZWJvb3QuwqDCoCBJdCBpcyBlcGhlbWVyYWwg
Y29uZmlndXJhdGlvbiB3aGljaCBpcyBkaWZmZXJlbnQKPiAKPiA+IHRoYW4gbm9ybWFsIGNvbmZp
Z3VyYXRpb24gLSBzaW5jZSBpdCBkaXNhcHBlYXJzIHVwb24gcmVib290IHdoZXJlIAo+IAo+ID4g
bm9ybWFsIGNvbmZpZ3VyYXRpb24gZG9lcyBub3QuCj4gCj4gPiAKPiAKPiA+IElzIHRoaXMgZGlh
Z3JhbSBjbG9zZSB0byB5b3VyIGV4aXN0aW5nIG1vZGVsIHdoZXJlIG9wc3RhdGUgYW5kIAo+IAo+
ID4gZXBoZW1lcmFsIGNvbmZpZ3VyYXRpb24gYXJlIHBhcmFsbGVsPwo+IAo+ID4gCj4gCj4gPiAr
LS0tLS0tLS0tLS0tLS0tLS0tLS0rwqDCoMKgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsK
PiAKPiA+IHzCoMKgwqAgb3BzdGF0ZcKgwqDCoMKgwqDCoMKgwqAgfMKgwqDCoCB8IGVwaGVtZXJh
bCBjb25maWfCoCB8Cj4gCj4gPiArLS0tLS0tLS0tLS0tLS0tLS0tLS0rwqDCoMKgICstLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLSsKPiAKPiA+IAo+IAo+wqAgCj4gCj4gSSBzZWUgdHdvIGJveGVz
LCBJIGFtIHVuc3VyZSB3aGF0IHlvdSB0aGluayB0aGVzZSBib3hlcyBkcmF3biB0aGlzIHdheSBt
ZWFuLgo+IFdoYXQgaXMgJ3RoaXMgZGVmaW5pdGlvbicgaW4geW91ciBmaXJzdCBzZW50ZW5jZT8g
SSByZWFsbHkgaGF2ZSBwcm9ibGVtcyB0bwo+IGZvbGxvdyB3aGF0IGlzIGdvaW5nIG9uLgo+IAo+
wqAgCj4gCj4gL2pzCj4gCj7CoCAKPiAKPiAtLSAKPiAKPiBKdWVyZ2VuIFNjaG9lbndhZWxkZXLC
oMKgwqDCoMKgwqDCoMKgwqDCoCBKYWNvYnMgVW5pdmVyc2l0eSBCcmVtZW4gZ0dtYkgKPiAKPiBQ
aG9uZTogKzQ5IDQyMSAyMDAgMzU4N8KgwqDCoMKgwqDCoMKgwqAgQ2FtcHVzIFJpbmcgMSB8IDI4
NzU5IEJyZW1lbiB8IEdlcm1hbnkKPiAKPiBGYXg6wqDCoCArNDkgNDIxIDIwMCAzMTAzwqDCoMKg
wqDCoMKgwqDCoCA8IDxodHRwOi8vd3d3LmphY29icy11bml2ZXJzaXR5LmRlLz4KPiBodHRwOi8v
d3d3LmphY29icy11bml2ZXJzaXR5LmRlLz4KPiAKPsKgIAo+IAo+IF9fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCj4gCj4gaTJycyBtYWlsaW5nIGxpc3QKPiAK
PsKgIDxtYWlsdG86aTJyc0BpZXRmLm9yZz4gaTJyc0BpZXRmLm9yZwo+IAo+wqAgPGh0dHBzOi8v
d3d3LmlldGYub3JnL21haWxtYW4vbGlzdGluZm8vaTJycz4KPiBodHRwczovL3d3dy5pZXRmLm9y
Zy9tYWlsbWFuL2xpc3RpbmZvL2kycnMKPiAKCi0tIApKdWVyZ2VuIFNjaG9lbndhZWxkZXLCoMKg
wqDCoMKgwqDCoMKgwqDCoCBKYWNvYnMgVW5pdmVyc2l0eSBCcmVtZW4gZ0dtYkgKUGhvbmU6ICs0
OSA0MjEgMjAwIDM1ODfCoMKgwqDCoMKgwqDCoMKgIENhbXB1cyBSaW5nIDEgfCAyODc1OSBCcmVt
ZW4gfCBHZXJtYW55CkZheDrCoMKgICs0OSA0MjEgMjAwIDMxMDPCoMKgwqDCoMKgwqDCoMKgIDxo
dHRwOi8vd3d3LmphY29icy11bml2ZXJzaXR5LmRlLz4KCl9fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fCmkycnMgbWFpbGluZyBsaXN0CmkycnNAaWV0Zi5vcmcK
aHR0cHM6Ly93d3cuaWV0Zi5vcmcvbWFpbG1hbi9saXN0aW5mby9pMnJzCg==

----_com.samsung.android.email_5825557027023280
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: base64

PGh0bWw+PGhlYWQ+PG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0
L2h0bWw7IGNoYXJzZXQ9VVRGLTgiPjwvaGVhZD48Ym9keT48ZGl2Pkp1ZXJnZW48L2Rpdj48ZGl2
Pjxicj48L2Rpdj48ZGl2PlRoZSBkZWZpbml0aW9uIEkgd2FzIHVzaW5nIHdhcyBvcGVyYXRpb25h
bCBzdGF0ZSAocmVhZCBvbmx5ICkgJm5ic3A7dGhhdCBpcyBkZWZpbmVkIHVuZGVyIGEgbm9kZSBk
ZWZpbmVkIGVwaGVtZXJhbC4gJm5ic3A7Sm9lbCBjaGFsbGVuZ2VkIHRoYXQgZGVmaW5pdGlvbiBz
YXlpbmcgd2l0aCBzcGxpdCBvcGVyYXRpb25hbCBzdGF0ZSBmcm9tIGNvbmZpZyAtIG9wZXJhdGlv
bmFsIHN0YXRlIGRvZXMgbm90IG5lZWQgdG8gYmUgdW5kZXIgYW4gZXBoZW1lcmFsIG5vZGUuPC9k
aXY+PGRpdj48YnI+PC9kaXY+PGRpdj5TdWU8L2Rpdj48ZGl2Pjxicj48L2Rpdj48ZGl2Pjxicj48
L2Rpdj48ZGl2Pjxicj48L2Rpdj48ZGl2IGlkPSJjb21wb3Nlcl9zaWduYXR1cmUiPjxkaXYgc3R5
bGU9ImZvbnQtc2l6ZTo4NSU7Y29sb3I6IzU3NTc1NyI+U2VudCB2aWEgdGhlIFNhbXN1bmcgR2Fs
YXh5IE5vdGU1LCBhbiBBVCZhbXA7VCA0RyBMVEUgc21hcnRwaG9uZTwvZGl2PjwvZGl2PjxkaXYg
c3R5bGU9ImZvbnQtc2l6ZToxMDAlO2NvbG9yOiMwMDAwMDAiPjwhLS0gb3JpZ2luYWxNZXNzYWdl
IC0tPjxkaXY+LS0tLS0tLS0gT3JpZ2luYWwgbWVzc2FnZSAtLS0tLS0tLTwvZGl2PjxkaXY+RnJv
bTogSnVlcmdlbiBTY2hvZW53YWVsZGVyICZsdDtqLnNjaG9lbndhZWxkZXJAamFjb2JzLXVuaXZl
cnNpdHkuZGUmZ3Q7IDwvZGl2PjxkaXY+RGF0ZTogNi8yLzIwMTYgIDc6NTAgQU0gIChHTVQtMDU6
MDApIDwvZGl2PjxkaXY+VG86IFN1c2FuIEhhcmVzICZsdDtzaGFyZXNAbmR6aC5jb20mZ3Q7IDwv
ZGl2PjxkaXY+Q2M6ICdKZWZmcmV5IEhhYXMnICZsdDtqaGFhc0BwZnJjLm9yZyZndDssIGkycnNA
aWV0Zi5vcmcsICdCZW5vaXQgQ2xhaXNlJyAmbHQ7YmNsYWlzZUBjaXNjby5jb20mZ3Q7LCAnQWxp
YSBBdGxhcycgJmx0O2FrYXRsYXNAZ21haWwuY29tJmd0OyA8L2Rpdj48ZGl2PlN1YmplY3Q6IFJl
OiBbaTJyc10gSTJSUyBJbnRlcmltIE1lZXRpbmcgLSBKdW5lIDEsCiAgMjAxNiAtIDEwOjAwYW0g
LSAxMTowMGFtIC0/ICBUb3BpYzogRXBoZW1lcmFsIFN0YXRlIFJlcXVpcmVtZW50cyA8L2Rpdj48
ZGl2Pjxicj48L2Rpdj48L2Rpdj5JIG1pZ2h0IGJlIGFibGUgdG8gYW5zd2VyIHRoZSBwaWN0dXJl
IHF1ZXN0aW9uIG9uY2UgSSBrbm93IHdoYXQgaXM8YnI+cmVhbGx5IG1lYW50IGJ5ICdlcGhlbWVy
YWwgb3BlcmF0aW9uYWwgc3RhdGUnLjxicj48YnI+L2pzPGJyPjxicj5PbiBUaHUsIEp1biAwMiwg
MjAxNiBhdCAwNzoxNTozNEFNIC0wNDAwLCBTdXNhbiBIYXJlcyB3cm90ZTo8YnI+Jmd0OyBKdWVy
Z2VuOiA8YnI+Jmd0OyA8YnI+Jmd0OyZuYnNwOyA8YnI+Jmd0OyA8YnI+Jmd0OyBPbiBmaXJzdCBz
ZW50ZW5jZSwgLi4uIHJlc3RhdGVkIDxicj4mZ3Q7IDxicj4mZ3Q7IERvIHlvdSBiZWxpZXZlIHRo
ZSAiZXBoZW1lcmFsIG9wZXJhdGlvbmFsIHN0YXRlIiBiZWxvbmdzIGluIHRoZSBlcGhlbWVyYWw8
YnI+Jmd0OyByZXF1aXJlbWVudHM/IElmIHNvLCB3ZSBjYW4gYWRkIGl0LiZuYnNwOyBQZXJoYXBz
IHdlIHNob3VsZCBhbHNvIGFkZCBhIGRlZmluaXRpb248YnI+Jmd0OyBmb3IgZXBoZW1lcmFsIGNv
bmZpZ3VyYXRpb24uIDxicj4mZ3Q7IDxicj4mZ3Q7Jm5ic3A7IDxicj4mZ3Q7IDxicj4mZ3Q7IE9u
IHBpY3R1cmUgLS0gaGVyZSBpcyB5b3VyIHBpY3R1cmU6IDxicj4mZ3Q7IDxicj4mZ3Q7Jm5ic3A7
IDxicj4mZ3Q7IDxicj4mZ3Q7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICstLS0tLS0tLS0tLS0tKyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyArLS0tLS0tLS0tLS0rPGJy
PiZndDsgPGJyPiZndDsmbmJzcDsmbmJzcDsmbmJzcDsgfCAmbHQ7Y2FuZGlkYXRlJmd0OyB8Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHwgJmx0O3N0YXJ0dXAm
Z3Q7IHw8YnI+Jmd0OyA8YnI+Jmd0OyZuYnNwOyZuYnNwOyZuYnNwOyB8Jm5ic3A7IChjdCwgcncp
Jm5ic3A7Jm5ic3A7IHwmbHQ7LS0tKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyArLS0tJmd0O3wgKGN0LCBydykmbmJzcDsgfDxicj4mZ3Q7IDxicj4mZ3Q7Jm5ic3A7
Jm5ic3A7Jm5ic3A7ICstLS0tLS0tLS0tLS0tKyZuYnNwOyZuYnNwOyZuYnNwOyB8Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHwmbmJzcDsmbmJzcDsmbmJzcDsgKy0t
LS0tLS0tLS0tKzxicj4mZ3Q7IDxicj4mZ3Q7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHwmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgfCZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB8Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHw8YnI+Jmd0OyA8YnI+Jmd0OyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB8Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICstLS0tLS0tLS0tLS0r
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHw8YnI+Jmd0
OyA8YnI+Jmd0OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyArLS0tLS0tLS0mZ3Q7fCAmbHQ7cnVubmluZyZndDsmbmJzcDsgfCZsdDst
LS0tLS0tLSs8YnI+Jmd0OyA8YnI+Jmd0OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB8IChjdCwgcncpJm5ic3A7Jm5ic3A7IHw8
YnI+Jmd0OyA8YnI+Jmd0OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyArLS0tLS0tLS0tLS0tKzxicj4mZ3Q7IDxicj4mZ3Q7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHwmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgLy8gZS5nLiwgcmVtb3ZhbCBvZiAnaW5h
Y3RpdmUnIG5vZGVzPGJyPiZndDsgPGJyPiZndDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsgdjxicj4mZ3Q7IDxicj4mZ3Q7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICstLS0tLS0tLS0tLS0rPGJy
PiZndDsgPGJyPiZndDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsgfCAmbHQ7aW50ZW5kZWQmZ3Q7IHwmbmJzcDsgLy8gc3ViamVj
dCB0byB2YWxpZGF0aW9uPGJyPiZndDsgPGJyPiZndDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgfCAoY3QsIHJvKSZuYnNwOyZu
YnNwOyB8PGJyPiZndDsgPGJyPiZndDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgKy0tLS0tLS0tLS0tLSs8YnI+Jmd0OyA8YnI+
Jmd0OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB8Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IC8vIGUuZy4sIG1pc3Npbmcg
cmVzb3VyY2VzIG9yIGRlbGF5czxicj4mZ3Q7IDxicj4mZ3Q7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHY8YnI+Jmd0OyA8YnI+Jmd0OyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyArLS0tLS0tLS0t
LS0tKzxicj4mZ3Q7IDxicj4mZ3Q7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHwgJmx0O2FwcGxpZWQmZ3Q7Jm5ic3A7IHw8YnI+
Jmd0OyA8YnI+Jmd0OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyB8IChjdCwgcm8pJm5ic3A7Jm5ic3A7IHw8YnI+Jmd0OyA8YnI+
Jmd0OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyArLS0tLS0tLS0tLS0tKzxicj4mZ3Q7IDxicj4mZ3Q7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHwmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsgLy8gZS5nLiwgYXV0b2Rpc2NvdmVyeSBvZiB2YWx1ZXM8YnI+
Jmd0OyA8YnI+Jmd0OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB2
PGJyPiZndDsgPGJyPiZndDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKzxi
cj4mZ3Q7IDxicj4mZ3Q7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7IHwgJmx0O29wZXJhdGlvbmFsLXN0YXRlJmd0OyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB8
Jmx0Oy0tIGNvbnRyb2wgcGxhbmUgYW5kPGJyPiZndDsgPGJyPiZndDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgfCAoY3QgKyBjZiwg
cm8pJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHwmbmJzcDsm
bmJzcDsmbmJzcDsgZXBoZW1lcmFsIGRhdGFzdG9yZXM8YnI+Jmd0OyA8YnI+Jmd0OyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyArLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rPGJyPiZndDsgPGJyPiZndDsmbmJzcDsgPGJy
PiZndDsgPGJyPiZndDsgSXMgdGhpcyBwYXJ0IG9mIHRoZSBwaWN0dXJlIDxicj4mZ3Q7IDxicj4m
Z3Q7Jm5ic3A7IDxicj4mZ3Q7IDxicj4mZ3Q7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLSs8YnI+Jmd0OyA8YnI+Jmd0OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB8ICZsdDtvcGVyYXRpb25hbC1zdGF0ZSZndDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsgfCZsdDstLSBjb250cm9sIHBsYW5lIGFuZDxicj4mZ3Q7IDxicj4mZ3Q7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHwg
KGN0ICsgY2YsIHJvKSZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyB8Jm5ic3A7Jm5ic3A7Jm5ic3A7IGVwaGVtZXJhbCBkYXRhc3RvcmVzPGJyPiZndDsgPGJyPiZn
dDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKzxicj4mZ3Q7IDxicj4mZ3Q7
Jm5ic3A7IDxicj4mZ3Q7IDxicj4mZ3Q7IFJlYWxseSA8YnI+Jmd0OyA8YnI+Jmd0OyZuYnNwOyZu
YnNwOyArLS0tLS0tLS0tLS0tLS0tLS0tLS0rJm5ic3A7Jm5ic3A7Jm5ic3A7ICstLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLSs8YnI+Jmd0OyArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rPGJyPiZn
dDsgPGJyPiZndDsmbmJzcDsgfCZuYnNwOyZuYnNwOyZuYnNwOyBvcHN0YXRlJm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHwmbmJzcDsmbmJzcDsmbmJzcDsg
fCBlcGhlbWVyYWwgY29uZmlnJm5ic3A7IHwmbmJzcDsmbmJzcDsgfCBhcHBsaWVkJm5ic3A7IGNv
bmZpZyZuYnNwOyZuYnNwOyZuYnNwOyB8PGJyPiZndDsgPGJyPiZndDsmbmJzcDsgfCAoY2YsIHJv
KSZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB8Jm5ic3A7Jm5ic3A7Jm5ic3A7IHwmbmJzcDsm
bmJzcDsgKGN0LCBybywgZXBoZW1lcmFsfCZuYnNwOyB8IChjdCwgcm8pPGJyPiZndDsgfDxicj4m
Z3Q7IDxicj4mZ3Q7Jm5ic3A7ICstLS0tLS0tLS0tLS0tLS0tLS0tLSsmbmJzcDsmbmJzcDsmbmJz
cDsgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSs8YnI+Jmd0OyArLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLSs8YnI+Jmd0OyA8YnI+Jmd0OyZuYnNwOyA8YnI+Jmd0OyA8YnI+Jmd0OyBPciBq
dXN0IDxicj4mZ3Q7IDxicj4mZ3Q7Jm5ic3A7Jm5ic3A7ICstLS0tLS0tLS0tLS0tLS0tLS0tLSsm
bmJzcDsmbmJzcDsmbmJzcDsgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKyZuYnNwOyZuYnNw
OyZuYnNwOyA8YnI+Jmd0OyA8YnI+Jmd0OyZuYnNwOyZuYnNwOyB8Jm5ic3A7Jm5ic3A7Jm5ic3A7
IG9wc3RhdGUmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsg
fCZuYnNwOyZuYnNwOyZuYnNwOyB8IGVwaGVtZXJhbCBjb25maWcmbmJzcDsgfCZuYnNwOyZuYnNw
OyZuYnNwOyA8YnI+Jmd0OyA8YnI+Jmd0OyZuYnNwOyZuYnNwOyB8IChjZiwgcm8pJm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7IHwmbmJzcDsmbmJzcDsmbmJzcDsgfCZuYnNwOyZuYnNwOyAoY3Qs
IHJvLCBlcGhlbWVyYWwgPGJyPiZndDsgPGJyPiZndDsmbmJzcDsmbmJzcDsgKy0tLS0tLS0tLS0t
LS0tLS0tLS0tKyZuYnNwOyZuYnNwOyZuYnNwOyArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
KyZuYnNwOyZuYnNwOyA8YnI+Jmd0OyA8YnI+Jmd0OyZuYnNwOyA8YnI+Jmd0OyA8YnI+Jmd0OyZu
YnNwOyA8YnI+Jmd0OyA8YnI+Jmd0OyBTdWUgPGJyPiZndDsgPGJyPiZndDsmbmJzcDsgPGJyPiZn
dDsgPGJyPiZndDsgLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS08YnI+Jmd0OyBGcm9tOiBpMnJz
IFttYWlsdG86aTJycy1ib3VuY2VzQGlldGYub3JnXSBPbiBCZWhhbGYgT2YgSnVlcmdlbiBTY2hv
ZW53YWVsZGVyPGJyPiZndDsgU2VudDogVGh1cnNkYXksIEp1bmUgMDIsIDIwMTYgNzowNSBBTTxi
cj4mZ3Q7IFRvOiBTdXNhbiBIYXJlczxicj4mZ3Q7IENjOiAnSmVmZnJleSBIYWFzJzsgaTJyc0Bp
ZXRmLm9yZzsgJ0Jlbm9pdCBDbGFpc2UnOyAnQWxpYSBBdGxhcyc8YnI+Jmd0OyBTdWJqZWN0OiBS
ZTogW2kycnNdIEkyUlMgSW50ZXJpbSBNZWV0aW5nIC0gSnVuZSAxLCAyMDE2IC0gMTA6MDBhbSAt
IDExOjAwYW08YnI+Jmd0OyAtPyBUb3BpYzogRXBoZW1lcmFsIFN0YXRlIFJlcXVpcmVtZW50czxi
cj4mZ3Q7IDxicj4mZ3Q7Jm5ic3A7IDxicj4mZ3Q7IDxicj4mZ3Q7IE9uIFRodSwgSnVuIDAyLCAy
MDE2IGF0IDA2OjUzOjQyQU0gLTA0MDAsIFN1c2FuIEhhcmVzIHdyb3RlOjxicj4mZ3Q7IDxicj4m
Z3Q7ICZndDsgSnVlcmdlbjo8YnI+Jmd0OyA8YnI+Jmd0OyAmZ3Q7IDxicj4mZ3Q7IDxicj4mZ3Q7
ICZndDsgRG8geW91IHRoaW5rIHRoaXMgZGVmaW5pdGlvbiBiZWxvbmdzIGluIHRoZSBlcGhlbWVy
YWwgcmVxdWlyZW1lbnRzPyZuYnNwOyBJZjxicj4mZ3Q7IHNvLDxicj4mZ3Q7IDxicj4mZ3Q7ICZn
dDsgd2UgY2FuIGFkZCBpdC4mbmJzcDsmbmJzcDsgQnV0IHBlcmhhcHMgd2Ugc2hvdWxkIGRlZmlu
ZSBib3RoIGVwaGVtZXJhbCBjb25maWd1cmF0aW9uPGJyPiZndDsgPGJyPiZndDsgJmd0OyBhbmQg
ZXBoZW1lcmFsIG9wZXJhdGlvbmFsIHN0YXRlLiZuYnNwOyBKb2VsIHBvaW50IG91dCBhdCB0aGUg
STJSUyBpbnRlcmltIDxicj4mZ3Q7IDxicj4mZ3Q7ICZndDsgdGhhdCBlcGhlbWVyYWwgb3BlcmF0
aW9uYWwgc3RhdGUgaXMganVzdCBsaWtlIGFsbCBvdGhlciBvcGVyYXRpb25hbCBzdGF0ZTxicj4m
Z3Q7IC0gaXQ8YnI+Jmd0OyA8YnI+Jmd0OyAmZ3Q7IGRpc2FwcGVhcnMgdXBvbiByZWJvb3QuJm5i
c3A7Jm5ic3A7IEl0IGlzIGVwaGVtZXJhbCBjb25maWd1cmF0aW9uIHdoaWNoIGlzIGRpZmZlcmVu
dDxicj4mZ3Q7IDxicj4mZ3Q7ICZndDsgdGhhbiBub3JtYWwgY29uZmlndXJhdGlvbiAtIHNpbmNl
IGl0IGRpc2FwcGVhcnMgdXBvbiByZWJvb3Qgd2hlcmUgPGJyPiZndDsgPGJyPiZndDsgJmd0OyBu
b3JtYWwgY29uZmlndXJhdGlvbiBkb2VzIG5vdC48YnI+Jmd0OyA8YnI+Jmd0OyAmZ3Q7IDxicj4m
Z3Q7IDxicj4mZ3Q7ICZndDsgSXMgdGhpcyBkaWFncmFtIGNsb3NlIHRvIHlvdXIgZXhpc3Rpbmcg
bW9kZWwgd2hlcmUgb3BzdGF0ZSBhbmQgPGJyPiZndDsgPGJyPiZndDsgJmd0OyBlcGhlbWVyYWwg
Y29uZmlndXJhdGlvbiBhcmUgcGFyYWxsZWw/PGJyPiZndDsgPGJyPiZndDsgJmd0OyA8YnI+Jmd0
OyA8YnI+Jmd0OyAmZ3Q7ICstLS0tLS0tLS0tLS0tLS0tLS0tLSsmbmJzcDsmbmJzcDsmbmJzcDsg
Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKzxicj4mZ3Q7IDxicj4mZ3Q7ICZndDsgfCZuYnNw
OyZuYnNwOyZuYnNwOyBvcHN0YXRlJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7IHwmbmJzcDsmbmJzcDsmbmJzcDsgfCBlcGhlbWVyYWwgY29uZmlnJm5ic3A7
IHw8YnI+Jmd0OyA8YnI+Jmd0OyAmZ3Q7ICstLS0tLS0tLS0tLS0tLS0tLS0tLSsmbmJzcDsmbmJz
cDsmbmJzcDsgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKzxicj4mZ3Q7IDxicj4mZ3Q7ICZn
dDsgPGJyPiZndDsgPGJyPiZndDsmbmJzcDsgPGJyPiZndDsgPGJyPiZndDsgSSBzZWUgdHdvIGJv
eGVzLCBJIGFtIHVuc3VyZSB3aGF0IHlvdSB0aGluayB0aGVzZSBib3hlcyBkcmF3biB0aGlzIHdh
eSBtZWFuLjxicj4mZ3Q7IFdoYXQgaXMgJ3RoaXMgZGVmaW5pdGlvbicgaW4geW91ciBmaXJzdCBz
ZW50ZW5jZT8gSSByZWFsbHkgaGF2ZSBwcm9ibGVtcyB0bzxicj4mZ3Q7IGZvbGxvdyB3aGF0IGlz
IGdvaW5nIG9uLjxicj4mZ3Q7IDxicj4mZ3Q7Jm5ic3A7IDxicj4mZ3Q7IDxicj4mZ3Q7IC9qczxi
cj4mZ3Q7IDxicj4mZ3Q7Jm5ic3A7IDxicj4mZ3Q7IDxicj4mZ3Q7IC0tIDxicj4mZ3Q7IDxicj4m
Z3Q7IEp1ZXJnZW4gU2Nob2Vud2FlbGRlciZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBKYWNvYnMgVW5pdmVyc2l0eSBCcmVtZW4gZ0dt
Ykg8YnI+Jmd0OyA8YnI+Jmd0OyBQaG9uZTogKzQ5IDQyMSAyMDAgMzU4NyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBDYW1wdXMgUmluZyAxIHwgMjg3NTkg
QnJlbWVuIHwgR2VybWFueTxicj4mZ3Q7IDxicj4mZ3Q7IEZheDombmJzcDsmbmJzcDsgKzQ5IDQy
MSAyMDAgMzEwMyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyAmbHQ7ICZsdDtodHRwOi8vd3d3LmphY29icy11bml2ZXJzaXR5LmRlLyZndDs8YnI+Jmd0OyBo
dHRwOi8vd3d3LmphY29icy11bml2ZXJzaXR5LmRlLyZndDs8YnI+Jmd0OyA8YnI+Jmd0OyZuYnNw
OyA8YnI+Jmd0OyA8YnI+Jmd0OyBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fXzxicj4mZ3Q7IDxicj4mZ3Q7IGkycnMgbWFpbGluZyBsaXN0PGJyPiZndDsgPGJy
PiZndDsmbmJzcDsgJmx0O21haWx0bzppMnJzQGlldGYub3JnJmd0OyBpMnJzQGlldGYub3JnPGJy
PiZndDsgPGJyPiZndDsmbmJzcDsgJmx0O2h0dHBzOi8vd3d3LmlldGYub3JnL21haWxtYW4vbGlz
dGluZm8vaTJycyZndDs8YnI+Jmd0OyBodHRwczovL3d3dy5pZXRmLm9yZy9tYWlsbWFuL2xpc3Rp
bmZvL2kycnM8YnI+Jmd0OyA8YnI+PGJyPi0tIDxicj5KdWVyZ2VuIFNjaG9lbndhZWxkZXImbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsg
SmFjb2JzIFVuaXZlcnNpdHkgQnJlbWVuIGdHbWJIPGJyPlBob25lOiArNDkgNDIxIDIwMCAzNTg3
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IENhbXB1cyBS
aW5nIDEgfCAyODc1OSBCcmVtZW4gfCBHZXJtYW55PGJyPkZheDombmJzcDsmbmJzcDsgKzQ5IDQy
MSAyMDAgMzEwMyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyAmbHQ7aHR0cDovL3d3dy5qYWNvYnMtdW5pdmVyc2l0eS5kZS8mZ3Q7PGJyPjxicj5fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXzxicj5pMnJzIG1haWxpbmcg
bGlzdDxicj5pMnJzQGlldGYub3JnPGJyPmh0dHBzOi8vd3d3LmlldGYub3JnL21haWxtYW4vbGlz
dGluZm8vaTJyczxicj48L2JvZHk+PC9odG1sPg==

----_com.samsung.android.email_5825557027023280--


From nobody Thu Jun  2 08:14:40 2016
Return-Path: <jmh@joelhalpern.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 342A412D1B2 for <i2rs@ietfa.amsl.com>; Thu,  2 Jun 2016 08:14:39 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.702
X-Spam-Level: 
X-Spam-Status: No, score=-2.702 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=joelhalpern.com
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 Mga0ytci6kSP for <i2rs@ietfa.amsl.com>; Thu,  2 Jun 2016 08:14:37 -0700 (PDT)
Received: from maila2.tigertech.net (maila2.tigertech.net [208.80.4.152]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 0DF5C12D108 for <i2rs@ietf.org>; Thu,  2 Jun 2016 08:14:37 -0700 (PDT)
Received: from localhost (localhost [127.0.0.1]) by maila2.tigertech.net (Postfix) with ESMTP id E7E67240828; Thu,  2 Jun 2016 08:14:36 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=joelhalpern.com; s=1.tigertech; t=1464880476; bh=/NxqnEU+gpDrhoofXjRH89poIc2chrkLKmTPdCNWfKw=; h=Subject:To:References:From:Date:In-Reply-To:From; b=PPUVZrvEhhox0cfgFFvDJ8SI5innP3USseYHhlR8uNOYkfawh3IgD6N5UNN62JxHA RwOugcPYvLNPeLgyRrQQNyzjMcdBC7AgrwvCL/fh3+t6LGElEvgXsm6CHOpSaHkf0B lCV255zGx18f0Q3mVANYEeLew0qQR7B44rxHp77o=
X-Virus-Scanned: Debian amavisd-new at maila2.tigertech.net
Received: from Joels-MacBook-Pro.local (209-255-163-147.ip.mcleodusa.net [209.255.163.147]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by maila2.tigertech.net (Postfix) with ESMTPSA id 4F8282406B3; Thu,  2 Jun 2016 08:14:36 -0700 (PDT)
To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>, i2rs@ietf.org, 'Benoit Claise' <bclaise@cisco.com>
References: <6qtqondee9e8m6od11bh1ilt.1464783874424@email.android.com> <20160601123117.GB24741@elstar.local> <014801d1bc06$98eed670$cacc8350$@ndzh.com> <20160602103621.GA26659@elstar.local> <016c01d1bcbd$10aa6ba0$31ff42e0$@ndzh.com> <20160602110449.GC26659@elstar.local> <017101d1bcc0$1b3a18b0$51ae4a10$@ndzh.com> <20160602115004.GF26659@elstar.local>
From: "Joel M. Halpern" <jmh@joelhalpern.com>
Message-ID: <e8545a72-7671-c0ce-4997-97cbabf82671@joelhalpern.com>
Date: Thu, 2 Jun 2016 11:14:29 -0400
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:45.0) Gecko/20100101 Thunderbird/45.1.0
MIME-Version: 1.0
In-Reply-To: <20160602115004.GF26659@elstar.local>
Content-Type: text/plain; charset=windows-1252; format=flowed
Content-Transfer-Encoding: 7bit
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/rEzyn81aBQnTVQW3YAbHjEWE-yY>
Subject: Re: [i2rs] I2RS Interim Meeting - June 1, 2016 - 10:00am - 11:00am -? Topic: Ephemeral State Requirements
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 02 Jun 2016 15:14:39 -0000

 From where I sit, there is no such thing as "ephemeral operational 
state".  There is "operational state" that reflects the effect of 
"ephemeral configuration", but as far as I can tell, it is still just 
"operational state".

Putting aside the operational state aspects, we do need to work out the 
diagramming / positioning of the ephemeral configuration and its 
relationship to the other components in the base diagram.

Yours,
Joel

On 6/2/16 7:50 AM, Juergen Schoenwaelder wrote:
> I might be able to answer the picture question once I know what is
> really meant by 'ephemeral operational state'.
>
> /js
>
> On Thu, Jun 02, 2016 at 07:15:34AM -0400, Susan Hares wrote:
>> Juergen:
>>
>>
>>
>> On first sentence, ... restated
>>
>> Do you believe the "ephemeral operational state" belongs in the ephemeral
>> requirements? If so, we can add it.  Perhaps we should also add a definition
>> for ephemeral configuration.
>>
>>
>>
>> On picture -- here is your picture:
>>
>>
>>
>>    +-------------+                  +-----------+
>>
>>    | <candidate> |                  | <startup> |
>>
>>    |  (ct, rw)   |<---+        +--->| (ct, rw)  |
>>
>>    +-------------+    |        |    +-----------+
>>
>>           |           |        |           |
>>
>>           |         +------------+         |
>>
>>           +-------->| <running>  |<--------+
>>
>>                     | (ct, rw)   |
>>
>>                     +------------+
>>
>>                           |         // e.g., removal of 'inactive' nodes
>>
>>                           v
>>
>>                     +------------+
>>
>>                     | <intended> |  // subject to validation
>>
>>                     | (ct, ro)   |
>>
>>                     +------------+
>>
>>                           |         // e.g., missing resources or delays
>>
>>                           v
>>
>>                     +------------+
>>
>>                     | <applied>  |
>>
>>                     | (ct, ro)   |
>>
>>                     +------------+
>>
>>                           |         // e.g., autodiscovery of values
>>
>>                           v
>>
>>           +--------------------------------+
>>
>>           | <operational-state>            |<-- control plane and
>>
>>           | (ct + cf, ro)                  |    ephemeral datastores
>>
>>           +--------------------------------+
>>
>>
>>
>> Is this part of the picture
>>
>>
>>
>>           +--------------------------------+
>>
>>           | <operational-state>            |<-- control plane and
>>
>>           | (ct + cf, ro)                  |    ephemeral datastores
>>
>>           +--------------------------------+
>>
>>
>>
>> Really
>>
>>   +--------------------+    +--------------------------+
>> +-----------------------+
>>
>>  |    opstate         |    | ephemeral config  |   | applied  config    |
>>
>>  | (cf, ro)               |    |   (ct, ro, ephemeral|  | (ct, ro)
>> |
>>
>>  +--------------------+    +---------------------------+
>> +-------------------------+
>>
>>
>>
>> Or just
>>
>>   +--------------------+    +--------------------------+
>>
>>   |    opstate         |    | ephemeral config  |
>>
>>   | (cf, ro)               |    |   (ct, ro, ephemeral
>>
>>   +--------------------+    +---------------------------+
>>
>>
>>
>>
>>
>> Sue
>>
>>
>>
>> -----Original Message-----
>> From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Juergen Schoenwaelder
>> Sent: Thursday, June 02, 2016 7:05 AM
>> To: Susan Hares
>> Cc: 'Jeffrey Haas'; i2rs@ietf.org; 'Benoit Claise'; 'Alia Atlas'
>> Subject: Re: [i2rs] I2RS Interim Meeting - June 1, 2016 - 10:00am - 11:00am
>> -? Topic: Ephemeral State Requirements
>>
>>
>>
>> On Thu, Jun 02, 2016 at 06:53:42AM -0400, Susan Hares wrote:
>>
>>> Juergen:
>>
>>>
>>
>>> Do you think this definition belongs in the ephemeral requirements?  If
>> so,
>>
>>> we can add it.   But perhaps we should define both ephemeral configuration
>>
>>> and ephemeral operational state.  Joel point out at the I2RS interim
>>
>>> that ephemeral operational state is just like all other operational state
>> - it
>>
>>> disappears upon reboot.   It is ephemeral configuration which is different
>>
>>> than normal configuration - since it disappears upon reboot where
>>
>>> normal configuration does not.
>>
>>>
>>
>>> Is this diagram close to your existing model where opstate and
>>
>>> ephemeral configuration are parallel?
>>
>>>
>>
>>> +--------------------+    +--------------------------+
>>
>>> |    opstate         |    | ephemeral config  |
>>
>>> +--------------------+    +--------------------------+
>>
>>>
>>
>>
>>
>> I see two boxes, I am unsure what you think these boxes drawn this way mean.
>> What is 'this definition' in your first sentence? I really have problems to
>> follow what is going on.
>>
>>
>>
>> /js
>>
>>
>>
>> --
>>
>> Juergen Schoenwaelder           Jacobs University Bremen gGmbH
>>
>> Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
>>
>> Fax:   +49 421 200 3103         < <http://www.jacobs-university.de/>
>> http://www.jacobs-university.de/>
>>
>>
>>
>> _______________________________________________
>>
>> i2rs mailing list
>>
>>  <mailto:i2rs@ietf.org> i2rs@ietf.org
>>
>>  <https://www.ietf.org/mailman/listinfo/i2rs>
>> https://www.ietf.org/mailman/listinfo/i2rs
>>
>


From nobody Thu Jun  2 09:08:42 2016
Return-Path: <shares@ndzh.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 DB47A12D76E for <i2rs@ietfa.amsl.com>; Thu,  2 Jun 2016 09:08:40 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.106
X-Spam-Level: 
X-Spam-Status: No, score=-1.106 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RDNS_NONE=0.793] autolearn=no autolearn_force=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 Azui0AGMDJ6H for <i2rs@ietfa.amsl.com>; Thu,  2 Jun 2016 09:08:38 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 87A7312D59B for <i2rs@ietf.org>; Thu,  2 Jun 2016 09:07:59 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=107.92.120.142; 
Date: Thu, 02 Jun 2016 12:07:50 -0400
Message-ID: <w0tunrpbr1sy9lfefon15auu.1464883670145@email.android.com>
Importance: normal
From: Susan Hares <shares@ndzh.com>
To: "Joel M. Halpern" <jmh@joelhalpern.com>, Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>, i2rs@ietf.org, 'Benoit Claise' <bclaise@cisco.com>
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="--_com.samsung.android.email_5843721283488610"
X-Authenticated-User: skh@ndzh.com 
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/A-2CgbiFbsZTw9-yMOYceTTCguc>
Subject: Re: [i2rs] I2RS Interim Meeting - June 1, 2016 - 10:00am - 11:00am -? Topic: Ephemeral State Requirements
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 02 Jun 2016 16:08:41 -0000

----_com.samsung.android.email_5843721283488610
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: base64

Sm9lbApJIGFncmVlIHdpdGggeW91LiDCoE15IGZpcnN0IHF1ZXN0aW9uIHRvIEp1ZXJnZW4gd2Fz
IHRyeWluZyB0byBwb2tlIGluIHRoYXQgZGlyZWN0aW9uIHRvIGV4cGxvcmUgaGlzIG1vZGVsIGJh
c2VkIG9uIHRoYXQgY29uY2VwdC7CoApVbmZvcnR1bmF0ZWx5LCBoZSByZXF1aXJlZCBJIGRlZmlu
ZWQgd2hhdCBJIG1lYW50IFR1ZXNkYXkvV2VkbmVzZGF5IGJ5IGVwaGVtZXJhbCBvcHN0YXRlLgpJ
IGFtIGF0IGEgbWVldGluZyBzbyBteSBlbWFpbCBpcyBidXN5ClN1ZQoKClNlbnQgdmlhIHRoZSBT
YW1zdW5nIEdhbGF4eSBOb3RlNSwgYW4gQVQmVCA0RyBMVEUgc21hcnRwaG9uZS0tLS0tLS0tIE9y
aWdpbmFsIG1lc3NhZ2UgLS0tLS0tLS1Gcm9tOiAiSm9lbCBNLiBIYWxwZXJuIiA8am1oQGpvZWxo
YWxwZXJuLmNvbT4gRGF0ZTogNi8yLzIwMTYgIDExOjE0IEFNICAoR01ULTA1OjAwKSBUbzogSnVl
cmdlbiBTY2hvZW53YWVsZGVyIDxqLnNjaG9lbndhZWxkZXJAamFjb2JzLXVuaXZlcnNpdHkuZGU+
LCBpMnJzQGlldGYub3JnLCAnQmVub2l0IENsYWlzZScgPGJjbGFpc2VAY2lzY28uY29tPiBTdWJq
ZWN0OiBSZTogW2kycnNdIEkyUlMgSW50ZXJpbSBNZWV0aW5nIC0gSnVuZSAxLAogIDIwMTYgLSAx
MDowMGFtIC0gMTE6MDBhbSAtPyBUb3BpYzogRXBoZW1lcmFsIFN0YXRlIFJlcXVpcmVtZW50cyAK
IEZyb20gd2hlcmUgSSBzaXQsIHRoZXJlIGlzIG5vIHN1Y2ggdGhpbmcgYXMgImVwaGVtZXJhbCBv
cGVyYXRpb25hbCAKc3RhdGUiLsKgIFRoZXJlIGlzICJvcGVyYXRpb25hbCBzdGF0ZSIgdGhhdCBy
ZWZsZWN0cyB0aGUgZWZmZWN0IG9mIAoiZXBoZW1lcmFsIGNvbmZpZ3VyYXRpb24iLCBidXQgYXMg
ZmFyIGFzIEkgY2FuIHRlbGwsIGl0IGlzIHN0aWxsIGp1c3QgCiJvcGVyYXRpb25hbCBzdGF0ZSIu
CgpQdXR0aW5nIGFzaWRlIHRoZSBvcGVyYXRpb25hbCBzdGF0ZSBhc3BlY3RzLCB3ZSBkbyBuZWVk
IHRvIHdvcmsgb3V0IHRoZSAKZGlhZ3JhbW1pbmcgLyBwb3NpdGlvbmluZyBvZiB0aGUgZXBoZW1l
cmFsIGNvbmZpZ3VyYXRpb24gYW5kIGl0cyAKcmVsYXRpb25zaGlwIHRvIHRoZSBvdGhlciBjb21w
b25lbnRzIGluIHRoZSBiYXNlIGRpYWdyYW0uCgpZb3VycywKSm9lbAoKT24gNi8yLzE2IDc6NTAg
QU0sIEp1ZXJnZW4gU2Nob2Vud2FlbGRlciB3cm90ZToKPiBJIG1pZ2h0IGJlIGFibGUgdG8gYW5z
d2VyIHRoZSBwaWN0dXJlIHF1ZXN0aW9uIG9uY2UgSSBrbm93IHdoYXQgaXMKPiByZWFsbHkgbWVh
bnQgYnkgJ2VwaGVtZXJhbCBvcGVyYXRpb25hbCBzdGF0ZScuCj4KPiAvanMKPgo+IE9uIFRodSwg
SnVuIDAyLCAyMDE2IGF0IDA3OjE1OjM0QU0gLTA0MDAsIFN1c2FuIEhhcmVzIHdyb3RlOgo+PiBK
dWVyZ2VuOgo+Pgo+Pgo+Pgo+PiBPbiBmaXJzdCBzZW50ZW5jZSwgLi4uIHJlc3RhdGVkCj4+Cj4+
IERvIHlvdSBiZWxpZXZlIHRoZSAiZXBoZW1lcmFsIG9wZXJhdGlvbmFsIHN0YXRlIiBiZWxvbmdz
IGluIHRoZSBlcGhlbWVyYWwKPj4gcmVxdWlyZW1lbnRzPyBJZiBzbywgd2UgY2FuIGFkZCBpdC7C
oCBQZXJoYXBzIHdlIHNob3VsZCBhbHNvIGFkZCBhIGRlZmluaXRpb24KPj4gZm9yIGVwaGVtZXJh
bCBjb25maWd1cmF0aW9uLgo+Pgo+Pgo+Pgo+PiBPbiBwaWN0dXJlIC0tIGhlcmUgaXMgeW91ciBw
aWN0dXJlOgo+Pgo+Pgo+Pgo+PsKgwqDCoCArLS0tLS0tLS0tLS0tLSvCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgICstLS0tLS0tLS0tLSsKPj4KPj7CoMKgwqAgfCA8Y2FuZGlkYXRl
PiB8wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB8IDxzdGFydHVwPiB8Cj4+Cj4+
wqDCoMKgIHzCoCAoY3QsIHJ3KcKgwqAgfDwtLS0rwqDCoMKgwqDCoMKgwqAgKy0tLT58IChjdCwg
cncpwqAgfAo+Pgo+PsKgwqDCoCArLS0tLS0tLS0tLS0tLSvCoMKgwqAgfMKgwqDCoMKgwqDCoMKg
IHzCoMKgwqAgKy0tLS0tLS0tLS0tKwo+Pgo+PsKgwqDCoMKgwqDCoMKgwqDCoMKgIHzCoMKgwqDC
oMKgwqDCoMKgwqDCoCB8wqDCoMKgwqDCoMKgwqAgfMKgwqDCoMKgwqDCoMKgwqDCoMKgIHwKPj4K
Pj7CoMKgwqDCoMKgwqDCoMKgwqDCoCB8wqDCoMKgwqDCoMKgwqDCoCArLS0tLS0tLS0tLS0tK8Kg
wqDCoMKgwqDCoMKgwqAgfAo+Pgo+PsKgwqDCoMKgwqDCoMKgwqDCoMKgICstLS0tLS0tLT58IDxy
dW5uaW5nPsKgIHw8LS0tLS0tLS0rCj4+Cj4+wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoCB8IChjdCwgcncpwqDCoCB8Cj4+Cj4+wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoCArLS0tLS0tLS0tLS0tKwo+Pgo+PsKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgfMKgwqDCoMKgwqDCoMKgwqAgLy8gZS5n
LiwgcmVtb3ZhbCBvZiAnaW5hY3RpdmUnIG5vZGVzCj4+Cj4+wqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB2Cj4+Cj4+wqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCArLS0tLS0tLS0tLS0tKwo+Pgo+PsKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgfCA8aW50ZW5kZWQ+IHzCoCAvLyBzdWJqZWN0IHRv
IHZhbGlkYXRpb24KPj4KPj7CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
IHwgKGN0LCBybynCoMKgIHwKPj4KPj7CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgICstLS0tLS0tLS0tLS0rCj4+Cj4+wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB8wqDCoMKgwqDCoMKgwqDCoCAvLyBlLmcuLCBtaXNzaW5n
IHJlc291cmNlcyBvciBkZWxheXMKPj4KPj7CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgIHYKPj4KPj7CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgICstLS0tLS0tLS0tLS0rCj4+Cj4+wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoCB8IDxhcHBsaWVkPsKgIHwKPj4KPj7CoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgIHwgKGN0LCBybynCoMKgIHwKPj4KPj7CoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICstLS0tLS0tLS0tLS0rCj4+Cj4+wqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB8wqDCoMKgwqDCoMKg
wqDCoCAvLyBlLmcuLCBhdXRvZGlzY292ZXJ5IG9mIHZhbHVlcwo+Pgo+PsKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgdgo+Pgo+PsKgwqDCoMKgwqDC
oMKgwqDCoMKgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKPj4KPj7CoMKgwqDC
oMKgwqDCoMKgwqDCoCB8IDxvcGVyYXRpb25hbC1zdGF0ZT7CoMKgwqDCoMKgwqDCoMKgwqDCoMKg
IHw8LS0gY29udHJvbCBwbGFuZSBhbmQKPj4KPj7CoMKgwqDCoMKgwqDCoMKgwqDCoCB8IChjdCAr
IGNmLCBybynCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHzCoMKgwqAgZXBoZW1l
cmFsIGRhdGFzdG9yZXMKPj4KPj7CoMKgwqDCoMKgwqDCoMKgwqDCoCArLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0rCj4+Cj4+Cj4+Cj4+IElzIHRoaXMgcGFydCBvZiB0aGUgcGljdHVy
ZQo+Pgo+Pgo+Pgo+PsKgwqDCoMKgwqDCoMKgwqDCoMKgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLSsKPj4KPj7CoMKgwqDCoMKgwqDCoMKgwqDCoCB8IDxvcGVyYXRpb25hbC1zdGF0
ZT7CoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHw8LS0gY29udHJvbCBwbGFuZSBhbmQKPj4KPj7CoMKg
wqDCoMKgwqDCoMKgwqDCoCB8IChjdCArIGNmLCBybynCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgIHzCoMKgwqAgZXBoZW1lcmFsIGRhdGFzdG9yZXMKPj4KPj7CoMKgwqDCoMKgwqDC
oMKgwqDCoCArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCj4+Cj4+Cj4+Cj4+IFJl
YWxseQo+Pgo+PsKgwqAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tK8KgwqDCoCArLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0rCj4+ICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKPj4KPj7CoCB8wqDC
oMKgIG9wc3RhdGXCoMKgwqDCoMKgwqDCoMKgIHzCoMKgwqAgfCBlcGhlbWVyYWwgY29uZmlnwqAg
fMKgwqAgfCBhcHBsaWVkwqAgY29uZmlnwqDCoMKgIHwKPj4KPj7CoCB8IChjZiwgcm8pwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB8wqDCoMKgIHzCoMKgIChjdCwgcm8sIGVwaGVtZXJhbHzC
oCB8IChjdCwgcm8pCj4+IHwKPj4KPj7CoCArLS0tLS0tLS0tLS0tLS0tLS0tLS0rwqDCoMKgICst
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCj4+ICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
Kwo+Pgo+Pgo+Pgo+PiBPciBqdXN0Cj4+Cj4+wqDCoCArLS0tLS0tLS0tLS0tLS0tLS0tLS0rwqDC
oMKgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKPj4KPj7CoMKgIHzCoMKgwqAgb3BzdGF0
ZcKgwqDCoMKgwqDCoMKgwqAgfMKgwqDCoCB8IGVwaGVtZXJhbCBjb25maWfCoCB8Cj4+Cj4+wqDC
oCB8IChjZiwgcm8pwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB8wqDCoMKgIHzCoMKgIChj
dCwgcm8sIGVwaGVtZXJhbAo+Pgo+PsKgwqAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tK8KgwqDCoCAr
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwo+Pgo+Pgo+Pgo+Pgo+Pgo+PiBTdWUKPj4KPj4K
Pj4KPj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0KPj4gRnJvbTogaTJycyBbbWFpbHRvOmky
cnMtYm91bmNlc0BpZXRmLm9yZ10gT24gQmVoYWxmIE9mIEp1ZXJnZW4gU2Nob2Vud2FlbGRlcgo+
PiBTZW50OiBUaHVyc2RheSwgSnVuZSAwMiwgMjAxNiA3OjA1IEFNCj4+IFRvOiBTdXNhbiBIYXJl
cwo+PiBDYzogJ0plZmZyZXkgSGFhcyc7IGkycnNAaWV0Zi5vcmc7ICdCZW5vaXQgQ2xhaXNlJzsg
J0FsaWEgQXRsYXMnCj4+IFN1YmplY3Q6IFJlOiBbaTJyc10gSTJSUyBJbnRlcmltIE1lZXRpbmcg
LSBKdW5lIDEsIDIwMTYgLSAxMDowMGFtIC0gMTE6MDBhbQo+PiAtPyBUb3BpYzogRXBoZW1lcmFs
IFN0YXRlIFJlcXVpcmVtZW50cwo+Pgo+Pgo+Pgo+PiBPbiBUaHUsIEp1biAwMiwgMjAxNiBhdCAw
Njo1Mzo0MkFNIC0wNDAwLCBTdXNhbiBIYXJlcyB3cm90ZToKPj4KPj4+IEp1ZXJnZW46Cj4+Cj4+
Pgo+Pgo+Pj4gRG8geW91IHRoaW5rIHRoaXMgZGVmaW5pdGlvbiBiZWxvbmdzIGluIHRoZSBlcGhl
bWVyYWwgcmVxdWlyZW1lbnRzP8KgIElmCj4+IHNvLAo+Pgo+Pj4gd2UgY2FuIGFkZCBpdC7CoMKg
IEJ1dCBwZXJoYXBzIHdlIHNob3VsZCBkZWZpbmUgYm90aCBlcGhlbWVyYWwgY29uZmlndXJhdGlv
bgo+Pgo+Pj4gYW5kIGVwaGVtZXJhbCBvcGVyYXRpb25hbCBzdGF0ZS7CoCBKb2VsIHBvaW50IG91
dCBhdCB0aGUgSTJSUyBpbnRlcmltCj4+Cj4+PiB0aGF0IGVwaGVtZXJhbCBvcGVyYXRpb25hbCBz
dGF0ZSBpcyBqdXN0IGxpa2UgYWxsIG90aGVyIG9wZXJhdGlvbmFsIHN0YXRlCj4+IC0gaXQKPj4K
Pj4+IGRpc2FwcGVhcnMgdXBvbiByZWJvb3QuwqDCoCBJdCBpcyBlcGhlbWVyYWwgY29uZmlndXJh
dGlvbiB3aGljaCBpcyBkaWZmZXJlbnQKPj4KPj4+IHRoYW4gbm9ybWFsIGNvbmZpZ3VyYXRpb24g
LSBzaW5jZSBpdCBkaXNhcHBlYXJzIHVwb24gcmVib290IHdoZXJlCj4+Cj4+PiBub3JtYWwgY29u
ZmlndXJhdGlvbiBkb2VzIG5vdC4KPj4KPj4+Cj4+Cj4+PiBJcyB0aGlzIGRpYWdyYW0gY2xvc2Ug
dG8geW91ciBleGlzdGluZyBtb2RlbCB3aGVyZSBvcHN0YXRlIGFuZAo+Pgo+Pj4gZXBoZW1lcmFs
IGNvbmZpZ3VyYXRpb24gYXJlIHBhcmFsbGVsPwo+Pgo+Pj4KPj4KPj4+ICstLS0tLS0tLS0tLS0t
LS0tLS0tLSvCoMKgwqAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwo+Pgo+Pj4gfMKgwqDC
oCBvcHN0YXRlwqDCoMKgwqDCoMKgwqDCoCB8wqDCoMKgIHwgZXBoZW1lcmFsIGNvbmZpZ8KgIHwK
Pj4KPj4+ICstLS0tLS0tLS0tLS0tLS0tLS0tLSvCoMKgwqAgKy0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tKwo+Pgo+Pj4KPj4KPj4KPj4KPj4gSSBzZWUgdHdvIGJveGVzLCBJIGFtIHVuc3VyZSB3
aGF0IHlvdSB0aGluayB0aGVzZSBib3hlcyBkcmF3biB0aGlzIHdheSBtZWFuLgo+PiBXaGF0IGlz
ICd0aGlzIGRlZmluaXRpb24nIGluIHlvdXIgZmlyc3Qgc2VudGVuY2U/IEkgcmVhbGx5IGhhdmUg
cHJvYmxlbXMgdG8KPj4gZm9sbG93IHdoYXQgaXMgZ29pbmcgb24uCj4+Cj4+Cj4+Cj4+IC9qcwo+
Pgo+Pgo+Pgo+PiAtLQo+Pgo+PiBKdWVyZ2VuIFNjaG9lbndhZWxkZXLCoMKgwqDCoMKgwqDCoMKg
wqDCoCBKYWNvYnMgVW5pdmVyc2l0eSBCcmVtZW4gZ0dtYkgKPj4KPj4gUGhvbmU6ICs0OSA0MjEg
MjAwIDM1ODfCoMKgwqDCoMKgwqDCoMKgIENhbXB1cyBSaW5nIDEgfCAyODc1OSBCcmVtZW4gfCBH
ZXJtYW55Cj4+Cj4+IEZheDrCoMKgICs0OSA0MjEgMjAwIDMxMDPCoMKgwqDCoMKgwqDCoMKgIDwg
PGh0dHA6Ly93d3cuamFjb2JzLXVuaXZlcnNpdHkuZGUvPgo+PiBodHRwOi8vd3d3LmphY29icy11
bml2ZXJzaXR5LmRlLz4KPj4KPj4KPj4KPj4gX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX18KPj4KPj4gaTJycyBtYWlsaW5nIGxpc3QKPj4KPj7CoCA8bWFpbHRv
OmkycnNAaWV0Zi5vcmc+IGkycnNAaWV0Zi5vcmcKPj4KPj7CoCA8aHR0cHM6Ly93d3cuaWV0Zi5v
cmcvbWFpbG1hbi9saXN0aW5mby9pMnJzPgo+PiBodHRwczovL3d3dy5pZXRmLm9yZy9tYWlsbWFu
L2xpc3RpbmZvL2kycnMKPj4KPgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX18KaTJycyBtYWlsaW5nIGxpc3QKaTJyc0BpZXRmLm9yZwpodHRwczovL3d3dy5p
ZXRmLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2kycnMK

----_com.samsung.android.email_5843721283488610
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: base64

PGh0bWw+PGhlYWQ+PG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0
L2h0bWw7IGNoYXJzZXQ9VVRGLTgiPjwvaGVhZD48Ym9keT48ZGl2PkpvZWw8L2Rpdj48ZGl2Pjxi
cj48L2Rpdj48ZGl2PkkgYWdyZWUgd2l0aCB5b3UuICZuYnNwO015IGZpcnN0IHF1ZXN0aW9uIHRv
IEp1ZXJnZW4gd2FzIHRyeWluZyB0byBwb2tlIGluIHRoYXQgZGlyZWN0aW9uIHRvIGV4cGxvcmUg
aGlzIG1vZGVsIGJhc2VkIG9uIHRoYXQgY29uY2VwdC4mbmJzcDs8L2Rpdj48ZGl2Pjxicj48L2Rp
dj48ZGl2PlVuZm9ydHVuYXRlbHksIGhlIHJlcXVpcmVkIEkgZGVmaW5lZCB3aGF0IEkgbWVhbnQg
VHVlc2RheS9XZWRuZXNkYXkgYnkgZXBoZW1lcmFsIG9wc3RhdGUuPC9kaXY+PGRpdj48YnI+PC9k
aXY+PGRpdj5JIGFtIGF0IGEgbWVldGluZyBzbyBteSBlbWFpbCBpcyBidXN5PC9kaXY+PGRpdj48
YnI+PC9kaXY+PGRpdj5TdWU8L2Rpdj48ZGl2Pjxicj48L2Rpdj48ZGl2Pjxicj48L2Rpdj48ZGl2
Pjxicj48L2Rpdj48ZGl2IGlkPSJjb21wb3Nlcl9zaWduYXR1cmUiPjxkaXYgc3R5bGU9ImZvbnQt
c2l6ZTo4NSU7Y29sb3I6IzU3NTc1NyI+U2VudCB2aWEgdGhlIFNhbXN1bmcgR2FsYXh5IE5vdGU1
LCBhbiBBVCZhbXA7VCA0RyBMVEUgc21hcnRwaG9uZTwvZGl2PjwvZGl2PjxkaXYgc3R5bGU9ImZv
bnQtc2l6ZToxMDAlO2NvbG9yOiMwMDAwMDAiPjwhLS0gb3JpZ2luYWxNZXNzYWdlIC0tPjxkaXY+
LS0tLS0tLS0gT3JpZ2luYWwgbWVzc2FnZSAtLS0tLS0tLTwvZGl2PjxkaXY+RnJvbTogIkpvZWwg
TS4gSGFscGVybiIgJmx0O2ptaEBqb2VsaGFscGVybi5jb20mZ3Q7IDwvZGl2PjxkaXY+RGF0ZTog
Ni8yLzIwMTYgIDExOjE0IEFNICAoR01ULTA1OjAwKSA8L2Rpdj48ZGl2PlRvOiBKdWVyZ2VuIFNj
aG9lbndhZWxkZXIgJmx0O2ouc2Nob2Vud2FlbGRlckBqYWNvYnMtdW5pdmVyc2l0eS5kZSZndDss
IGkycnNAaWV0Zi5vcmcsICdCZW5vaXQgQ2xhaXNlJyAmbHQ7YmNsYWlzZUBjaXNjby5jb20mZ3Q7
IDwvZGl2PjxkaXY+U3ViamVjdDogUmU6IFtpMnJzXSBJMlJTIEludGVyaW0gTWVldGluZyAtIEp1
bmUgMSwKICAyMDE2IC0gMTA6MDBhbSAtIDExOjAwYW0gLT8gVG9waWM6IEVwaGVtZXJhbCBTdGF0
ZSBSZXF1aXJlbWVudHMgPC9kaXY+PGRpdj48YnI+PC9kaXY+PC9kaXY+IEZyb20gd2hlcmUgSSBz
aXQsIHRoZXJlIGlzIG5vIHN1Y2ggdGhpbmcgYXMgImVwaGVtZXJhbCBvcGVyYXRpb25hbCA8YnI+
c3RhdGUiLiZuYnNwOyBUaGVyZSBpcyAib3BlcmF0aW9uYWwgc3RhdGUiIHRoYXQgcmVmbGVjdHMg
dGhlIGVmZmVjdCBvZiA8YnI+ImVwaGVtZXJhbCBjb25maWd1cmF0aW9uIiwgYnV0IGFzIGZhciBh
cyBJIGNhbiB0ZWxsLCBpdCBpcyBzdGlsbCBqdXN0IDxicj4ib3BlcmF0aW9uYWwgc3RhdGUiLjxi
cj48YnI+UHV0dGluZyBhc2lkZSB0aGUgb3BlcmF0aW9uYWwgc3RhdGUgYXNwZWN0cywgd2UgZG8g
bmVlZCB0byB3b3JrIG91dCB0aGUgPGJyPmRpYWdyYW1taW5nIC8gcG9zaXRpb25pbmcgb2YgdGhl
IGVwaGVtZXJhbCBjb25maWd1cmF0aW9uIGFuZCBpdHMgPGJyPnJlbGF0aW9uc2hpcCB0byB0aGUg
b3RoZXIgY29tcG9uZW50cyBpbiB0aGUgYmFzZSBkaWFncmFtLjxicj48YnI+WW91cnMsPGJyPkpv
ZWw8YnI+PGJyPk9uIDYvMi8xNiA3OjUwIEFNLCBKdWVyZ2VuIFNjaG9lbndhZWxkZXIgd3JvdGU6
PGJyPiZndDsgSSBtaWdodCBiZSBhYmxlIHRvIGFuc3dlciB0aGUgcGljdHVyZSBxdWVzdGlvbiBv
bmNlIEkga25vdyB3aGF0IGlzPGJyPiZndDsgcmVhbGx5IG1lYW50IGJ5ICdlcGhlbWVyYWwgb3Bl
cmF0aW9uYWwgc3RhdGUnLjxicj4mZ3Q7PGJyPiZndDsgL2pzPGJyPiZndDs8YnI+Jmd0OyBPbiBU
aHUsIEp1biAwMiwgMjAxNiBhdCAwNzoxNTozNEFNIC0wNDAwLCBTdXNhbiBIYXJlcyB3cm90ZTo8
YnI+Jmd0OyZndDsgSnVlcmdlbjo8YnI+Jmd0OyZndDs8YnI+Jmd0OyZndDs8YnI+Jmd0OyZndDs8
YnI+Jmd0OyZndDsgT24gZmlyc3Qgc2VudGVuY2UsIC4uLiByZXN0YXRlZDxicj4mZ3Q7Jmd0Ozxi
cj4mZ3Q7Jmd0OyBEbyB5b3UgYmVsaWV2ZSB0aGUgImVwaGVtZXJhbCBvcGVyYXRpb25hbCBzdGF0
ZSIgYmVsb25ncyBpbiB0aGUgZXBoZW1lcmFsPGJyPiZndDsmZ3Q7IHJlcXVpcmVtZW50cz8gSWYg
c28sIHdlIGNhbiBhZGQgaXQuJm5ic3A7IFBlcmhhcHMgd2Ugc2hvdWxkIGFsc28gYWRkIGEgZGVm
aW5pdGlvbjxicj4mZ3Q7Jmd0OyBmb3IgZXBoZW1lcmFsIGNvbmZpZ3VyYXRpb24uPGJyPiZndDsm
Z3Q7PGJyPiZndDsmZ3Q7PGJyPiZndDsmZ3Q7PGJyPiZndDsmZ3Q7IE9uIHBpY3R1cmUgLS0gaGVy
ZSBpcyB5b3VyIHBpY3R1cmU6PGJyPiZndDsmZ3Q7PGJyPiZndDsmZ3Q7PGJyPiZndDsmZ3Q7PGJy
PiZndDsmZ3Q7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICstLS0tLS0tLS0tLS0tKyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyArLS0tLS0tLS0tLS0rPGJyPiZndDsmZ3Q7
PGJyPiZndDsmZ3Q7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHwgJmx0O2NhbmRpZGF0ZSZndDsgfCZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB8ICZsdDtzdGFydHVwJmd0
OyB8PGJyPiZndDsmZ3Q7PGJyPiZndDsmZ3Q7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHwmbmJzcDsgKGN0
LCBydykmbmJzcDsmbmJzcDsgfCZsdDstLS0rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7ICstLS0mZ3Q7fCAoY3QsIHJ3KSZuYnNwOyB8PGJyPiZndDsmZ3Q7PGJyPiZn
dDsmZ3Q7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICstLS0tLS0tLS0tLS0tKyZuYnNwOyZuYnNwOyZuYnNw
OyB8Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHwmbmJzcDsmbmJz
cDsmbmJzcDsgKy0tLS0tLS0tLS0tKzxicj4mZ3Q7Jmd0Ozxicj4mZ3Q7Jmd0OyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB8Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHwm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgfCZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB8PGJyPiZndDsm
Z3Q7PGJyPiZndDsmZ3Q7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7IHwmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsgKy0tLS0tLS0tLS0tLSsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsgfDxicj4mZ3Q7Jmd0Ozxicj4mZ3Q7Jmd0OyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyArLS0tLS0tLS0m
Z3Q7fCAmbHQ7cnVubmluZyZndDsmbmJzcDsgfCZsdDstLS0tLS0tLSs8YnI+Jmd0OyZndDs8YnI+
Jmd0OyZndDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsgfCAoY3QsIHJ3KSZuYnNwOyZuYnNwOyB8PGJyPiZndDsmZ3Q7PGJyPiZn
dDsmZ3Q7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7ICstLS0tLS0tLS0tLS0rPGJyPiZndDsmZ3Q7PGJyPiZndDsmZ3Q7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHwmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgLy8gZS5nLiwgcmVtb3ZhbCBvZiAnaW5hY3Rp
dmUnIG5vZGVzPGJyPiZndDsmZ3Q7PGJyPiZndDsmZ3Q7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7IHY8YnI+Jmd0OyZndDs8YnI+Jmd0OyZndDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgKy0tLS0t
LS0tLS0tLSs8YnI+Jmd0OyZndDs8YnI+Jmd0OyZndDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgfCAmbHQ7aW50ZW5kZWQmZ3Q7
IHwmbmJzcDsgLy8gc3ViamVjdCB0byB2YWxpZGF0aW9uPGJyPiZndDsmZ3Q7PGJyPiZndDsmZ3Q7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7IHwgKGN0LCBybykmbmJzcDsmbmJzcDsgfDxicj4mZ3Q7Jmd0Ozxicj4mZ3Q7Jmd0OyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyArLS0tLS0tLS0tLS0tKzxicj4mZ3Q7Jmd0Ozxicj4mZ3Q7Jmd0OyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB8Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IC8vIGUuZy4sIG1pc3NpbmcgcmVzb3VyY2VzIG9yIGRlbGF5
czxicj4mZ3Q7Jmd0Ozxicj4mZ3Q7Jmd0OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyB2PGJyPiZndDsmZ3Q7PGJyPiZndDsmZ3Q7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICstLS0tLS0tLS0tLS0r
PGJyPiZndDsmZ3Q7PGJyPiZndDsmZ3Q7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHwgJmx0O2FwcGxpZWQmZ3Q7Jm5ic3A7IHw8
YnI+Jmd0OyZndDs8YnI+Jmd0OyZndDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgfCAoY3QsIHJvKSZuYnNwOyZuYnNwOyB8PGJy
PiZndDsmZ3Q7PGJyPiZndDsmZ3Q7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICstLS0tLS0tLS0tLS0rPGJyPiZndDsmZ3Q7PGJy
PiZndDsmZ3Q7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHwmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgLy8gZS5nLiwgYXV0
b2Rpc2NvdmVyeSBvZiB2YWx1ZXM8YnI+Jmd0OyZndDs8YnI+Jmd0OyZndDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgdjxicj4mZ3Q7Jmd0Ozxicj4mZ3Q7Jmd0OyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rPGJyPiZndDsmZ3Q7PGJyPiZndDsm
Z3Q7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7IHwgJmx0O29wZXJhdGlvbmFsLXN0YXRlJmd0OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB8Jmx0Oy0tIGNvbnRy
b2wgcGxhbmUgYW5kPGJyPiZndDsmZ3Q7PGJyPiZndDsmZ3Q7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHwgKGN0ICsgY2YsIHJvKSZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB8Jm5ic3A7Jm5ic3A7
Jm5ic3A7IGVwaGVtZXJhbCBkYXRhc3RvcmVzPGJyPiZndDsmZ3Q7PGJyPiZndDsmZ3Q7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICst
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSs8YnI+Jmd0OyZndDs8YnI+Jmd0OyZndDs8
YnI+Jmd0OyZndDs8YnI+Jmd0OyZndDsgSXMgdGhpcyBwYXJ0IG9mIHRoZSBwaWN0dXJlPGJyPiZn
dDsmZ3Q7PGJyPiZndDsmZ3Q7PGJyPiZndDsmZ3Q7PGJyPiZndDsmZ3Q7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICstLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLSs8YnI+Jmd0OyZndDs8YnI+Jmd0OyZndDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgfCAmbHQ7
b3BlcmF0aW9uYWwtc3RhdGUmZ3Q7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHwmbHQ7LS0gY29udHJvbCBwbGFuZSBhbmQ8
YnI+Jmd0OyZndDs8YnI+Jmd0OyZndDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgfCAoY3QgKyBjZiwgcm8pJm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHwmbmJzcDsmbmJzcDsmbmJzcDsgZXBoZW1l
cmFsIGRhdGFzdG9yZXM8YnI+Jmd0OyZndDs8YnI+Jmd0OyZndDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgKy0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tKzxicj4mZ3Q7Jmd0Ozxicj4mZ3Q7Jmd0Ozxicj4mZ3Q7Jmd0Ozxi
cj4mZ3Q7Jmd0OyBSZWFsbHk8YnI+Jmd0OyZndDs8YnI+Jmd0OyZndDsmbmJzcDsmbmJzcDsgKy0t
LS0tLS0tLS0tLS0tLS0tLS0tKyZuYnNwOyZuYnNwOyZuYnNwOyArLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0rPGJyPiZndDsmZ3Q7ICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSs8YnI+Jmd0OyZn
dDs8YnI+Jmd0OyZndDsmbmJzcDsgfCZuYnNwOyZuYnNwOyZuYnNwOyBvcHN0YXRlJm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHwmbmJzcDsmbmJzcDsmbmJz
cDsgfCBlcGhlbWVyYWwgY29uZmlnJm5ic3A7IHwmbmJzcDsmbmJzcDsgfCBhcHBsaWVkJm5ic3A7
IGNvbmZpZyZuYnNwOyZuYnNwOyZuYnNwOyB8PGJyPiZndDsmZ3Q7PGJyPiZndDsmZ3Q7Jm5ic3A7
IHwgKGNmLCBybykmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgfCZuYnNwOyZuYnNwOyZuYnNw
OyB8Jm5ic3A7Jm5ic3A7IChjdCwgcm8sIGVwaGVtZXJhbHwmbmJzcDsgfCAoY3QsIHJvKTxicj4m
Z3Q7Jmd0OyB8PGJyPiZndDsmZ3Q7PGJyPiZndDsmZ3Q7Jm5ic3A7ICstLS0tLS0tLS0tLS0tLS0t
LS0tLSsmbmJzcDsmbmJzcDsmbmJzcDsgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSs8YnI+
Jmd0OyZndDsgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rPGJyPiZndDsmZ3Q7PGJyPiZndDsm
Z3Q7PGJyPiZndDsmZ3Q7PGJyPiZndDsmZ3Q7IE9yIGp1c3Q8YnI+Jmd0OyZndDs8YnI+Jmd0OyZn
dDsmbmJzcDsmbmJzcDsgKy0tLS0tLS0tLS0tLS0tLS0tLS0tKyZuYnNwOyZuYnNwOyZuYnNwOyAr
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rPGJyPiZndDsmZ3Q7PGJyPiZndDsmZ3Q7Jm5ic3A7
Jm5ic3A7IHwmbmJzcDsmbmJzcDsmbmJzcDsgb3BzdGF0ZSZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB8Jm5ic3A7Jm5ic3A7Jm5ic3A7IHwgZXBoZW1lcmFs
IGNvbmZpZyZuYnNwOyB8PGJyPiZndDsmZ3Q7PGJyPiZndDsmZ3Q7Jm5ic3A7Jm5ic3A7IHwgKGNm
LCBybykmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgfCZuYnNwOyZuYnNwOyZuYnNwOyB8Jm5i
c3A7Jm5ic3A7IChjdCwgcm8sIGVwaGVtZXJhbDxicj4mZ3Q7Jmd0Ozxicj4mZ3Q7Jmd0OyZuYnNw
OyZuYnNwOyArLS0tLS0tLS0tLS0tLS0tLS0tLS0rJm5ic3A7Jm5ic3A7Jm5ic3A7ICstLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0rPGJyPiZndDsmZ3Q7PGJyPiZndDsmZ3Q7PGJyPiZndDsmZ3Q7
PGJyPiZndDsmZ3Q7PGJyPiZndDsmZ3Q7PGJyPiZndDsmZ3Q7IFN1ZTxicj4mZ3Q7Jmd0Ozxicj4m
Z3Q7Jmd0Ozxicj4mZ3Q7Jmd0Ozxicj4mZ3Q7Jmd0OyAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0t
LTxicj4mZ3Q7Jmd0OyBGcm9tOiBpMnJzIFttYWlsdG86aTJycy1ib3VuY2VzQGlldGYub3JnXSBP
biBCZWhhbGYgT2YgSnVlcmdlbiBTY2hvZW53YWVsZGVyPGJyPiZndDsmZ3Q7IFNlbnQ6IFRodXJz
ZGF5LCBKdW5lIDAyLCAyMDE2IDc6MDUgQU08YnI+Jmd0OyZndDsgVG86IFN1c2FuIEhhcmVzPGJy
PiZndDsmZ3Q7IENjOiAnSmVmZnJleSBIYWFzJzsgaTJyc0BpZXRmLm9yZzsgJ0Jlbm9pdCBDbGFp
c2UnOyAnQWxpYSBBdGxhcyc8YnI+Jmd0OyZndDsgU3ViamVjdDogUmU6IFtpMnJzXSBJMlJTIElu
dGVyaW0gTWVldGluZyAtIEp1bmUgMSwgMjAxNiAtIDEwOjAwYW0gLSAxMTowMGFtPGJyPiZndDsm
Z3Q7IC0/IFRvcGljOiBFcGhlbWVyYWwgU3RhdGUgUmVxdWlyZW1lbnRzPGJyPiZndDsmZ3Q7PGJy
PiZndDsmZ3Q7PGJyPiZndDsmZ3Q7PGJyPiZndDsmZ3Q7IE9uIFRodSwgSnVuIDAyLCAyMDE2IGF0
IDA2OjUzOjQyQU0gLTA0MDAsIFN1c2FuIEhhcmVzIHdyb3RlOjxicj4mZ3Q7Jmd0Ozxicj4mZ3Q7
Jmd0OyZndDsgSnVlcmdlbjo8YnI+Jmd0OyZndDs8YnI+Jmd0OyZndDsmZ3Q7PGJyPiZndDsmZ3Q7
PGJyPiZndDsmZ3Q7Jmd0OyBEbyB5b3UgdGhpbmsgdGhpcyBkZWZpbml0aW9uIGJlbG9uZ3MgaW4g
dGhlIGVwaGVtZXJhbCByZXF1aXJlbWVudHM/Jm5ic3A7IElmPGJyPiZndDsmZ3Q7IHNvLDxicj4m
Z3Q7Jmd0Ozxicj4mZ3Q7Jmd0OyZndDsgd2UgY2FuIGFkZCBpdC4mbmJzcDsmbmJzcDsgQnV0IHBl
cmhhcHMgd2Ugc2hvdWxkIGRlZmluZSBib3RoIGVwaGVtZXJhbCBjb25maWd1cmF0aW9uPGJyPiZn
dDsmZ3Q7PGJyPiZndDsmZ3Q7Jmd0OyBhbmQgZXBoZW1lcmFsIG9wZXJhdGlvbmFsIHN0YXRlLiZu
YnNwOyBKb2VsIHBvaW50IG91dCBhdCB0aGUgSTJSUyBpbnRlcmltPGJyPiZndDsmZ3Q7PGJyPiZn
dDsmZ3Q7Jmd0OyB0aGF0IGVwaGVtZXJhbCBvcGVyYXRpb25hbCBzdGF0ZSBpcyBqdXN0IGxpa2Ug
YWxsIG90aGVyIG9wZXJhdGlvbmFsIHN0YXRlPGJyPiZndDsmZ3Q7IC0gaXQ8YnI+Jmd0OyZndDs8
YnI+Jmd0OyZndDsmZ3Q7IGRpc2FwcGVhcnMgdXBvbiByZWJvb3QuJm5ic3A7Jm5ic3A7IEl0IGlz
IGVwaGVtZXJhbCBjb25maWd1cmF0aW9uIHdoaWNoIGlzIGRpZmZlcmVudDxicj4mZ3Q7Jmd0Ozxi
cj4mZ3Q7Jmd0OyZndDsgdGhhbiBub3JtYWwgY29uZmlndXJhdGlvbiAtIHNpbmNlIGl0IGRpc2Fw
cGVhcnMgdXBvbiByZWJvb3Qgd2hlcmU8YnI+Jmd0OyZndDs8YnI+Jmd0OyZndDsmZ3Q7IG5vcm1h
bCBjb25maWd1cmF0aW9uIGRvZXMgbm90Ljxicj4mZ3Q7Jmd0Ozxicj4mZ3Q7Jmd0OyZndDs8YnI+
Jmd0OyZndDs8YnI+Jmd0OyZndDsmZ3Q7IElzIHRoaXMgZGlhZ3JhbSBjbG9zZSB0byB5b3VyIGV4
aXN0aW5nIG1vZGVsIHdoZXJlIG9wc3RhdGUgYW5kPGJyPiZndDsmZ3Q7PGJyPiZndDsmZ3Q7Jmd0
OyBlcGhlbWVyYWwgY29uZmlndXJhdGlvbiBhcmUgcGFyYWxsZWw/PGJyPiZndDsmZ3Q7PGJyPiZn
dDsmZ3Q7Jmd0Ozxicj4mZ3Q7Jmd0Ozxicj4mZ3Q7Jmd0OyZndDsgKy0tLS0tLS0tLS0tLS0tLS0t
LS0tKyZuYnNwOyZuYnNwOyZuYnNwOyArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rPGJyPiZn
dDsmZ3Q7PGJyPiZndDsmZ3Q7Jmd0OyB8Jm5ic3A7Jm5ic3A7Jm5ic3A7IG9wc3RhdGUmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgfCZuYnNwOyZuYnNwOyZu
YnNwOyB8IGVwaGVtZXJhbCBjb25maWcmbmJzcDsgfDxicj4mZ3Q7Jmd0Ozxicj4mZ3Q7Jmd0OyZn
dDsgKy0tLS0tLS0tLS0tLS0tLS0tLS0tKyZuYnNwOyZuYnNwOyZuYnNwOyArLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0rPGJyPiZndDsmZ3Q7PGJyPiZndDsmZ3Q7Jmd0Ozxicj4mZ3Q7Jmd0Ozxi
cj4mZ3Q7Jmd0Ozxicj4mZ3Q7Jmd0Ozxicj4mZ3Q7Jmd0OyBJIHNlZSB0d28gYm94ZXMsIEkgYW0g
dW5zdXJlIHdoYXQgeW91IHRoaW5rIHRoZXNlIGJveGVzIGRyYXduIHRoaXMgd2F5IG1lYW4uPGJy
PiZndDsmZ3Q7IFdoYXQgaXMgJ3RoaXMgZGVmaW5pdGlvbicgaW4geW91ciBmaXJzdCBzZW50ZW5j
ZT8gSSByZWFsbHkgaGF2ZSBwcm9ibGVtcyB0bzxicj4mZ3Q7Jmd0OyBmb2xsb3cgd2hhdCBpcyBn
b2luZyBvbi48YnI+Jmd0OyZndDs8YnI+Jmd0OyZndDs8YnI+Jmd0OyZndDs8YnI+Jmd0OyZndDsg
L2pzPGJyPiZndDsmZ3Q7PGJyPiZndDsmZ3Q7PGJyPiZndDsmZ3Q7PGJyPiZndDsmZ3Q7IC0tPGJy
PiZndDsmZ3Q7PGJyPiZndDsmZ3Q7IEp1ZXJnZW4gU2Nob2Vud2FlbGRlciZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBKYWNvYnMgVW5p
dmVyc2l0eSBCcmVtZW4gZ0dtYkg8YnI+Jmd0OyZndDs8YnI+Jmd0OyZndDsgUGhvbmU6ICs0OSA0
MjEgMjAwIDM1ODcmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsgQ2FtcHVzIFJpbmcgMSB8IDI4NzU5IEJyZW1lbiB8IEdlcm1hbnk8YnI+Jmd0OyZndDs8YnI+
Jmd0OyZndDsgRmF4OiZuYnNwOyZuYnNwOyArNDkgNDIxIDIwMCAzMTAzJm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICZsdDsgJmx0O2h0dHA6Ly93d3cuamFj
b2JzLXVuaXZlcnNpdHkuZGUvJmd0Ozxicj4mZ3Q7Jmd0OyBodHRwOi8vd3d3LmphY29icy11bml2
ZXJzaXR5LmRlLyZndDs8YnI+Jmd0OyZndDs8YnI+Jmd0OyZndDs8YnI+Jmd0OyZndDs8YnI+Jmd0
OyZndDsgX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX188YnI+
Jmd0OyZndDs8YnI+Jmd0OyZndDsgaTJycyBtYWlsaW5nIGxpc3Q8YnI+Jmd0OyZndDs8YnI+Jmd0
OyZndDsmbmJzcDsgJmx0O21haWx0bzppMnJzQGlldGYub3JnJmd0OyBpMnJzQGlldGYub3JnPGJy
PiZndDsmZ3Q7PGJyPiZndDsmZ3Q7Jm5ic3A7ICZsdDtodHRwczovL3d3dy5pZXRmLm9yZy9tYWls
bWFuL2xpc3RpbmZvL2kycnMmZ3Q7PGJyPiZndDsmZ3Q7IGh0dHBzOi8vd3d3LmlldGYub3JnL21h
aWxtYW4vbGlzdGluZm8vaTJyczxicj4mZ3Q7Jmd0Ozxicj4mZ3Q7PGJyPjxicj5fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXzxicj5pMnJzIG1haWxpbmcgbGlz
dDxicj5pMnJzQGlldGYub3JnPGJyPmh0dHBzOi8vd3d3LmlldGYub3JnL21haWxtYW4vbGlzdGlu
Zm8vaTJyczxicj48L2JvZHk+PC9odG1sPg==

----_com.samsung.android.email_5843721283488610--


From nobody Thu Jun  2 10:54:12 2016
Return-Path: <shares@ndzh.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 D1DF312D7AB for <i2rs@ietfa.amsl.com>; Thu,  2 Jun 2016 10:54:11 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.106
X-Spam-Level: 
X-Spam-Status: No, score=-1.106 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RDNS_NONE=0.793] autolearn=no autolearn_force=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 eLdp_-wEGpNx for <i2rs@ietfa.amsl.com>; Thu,  2 Jun 2016 10:54:10 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 802EE12D78C for <i2rs@ietf.org>; Thu,  2 Jun 2016 10:54:04 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=107.92.120.142; 
Date: Thu, 02 Jun 2016 13:53:52 -0400
Message-ID: <nlb3hwhi3p3b47uo5avmuakf.1464890032278@email.android.com>
Importance: normal
From: Susan Hares <shares@ndzh.com>
To: Russ White <7riw77@gmail.com>, 'Andy Bierman' <andy@yumaworks.com>, "'Joel M. Halpern'" <jmh@joelhalpern.com>
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="--_com.samsung.android.email_5875594413950470"
X-Authenticated-User: skh@ndzh.com 
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/CBhtgfjB6gzztucgr9XrCt35uCU>
Cc: i2rs@ietf.org
Subject: Re: [i2rs] draft-ietf-i2rs-ephemeral-state-07.txt - per-node transport security
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 02 Jun 2016 17:54:12 -0000

----_com.samsung.android.email_5875594413950470
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: base64

SSBoYXZlIGJlZW4gY29udmluY2UgYnkgeW91LCBKb2VsIGFuZCBKZWZmLiDCoFdvdWxkIHlvdSBy
ZXZpZXcgdGhlIHByb3RvY29sIHNlY3VyaXR5IGRyYWZ0IHRvIHNlZSBpZiB0aGUgcmVxdWlyZW1l
bnRzIHRoZXJlIGFsc28gZG8gbm90IHJlcXVpcmUgZW5jcnlwdGlvbiB0byBiZSBzcGVjaWZpZWQg
YnkgdGhlIGRhdGEgbW9kZWwuClN1ZQoKClNlbnQgdmlhIHRoZSBTYW1zdW5nIEdhbGF4eSBOb3Rl
NSwgYW4gQVQmVCA0RyBMVEUgc21hcnRwaG9uZS0tLS0tLS0tIE9yaWdpbmFsIG1lc3NhZ2UgLS0t
LS0tLS1Gcm9tOiBSdXNzIFdoaXRlIDw3cml3NzdAZ21haWwuY29tPiBEYXRlOiA2LzIvMjAxNiAg
ODo1MSBBTSAgKEdNVC0wNTowMCkgVG86ICdBbmR5IEJpZXJtYW4nIDxhbmR5QHl1bWF3b3Jrcy5j
b20+LCAiJ0pvZWwgTS4gSGFscGVybiciIDxqbWhAam9lbGhhbHBlcm4uY29tPiBDYzogaTJyc0Bp
ZXRmLm9yZywgJ1N1c2FuIEhhcmVzJyA8c2hhcmVzQG5kemguY29tPiBTdWJqZWN0OiBSRTogW2ky
cnNdIGRyYWZ0LWlldGYtaTJycy1lcGhlbWVyYWwtc3RhdGUtMDcudHh0IC0gcGVyLW5vZGUgdHJh
bnNwb3J0IHNlY3VyaXR5IAoKPiBJIHRoaW5rIEkgYWdyZWUgd2l0aCB5b3UuCgpJIHdvdWxkIGFn
cmVlLCBhcyB3ZWxsIC0tIGluZGljYXRpbmcgc2VjdXJlL2luc2VjdXJlIHRyYW5zcG9ydCBzaG91
bGRuJ3QgYmUgcGFydCBvZiB0aGUgZGF0YSBtb2RlbC4gSW5zdGVhZCwgaXQgc2hvdWxkIGJlIGF2
YWlsYWJsZSwgYnV0IG9wdGlvbmFsLCBiYXNlZCBvbiBvcGVyYXRpb25hbCBuZWVkcy4gTm90IGV2
ZXJ5b25lIGlzIGdvaW5nIHRvIGFncmVlIG9uIHdoYXQgdG8gZW5jcnlwdCBvciBub3QgLS0gc29t
ZSBwcm92aWRlcnMgYXJlIGRldGVybWluZWQgdG8gZW5jcnlwdCBldmVyeXRoaW5nLCB3aGlsZSBz
bWFsbGVyIGV4cGVyaW1lbnRhbCB1c2FnZSBmb3IgZGV2ZWxvcG1lbnQsIHRlc3RpbmcsIGFuZCBs
ZWFybmluZywgd291bGQgYmUgc2V2ZXJlbHkgaGFuZGljYXBwZWQgYnkgcmVxdWlyaW5nIGVuY3J5
cHRpb24gaW4gc29tZSBzaXR1YXRpb25zLgoKOi0pCgpSdXNzIAoKCg==

----_com.samsung.android.email_5875594413950470
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: base64

PGh0bWw+PGhlYWQ+PG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0
L2h0bWw7IGNoYXJzZXQ9VVRGLTgiPjwvaGVhZD48Ym9keT48ZGl2PkkgaGF2ZSBiZWVuIGNvbnZp
bmNlIGJ5IHlvdSwgSm9lbCBhbmQgSmVmZi4gJm5ic3A7V291bGQgeW91IHJldmlldyB0aGUgcHJv
dG9jb2wgc2VjdXJpdHkgZHJhZnQgdG8gc2VlIGlmIHRoZSByZXF1aXJlbWVudHMgdGhlcmUgYWxz
byBkbyBub3QgcmVxdWlyZSBlbmNyeXB0aW9uIHRvIGJlIHNwZWNpZmllZCBieSB0aGUgZGF0YSBt
b2RlbC48L2Rpdj48ZGl2Pjxicj48L2Rpdj48ZGl2PlN1ZTwvZGl2PjxkaXY+PGJyPjwvZGl2Pjxk
aXY+PGJyPjwvZGl2PjxkaXY+PGJyPjwvZGl2PjxkaXYgaWQ9ImNvbXBvc2VyX3NpZ25hdHVyZSI+
PGRpdiBzdHlsZT0iZm9udC1zaXplOjg1JTtjb2xvcjojNTc1NzU3Ij5TZW50IHZpYSB0aGUgU2Ft
c3VuZyBHYWxheHkgTm90ZTUsIGFuIEFUJmFtcDtUIDRHIExURSBzbWFydHBob25lPC9kaXY+PC9k
aXY+PGRpdiBzdHlsZT0iZm9udC1zaXplOjEwMCU7Y29sb3I6IzAwMDAwMCI+PCEtLSBvcmlnaW5h
bE1lc3NhZ2UgLS0+PGRpdj4tLS0tLS0tLSBPcmlnaW5hbCBtZXNzYWdlIC0tLS0tLS0tPC9kaXY+
PGRpdj5Gcm9tOiBSdXNzIFdoaXRlICZsdDs3cml3NzdAZ21haWwuY29tJmd0OyA8L2Rpdj48ZGl2
PkRhdGU6IDYvMi8yMDE2ICA4OjUxIEFNICAoR01ULTA1OjAwKSA8L2Rpdj48ZGl2PlRvOiAnQW5k
eSBCaWVybWFuJyAmbHQ7YW5keUB5dW1hd29ya3MuY29tJmd0OywgIidKb2VsIE0uIEhhbHBlcm4n
IiAmbHQ7am1oQGpvZWxoYWxwZXJuLmNvbSZndDsgPC9kaXY+PGRpdj5DYzogaTJyc0BpZXRmLm9y
ZywgJ1N1c2FuIEhhcmVzJyAmbHQ7c2hhcmVzQG5kemguY29tJmd0OyA8L2Rpdj48ZGl2PlN1Ympl
Y3Q6IFJFOiBbaTJyc10gZHJhZnQtaWV0Zi1pMnJzLWVwaGVtZXJhbC1zdGF0ZS0wNy50eHQgLSBw
ZXItbm9kZSB0cmFuc3BvcnQgc2VjdXJpdHkgPC9kaXY+PGRpdj48YnI+PC9kaXY+PC9kaXY+PGJy
PiZndDsgSSB0aGluayBJIGFncmVlIHdpdGggeW91Ljxicj48YnI+SSB3b3VsZCBhZ3JlZSwgYXMg
d2VsbCAtLSBpbmRpY2F0aW5nIHNlY3VyZS9pbnNlY3VyZSB0cmFuc3BvcnQgc2hvdWxkbid0IGJl
IHBhcnQgb2YgdGhlIGRhdGEgbW9kZWwuIEluc3RlYWQsIGl0IHNob3VsZCBiZSBhdmFpbGFibGUs
IGJ1dCBvcHRpb25hbCwgYmFzZWQgb24gb3BlcmF0aW9uYWwgbmVlZHMuIE5vdCBldmVyeW9uZSBp
cyBnb2luZyB0byBhZ3JlZSBvbiB3aGF0IHRvIGVuY3J5cHQgb3Igbm90IC0tIHNvbWUgcHJvdmlk
ZXJzIGFyZSBkZXRlcm1pbmVkIHRvIGVuY3J5cHQgZXZlcnl0aGluZywgd2hpbGUgc21hbGxlciBl
eHBlcmltZW50YWwgdXNhZ2UgZm9yIGRldmVsb3BtZW50LCB0ZXN0aW5nLCBhbmQgbGVhcm5pbmcs
IHdvdWxkIGJlIHNldmVyZWx5IGhhbmRpY2FwcGVkIGJ5IHJlcXVpcmluZyBlbmNyeXB0aW9uIGlu
IHNvbWUgc2l0dWF0aW9ucy48YnI+PGJyPjotKTxicj48YnI+UnVzcyA8YnI+PGJyPjxicj48L2Jv
ZHk+PC9odG1sPg==

----_com.samsung.android.email_5875594413950470--


From nobody Thu Jun  2 13:50:03 2016
Return-Path: <akatlas@gmail.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 959B712D86F for <i2rs@ietfa.amsl.com>; Thu,  2 Jun 2016 13:50:02 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -102.699
X-Spam-Level: 
X-Spam-Status: No, score=-102.699 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001, USER_IN_WHITELIST=-100] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
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 L4oQwriWRlyx for <i2rs@ietfa.amsl.com>; Thu,  2 Jun 2016 13:50:01 -0700 (PDT)
Received: from mail-yw0-x22e.google.com (mail-yw0-x22e.google.com [IPv6:2607:f8b0:4002:c05::22e]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 6A6BE12D860 for <i2rs@ietf.org>; Thu,  2 Jun 2016 13:49:56 -0700 (PDT)
Received: by mail-yw0-x22e.google.com with SMTP id c127so61976115ywb.1 for <i2rs@ietf.org>; Thu, 02 Jun 2016 13:49:56 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;  h=mime-version:date:message-id:subject:from:to; bh=Q5CEmd2Nt3S8VhWUpZE/3skj39NMrsueNGD7ayx59WQ=; b=VnXMboPkTeUyCoQkS/AHJlWOAfjvWTT32TMS8jlaQRwTO/7KKIbc70HbMapLl2r4Je m92dnBBSzW2GTiqmKaAcMPH1jyrIthn3CVryq1IFBd5q46erdYSLyB8PbynelTkk08SM YSIbA64QAfkhJ0PVhEoZgzFT73naDHB9Pl6arS1S5wTmmdFLdGFZ7bCFy+733acYae/v +JO4GiF/M+FGR2EnYGRsTFGP8nNoO1QdDb2SaJEt8vKNHxZDu+52DA5qa737kOPokPee TMJYRchpjpsDLvAwquHIU06f0Tym06jO/643vFnjv8DvnEBJTyXDXRKheii/ISMH7vuf nHXw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:date:message-id:subject:from:to; bh=Q5CEmd2Nt3S8VhWUpZE/3skj39NMrsueNGD7ayx59WQ=; b=dd1cr7ycwvOHs/MVAan7LTqcRZpdAPbcgKFCv6K+pAcKCBsSlZZdQSq7vGGWdyvSG2 O1g/mRsKlIEwHk7qT2ly3aFCuP/zaLSibCBa/EVFp/RteeF8cdlyuzh26NOT6KOdzOxh WV0DrWy/mQt+h9pS5QkWU0vUperjQY/CpSxHNwij6L/hmA7vKUjuMZT/kU+Kwz3/hVGS ts8UlgWjeQ/Wgniwx5mkOzVT90GxTYqE9gOpfFVjp03rRGhO1Sz+ll0/iyLExfDAHFVY K+zK53V4IeWssdo8nHcFCGM9CE8VlLS8Gabf9UgOX20cL19LwrOTDHLbG8jSl+Z5/fvy cyXA==
X-Gm-Message-State: ALyK8tLt+U4x2uzLDYch8OEy85n2cwfzxj3lQoT7qZNzmVs0XhAyClV2pp+z8nzzA4QMDFgHdE6/giI6kopsug==
MIME-Version: 1.0
X-Received: by 10.37.198.68 with SMTP id k65mr102061ybf.134.1464900595759; Thu, 02 Jun 2016 13:49:55 -0700 (PDT)
Received: by 10.13.221.74 with HTTP; Thu, 2 Jun 2016 13:49:55 -0700 (PDT)
Date: Thu, 2 Jun 2016 16:49:55 -0400
Message-ID: <CAG4d1rf+EH2EtweMfqQNjCyKKYk7YvEXMf0_CmeLFak5mW4q1Q@mail.gmail.com>
From: Alia Atlas <akatlas@gmail.com>
To: "i2rs@ietf.org" <i2rs@ietf.org>
Content-Type: multipart/alternative; boundary=94eb2c08c8b2a44bfb053451bf21
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/n6Wv_1ArkMaovtpS7eSzWa1ZMtM>
Subject: [i2rs] new I2RS chair: Russ White replacing Jeff Haas
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 02 Jun 2016 20:50:02 -0000

--94eb2c08c8b2a44bfb053451bf21
Content-Type: text/plain; charset=UTF-8

I would like to announce that Russ White is replacing Jeff Haas
as I2RS Chair.  I would like to thank Jeff for his efforts over the
years in helping I2RS progress.

Regards,
Alia

--94eb2c08c8b2a44bfb053451bf21
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">I would like to announce that Russ White is replacing Jeff=
 Haas<div>as I2RS Chair.=C2=A0 I would like to thank Jeff for his efforts o=
ver the</div><div>years in helping I2RS progress.</div><div><br></div><div>=
Regards,</div><div>Alia</div></div>

--94eb2c08c8b2a44bfb053451bf21--


From nobody Thu Jun  2 13:56:31 2016
Return-Path: <shares@ndzh.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 4DB9612D50C for <i2rs@ietfa.amsl.com>; Thu,  2 Jun 2016 13:56:30 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.739
X-Spam-Level: *
X-Spam-Status: No, score=1.739 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, HTML_MESSAGE=0.001, RDNS_NONE=0.793] autolearn=no autolearn_force=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 LDFOWgLAtuwj for <i2rs@ietfa.amsl.com>; Thu,  2 Jun 2016 13:56:28 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 9358412B02F for <i2rs@ietf.org>; Thu,  2 Jun 2016 13:56:28 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=74.43.47.63; 
From: "Susan Hares" <shares@ndzh.com>
To: "'Alia Atlas'" <akatlas@gmail.com>, <i2rs@ietf.org>
References: <CAG4d1rf+EH2EtweMfqQNjCyKKYk7YvEXMf0_CmeLFak5mW4q1Q@mail.gmail.com>
In-Reply-To: <CAG4d1rf+EH2EtweMfqQNjCyKKYk7YvEXMf0_CmeLFak5mW4q1Q@mail.gmail.com>
Date: Thu, 2 Jun 2016 16:56:24 -0400
Message-ID: <003c01d1bd11$3aa30170$afe90450$@ndzh.com>
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="----=_NextPart_000_003D_01D1BCEF.B392E810"
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQI9yJK319dlmGFLYtujqOA0MSM1zp7+kPvA
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/hzJevfxZDrkpJgHLaQc343Olh4Q>
Subject: Re: [i2rs] new I2RS chair: Russ White replacing Jeff Haas
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 02 Jun 2016 20:56:30 -0000

This is a multipart message in MIME format.

------=_NextPart_000_003D_01D1BCEF.B392E810
Content-Type: text/plain;
	charset="utf-8"
Content-Transfer-Encoding: quoted-printable

+1 =E2=80=93 Jeff Haas has been insightful and brought the I2RS group a =
long way toward the goal of I2RS protocol requirements/protocol, and =
I2RS ephemeral models.=20

=20

Thanks Jeff!

=20

Sue=20

=20

From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Alia Atlas
Sent: Thursday, June 02, 2016 4:50 PM
To: i2rs@ietf.org
Subject: [i2rs] new I2RS chair: Russ White replacing Jeff Haas

=20

I would like to announce that Russ White is replacing Jeff Haas

as I2RS Chair.  I would like to thank Jeff for his efforts over the

years in helping I2RS progress.

=20

Regards,

Alia


------=_NextPart_000_003D_01D1BCEF.B392E810
Content-Type: text/html;
	charset="utf-8"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" =
xmlns:o=3D"urn:schemas-microsoft-com:office:office" =
xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" =
xmlns=3D"http://www.w3.org/TR/REC-html40"><head><meta =
http-equiv=3DContent-Type content=3D"text/html; charset=3Dutf-8"><meta =
name=3DGenerator content=3D"Microsoft Word 14 (filtered =
medium)"><style><!--
/* Font Definitions */
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
	{font-family:Tahoma;
	panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0in;
	margin-bottom:.0001pt;
	font-size:12.0pt;
	font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:blue;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:purple;
	text-decoration:underline;}
span.EmailStyle17
	{mso-style-type:personal-reply;
	font-family:"Calibri","sans-serif";
	color:#1F497D;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-family:"Calibri","sans-serif";}
@page WordSection1
	{size:8.5in 11.0in;
	margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
	{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]--></head><body lang=3DEN-US link=3Dblue =
vlink=3Dpurple><div class=3DWordSection1><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>+1 =E2=80=93 Jeff Haas has been insightful and brought the I2RS group =
a long way toward the goal of I2RS protocol requirements/protocol, and =
I2RS ephemeral models. <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Thanks Jeff!<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Sue <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><b><span =
style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span>=
</b><span style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif"'> =
i2rs [mailto:i2rs-bounces@ietf.org] <b>On Behalf Of </b>Alia =
Atlas<br><b>Sent:</b> Thursday, June 02, 2016 4:50 PM<br><b>To:</b> =
i2rs@ietf.org<br><b>Subject:</b> [i2rs] new I2RS chair: Russ White =
replacing Jeff Haas<o:p></o:p></span></p><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p><div><p class=3DMsoNormal>I would =
like to announce that Russ White is replacing Jeff =
Haas<o:p></o:p></p><div><p class=3DMsoNormal>as I2RS Chair.&nbsp; I =
would like to thank Jeff for his efforts over =
the<o:p></o:p></p></div><div><p class=3DMsoNormal>years in helping I2RS =
progress.<o:p></o:p></p></div><div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div><div><p =
class=3DMsoNormal>Regards,<o:p></o:p></p></div><div><p =
class=3DMsoNormal>Alia<o:p></o:p></p></div></div></div></body></html>
------=_NextPart_000_003D_01D1BCEF.B392E810--


From nobody Thu Jun  2 14:10:59 2016
Return-Path: <jhaas@pfrc.org>
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 36CFC12D88F for <i2rs@ietfa.amsl.com>; Thu,  2 Jun 2016 14:10:56 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.327
X-Spam-Level: 
X-Spam-Status: No, score=-3.327 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RP_MATCHES_RCVD=-1.426, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=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 7RwmI6j3ZgOQ for <i2rs@ietfa.amsl.com>; Thu,  2 Jun 2016 14:10:54 -0700 (PDT)
Received: from slice.pfrc.org (slice.pfrc.org [67.207.130.108]) by ietfa.amsl.com (Postfix) with ESMTP id 0C29312D82F for <i2rs@ietf.org>; Thu,  2 Jun 2016 14:10:54 -0700 (PDT)
Received: from dresden.attlocal.net (99-59-193-67.lightspeed.livnmi.sbcglobal.net [99.59.193.67]) by slice.pfrc.org (Postfix) with ESMTPSA id C73431E1CC; Thu,  2 Jun 2016 17:16:28 -0400 (EDT)
Mime-Version: 1.0 (Mac OS X Mail 8.2 \(2104\))
Content-Type: multipart/alternative; boundary="Apple-Mail=_68BCCC3A-83CC-4D8E-A235-116817D539EC"
From: Jeffrey Haas <jhaas@pfrc.org>
In-Reply-To: <003c01d1bd11$3aa30170$afe90450$@ndzh.com>
Date: Thu, 2 Jun 2016 17:10:51 -0400
Message-Id: <E2285DA0-8D0C-44AD-BC39-9C585135CD39@pfrc.org>
References: <CAG4d1rf+EH2EtweMfqQNjCyKKYk7YvEXMf0_CmeLFak5mW4q1Q@mail.gmail.com> <003c01d1bd11$3aa30170$afe90450$@ndzh.com>
To: Sue Hares <shares@ndzh.com>
X-Mailer: Apple Mail (2.2104)
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/g3fGvV97IM47G6gWAOUZxm0sZ2k>
Cc: i2rs@ietf.org, Alia Atlas <akatlas@gmail.com>
Subject: Re: [i2rs] new I2RS chair: Russ White replacing Jeff Haas
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 02 Jun 2016 21:10:56 -0000

--Apple-Mail=_68BCCC3A-83CC-4D8E-A235-116817D539EC
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=utf-8

Thanks!  It's been a pleasure to serve.=20

While day-job pressures are having me step back from quite as much IETF =
for a while, that won't last forever. :-)

-- Jeff

> On Jun 2, 2016, at 4:56 PM, Susan Hares <shares@ndzh.com> wrote:
>=20
> +1 =E2=80=93 Jeff Haas has been insightful and brought the I2RS group =
a long way toward the goal of I2RS protocol requirements/protocol, and =
I2RS ephemeral models.=20
> =20
> Thanks Jeff!
> =20
> Sue=20
> =20
> From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Alia Atlas
> Sent: Thursday, June 02, 2016 4:50 PM
> To: i2rs@ietf.org
> Subject: [i2rs] new I2RS chair: Russ White replacing Jeff Haas
> =20
> I would like to announce that Russ White is replacing Jeff Haas
> as I2RS Chair.  I would like to thank Jeff for his efforts over the
> years in helping I2RS progress.
> =20
> Regards,
> Alia
> _______________________________________________
> i2rs mailing list
> i2rs@ietf.org
> https://www.ietf.org/mailman/listinfo/i2rs


--Apple-Mail=_68BCCC3A-83CC-4D8E-A235-116817D539EC
Content-Transfer-Encoding: quoted-printable
Content-Type: text/html;
	charset=utf-8

<html><head><meta http-equiv=3D"Content-Type" content=3D"text/html =
charset=3Dutf-8"></head><body style=3D"word-wrap: break-word; =
-webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" =
class=3D"">Thanks! &nbsp;It's been a pleasure to serve.&nbsp;<div =
class=3D""><br class=3D""></div><div class=3D"">While day-job pressures =
are having me step back from quite as much IETF for a while, that won't =
last forever. :-)</div><div class=3D""><br class=3D""></div><div =
class=3D"">-- Jeff</div><div class=3D""><br class=3D""><div><blockquote =
type=3D"cite" class=3D""><div class=3D"">On Jun 2, 2016, at 4:56 PM, =
Susan Hares &lt;<a href=3D"mailto:shares@ndzh.com" =
class=3D"">shares@ndzh.com</a>&gt; wrote:</div><br =
class=3D"Apple-interchange-newline"><div class=3D""><div =
class=3D"WordSection1" style=3D"page: WordSection1; font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant: normal; =
font-weight: normal; letter-spacing: normal; line-height: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px;"><div style=3D"margin: 0in 0in 0.0001pt; =
font-size: 12pt; font-family: 'Times New Roman', serif;" class=3D""><span =
style=3D"font-size: 11pt; font-family: Calibri, sans-serif; color: =
rgb(31, 73, 125);" class=3D"">+1 =E2=80=93 Jeff Haas has been insightful =
and brought the I2RS group a long way toward the goal of I2RS protocol =
requirements/protocol, and I2RS ephemeral models.<span =
class=3D"Apple-converted-space">&nbsp;</span><o:p =
class=3D""></o:p></span></div><div style=3D"margin: 0in 0in 0.0001pt; =
font-size: 12pt; font-family: 'Times New Roman', serif;" class=3D""><span =
style=3D"font-size: 11pt; font-family: Calibri, sans-serif; color: =
rgb(31, 73, 125);" class=3D"">&nbsp;</span></div><div style=3D"margin: =
0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', =
serif;" class=3D""><span style=3D"font-size: 11pt; font-family: Calibri, =
sans-serif; color: rgb(31, 73, 125);" class=3D"">Thanks Jeff!<o:p =
class=3D""></o:p></span></div><div style=3D"margin: 0in 0in 0.0001pt; =
font-size: 12pt; font-family: 'Times New Roman', serif;" class=3D""><span =
style=3D"font-size: 11pt; font-family: Calibri, sans-serif; color: =
rgb(31, 73, 125);" class=3D"">&nbsp;</span></div><div style=3D"margin: =
0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', =
serif;" class=3D""><span style=3D"font-size: 11pt; font-family: Calibri, =
sans-serif; color: rgb(31, 73, 125);" class=3D"">Sue<span =
class=3D"Apple-converted-space">&nbsp;</span><o:p =
class=3D""></o:p></span></div><div style=3D"margin: 0in 0in 0.0001pt; =
font-size: 12pt; font-family: 'Times New Roman', serif;" class=3D""><span =
style=3D"font-size: 11pt; font-family: Calibri, sans-serif; color: =
rgb(31, 73, 125);" class=3D"">&nbsp;</span></div><div style=3D"margin: =
0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', =
serif;" class=3D""><b class=3D""><span style=3D"font-size: 10pt; =
font-family: Tahoma, sans-serif;" class=3D"">From:</span></b><span =
style=3D"font-size: 10pt; font-family: Tahoma, sans-serif;" =
class=3D""><span class=3D"Apple-converted-space">&nbsp;</span>i2rs [<a =
href=3D"mailto:i2rs-bounces@ietf.org" =
class=3D"">mailto:i2rs-bounces@ietf.org</a>]<span =
class=3D"Apple-converted-space">&nbsp;</span><b class=3D"">On Behalf =
Of<span class=3D"Apple-converted-space">&nbsp;</span></b>Alia Atlas<br =
class=3D""><b class=3D"">Sent:</b><span =
class=3D"Apple-converted-space">&nbsp;</span>Thursday, June 02, 2016 =
4:50 PM<br class=3D""><b class=3D"">To:</b><span =
class=3D"Apple-converted-space">&nbsp;</span><a =
href=3D"mailto:i2rs@ietf.org" class=3D"">i2rs@ietf.org</a><br =
class=3D""><b class=3D"">Subject:</b><span =
class=3D"Apple-converted-space">&nbsp;</span>[i2rs] new I2RS chair: Russ =
White replacing Jeff Haas<o:p class=3D""></o:p></span></div><div =
style=3D"margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times =
New Roman', serif;" class=3D""><o:p class=3D"">&nbsp;</o:p></div><div =
class=3D""><div style=3D"margin: 0in 0in 0.0001pt; font-size: 12pt; =
font-family: 'Times New Roman', serif;" class=3D"">I would like to =
announce that Russ White is replacing Jeff Haas<o:p =
class=3D""></o:p></div><div class=3D""><div style=3D"margin: 0in 0in =
0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;" =
class=3D"">as I2RS Chair.&nbsp; I would like to thank Jeff for his =
efforts over the<o:p class=3D""></o:p></div></div><div class=3D""><div =
style=3D"margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times =
New Roman', serif;" class=3D"">years in helping I2RS progress.<o:p =
class=3D""></o:p></div></div><div class=3D""><div style=3D"margin: 0in =
0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;" =
class=3D""><o:p class=3D"">&nbsp;</o:p></div></div><div class=3D""><div =
style=3D"margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times =
New Roman', serif;" class=3D"">Regards,<o:p =
class=3D""></o:p></div></div><div class=3D""><div style=3D"margin: 0in =
0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;" =
class=3D"">Alia<o:p class=3D""></o:p></div></div></div></div><span =
style=3D"font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant: normal; font-weight: normal; letter-spacing: normal; =
line-height: normal; orphans: auto; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; widows: auto; word-spacing: =
0px; -webkit-text-stroke-width: 0px; float: none; display: inline =
!important;" =
class=3D"">_______________________________________________</span><br =
style=3D"font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant: normal; font-weight: normal; letter-spacing: normal; =
line-height: normal; orphans: auto; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; widows: auto; word-spacing: =
0px; -webkit-text-stroke-width: 0px;" class=3D""><span =
style=3D"font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant: normal; font-weight: normal; letter-spacing: normal; =
line-height: normal; orphans: auto; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; widows: auto; word-spacing: =
0px; -webkit-text-stroke-width: 0px; float: none; display: inline =
!important;" class=3D"">i2rs mailing list</span><br style=3D"font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant: normal; =
font-weight: normal; letter-spacing: normal; line-height: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px;" class=3D""><span style=3D"font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant: normal; =
font-weight: normal; letter-spacing: normal; line-height: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; float: none; display: inline =
!important;" class=3D""><a href=3D"mailto:i2rs@ietf.org" =
class=3D"">i2rs@ietf.org</a></span><br style=3D"font-family: Helvetica; =
font-size: 12px; font-style: normal; font-variant: normal; font-weight: =
normal; letter-spacing: normal; line-height: normal; orphans: auto; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: =
0px;" class=3D""><span style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant: normal; font-weight: normal; =
letter-spacing: normal; line-height: normal; orphans: auto; text-align: =
start; text-indent: 0px; text-transform: none; white-space: normal; =
widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; float: =
none; display: inline !important;" class=3D""><a =
href=3D"https://www.ietf.org/mailman/listinfo/i2rs" =
class=3D"">https://www.ietf.org/mailman/listinfo/i2rs</a></span></div></bl=
ockquote></div><br class=3D""></div></body></html>=

--Apple-Mail=_68BCCC3A-83CC-4D8E-A235-116817D539EC--


From nobody Fri Jun  3 15:13:16 2016
Return-Path: <jgs@juniper.net>
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 5354E12D871; Fri,  3 Jun 2016 15:13:11 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.903
X-Spam-Level: 
X-Spam-Status: No, score=-1.903 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=junipernetworks.onmicrosoft.com
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 pmvU3zKfjg04; Fri,  3 Jun 2016 15:13:05 -0700 (PDT)
Received: from na01-by2-obe.outbound.protection.outlook.com (mail-by2on0144.outbound.protection.outlook.com [207.46.100.144]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 211B012D9B5; Fri,  3 Jun 2016 15:13:05 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=junipernetworks.onmicrosoft.com; s=selector1-juniper-net; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=ryybbwTVkPPT9Ok7v0HdB5I1U8v2yQXlAbXu1GO7dYc=; b=PI81GVYBJupI1F9FA0oW46vYRT0ZEwdSuy21qIzmoWMOrQEd51szclogaGMbd93zdF2ih6e+MyYwyVpKb/FldqhQ0uRcOd9qYuoS6QMp0vIXlls8UGrKLst848oKqVAhcxBzJ47NztgUNIOkmJRoqiHuvlkjoRAt0eUd5XGTq6w=
Authentication-Results: ietf.org; dkim=none (message not signed) header.d=none;ietf.org; dmarc=none action=none header.from=juniper.net;
Received: from rcaceres-sslvpn-nc.jnpr.net (66.129.241.11) by CY1PR05MB2730.namprd05.prod.outlook.com (10.167.18.12) with Microsoft SMTP Server (TLS) id 15.1.511.8; Fri, 3 Jun 2016 22:13:00 +0000
From: John G.Scudder <jgs@juniper.net>
Content-Type: multipart/mixed; boundary="Apple-Mail=_AFF5F2DF-B671-42BD-885B-3FAB9441256F"
Date: Fri, 3 Jun 2016 18:12:51 -0400
Message-ID: <F9C09DAA-6540-4E0D-8A7C-63FB58B54B73@juniper.net>
To: <i2rs-chairs@ietf.org>, <draft-ietf-i2rs-rib-data-model@ietf.org>
MIME-Version: 1.0 (Mac OS X Mail 9.3 \(3124\))
X-Mailer: Apple Mail (2.3124)
X-Originating-IP: [66.129.241.11]
X-ClientProxiedBy: BY2PR02CA0116.namprd02.prod.outlook.com (10.163.44.170) To CY1PR05MB2730.namprd05.prod.outlook.com (10.167.18.12)
X-MS-Office365-Filtering-Correlation-Id: cfa4823b-929a-4c32-0e42-08d38bfc3b16
X-Microsoft-Exchange-Diagnostics: 1; CY1PR05MB2730; 2:fiPHeqKFFrXk9fky7zp0YSgfjAcwlvWIeaR734Q2wT6Iglk4FV2LUtz/DjWL7vb0nGwB0QjVWqjnjrqKm3uxZRS7oqFM+a/LQX+ysLyGwMjjXQildNqWTH9eG3A3rS5Noqo41J6U2wOnfMrmFE4hR0O/iKm19eejOv8Pu3CqSS7RVqbcQpcgReN9usmUNKOv; 3:M5+D92xUo/8JwJZnaUKSkm0hC5OXSBmNQ5vJRe63ia/iWMWkkEOzYQ2t2JaCYeDF9wJ2TH9kIxj1gtn/9JYHMxbigKB9WjfCaLvzfRaFEM5+OPVqNRZDsnIeZFw10idF
X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:CY1PR05MB2730;
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; CY1PR05MB2730; 25:Aw8saI3ClVyGSiUXaX67T8dicXbsGEW7DNVg8/xk5?= =?us-ascii?Q?KhyQfpswtWGIMc1EVQf8Vc7iTK3U/A59IV24fMbVx10R3j7DyY5JsGqdZseD?= =?us-ascii?Q?vdAQ2XHMl9GL7MZ9XNmWScbwxmhXtLIghCZMY3f1St4PRJxA/6Kd2WoQu+EK?= =?us-ascii?Q?CDQdrn9mYAsj1hOgFl+LluFWhcT51UmoXzsjJIY/GILkFAKzeRFQEod7i0Qj?= =?us-ascii?Q?zzwSnUeQnQ1Uzkl6HH9sl5cMcYmdthdKk7PJT+31QOjyxPXJ5XVWjKdOoFJi?= =?us-ascii?Q?RLRo3e45Z2IcrEZcj1F4F8TgjOJ0DRcvj9bp2pLRNAhNc1Ybg4upxKN49dps?= =?us-ascii?Q?rMXRx5lMmyZ3RAvl1QFiyMOo90ViMe+gi6ygVvDt+diMECnwt7nbID6+We7Z?= =?us-ascii?Q?G8Ez0GVx6Il0Gay7fJW3dA0l1AM0UfnlkUOYf6+RU+QCLHPBEY2MntAH3Lqb?= =?us-ascii?Q?MHU7JcVs7is/WSWgvHbmKMXhKJqWragT43fljpMsLBqfbJqz0TO4hZ4xpVv3?= =?us-ascii?Q?b0JcNBvRtqQBtUReF/8AWVNHEdvI24qz01yul3fPLS1cny8N9uEGXOLjAe7W?= =?us-ascii?Q?sgsw4dHHUJeoxVq5xOGDhK6E7FPY9yR9rU3Ro3Js4wTSk0kw0C7oNfcYP5LD?= =?us-ascii?Q?ygQIvuxpoKrF7qR5GBl6hZmAMhSwEcp0UFsa2+t7O7P0mE/aQ3gA+IwFxEti?= =?us-ascii?Q?aW7yUzOt/nY3sdZAIFnsSRoQnmOCyi9O3z+CEgQhimE82kc0eOtbpm1OUOHK?= =?us-ascii?Q?jW2Pv5ewf6yWDfbhQ1T7rULc31W2fTbnhUFaYM9sleYTzXizPMERPGJ5btVs?= =?us-ascii?Q?wFTm656TaxQJvjpTmnLlb+hxegbNjeKJb3XygPJE5CtfxSoaY8hUIQvUoZgJ?= =?us-ascii?Q?jbZyU/7M4rNOA/ozEDSMXCaZ5mvGHPC2GsryEd6tKlG3fCkx4IcjECQ1SbeD?= =?us-ascii?Q?6Llm7t1iMl7/dzgxGE63IkOguMucU36IFVT/QYztwT66l7gXBLZCH+fNGY4B?= =?us-ascii?Q?4c=3D?=
X-Microsoft-Exchange-Diagnostics: 1; CY1PR05MB2730; 20:PspjX0Ai62GtrCjziAKDGWUOfd/nPJ4Dmd6b4Ww7lsjBuuZs341DrtDfisjh/Z4fNqBA+BZPJ0N5EFbbG3m6DdaMfjnsym3MB8hpZaPFmLKcylaVAYmtPfb0k/s/hZaAkJDSWqUJoM6D4HSpkQkhHBiSv/JAJWEIzRTo6DfjZSRX3cvu+kBuVKWQ62EZ0njWc59MNfBPArNBCawydEWjgj96UB/8kDqT1e/3pQk9EQILzWHq0zRtdAY8F6xd6+aCxJQ0uE/4CVz+wzlPc6/k1A71DvCnaRZ1fp61LqA7yHwFn/ABDwND2WVAweTS10OvJUZKTHCVS99T3Z+F7pp5ngq0fljYDhlNSLO5ZOn6+VJ/y4XdjELVoHwZWPkrhjKG9aKBDWufaw8EOE4wGBqtF7azIBa5aTRGkcibTpsF6LWoLYC6iGIJRyfY0jWkUkgaNzLlrzo2bQMpITGcPRoDEQOYHGsZwgIOZ8ylORBdYuhsk2dPsGm02Q9KSiX2zxIq
X-Microsoft-Antispam-PRVS: <CY1PR05MB2730DADEB3BDE06CE8E8A499AA590@CY1PR05MB2730.namprd05.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(192374486261705)(788757137089);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(102415321)(601004)(2401047)(8121501046)(5005006)(10201501046)(3002001)(6055026); SRVR:CY1PR05MB2730; BCL:0; PCL:0; RULEID:; SRVR:CY1PR05MB2730; 
X-Microsoft-Exchange-Diagnostics: 1; CY1PR05MB2730; 4:gtvA1x1RMRNf4pzgNEno25eOZclZDr8uPf13Wr1E5RcKdLuubGaoUeDOLKq7fNqmYDtO4FNYV1EZ68ZeMtKSnltd+AjKxwyomSnFi5NLoyxEDnZB2F5cjNEUiHukjZefzgvCHM0JLkgSzZEiCrO3qrxstHywHpOyzzvHxZdZybgYh01yH3RnqdCO+Wf3vJqDYBgLi5MDKy1IhqVTTR0n28CzU/gQ/1WVXZRY5kt29Za9iY1xNvG5rU4JODqt3+95rI8Bwrw3TkJ39ldE0/WKv5LnqnYJ59yJ8kwc0IOtaR7KZehN00zea8/DJJ24atbDvfa1Vr0ZW8ERfK9w5DCuNV8O1RfjDz1UouSZI+FpisUOm3ro7JgCAETp6I0autjjiV0aTYmOy9rqtRbSQry+0EWziS3QE+T05VJ+WTqAXEnFB1e5ZEX3gtG0O5fNo6uIU8U/lQvTcqIDjYJn2Twb8kmgw0z75KqgiRDg1QolMdw=
X-Forefront-PRVS: 0962D394D2
X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10019020)(4630300001)(6009001)(50986999)(450100001)(8676002)(5001770100001)(57306001)(4326007)(2906002)(5890100001)(5008740100001)(36756003)(21490400002)(15975445007)(230783001)(50226002)(77096005)(66066001)(86362001)(189998001)(42186005)(512874002)(84326002)(6116002)(21480400002)(586003)(4610100001)(82746002)(2476003)(92566002)(270700001)(3846002)(568964002)(229853001)(5004730100002)(53416004)(83716003)(81166006)(33656002)(4810100001)(19580395003)(42262002); DIR:OUT; SFP:1102; SCL:1; SRVR:CY1PR05MB2730; H:rcaceres-sslvpn-nc.jnpr.net; FPR:; SPF:None; MLV:sfv; LANG:en; 
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; CY1PR05MB2730; 23:C0CalBz86rc66jU7Xi+DNuapZCBo4n48sVJcUYxXd?= =?us-ascii?Q?ZI72wiPnfQAQDUyeb8SFKOVh6onGpBXoCpnBtar068YdW4KgsL57tHWoP+iu?= =?us-ascii?Q?Hs1d0G9LZ/j3RUD2ZkLzF6YX4YYJP0zhIz10fDGRukKqckSd7V0u/cvqoTak?= =?us-ascii?Q?LSifyAFWWLZ9M0QJhEqzK6IIxw5uAF3D+8ds92mb7L7rfT+oVwAwjgSKgup7?= =?us-ascii?Q?tE5frwoGiF9yYNifw1jFl+BNWRJo9y3q7SW/3pAYbHBSTYgsnBWak/uaifaU?= =?us-ascii?Q?bmIGvx9V1Lfj+ZEOBopJhneCfg81HScL27/F80ZWm4nBQjPIqGQknGgCzGim?= =?us-ascii?Q?L3SdVZeCbI9hbYTliALIatebUCMEzgSSRAD61ELz4ofraCqgIzzeuwAbb4Qw?= =?us-ascii?Q?Sp+06DU2x24ZluRERsAbaPQxBicxLRUZyZgQz2Vc1RS5DkMQzW6zOZkyruJv?= =?us-ascii?Q?panRyrkWwnXGadwHZjEs9icqTa1l9CNK00mO5b1o4pR/+VqXa6fNC7GzfNYz?= =?us-ascii?Q?TUc6iqWrMNNdbxoiFcAK1s/Q8Oz/Bk4HTVapQu8/8kkSp6eeI50dfXTnZXOG?= =?us-ascii?Q?OXDnWwuULcwtOLC3cOzCAttU9tWCxP3FS961WJJaoUC82olnBJiTQ4dTajct?= =?us-ascii?Q?w7O93AfGZHtzjCcIWY9Kn9TvGDmWy8iubtare0XhHyOB6uCj4thAtMHlKGrx?= =?us-ascii?Q?qGH7GYknd9yxVHseEFHi6JGKzuvaTDGFsdVjTUqkrkfxe73nXOB051XD3v2m?= =?us-ascii?Q?nJCrfBqhsoAo14XIVb8CCss+JQVBBVOsts4EGxTnsxzexACDdxTaOpj48BIP?= =?us-ascii?Q?KBK7YoVE7AQx0Fdxrz0Pfib1dLUNKMOJHyIqkkC882VRJ4a6FvtHYa0x7Szw?= =?us-ascii?Q?kz/lU+e8BrhGfuNyTVeMXQxPZalPemtbb+tHeeXpkEvmNhtC31LCUxq26TmF?= =?us-ascii?Q?AW9n6sMDpj8SSKSAk9NlyZg+0ijy3cSghBMLNZEsIt7xM7jO5heD5G5LiZuO?= =?us-ascii?Q?RwkNfFVuNS1BsBnKtHW6u+WuF+r+ZSIiO0LuhammsfVjIzKbgh7MHQUbM6Kd?= =?us-ascii?Q?b7GsMrCJurIeaRtS1rptr7FAXsfW1S3p7AeRIouIUXEOJYCLoyJdgsxKJZyu?= =?us-ascii?Q?dI6EXaK++/FxNqH7u0okSsUQV/7sc1J?=
X-Microsoft-Exchange-Diagnostics: 1; CY1PR05MB2730; 5:/mqeXbcBFDGS6zMixWFtpZulRKNzFI3mExrqINdhYrJ7RP1yDpmL6Pd4e7AFg3FxgOWWGKMcg7Hjbog6Xs7/lI+YNDsJo50r0Z9l8O1xZF7WSTR7/AS++wrMmwktDppVjm/Djs0QQA0c4tS6U8yJYQ==; 24:TrBkPYBLyQ7eDW/ZRTHAtbbB2dp/Z728fU9ICwxBoSzobdZNT8dVhi9XKYCPg/H9Fes8lqmmQiUUs/AgCICPoweFoVGsb8OwTmjs1N2BwYw=; 7:hnnTdgTRG+M5fMFZzE4S99Qwkh2yakArf8xXsVVjmLY85VsFyCrm6kxxsJuHVuzXBKJHwmKNE3SfEwL0pJHsUezzT3kOOTjyFghb7i3PK2ZWi9AIlCWDoBbuX2oo73KUGGdhuRhbUDSXM4xF6kCnv1lvCCg8RdOAlyz0eDUhjmtg2/4U1WAUEuO21xUI3GKjFXuGIbSXROUXLKOALt5cvDF6ZnGN8AD4Cz9bsGIIBgw=
SpamDiagnosticOutput: 1:23
SpamDiagnosticMetadata: NSPM
X-OriginatorOrg: juniper.net
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Jun 2016 22:13:00.5098 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY1PR05MB2730
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/sDkYreoIdZQ2dQO8AmtjPI8KeFo>
Cc: rtg-dir@ietf.org, i2rs@ietf.org
Subject: [i2rs] Routing Directorate QA review of draft-ietf-i2rs-rib-data-model-05
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Fri, 03 Jun 2016 22:13:11 -0000

--Apple-Mail=_AFF5F2DF-B671-42BD-885B-3FAB9441256F
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain; charset="utf-8"

Hello,

I have been selected as the Routing Directorate QA reviewer for this =
draft. My review is below.

Regards,

--John


Document: draft-ietf-i2rs-rib-data-model-05=20
Reviewer: John Scudder=20
Review Date: June 3, 2016=20


Summary:=20

The document is reasonably understandable, although I did find myself =
with a fair number of questions, which I've written below. As noted =
below, many of these questions may only have arisen because I am not =
skilled in the subject area. I did find one major issue, with the =
Security Considerations section, which will certainly need to be =
resolved somehow before the document is progressed.


Comments:

In preparing my review, I reviewed the draft itself, but did not =
carefully read all the references. As a result, it's possible some of my =
observations might be in the rough, when taken in context of the full =
body of work. It's also the case that I am not an experienced Yang =
practitioner, so some practices and idioms that may be well known could =
easily have escaped me, and a similar disclaimer applies.

Finally, I did not review Section 3, YANG Modules, in detail, although I =
made a few suggestions.


Major Issues:

1. There are two problems with the Security Considerations section. The =
first is that the section isn't good (sorry). More on this below. The =
second is that it references the i2rs-architecture document normatively, =
but that document is listed under Informative References. The second =
problem is easily fixed, of course, by simply moving the architecture =
document to Normative References.

 The security section, in its entirety, is:

   This document introduces no extra new security threat and SHOULD
   follow the security requirements as stated in
   [I-D.ietf-i2rs-architecture].

However, if I go look at the architecture document to see what "the =
security requirements" are that I am supposed to follow, I find a fairly =
long Security Considerations section which states nothing that formally =
appears to be a requirement. It also says that instantiations of i2rs =
will provide more detailed analysis of security properties. Since this =
document doesn't do that, there must be some other i2rs document that =
does, right? And this document should reference that one?

It seems perfectly reasonable to state that this document doesn't =
introduce any security considerations of its own, and to reference some =
foundational document. However, the current security section doesn't do =
that effectively, doesn't reference the correct document, and I wouldn't =
expect it to survive a Security Directorate review. Suggesting a rewrite =
is beyond the scope of this QA review, sorry, but one is needed. I don't =
think it necessarily needs to be very long, but it does need to correct =
these issues.


Minor Issues:

1. The author list of six people exceeds the current RFC Editor guidance =
of five or fewer named authors. See RFC 7322:

  The total number of authors or editors on the first page is generally
  limited to five individuals and their affiliations.  If there is a
  request for more than five authors, the stream-approving body needs
  to consider if one or two editors should have primary responsibility
  for this document, with the other individuals listed in the
  Contributors or Acknowledgements section. =20

2. A number of symbols are not defined in Section 1.2, Tree Diagrams. I =
noticed the following as needing to be defined: { } x w n.

3. Possibly this is covered in a companion document or is well-known to =
those better versed in Yang than me, but I found myself wondering what =
the default values for optional items were. In particular, every =
writable boolean is optional. Many have no default value, for example =
sharing-flag has none. But return-failure-detail does have a default of =
false. Is it okay that some of these optional items have no default =
values? Is the expected behavior implementation-specific in that case?

4. "route-statistic" should probably be "route-statistics" (plural). =
Then again, looking at the content of "route-statistic", it's not what I =
would refer to as statistics at all. The content is state (active or =
inactive), installation state (installed, or not) and reason (I guess =
this indicates the reason the route entered its current state, see also =
comment 11 below). None of this seems like statistical data to me. Maybe =
"status"?

5.  The model doesn't seem to capture any restrictions on how nexthops =
can be chained. Presumably there are some restrictions, for example it =
wouldn't seem to make a whole lot of sense to chain egress-interface and =
egress-interface-ipv4-nexthop together, the more so since the respective =
outgoing-interfaces might conflict. Possibly capturing this is outside =
the scope of this document.

6. In various parts of the model, it appears to be possible to reference =
an object either by an opaque identifier or by value. Maybe this is a =
common idiom, but it wasn't obvious to me why this should be, it seems =
redundant. For example, every route has a route-index, but when I want =
to operate on a route with route-update or route-delete, I have to =
identify it by rib name and prefix. The utility of the index, then, is =
not clear to me. Another example is in Section 2.5:

   o  nh-delete: Delete a nexthop from a rib.  A name
      of a rib and a nexthop or nexthop identifier are passed as the
      input parameters.

Again, it's unclear to me why it's desirable to be able to delete the NH =
by either reference or value.

7. It was unclear to me why a reason is required for a route change =
notification, but not for a next hop change notification.

8. This construct appears three times:

       leaf rib-family {
         type rib-family-def;
         mandatory true;
         description
           "A reference to address family of a rib.";
       }

However, in two locations the description is "The address family of a =
rib."  and in the third, the "reference to" language is used. Probably =
this is just a cut and paste error, but because a reference is different =
from the thing itself (presumably a value), maybe the choice of language =
really does indicate some subtle difference? Because I haven't =
exhaustively reviewed Section 3, I think it is likely more such =
inconsistencies exist, and I think it would be good to check for them.

9. "To download N
          nexthops to the FIB, the N nexthops with the lowest
          value are selected."

What if more than N nexthops are tied for having the lowest value? As =
written, this is underspecified.

10.          "Nhop-lb-weight is a number between 1 and 99.";

First, this doesn't use the correct name of the value it is describing. =
Second, it's not an adequate description. (It tells the reader nothing =
helpful.)

11.              "Indicate the route reason."

Again, this doesn't tell the reader anything helpful. Reason for what?



Nits:

I found a number of editorial nits. Rather than enumerating them here, I =
edited my suggested changes into a copy of =
https://www.ietf.org/id/draft-ietf-i2rs-rib-data-model-05.txt.  I have =
provided both that copy, and a diff against the original, in =
attachments. Please review my changes and don't just accept them =
blindly, while I intended that all my changes were strictly editorial =
there's always the chance I altered the meaning unintentionally.

In addition, I noticed some other issues where I'm not sure how they =
should be resolved:

1. The term "RIB" is used inconsistently throughout the document. In =
some places it's capitalized, as "RIB". In others, it's lowercase, as =
"rib", or even mixed-case, "Rib". I didn't change this in my marked up =
copy, for two reasons. First, global search and replace would not be =
straightforward, because the string also occurs where lowercase is =
clearly appropriate, for example "ietf-i2rs-rib" (there are 331 =
occurrences of RIB in any combination of upper and lowercase by my =
count). Second, I didn't completely discount the possibility of the =
authors are deliberately using the lowercase term sometimes. I recommend =
either the term should be uppercase ("RIB") throughout, or if a =
distinction between "RIB" and "rib" is intended, that should be =
explained in the Definitions and Acronyms section.

2. "there should be a limitation on how many levels of lookup can be =
practically performed." I suspect what the authors mean here is "there =
might be a limitation", meaning a practical limitation might exist =
(indeed, probably does exist) in the hardware implementing forwarding. =
I've suggested that change in my marked up copy. However, may be the =
authors really do mean that there needs to be a configurable limitation =
to allow restriction to something less than what the hardware =
implements. The fact that lookup-limit is a rw value  seems to support =
this =E2=80=93 I don't see why that would be a configurable value if it =
represents an expression of what the hardware is capable of. On the =
other hand, the document is silent about what an implementation is =
supposed to do with that value once configured. (Maybe one of the =
companion documents explains?)

3. The rib-list under routing-instance is indexed by a field called =
"name". Under the notification hierarchy the corresponding field is =
called "rib-name".  it works as written, of course, but it caused a =
little dissonance for me. (See #4 below as well.)

4. The name "rib-family" wasn't self-explanatory for me. =
"rib-address-family" would have been. For that matter, why prefix "rib-" =
onto it since you haven't prefixed "rib-" onto the other variables (see =
#3 above as well).

5. Shouldn't there be an ellipsis right below rw-route-vendor-attributes =
in Figure 1?

6. In Section 2.1, capability negotiation is referred to twice, once in =
the first paragraph and once in the last. I think you probably mean =
capability advertisement. The distinction is that in advertisement, an =
entity (the router) is telling another entity what it's capabilities =
are. There is nothing to negotiate about per se, if the other entity =
doesn't like the router's capabilities, it can't very well convince the =
router to change them. I have changed "negotiation" to "advertisement" =
in my marked up copy accordingly, if that's not right you should revert =
it but also clarify.

7. "nexthop-lbs" is a strange choice of name for load-balancing. I would =
suggest either dropping the S and just making it "nexthop-lb", or =
spelling it out in full, "nexthop-load-balance". But something the =
casual reader is likely to see as "next hop pounds" ("lbs" is the common =
abbreviation for the English system unit of weight pounds, of course) =
seems problematic.

8. I couldn't understand this sentence at all:=20

      *  failure-detail: shows the specific failed routes that failure
         reason.

    Since I didn't understand it, I can't suggest a rewrite, sorry. (The =
text recurs three times in section 2.5.)

9. nh-add in Section 2.5 talks about "the network node" doing something:

   o  nh-add: Add a nexthop to a rib.  A name of the
      rib and a nexthop are passed as the input parameters.  The network
      node is required to allocate a nexthop identifier to the nexthop.
      The outputs include the result of the nexthop add operation.

   As far as I can tell, the entire rest of the document talks about =
"the i2rs agent" doing something. Should "network node" the rewritten =
accordingly?

10. Similar to #9, "A RIB data-model MUST support sending 2 kind of =
asynchronous notifications"  Doesn't seem right. Surely the data model =
per se doesn't support sending anything at all, it's the i2rs agent that =
supports it? I've tentatively replaced the text with "An implementation =
of this RIB data model" (cribbed from lower down in the doc).


--Apple-Mail=_AFF5F2DF-B671-42BD-885B-3FAB9441256F
Content-Disposition: attachment;
	filename="draft-ietf-i2rs-rib-data-model-05.diff"
Content-Type: application/octet-stream;
	name="draft-ietf-i2rs-rib-data-model-05.diff"
Content-Transfer-Encoding: 7bit

103c103
<    the routing elements, this is achieved via the protocol message
---
>    the routing elements, this is achieved via protocol message
156c156
<    in the following sub-sections.
---
>    in the subsequent sub-sections.
377c377
<    RIB capability negotiation is very important because not all of the
---
>    RIB capability advertisement is very important because not all of the
379c379
<    should be a limitation on how many levels of lookup can be
---
>    might be a limitation on how many levels of lookup can be
401c401
<    above capability negotiation.
---
>    above capability advertisement.
408,409c408,409
<    multiple different logical slices; across a set of routers; to
<    communicate with each other.  And the routing protocol parameters
---
>    multiple different logical slices, across a set of routers, to
>    communicate with each other.  The routing protocol parameters
414c414
<    For a routing instance, there will be multiple RIBs.  Therefore, this
---
>    For a routing instance, there can be multiple RIBs.  Therefore, this
416c416
<    as following figure.
---
>    below:
458,459c458,459
<    In addition, a route can associate with one or more optional route
<    attributes(e.g., route-vendor-attributes).
---
>    In addition, a route can be associated with one or more optional route
>    attributes (e.g., route-vendor-attributes).
461c461
<    For a RIB, there will have a number of routes, so the routes are
---
>    A RIB will have a number of routes, so the routes are
513,514c513,514
<    support various of use cases (e.g., load balance, protection,
<    multicast or the combination of them), the nexthop is modelled as a
---
>    support various use cases (e.g., load balance, protection,
>    multicast or a combination of them), the nexthop is modeled as a
543c543
<    o  Chain:Provide a way to perform multiple operations on a packet by
---
>    o  Chain: Provide a way to perform multiple operations on a packet by
750,751c750,751
<    o  rib-add: It is defined to add a rib to a routing instance.  A name
<       of the rib, address family of the rib and whether the RPF check is
---
>    o  rib-add: Add a rib to a routing instance.  A name
>       of the rib, address family of the rib and (optionally) whether the RPF check is
760c760
<    o  rib-delete: It is defined to delete a rib from a routing instance.
---
>    o  rib-delete: Delete a rib from a routing instance.
770c770
<    o  route-add: It is defined to add a route or a set of routes to a
---
>    o  route-add: Add a route or a set of routes to a
772c772
<       vendor attributes, nexthop and whether return failure detail are
---
>       vendor attributes, nexthop and whether to return failure detail are
778c778
<       *  success-count: the numbers of routes that are successfully
---
>       *  success-count: the number of routes that were successfully
789c789
<       *  failed-count: the numbers of the routes that are failed to be
---
>       *  failed-count: the number of routes that failed to be
795,796c795,796
<    o  route-delete: It is defined to delete a route or a set of routes
<       from a rib.  A name of the rib, the route prefix(es) and whether
---
>    o  route-delete: Delete a route or a set of routes
>       from a rib.  A name of the rib, the route prefix(es) and whether to
798c798
<       output is combination of the route operation states that include:
---
>       output is a combination of route operation states that include:
800c800
<       *  success-count: the numbers of routes that are successfully
---
>       *  success-count: the number of routes that were successfully
803c803
<       *  failed-count: the numbers of the routes that are failed to be
---
>       *  failed-count: the number of the routes that failed to be
809c809
<    o  route-update: It is defined to update a route or a set of routes.
---
>    o  route-update: Update a route or a set of routes.
818c818
<       *  success-count: the numbers of routes that are successfully
---
>       *  success-count: the number of routes that were successfully
821c821
<       *  failed-count: the numbers of the routes that are failed to be
---
>       *  failed-count: the number of routes that failed to be
827c827
<    o  nh-add: It is defined to add a nexthop to a rib.  A name of the
---
>    o  nh-add: Add a nexthop to a rib.  A name of the
845c845
<    o  nh-delete: It is defined to delete a nexthop from a rib.  A name
---
>    o  nh-delete: Delete a nexthop from a rib.  A name
855c855
<    The structure tree of rpcs is showing in following figure.
---
>    The structure tree of rpcs is shown in the following figure.
963c963
<    device.  A RIB data-model MUST support sending 2 kind of asynchronous
---
>    device.  An implementation of this RIB data model MUST support sending two kinds of asynchronous
977c977
<    Nexthops can be fully resolved nexthops or an unresolved nexthop.
---
>    Nexthops can be fully resolved or unresolved.
979c979
<    A resolved nexthop has adequate level of information to send the
---
>    A resolved nexthop has an adequate level of information to send the
981c981
<    interface of a directly connected neighbor.
---
>    interface to a directly connected neighbor.
984c984
<    determine the final resolved nexthop.  For example, in a case when a
---
>    determine the final resolved nexthop.  In one example, a
986,987c986,987
<    reach that IP address, e.g. by checking if that particular IP is
<    address reachable by regular IP forwarding or by a MPLS tunnel or by
---
>    reach that IP address, e.g. by checking if that particular IP address is
>    reachable by regular IP forwarding or by a MPLS tunnel or by
1013c1013
<    A single notification MAY be used when a route transition from
---
>    A single notification MAY be used when a route transitions from
1139c1139
<          "This feature means that a node support
---
>          "This feature means that a node supports
1145c1145
<          "This feature means that a node support
---
>          "This feature means that a node supports
1151c1151
<          "This feature means that a node support
---
>          "This feature means that a node supports
1157,1158c1157,1158
<          "This feature means that a node support
<           relicates nexthop capability.";
---
>          "This feature means that a node supports
>           replicates nexthop capability.";
1163c1163
<          "This feature means that a node support
---
>          "This feature means that a node supports
1169c1169
<          "This feature means that a node support
---
>          "This feature means that a node supports
1183c1183
<          "This feature means that a node support
---
>          "This feature means that a node supports
1189c1189
<          "This feature means that a node support
---
>          "This feature means that a node supports
1195c1195
<          "This feature means that a node support
---
>          "This feature means that a node supports
1201c1201
<          "This feature means that a node support
---
>          "This feature means that a node supports
1207c1207
<          "This feature means that a node support
---
>          "This feature means that a node supports
1213c1213
<          "This feature means that a node support
---
>          "This feature means that a node supports
1220c1220
<          "Base identify from which all mpls label
---
>          "Base identity from which all mpls label
1225c1225
<           swap - to change the top label of a label
---
>           swap - to exchange the top label of a label
1265c1265
<          "Base identify from which all tunnel decap
---
>          "Base identity from which all tunnel decap
1302c1302
<          "Base identify from which all TTL
---
>          "Base identity from which all TTL
1316c1316
<           to inner header.";
---
>           to the inner header.";
1323c1323
<           to inner header.";
---
>           to the inner header.";
1330c1330
<           to the next header.For example: when
---
>           to the next header. For example: when
1332c1332
<           of the in label and copy it to the out
---
>           of the inner label and copy it to the outer
1354c1354
<          "Base identify from which all hop limit
---
>          "Base identity from which all hop limit
1368c1368
<           to inner header.";
---
>           to the inner header.";
1381c1381
<          "Base identify from which all special
---
>          "Base identity from which all special
1441c1441
<          "Base identify from which all route
---
>          "Base identity from which all route
1470c1470
<          "Src and Dest route match type";
---
>          "Source and Destination route match type";
1483c1483
<          "Base identify from which all rib
---
>          "Base identity from which all rib
1529c1529
<          "Base identify from which all route types
---
>          "Base identity from which all route types
1581c1581
<          "Base identify from which all tunnel
---
>          "Base identity from which all tunnel
1639c1639
<          "Base identify from which all route
---
>          "Base identity from which all route
1665c1665
<          "Base identify from which all nexthop
---
>          "Base identity from which all nexthop
1672c1672
<          "Reolved nexthop state.";
---
>          "Resolved nexthop state.";
1699c1699
<          "Base identify from which all route
---
>          "Base identity from which all route
1727c1727
<          "Base identify from which all route change
---
>          "Base identity from which all route change
1743,1744c1743,1744
<           a lower route preference value (and thus a higher
<           route preference) than the route it replaced.";
---
>           a lower route preference value (and thus was more
>           preferred) than the route it replaced.";
1751,1752c1751,1752
<           a higher route preference value (and thus a lower
<           route preference) than the route that replaced it.";
---
>           a higher route preference value (and thus was less
>           preferred) than the route that replaced it.";
1783,1784c1783,1784
<           It is an integer value between 1 and 99.  A lower
<           value indicates higher preference. To download N
---
>           It is an integer value between 1 and 99.  Lower
>           values are more preferred. To download N
1996c1996
<          "The common attributes used for all types of route.";
---
>          "The common attributes used for all types of routes.";
2052c2052
<            "A list of nexthop.";
---
>            "A list of nexthops.";
2078c2078
<            "A list of nexthop.";
---
>            "A list of nexthops.";
2092,2093c2092,2093
<               It is an integer value between 1 and 99.  A lower
<               value indicates higher preference.  To download a
---
>               It is an integer value between 1 and 99.  Lower
>               value values are more preferred.  To download a
2095,2096c2095,2096
<               nexthops that are resolved and have two highest
<               preferences are selected.";
---
>               nexthops that are resolved and are most 
>               preferred are selected.";
2265,2267c2265,2267
<                "The nexthop is an Egress-interface and an ip
<                 address.This can be used in cases e.g.where
<                 the ip address is a link-local address.";
---
>                "The nexthop is an egress-interface and an IP
>                 address. This can be used in cases e.g. where
>                 the IP address is a link-local address.";
2286,2288c2286,2288
<                "The nexthop is an Egress-interface and an ip
<                 address.This can be used in cases e.g.where
<                 the ip address is a link-local address.";
---
>                "The nexthop is an egress-interface and an IP
>                 address. This can be used in cases e.g. where
>                 the IP address is a link-local address.";
2357c2357
<                 as defined in This document), that is represented
---
>                 as defined in this document), that is represented
2366c2366
<                 route lookup needs to continue in The specified
---
>                 route lookup needs to continue in the specified
2945c2945
<      /*RPC Operations*/
---
>      //RPC Operations
3225c3225
<          "To update a route or a list of route of a rib.
---
>          "To update a route or a list of routes of a rib.
3443c3443
<      /*Notifications*/
---
>      //Notifications
3521c3521
<    This document requests to register a URI in the "IETF XML registry"
---
>    This document requests to register a URI in the "ns" registry within the "IETF XML registry"
3535,3536c3535,3536
<     Registrant Contact: The IESG.XML:
<     N/A, the requested URI is an XML namespace.
---
>     Registrant Contact: The IESG.
>     XML: N/A, the requested URI is an XML namespace.

--Apple-Mail=_AFF5F2DF-B671-42BD-885B-3FAB9441256F
Content-Disposition: attachment;
	filename="draft-ietf-i2rs-rib-data-model-05-marked-up-jgs.txt"
Content-Type: text/plain;
	name="draft-ietf-i2rs-rib-data-model-05-marked-up-jgs.txt"
Content-Transfer-Encoding: quoted-printable





Network Working Group                                            L. Wang
Internet-Draft                                                Individual
Intended status: Standards Track                      H. Ananthakrishnan
Expires: September 18, 2016                                Packet Design
                                                                 M. Chen
                                                                  Huawei
                                                                 A. Dass
                                                                 S. Kini
                                                                Ericsson
                                                              N. Bahadur
                                                       Bracket Computing
                                                          March 17, 2016


          A YANG Data Model for Routing Information Base (RIB)
                   draft-ietf-i2rs-rib-data-model-05

Abstract

   This document defines a YANG data model for Routing Information Base
   (RIB) that aligns with the I2RS RIB information model.

Requirements Language

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
   document are to be interpreted as described in RFC 2119 [RFC2119].

Status of This Memo

   This Internet-Draft is submitted in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF).  Note that other groups may also distribute
   working documents as Internet-Drafts.  The list of current Internet-
   Drafts is at http://datatracker.ietf.org/drafts/current/.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress."

   This Internet-Draft will expire on September 18, 2016.







Wang, et al.           Expires September 18, 2016               [Page 1]
=0C
Internet-Draft                   RIB DM                       March 2016


Copyright Notice

   Copyright (c) 2016 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents
   (http://trustee.ietf.org/license-info) in effect on the date of
   publication of this document.  Please review these documents
   carefully, as they describe your rights and restrictions with respect
   to this document.  Code Components extracted from this document must
   include Simplified BSD License text as described in Section 4.e of
   the Trust Legal Provisions and are provided without warranty as
   described in the Simplified BSD License.

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
     1.1.  Definitions and Acronyms  . . . . . . . . . . . . . . . .   3
     1.2.  Tree Diagrams . . . . . . . . . . . . . . . . . . . . . .   3
   2.  Model Structure . . . . . . . . . . . . . . . . . . . . . . .   3
     2.1.  RIB Capability  . . . . . . . . . . . . . . . . . . . . .   7
     2.2.  Routing Instance and Rib  . . . . . . . . . . . . . . . .   8
     2.3.  Route . . . . . . . . . . . . . . . . . . . . . . . . . .   8
     2.4.  Nexthop . . . . . . . . . . . . . . . . . . . . . . . . .  10
     2.5.  RPC Operations  . . . . . . . . . . . . . . . . . . . . .  14
     2.6.  Notifications . . . . . . . . . . . . . . . . . . . . . .  18
   3.  YANG Modules  . . . . . . . . . . . . . . . . . . . . . . . .  20
   4.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .  63
   5.  Security Considerations . . . . . . . . . . . . . . . . . . .  64
   6.  Contributors  . . . . . . . . . . . . . . . . . . . . . . . .  64
   7.  Acknowledgements  . . . . . . . . . . . . . . . . . . . . . .  64
   8.  References  . . . . . . . . . . . . . . . . . . . . . . . . .  64
     8.1.  Normative References  . . . . . . . . . . . . . . . . . .  64
     8.2.  Informative References  . . . . . . . . . . . . . . . . .  65
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .  65

1.  Introduction

   The Interface to the Routing System (I2RS)
   [I-D.ietf-i2rs-architecture] provides read and write access to the
   information and state within the routing process that exists inside
   the routing elements, this is achieved via protocol message
   exchange between I2RS clients and I2RS agents associated with the
   routing system.  One of the functions of I2RS is to read and write
   data of Routing Information Base (RIB).
   [I-D.ietf-i2rs-usecase-reqs-summary] introduces a set of RIB use




Wang, et al.           Expires September 18, 2016               [Page 2]
=0C
Internet-Draft                   RIB DM                       March 2016


   cases.  The RIB information model is defined in
   [I-D.ietf-i2rs-rib-info-model].

   This document defines a YANG [RFC6020][RFC6991] data model for the
   RIB that satisfies the RIB use cases and aligns with the RIB
   information model.

1.1.  Definitions and Acronyms

   RIB: Routing Information Base

   Information Model (IM): An abstract model of a conceptual domain,
   independent of a specific implementation or data representation.

1.2.  Tree Diagrams

   A simplified graphical representation of the data model is used in
   this document.  The meaning of the symbols in these diagrams is as
   follows:

   o  Brackets "[" and "]" enclose list keys.

   o  Abbreviations before data node names: "rw" means configuration
      (read-write) and "ro" state data (read-only).

   o  Symbols after data node names: "?" means an optional node and "*"
      denotes a "list" and "leaf-list".

   o  Parentheses enclose choice and case nodes, and case nodes are also
      marked with a colon (":").

   o  Ellipsis ("...") stands for contents of subtrees that are not
      shown.

2.  Model Structure

   The following figure shows an overview of structure tree of the ietf-
   i2rs-rib module.  To give a whole view of the structure tree, some
   details of the tree are omitted.  The relevant details are introduced
   in the subsequent sub-sections.

   module: ietf-i2rs-rib
      +--rw routing-instance
         +--rw name              string
         +--rw interface-list* [name]
         |  +--rw name if:interface-ref
         +--rw router-id?        yang:dotted-quad
         +--rw lookup-limit? uint8



Wang, et al.           Expires September 18, 2016               [Page 3]
=0C
Internet-Draft                   RIB DM                       March 2016


         +--rw rib-list* [name]
            +--rw name            string
            +--rw rib-family      rib-family-def
            +--rw ip-rpf-check?   boolean
            +--rw route-list* [route-index]
               +--rw route-index                uint64
               +--rw match
               |  +--rw (route-type)?
               |     +--:(ipv4)
               |     |  ...
               |     +--:(ipv6)
               |     |  ...
               |     +--:(mpls-route)
               |     |  ...
               |     +--:(mac-route)
               |     |  ...
               |     +--:(interface-route)
               |        ...
               +--rw nexthop
               |  +--rw nexthop-id?            uint32
               |  +--rw sharing-flag?          boolean
               |  +--rw (nexthop-type)?
               |     +--:(nexthop-base)
               |     |  ...
               |     +--:(nexthop-chain) {nexthop-chain}?
               |     |  ...
               |     +--:(nexthop-replicates) {nexthop-replicates}?
               |     |  ...
               |     +--:(nexthop-protection) {nexthop-protection}?
               |     |  ...
               |     +--:(nexthop-load-balance) {nexthop-load-balance}?
               |        ...
               +--rw route-statistic
               |  ...
               +--rw route-attributes
               |  ...
               +--rw route-vendor-attributes
   rpcs:
      +---x rib-add
      |  +---w input
      |  |  +---w rib-name        string
      |  |  +---w rib-family      rib-family-def
      |  |  +---w ip-rpf-check?   boolean
      |  +--ro output
      |     +--ro result uint32
      |     +--ro reason? string
      +---x rib-delete
      |  +---w input



Wang, et al.           Expires September 18, 2016               [Page 4]
=0C
Internet-Draft                   RIB DM                       March 2016


      |  |  +---w rib-name string
      |  +--ro output
      |     +--ro result uint32
      |     +--ro reason? string
      +---x route-add
      |  +---w input
      |  |  +---w return-failure-detail?   boolean
      |  |  +---w rib-name                 string
      |  |  +---w routes
      |  |     +---w route-list* [route-index]
      |  |        ...
      |  +--ro output
      |     +--ro success-count     uint32
      |     +--ro failed-count      uint32
      |     +--ro failure-detail
      |        +--ro failed-routes* [route-index]
      |           +--ro route-index uint32
      |           +--ro error-code? uint32
      +---x route-delete
      |  +---w input
      |  |  +---w return-failure-detail?   boolean
      |  |  +---w rib-name                 string
      |  |  +---w routes
      |  |     +---w route-list* [route-index]
      |  |        ...
      |  +--ro output
      |     +--ro success-count     uint32
      |     +--ro failed-count      uint32
      |     +--ro failure-detail
      |        +--ro failed-routes* [route-index]
      |           +--ro route-index uint32
      |           +--ro error-code? uint32
      +---x route-update
      |  +---w input
      |  |  +---w return-failure-detail?           boolean
      |  |  +---w rib-name                         string
      |  |  +---w (match-options)?
      |  |     +--:(match-route-prefix)
      |  |     |  ...
      |  |     +--:(match-route-attributes)
      |  |     |  ...
      |  |     +--:(match-route-vendor-attributes) {...}?
      |  |     |  ...
      |  |     +--:(match-nexthop)
      |  |        ...
      |  +--ro output
      |     +--ro success-count uint32
      |     +--ro failed-count uint32



Wang, et al.           Expires September 18, 2016               [Page 5]
=0C
Internet-Draft                   RIB DM                       March 2016


      |     +--ro failure-detail
      |        +--ro failed-routes* [route-index]
      |           +--ro route-index uint32
      |           +--ro error-code? uint32
      +---x nh-add
      |  +---w input
      |  |  +---w rib-name              string
      |  |  +---w nexthop-id?           uint32
      |  |  +---w sharing-flag?         boolean
      |  |  +---w (nexthop-type)?
      |  |     +--:(nexthop-base)
      |  |     |  ...
      |  |     +--:(nexthop-chain) {nexthop-chain}?
      |  |     |  ...
      |  |     +--:(nexthop-replicates) {nexthop-replicates}?
      |  |     |  ...
      |  |     +--:(nexthop-protection) {nexthop-protection}?
      |  |     |  ...
      |  |     +--:(nexthop-load-balance) {nexthop-load-balance}?
      |  |        ...
      |  +--ro output
      |     +--ro result        uint32
      |     +--ro reason?       string
      |     +--ro nexthop-id?   uint32
      +---x nh-delete
         +---w input
         |  +---w rib-name              string
         |  +---w nexthop-id?           uint32
         |  +---w sharing-flag?         boolean
         |  +---w (nexthop-type)?
         |     +--:(nexthop-base)
         |     |  ...
         |     +--:(nexthop-chain) {nexthop-chain}?
         |     |  ...
         |     +--:(nexthop-replicates) {nexthop-replicates}?
         |     |  ...
         |     +--:(nexthop-protection) {nexthop-protection}?
         |     |  ...
         |     +--:(nexthop-load-balance) {nexthop-load-balance}?
         |        ...
         +--ro output
            +--ro result uint32
            +--ro reason? string
   notifications:
      +---n nexthop-resolution-status-change
      |  +--ro nexthop
      |  |  +--ro nexthop-id?           uint32
      |  |  +--ro sharing-flag?         boolean



Wang, et al.           Expires September 18, 2016               [Page 6]
=0C
Internet-Draft                   RIB DM                       March 2016


      |  |  +--ro (nexthop-type)?
      |  |     +--:(nexthop-base)
      |  |     |  ...
      |  |     +--:(nexthop-chain) {nexthop-chain}?
      |  |     |  ...
      |  |     +--:(nexthop-replicates) {nexthop-replicates}?
      |  |     |  ...
      |  |     +--:(nexthop-protection) {nexthop-protection}?
      |  |     |  ...
      |  |     +--:(nexthop-load-balance) {nexthop-load-balance}?
      |  |        ...
      |  +--ro nexthop-state nexthop-state-def
      +---n route-change
         +--ro rib-name                 string
         +--ro rib-family               rib-family-def
         +--ro route-index              uint64
         +--ro match
         |  +--ro (route-type)?
         |     +--:(ipv4)
         |     |  ...
         |     +--:(ipv6)
         |     |  ...
         |     +--:(mpls-route)
         |     |  ...
         |     +--:(mac-route)
         |     |  ...
         |     +--:(interface-route)
         |        ...
         +--ro route-installed-state route-installed-state-def
         +--ro route-state         route-state-def
         +--ro route-change-reason route-reason-def

         Figure 1: Overview of I2RS Rib Module Structure

2.1.  RIB Capability

   RIB capability advertisement is very important because not all of the
   hardware will be able to support all kinds of nexthops and there
   might be a limitation on how many levels of lookup can be
   practically performed.  Therefore, a RIB data model MUST specify a
   way for an external entity to learn about the functional capabilities
   of a network device.

   At the same time, nexthop chains can be used to specify multiple
   headers over a packet, before that particular packet is forwarded.
   Not every network device will be able to support all kinds of nexthop
   chains along with the arbitrary number of headers which are chained




Wang, et al.           Expires September 18, 2016               [Page 7]
=0C
Internet-Draft                   RIB DM                       March 2016


   together.  The RIB data model MUST provide a way to expose the
   nexthop chaining capability supported by a given network device.

   This module uses the feature and if-feature statements to achieve
   above capability advertisement.

2.2.  Routing Instance and Rib

   A routing instance, in the context of the RIB information model, is a
   collection of RIBs, interfaces, and routing protocol parameters.  A
   routing instance creates a logical slice of the router and can allow
   multiple different logical slices, across a set of routers, to
   communicate with each other.  The routing protocol parameters
   control the information available in the RIBs.  More detail about
   routing instance can be found in Section 2.2 of
   [I-D.ietf-i2rs-rib-info-model].

   For a routing instance, there can be multiple RIBs.  Therefore, this
   model uses "list" to express the RIBs.  The structure tree is shown
   below:

   +--rw routing-instance
      +--rw name              string
      +--rw interface-list* [name]
      |  +--rw name if:interface-ref
      +--rw router-id?        yang:dotted-quad
      +--rw lookup-limit?     uint8
      +--rw rib-list* [name]
         +--rw name            string
         +--rw rib-family      rib-family-def
         +--rw ip-rpf-check?   boolean
         +--rw route-list* [route-index]
            ... (refer to Section 2.3)

       Figure 2: Routing Instance Structure

2.3.  Route

   A route is essentially a match condition and an action following that
   match.  The match condition specifies the kind of route (e.g., IPv4,
   MPLS, MAC, Interface etc.) and the set of fields to match on.

   According to the definition in [I-D.ietf-i2rs-rib-info-model], a
   route MUST associate with the following attributes:

   o  ROUTE_PREFERENCE: See Section 2.3 of
      [I-D.ietf-i2rs-rib-info-model].




Wang, et al.           Expires September 18, 2016               [Page 8]
=0C
Internet-Draft                   RIB DM                       March 2016


   o  ACTIVE: Indicates whether a route has at least one fully resolved
      nexthop and is therefore eligible for installation in the FIB.

   o  INSTALLED: Indicates whether the route got installed in the FIB.

   In addition, a route can be associated with one or more optional =
route
   attributes (e.g., route-vendor-attributes).

   A RIB will have a number of routes, so the routes are
   expressed as a list under a specific rib.  Each rib has its own route
   list.

   +--rw route-list* [route-index]
      +--rw route-index                uint64
      +--rw match
      |  +--rw (route-type)?
      |     +--:(ipv4)
      |     |  +--rw ipv4
      |     |     +--rw (ip-route-match-type)?
      |     |        +--:(dest-ipv4-address)
      |     |        |  ...
      |     |        +--:(src-ipv4-address)
      |     |        |  ...
      |     |        +--:(dest-src-ipv4-address)
      |     |           ...
      |     +--:(ipv6)
      |     |  +--rw ipv6
      |     |     +--rw (ip-route-match-type)?
      |     |        +--:(dest-ipv6-address)
      |     |        |  ...
      |     |        +--:(src-ipv6-address)
      |     |        |  ...
      |     |        +--:(dest-src-ipv6-address)
      |     |           ...
      |     +--:(mpls-route)
      |     |  +--rw mpls-label              uint32
      |     +--:(mac-route)
      |     |  +--rw mac-address             uint32
      |     +--:(interface-route)
      |        +--rw interface-identifier if:interface-ref
      +--rw nexthop
      |  ...(refer to Section 2.4)

                  Figure 3: Routes Structure







Wang, et al.           Expires September 18, 2016               [Page 9]
=0C
Internet-Draft                   RIB DM                       March 2016


2.4.  Nexthop

   A nexthop represents an object resulting from a route lookup.  As
   illustrated in Section 2.4 of [I-D.ietf-i2rs-rib-info-model], to
   support various use cases (e.g., load balance, protection,
   multicast or a combination of them), the nexthop is modeled as a
   multi-level structure and supports recursion.  The first level of the
   nexthop includes the following four types:

   o  Base: The "base" nexthop is the foundation of all other nexthop
      types.  It includes the follow basic nexthops:

      *  nexthop-id

      *  IPv4 address

      *  IPv6 address

      *  egress-interface

      *  egress-interface with IPv4 address

      *  egress-interface with IPv6 address

      *  egress-interface with MAC address

      *  logical-tunnel

      *  tunnel-encap

      *  tunnel-decap

      *  rib-name

   o  Chain: Provide a way to perform multiple operations on a packet by
      logically combining them.

   o  Load-balance: Designed for load-balance case where it normally
      will have multiple weighted nexthops.

   o  Protection: Designed for protection scenario where it normally
      will have primary and standby nexthop.

   o  Replicate: Designed for multiple destinations forwarding.

   The structure tree of nexthop is shown in the following figures.





Wang, et al.           Expires September 18, 2016              [Page 10]
=0C
Internet-Draft                   RIB DM                       March 2016


   +--rw nexthop
   |  +--rw nexthop-id?           uint32
   |  +--rw sharing-flag?         boolean
   |  +--rw (nexthop-type)?
   |     +--:(nexthop-base)
   |     |  ...(refer to Figure 5)
   |     +--:(nexthop-chain) {nexthop-chain}?
   |     |  +--rw nexthop-chain
   |     |     +--rw nexthop-list* [nexthop-member-id]
   |     |        +--rw nexthop-member-id uint32
   |     +--:(nexthop-replicates) {nexthop-replicates}?
   |     |  +--rw nexthop-replicates
   |     |     +--rw nexthop-list* [nexthop-member-id]
   |     |        +--rw nexthop-member-id uint32
   |     +--:(nexthop-protection) {nexthop-protection}?
   |     |  +--rw nexthop-protection
   |     |     +--rw nexthop-list* [nexthop-member-id]
   |     |        +--rw nexthop-member-id uint32
   |     |        +--rw nexthop-preference nexthop-preference-def
   |     +--:(nexthop-load-balance) {nexthop-load-balance}?
   |        +--rw nexthop-lbs
   |           +--rw nexthop-list* [nexthop-member-id]
   |              +--rw nexthop-member-id uint32
   |              +--rw nexthop-lb-weight nexthop-lb-weight-def

                       Figure 4: Nexthop Structure

   Figure 5 (as shown blow) is a sub-tree of nexthop, it's under the
   nexthop base node and shows that structure of the "base" nexthop.

 +--:(nexthop-base)
 |  +--rw nexthop-base
 |     +--rw (nexthop-base-type)?
 |        +--:(special-nexthop)
 |        |  +--rw special? special-nexthop-def
 |        +--:(egress-interface-nexthop)
 |        |  +--rw outgoing-interface if:interface-ref
 |        +--:(ipv4-address-nexthop)
 |        |  +--rw ipv4-address inet:ipv4-address
 |        +--:(ipv6-address-nexthop)
 |        |  +--rw ipv6-address inet:ipv6-address
 |        +--:(egress-interface-ipv4-nexthop)
 |        |  +--rw egress-interface-ipv4-address
 |        |     +--rw outgoing-interface if:interface-ref
 |        |     +--rw ipv4-address       inet:ipv4-address
 |        +--:(egress-interface-ipv6-nexthop)
 |        |  +--rw egress-interface-ipv6-address
 |        |     +--rw outgoing-interface if:interface-ref



Wang, et al.           Expires September 18, 2016              [Page 11]
=0C
Internet-Draft                   RIB DM                       March 2016


 |        |     +--rw ipv6-address       inet:ipv6-address
 |        +--:(egress-interface-mac-nexthop)
 |        |  +--rw egress-interface-mac-address
 |        |     +--rw outgoing-interface if:interface-ref
 |        |     +--rw ieee-mac-address uint32
 |        +--:(tunnel-encap-nexthop) {nexthop-tunnel}?
 |        |  +--rw tunnel-encap
 |        |     +--rw (tunnel-type)?
 |        |        +--:(ipv4) {ipv4-tunnel}?
 |        |        |  +--rw ipv4-header
 |        |        |     +--rw src-ipv4-address inet:ipv4-address
 |        |        |     +--rw dest-ipv4-address inet:ipv4-address
 |        |        |     +--rw protocol          uint8
 |        |        |     +--rw ttl?              uint8
 |        |        |     +--rw dscp?             uint8
 |        |        +--:(ipv6) {ipv6-tunnel}?
 |        |        |  +--rw ipv6-header
 |        |        |     +--rw src-ipv6-address inet:ipv6-address
 |        |        |     +--rw dest-ipv6-address inet:ipv6-address
 |        |        |     +--rw next-header       uint8
 |        |        |     +--rw traffic-class? uint8
 |        |        |     +--rw flow-label?       uint16
 |        |        |     +--rw hop-limit?        uint8
 |        |        +--:(mpls) {mpls-tunnel}?
 |        |        |  +--rw mpls-header
 |        |        |     +--rw label-operations* [label-oper-id]
 |        |        |        +--rw label-oper-id uint32
 |        |        |        +--rw (label-actions)?
 |        |        |           +--:(label-push)
 |        |        |           |  +--rw label-push
 |        |        |           |     +--rw label        uint32
 |        |        |           |     +--rw s-bit?       boolean
 |        |        |           |     +--rw tc-value? uint8
 |        |        |           |     +--rw ttl-value? uint8
 |        |        |           +--:(label-swap)
 |        |        |              +--rw label-swap
 |        |        |                 +--rw in-label      uint32
 |        |        |                 +--rw out-label     uint32
 |        |        |                 +--rw ttl-action? ttl-action-def
 |        |        +--:(gre) {gre-tunnel}?
 |        |        |  +--rw gre-header
 |        |        |     +--rw (dest-address-type)?
 |        |        |     |  +--:(ipv4)
 |        |        |     |  |  +--rw ipv4-dest inet:ipv4-address
 |        |        |     |  +--:(ipv6)
 |        |        |     |     +--rw ipv6-dest inet:ipv6-address
 |        |        |     +--rw protocol-type uint16
 |        |        |     +--rw key?          uint64



Wang, et al.           Expires September 18, 2016              [Page 12]
=0C
Internet-Draft                   RIB DM                       March 2016


 |        |        +--:(nvgre) {nvgre-tunnel}?
 |        |        |  +--rw nvgre-header
 |        |        |     +--rw (nvgre-type)?
 |        |        |     |  +--:(ipv4)
 |        |        |     |  |  +--rw src-ipv4-address inet:ipv4-address
 |        |        |     |  |  +--rw dest-ipv4-address inet:ipv4-address
 |        |        |     |  |  +--rw protocol          uint8
 |        |        |     |  |  +--rw ttl?              uint8
 |        |        |     |  |  +--rw dscp?             uint8
 |        |        |     |  +--:(ipv6)
 |        |        |     |     +--rw src-ipv6-address inet:ipv6-address
 |        |        |     |     +--rw dest-ipv6-address inet:ipv6-address
 |        |        |     |     +--rw next-header       uint8
 |        |        |     |     +--rw traffic-class?    uint8
 |        |        |     |     +--rw flow-label?       uint16
 |        |        |     |     +--rw hop-limit?        uint8
 |        |        |     +--rw virtual-subnet-id uint32
 |        |        |     +--rw flow-id?          uint16
 |        |        +--:(vxlan) {vxlan-tunnel}?
 |        |           +--rw vxlan-header
 |        |              +--rw (vxlan-type)?
 |        |              |  +--:(ipv4)
 |        |              |  |  +--rw src-ipv4-address inet:ipv4-address
 |        |              |  |  +--rw dest-ipv4-address inet:ipv4-address
 |        |              |  |  +--rw protocol             uint8
 |        |              |  |  +--rw ttl?                 uint8
 |        |              |  |  +--rw dscp?                uint8
 |        |              |  +--:(ipv6)
 |        |              |     +--rw src-ipv6-address inet:ipv6-address
 |        |              |     +--rw dest-ipv6-address inet:ipv6-address
 |        |              |     +--rw next-header          uint8
 |        |              |     +--rw traffic-class?       uint8
 |        |              |     +--rw flow-label?          uint16
 |        |              |     +--rw hop-limit?           uint8
 |        |              +--rw vxlan-identifier     uint32
 |        +--:(tunnel-decap-nexthop) {nexthop-tunnel}?
 |        |  +--rw tunnel-decap
 |        |     +--rw (tunnel-type)?
 |        |        +--:(ipv4) {ipv4-tunnel}?
 |        |        |  +--rw ipv4-decap
 |        |        |     +--rw ipv4-decap tunnel-decap-action-def
 |        |        |     +--rw ttl-action?   ttl-action-def
 |        |        +--:(ipv6) {ipv6-tunnel}?
 |        |        |  +--rw ipv6-decap
 |        |        |     +--rw ipv6-decap tunnel-decap-action-def
 |        |        |     +--rw hop-limit-action? hop-limit-action-def
 |        |        +--:(mpls) {mpls-tunnel}?
 |        |           +--rw label-pop



Wang, et al.           Expires September 18, 2016              [Page 13]
=0C
Internet-Draft                   RIB DM                       March 2016


 |        |              +--rw label-pop     mpls-label-action-def
 |        |              +--rw ttl-action?   ttl-action-def
 |        +--:(logical-tunnel-nexthop) {nexthop-tunnel}?
 |        |  +--rw logical-tunnel
 |        |     +--rw tunnel-type tunnel-type-def
 |        |     +--rw tunnel-name string
 |        +--:(rib-name-nexthop)
 |        |  +--rw rib-name?                        string
 |        +--:(nexthop-identifier)
 |           +--rw nexthop-ref                      nexthop-ref

                 Figure 5: Nexthop Base Structure

2.5.  RPC Operations

   This module defines the following RPC operations:

   o  rib-add: Add a rib to a routing instance.  A name
      of the rib, address family of the rib and (optionally) whether the =
RPF check is
      enabled are passed as the input parameters.  The output is the
      result of the add operation:

      *  true - success;

      *  false - failed; when failed, the i2rs agent may return the
         specific reason that causes the failure.

   o  rib-delete: Delete a rib from a routing instance.
      When a rib is deleted, all routes installed in the rib will be
      deleted.  A name of the rib is passed as the input parameter.  The
      output is the result of the delete operation:

      *  true - success;

      *  false - failed; when failed, the i2rs agent may return the
         specific reason that causes the failure.

   o  route-add: Add a route or a set of routes to a
      rib.  A rib name, the route prefix(es), route attributes, route
      vendor attributes, nexthop and whether to return failure detail =
are
      passed as the input parameters.  Before calling the route-add rpc,
      it is required to call the nh-add rpc to create and/or return the
      nexthop identifier.  The output is a combination of the route
      operation states that include:

      *  success-count: the number of routes that were successfully
         added;




Wang, et al.           Expires September 18, 2016              [Page 14]
=0C
Internet-Draft                   RIB DM                       March 2016


      *  failed-count: the number of routes that failed to be
         added;

      *  failure-detail: shows the specific failed routes that failure
         reason.

   o  route-delete: Delete a route or a set of routes
      from a rib.  A name of the rib, the route prefix(es) and whether =
to
      return failure detail are passed as the input parameters.  The
      output is a combination of route operation states that include:

      *  success-count: the number of routes that were successfully
         deleted;

      *  failed-count: the number of the routes that failed to be
         deleted;

      *  failure-detail: shows the specific failed routes that failure
         reason.

   o  route-update: Update a route or a set of routes.
      A rib name, the route prefix(es), or route attributes, or route
      vendor attributes, or nexthop are passed as the input parameters.
      The match conditions can be either route prefix(es), or route
      attributes, or route vendor attributes, or nexthop.  The update
      actions include: update the nexthop, update the route attributes,
      update the route vendor attributes.  The output is combination of
      the route operation states that include:

      *  success-count: the number of routes that were successfully
         updated;

      *  failed-count: the number of routes that failed to be
         updated;

      *  failure-detail: shows the specific failed routes that failure
         reason.

   o  nh-add: Add a nexthop to a rib.  A name of the
      rib and a nexthop are passed as the input parameters.  The network
      node is required to allocate a nexthop identifier to the nexthop.
      The outputs include the result of the nexthop add operation.

      *  true - success; when success, a nexthop identifier will be
         returned to the i2rs client.

      *  false - failed; when failed, the i2rs agent may return the
         specific reason that causes the failure.



Wang, et al.           Expires September 18, 2016              [Page 15]
=0C
Internet-Draft                   RIB DM                       March 2016


   o  nh-delete: Delete a nexthop from a rib.  A name
      of a rib and a nexthop or nexthop identifier are passed as the
      input parameters.  The output is the result of the delete
      operation:

      *  true - success;

      *  false - failed; when failed, the i2rs agent may return the
         specific reason that causes the failure.

   The structure tree of rpcs is shown in the following figure.

   rpcs:
      +---x rib-add
      |  +---w input
      |  |  +---w rib-name        string
      |  |  +---w rib-family      rib-family-def
      |  |  +---w ip-rpf-check?   boolean
      |  +--ro output
      |     +--ro result uint32
      |     +--ro reason? string
      +---x rib-delete
      |  +---w input
      |  |  +---w rib-name string
      |  +--ro output
      |     +--ro result uint32
      |     +--ro reason? string
      +---x route-add
      |  +---w input
      |  |  +---w return-failure-detail?   boolean
      |  |  +---w rib-name                 string
      |  |  +---w routes
      |  |     +---w route-list* [route-index]
      |  |        ...
      |  +--ro output
      |     +--ro success-count     uint32
      |     +--ro failed-count      uint32
      |     +--ro failure-detail
      |        +--ro failed-routes* [route-index]
      |           +--ro route-index uint32
      |           +--ro error-code? uint32
      +---x route-delete
      |  +---w input
      |  |  +---w return-failure-detail?   boolean
      |  |  +---w rib-name                 string
      |  |  +---w routes
      |  |     +---w route-list* [route-index]
      |  |        ...



Wang, et al.           Expires September 18, 2016              [Page 16]
=0C
Internet-Draft                   RIB DM                       March 2016


      |  +--ro output
      |     +--ro success-count     uint32
      |     +--ro failed-count      uint32
      |     +--ro failure-detail
      |        +--ro failed-routes* [route-index]
      |           +--ro route-index uint32
      |           +--ro error-code? uint32
      +---x route-update
      |  +---w input
      |  |  +---w return-failure-detail?           boolean
      |  |  +---w rib-name                         string
      |  |  +---w (match-options)?
      |  |     +--:(match-route-prefix)
      |  |     |  ...
      |  |     +--:(match-route-attributes)
      |  |     |  ...
      |  |     +--:(match-route-vendor-attributes) {...}?
      |  |     |  ...
      |  |     +--:(match-nexthop)
      |  |        ...
      |  +--ro output
      |     +--ro success-count uint32
      |     +--ro failed-count uint32
      |     +--ro failure-detail
      |        +--ro failed-routes* [route-index]
      |           +--ro route-index uint32
      |           +--ro error-code? uint32
      +---x nh-add
      |  +---w input
      |  |  +---w rib-name              string
      |  |  +---w nexthop-id?           uint32
      |  |  +---w sharing-flag?         boolean
      |  |  +---w (nexthop-type)?
      |  |     ...
      |  +--ro output
      |     +--ro result        uint32
      |     +--ro reason?       string
      |     +--ro nexthop-id?   uint32
      +---x nh-delete
         +---w input
         |  +---w rib-name              string
         |  +---w nexthop-id?           uint32
         |  +---w sharing-flag?         boolean
         |  +---w (nexthop-type)?
         |     ...
         +--ro output
            +--ro result uint32
            +--ro reason? string



Wang, et al.           Expires September 18, 2016              [Page 17]
=0C
Internet-Draft                   RIB DM                       March 2016


              Figure 6: RPCs Structure

2.6.  Notifications

   Asynchronous notifications are sent by the RIB manager of a network
   device to an external entity when some event triggers on the network
   device.  An implementation of this RIB data model MUST support =
sending two kinds of asynchronous
   notifications.

   1.  Route change notification:

   o Installed (Indicates whether the route got installed in the FIB) ;

   o Active (Indicates whether a route has at least one fully resolved
   nexthop and is therefore eligible for installation in the FIB) ;

   o Reason - E.g.  Not authorized

   2.  Nexthop resolution status notification

   Nexthops can be fully resolved or unresolved.

   A resolved nexthop has an adequate level of information to send the
   outgoing packet towards the destination by forwarding it on an
   interface to a directly connected neighbor.

   An unresolved nexthop is something that requires the RIB manager to
   determine the final resolved nexthop.  In one example, a
   nexthop could be an IP address.  The RIB manager would resolve how to
   reach that IP address, e.g. by checking if that particular IP address =
is
   reachable by regular IP forwarding or by a MPLS tunnel or by
   both.  If the RIB manager cannot resolve the nexthop, then the
   nexthop remains in an unresolved state and is NOT a suitable
   candidate for installation in the FIB.

   An implementation of this RIB data model MUST support sending route-
   change notifications whenever a route transitions between the
   following states:

   o  from the active state to the inactive state

   o  from the inactive state to the active state

   o  from the installed state to the uninstalled state

   o  from the uninstalled state to the installed state





Wang, et al.           Expires September 18, 2016              [Page 18]
=0C
Internet-Draft                   RIB DM                       March 2016


   A single notification MAY be used when a route transitions from
   inactive/uninstalled to active/installed or in the other direction.

   The structure tree of notifications is shown in the following figure.

   notifications:
         +---n nexthop-resolution-status-change
         |  +--ro nexthop
         |  |  +--ro nexthop-id            uint32
         |  |  +--ro sharing-flag          boolean
         |  |  +--ro (nexthop-type)?
         |  |     +--:(nexthop-base)
         |  |     |  ...
         |  |     +--:(nexthop-chain) {nexthop-chain}?
         |  |     |  ...
         |  |     +--:(nexthop-replicates) {nexthop-replicates}?
         |  |     |  ...
         |  |     +--:(nexthop-protection) {nexthop-protection}?
         |  |     |  ...
         |  |     +--:(nexthop-load-balance) {nexthop-load-balance}?
         |  |        ...
         |  +--ro nexthop-state nexthop-state-def
         +---n route-change
            +--ro rib-name                 string
            +--ro rib-family               rib-family-def
            +--ro route-index              uint64
            +--ro match
            |  +--ro (route-type)?
            |     +--:(ipv4)
            |     |  ...
            |     +--:(ipv6)
            |     |  ...
            |     +--:(mpls-route)
            |     |  ...
            |     +--:(mac-route)
            |     |  ...
            |     +--:(interface-route)
            |        ...
            +--ro route-installed-state route-installed-state-def
            +--ro route-state              route-state-def
            +--ro route-change-reason      route-change-reason-def

                       Figure 7: Notifications Structure








Wang, et al.           Expires September 18, 2016              [Page 19]
=0C
Internet-Draft                   RIB DM                       March 2016


3.  YANG Modules

   <CODE BEGINS> file "ietf-i2rs-rib@2016-03-17.yang"

   module ietf-i2rs-rib {
     namespace "urn:ietf:params:xml:ns:yang:ietf-i2rs-rib";
     // replace with iana namespace when assigned
     prefix "iir";

     import ietf-inet-types {
       prefix inet;
       //rfc6991
     }

     import ietf-interfaces {
       prefix "if";
     }

     import ietf-yang-types {
       prefix yang;
     }

     organization
       "IETF I2RS (Interface to Routing System) Working Group";
     contact
       "WG Web:   <http://tools.ietf.org/wg/i2rs/>
        WG List:  <mailto:i2rs@ietf.org>

        WG Chair: Susan Hares
                  <mailto:shares@ndzh.com>

        WG Chair: Jeffrey Haas
                  <mailto:jhaas@pfrc.org>

        Editor:   Lixing Wang
                  <mailto:wang_little_star@sina.com>

        Editor:   Hariharan Ananthakrishnan
                  <mailto:hari@packetdesign.com>

        Editor:   Mach(Guoyi) Chen
                  <mailto:mach.chen@huawei.com>

        Editor:   Amit Dass
                  <mailto:amit.dass@ericsson.com>

        Editor:   Sriganesh Kini
                  <mailto:sriganesh.kini@ericsson.com>



Wang, et al.           Expires September 18, 2016              [Page 20]
=0C
Internet-Draft                   RIB DM                       March 2016


        Editor:   Nitin Bahadur
                  <mailto:nitin_bahadur@yahoo.com>";
     description
       "This module defines a YANG data model for
        Routing Information Base (RIB) that aligns
        with the I2RS RIB information model.";
     revision "2016-03-17" {
       description "initial revision";
       reference "draft-ietf-i2rs-data-model-05";
     }

     //Features
     feature nexthop-tunnel {
       description
         "This feature means that a node supports
          tunnel nexthop capability.";
     }

     feature nexthop-chain {
       description
         "This feature means that a node supports
          chain nexthop capability.";
     }

     feature nexthop-protection {
       description
         "This feature means that a node supports
          protection nexthop capability.";
     }

     feature nexthop-replicates {
       description
         "This feature means that a node supports
          replicates nexthop capability.";
     }

     feature nexthop-load-balance {
       description
         "This feature means that a node supports
          load balance nexthop capability.";
     }

     feature ipv4-tunnel {
       description
         "This feature means that a node supports
          IPv4 tunnel encapsulation capability.";
     }




Wang, et al.           Expires September 18, 2016              [Page 21]
=0C
Internet-Draft                   RIB DM                       March 2016


     feature ipv6-tunnel {
       description
         "This feature means that a node supports
          IPv6 tunnel encapsulation capability.";
     }

     feature mpls-tunnel {
       description
         "This feature means that a node supports
          MPLS tunnel encapsulation capability.";
     }

     feature vxlan-tunnel {
       description
         "This feature means that a node supports
          VxLAN tunnel encapsulation capability.";
     }

     feature gre-tunnel {
       description
         "This feature means that a node supports
          GRE tunnel encapsulation capability.";
     }

     feature nvgre-tunnel {
       description
         "This feature means that a node supports
          NvGRE tunnel encapsulation capability.";
     }

     feature route-vendor-attributes {
       description
         "This feature means that a node supports
          route vendor attributes.";
     }

     //Identities and Type Definitions
     identity mpls-label-action {
       description
         "Base identity from which all mpls label
          operations are derived.
          The MPLS label stack operations include:
          push - to add a new label to a label stack,
          pop - to pop the top label from a label stack,
          swap - to exchange the top label of a label
                 stack with new label.";
     }




Wang, et al.           Expires September 18, 2016              [Page 22]
=0C
Internet-Draft                   RIB DM                       March 2016


     identity label-push {
       base "mpls-label-action";
        description
         "MPLS label stack operation: push.";
     }

     identity label-pop {
       base "mpls-label-action";
       description
         "MPLS label stack operation: pop.";
     }

     identity label-swap {
       base "mpls-label-action";
       description
         "MPLS label stack operation: swap.";
     }

     typedef mpls-label-action-def {
       type identityref {
         base "mpls-label-action";
       }
       description
         "MPLS label action def.";
     }

     identity tunnel-decap-action {
       description
         "Base identity from which all tunnel decap
          actions are derived.
          Tunnel decap actions include:
          ipv4-decap - to decap an IPv4 tunnel,
          ipv6-decap - to decap an IPv6 tunnel.";
     }

     identity ipv4-decap {
       base "tunnel-decap-action";
       description
         "IPv4 tunnel decap.";
     }

     identity ipv6-decap {
       base "tunnel-decap-action";
       description
         "IPv4 tunnel decap.";
     }

     typedef tunnel-decap-action-def {



Wang, et al.           Expires September 18, 2016              [Page 23]
=0C
Internet-Draft                   RIB DM                       March 2016


       type identityref {
         base "tunnel-decap-action";
       }
       description
         "Tunnel decap def.";
     }

     identity ttl-action {
       description
         "Base identity from which all TTL
          actions are derived.";
     }

     identity no-action {
       base "ttl-action";
       description
         "Do nothing regarding the TTL.";
     }

     identity copy-to-inner {
       base "ttl-action";
       description
         "Copy the TTL of the outer header
          to the inner header.";
     }

     identity decrease-and-copy-to-inner {
       base "ttl-action";
       description
         "Decrease TTL by one and copy the TTL
          to the inner header.";
     }

     identity decrease-and-copy-to-next {
       base "ttl-action";
       description
         "Decrease TTL by one and copy the TTL
          to the next header. For example: when
          MPLS label swapping, decrease the TTL
          of the inner label and copy it to the outer
          label.";
     }

     typedef ttl-action-def {
       type identityref {
         base "ttl-action";
       }
       description



Wang, et al.           Expires September 18, 2016              [Page 24]
=0C
Internet-Draft                   RIB DM                       March 2016


         "TTL action def.";
     }

     identity hop-limit-action {
       description
         "Base identity from which all hop limit
          actions are derived.";
     }

     identity hop-limit-no-action {
       base "hop-limit-action";
       description
         "Do nothing regarding the hop limit.";
     }

     identity hop-limit-copy-to-inner {
       base "hop-limit-action";
       description
         "Copy the hop limit of the outer header
          to the inner header.";
     }

     typedef hop-limit-action-def {
       type identityref {
         base "hop-limit-action";
       }
       description
         "IPv6 hop limit action def.";
     }

     identity special-nexthop {
       description
         "Base identity from which all special
          nexthops are derived.";
     }

     identity discard {
       base "special-nexthop";
       description
         "This indicates that the network
          device should drop the packet and
          increment a drop counter.";
     }

     identity discard-with-error {
       base "special-nexthop";
       description
         "This indicates that the network



Wang, et al.           Expires September 18, 2016              [Page 25]
=0C
Internet-Draft                   RIB DM                       March 2016


          device should drop the packet,
          increment a drop counter and send
          back an appropriate error message
          (like ICMP error).";
     }

     identity receive {
       base "special-nexthop";
       description
         "This indicates that that the traffic is
          destined for the network device.  For
          example, protocol packets or OAM packets.
          All locally destined traffic SHOULD be
          throttled to avoid a denial of service
          attack on the router's control plane. An
          optional rate-limiter can be specified
          to indicate how to throttle traffic
          destined for the control plane.";
     }

     identity cos-value {
       base "special-nexthop";
       description
         "Cos-value special nexthop.";
     }

     typedef special-nexthop-def {
       type identityref {
         base "special-nexthop";
       }
       description
         "Special nexthop def.";
     }

     identity ip-route-match-type {
       description
         "Base identity from which all route
          match types are derived.
          Route match type could be:
          match source, or
          match destination, or
          match source and destination.";
     }

     identity match-ip-src {
       base "ip-route-match-type";
       description
         "Source route match type.";



Wang, et al.           Expires September 18, 2016              [Page 26]
=0C
Internet-Draft                   RIB DM                       March 2016


     }
     identity match-ip-dest {
       base "ip-route-match-type";
       description
         "Destination route match type";
     }
     identity match-ip-src-dest {
       base "ip-route-match-type";
       description
         "Source and Destination route match type";
     }

     typedef ip-route-match-type-def {
       type identityref {
         base "ip-route-match-type";
       }
       description
         "IP route match type def.";
     }

     identity rib-family {
       description
         "Base identity from which all rib
          address families are derived.";
     }

     identity ipv4-rib-family {
       base "rib-family";
       description
         "IPv4 rib address family.";
     }

     identity ipv6-rib-family {
       base "rib-family";
       description
         "IPv6 rib address family.";
     }

     identity mpls-rib-family {
       base "rib-family";
       description
         "MPLS rib address family.";
     }

     identity ieee-mac-rib-family {
       base "rib-family";
       description
         "MAC rib address family.";



Wang, et al.           Expires September 18, 2016              [Page 27]
=0C
Internet-Draft                   RIB DM                       March 2016


     }

     typedef rib-family-def {
       type identityref {
         base "rib-family";
       }
       description
         "Rib address family def.";
     }

     identity route-type {
       description
         "Base identity from which all route types
          are derived.";
     }

     identity ipv4-route {
       base "route-type";
       description
         "IPv4 route type.";
     }

     identity ipv6-route {
       base "route-type";
       description
         "IPv6 route type.";
     }

     identity mpls-route {
       base "route-type";
       description
         "MPLS route type.";
     }

     identity ieee-mac {
       base "route-type";
       description
         "MAC route type.";
     }

     identity interface {
       base "route-type";
       description
         "Interface route type.";
     }

     typedef route-type-def {
       type identityref {



Wang, et al.           Expires September 18, 2016              [Page 28]
=0C
Internet-Draft                   RIB DM                       March 2016


         base "route-type";
       }
       description
         "Route type def.";
     }

     identity tunnel-type {
       description
         "Base identity from which all tunnel
          types are derived.";
     }

     identity ipv4-tunnel {
       base "tunnel-type";
       description
         "IPv4 tunnel type";
     }

     identity ipv6-tunnel {
       base "tunnel-type";
       description
         "IPv6 Tunnel type";
     }

     identity mpls-tunnel {
       base "tunnel-type";
       description
         "MPLS tunnel type";
     }

     identity gre-tunnel {
       base "tunnel-type";
       description
         "GRE tunnel type";
     }

     identity vxlan-tunnel {
       base "tunnel-type";
       description
         "VxLAN tunnel type";
     }

     identity nvgre-tunnel {
       base "tunnel-type";
       description
         "NVGRE tunnel type";
     }




Wang, et al.           Expires September 18, 2016              [Page 29]
=0C
Internet-Draft                   RIB DM                       March 2016


     typedef tunnel-type-def {
       type identityref {
         base "tunnel-type";
       }
       description
         "Tunnel type def.";
     }

     identity route-state {
       description
         "Base identity from which all route
          states are derived.";
     }

     identity active {
       base "route-state";
       description
         "Active state.";
     }

     identity inactive {
       base "route-state";
       description
         "Inactive state.";
     }

     typedef route-state-def {
       type identityref {
         base "route-state";
       }
       description
         "Route state def.";
     }

     identity nexthop-state {
       description
         "Base identity from which all nexthop
          states are derived.";
     }

     identity resolved {
       base "nexthop-state";
       description
         "Resolved nexthop state.";
     }

     identity unresolved {
       base "nexthop-state";



Wang, et al.           Expires September 18, 2016              [Page 30]
=0C
Internet-Draft                   RIB DM                       March 2016


       description
         "Unresolved nexthop state.";
     }

     typedef nexthop-state-def {
       type identityref {
         base "nexthop-state";
       }
       description
         "Nexthop state def.";
     }

     identity route-installed-state {
       description
         "Base identity from which all route
          installed states are derived.";
     }

     identity uninstalled {
       base "route-installed-state";
       description
         "Uninstalled state.";
     }

     identity installed {
       base "route-installed-state";
       description
         "Installed state.";
     }

     typedef route-installed-state-def {
       type identityref {
         base "route-installed-state";
       }
       description
         "Route installed state def.";
     }

   //Route change reason identities

     identity route-change-reason {
       description
         "Base identity from which all route change
          reasons are derived.";
     }

     identity lower-route-preference {
       base "route-change-reason";



Wang, et al.           Expires September 18, 2016              [Page 31]
=0C
Internet-Draft                   RIB DM                       March 2016


       description
         "This route was installed in the FIB because it had
          a lower route preference value (and thus was more
          preferred) than the route it replaced.";
     }

     identity higher-route-preference {
       base "route-change-reason";
       description
         "This route was uninstalled from the FIB because it had
          a higher route preference value (and thus was less
          preferred) than the route that replaced it.";
     }

     identity resolved-nexthop {
       base "route-change-reason";
       description
         "This route was made active because at least
          one of its nexthops was resolved.";
     }

     identity unresolved-nexthop {
       base "route-change-reason";
       description
         "This route was made inactive because all of
          its nexthops are unresolved.";
     }

     typedef route-change-reason-def {
       type identityref {
         base "route-change-reason";
       }
       description
         "Route change reason def.";
     }

     typedef nexthop-preference-def {
       type uint8 {
         range "1..99";
       }
       description
         "Nexthop-preference is used for protection schemes.
          It is an integer value between 1 and 99.  Lower
          values are more preferred. To download N
          nexthops to the FIB, the N nexthops with the lowest
          value are selected.";
     }
     typedef nexthop-lb-weight-def {



Wang, et al.           Expires September 18, 2016              [Page 32]
=0C
Internet-Draft                   RIB DM                       March 2016


       type uint8 {
         range "1..99";
       }
       description
         "Nhop-lb-weight is a number between 1 and 99.";
     }

     typedef nexthop-ref {
       type leafref {
         path  "/iir:routing-instance" +
               "/iir:rib-list" +
               "/iir:route-list" +
               "/iir:nexthop" +
               "/iir:nexthop-id";
       }
       description
         "A nexthop reference that provides
          an indirection reference to a nexthop.";
     }


     //Groupings
     grouping route-prefix {
       description
         "The common attributes used for all types of route prefix.";
       leaf route-index {
         type uint64 ;
         mandatory true;
         description
           "Route index.";
       }
       container match {
         description
           "The match condition specifies the
            kind of route (IPv4, MPLS, etc.)
            and the set of fields to match on.";
         choice route-type {
           description
             "Route types: IPv4, IPv6, MPLS, MAC etc.";
           case ipv4 {
             description
               "IPv4 route case.";
             container ipv4 {
               description
                 "IPv4 route match.";
               choice ip-route-match-type {
                 description
                   "IP route match type options:



Wang, et al.           Expires September 18, 2016              [Page 33]
=0C
Internet-Draft                   RIB DM                       March 2016


                    match source, or
                    match destination, or
                    match source and destination.";
                 case dest-ipv4-address {
                   leaf dest-ipv4-prefix {
                     type inet:ipv4-prefix;
                     mandatory true;
                     description
                       "An IPv4 destination address as the match.";
                   }
                 }
                 case src-ipv4-address {
                   leaf src-ipv4-prefix {
                     type inet:ipv4-prefix;
                     mandatory true;
                     description
                       "An IPv4 source address as the match.";
                   }
                 }
                 case dest-src-ipv4-address {
                   container dest-src-ipv4-address {
                     description
                       "A combination of an IPv4 source and
                        an IPv4 destination address as the match.";
                     leaf dest-ipv4-prefix {
                       type inet:ipv4-prefix;
                       mandatory true;
                       description
                         "The IPv4 destination address of the match.";
                     }
                     leaf src-ipv4-prefix {
                       type inet:ipv4-prefix;
                       mandatory true;
                       description
                         "The IPv4 source address of the match";
                     }
                   }
                 }
               }
             }
           }
           case ipv6 {
             description
               "IPv6 route case.";
             container ipv6 {
               description
                 "IPv6 route match.";
               choice ip-route-match-type {



Wang, et al.           Expires September 18, 2016              [Page 34]
=0C
Internet-Draft                   RIB DM                       March 2016


                 description
                   "IP route match type options:
                    match source, or
                    match destination, or
                    match source and destination.";
                 case dest-ipv6-address {
                   leaf dest-ipv6-prefix {
                     type inet:ipv6-prefix;
                     mandatory true;
                     description
                       "An IPv6 destination address as the match.";
                   }
                 }
                 case src-ipv6-address {
                   leaf src-ipv6-prefix {
                     type inet:ipv6-prefix;
                     mandatory true;
                     description
                       "An IPv6 source address as the match.";
                   }
                 }
                 case dest-src-ipv6-address {
                   container dest-src-ipv6-address {
                     description
                       "A combination of an IPv6 source and
                        an IPv6 destination address as the match.";
                     leaf dest-ipv6-prefix {
                       type inet:ipv6-prefix;
                       mandatory true;
                       description
                         "The IPv6 destination address of the match";
                     }
                     leaf src-ipv6-prefix {
                       type inet:ipv6-prefix;
                       mandatory true;
                       description
                         "The IPv6 source address of the match.";
                     }
                   }
                 }
               }
             }
           }
           case mpls-route {
             description
               "MPLS route case.";
             leaf mpls-label {
               type uint32 ;



Wang, et al.           Expires September 18, 2016              [Page 35]
=0C
Internet-Draft                   RIB DM                       March 2016


               mandatory true;
               description
                 "The label used for matching.";
             }
           }
           case mac-route {
             description
               "MAC route case.";
             leaf mac-address {
               type uint32 ;
               mandatory true;
               description
                 "The MAC address used for matching.";
             }
           }
           case interface-route {
             description
               "Interface route case.";
             leaf interface-identifier {
               type if:interface-ref;
               mandatory true;
               description
                 "The interface used for matching.";
             }
           }
         }
       }
     }

     grouping route {
       description
         "The common attributes used for all types of routes.";
       uses route-prefix;
       container nexthop {
         description
           "The nexthop of the route.";
         uses nexthop;
       }
       container route-statistic {
         description
           "The statistic information of the route.";
         leaf route-state {
           type route-state-def;
           config false;
           description
             "Indicate a route's state: Active or Inactive.";
         }
         leaf route-installed-state {



Wang, et al.           Expires September 18, 2016              [Page 36]
=0C
Internet-Draft                   RIB DM                       March 2016


           type route-installed-state-def;
           config false;
           description
             "Indicate that a route's installed states:
              Installed or uninstalled.";
         }
         leaf route-reason {
           type route-change-reason-def;
           config false;
           description
             "Indicate the route reason.";
         }
       }
       container route-attributes {
         description
           "Route attributes.";
         uses route-attributes;
       }
       container route-vendor-attributes {
         description
           "Route vendor attributes.";
         uses route-vendor-attributes;
       }
     }

     grouping nexthop-list {
       description
         "A generic nexthop list.";
       list nexthop-list {
         key "nexthop-member-id";
         description
           "A list of nexthops.";
         leaf nexthop-member-id {
           type uint32;
           mandatory true;
           description
             "A nexthop identifier that points
              to a nexthop list member.
              A nexthop list member is a nexthop.";
         }
       }
     }

     grouping nexthop-list-p {
       description
         "A nexthop list with preference parameter.";
       list nexthop-list {
         key "nexthop-member-id";



Wang, et al.           Expires September 18, 2016              [Page 37]
=0C
Internet-Draft                   RIB DM                       March 2016


         description
           "A list of nexthops.";
         leaf nexthop-member-id {
           type uint32;
           mandatory true;
           description
             "A nexthop identifier that points
              to a nexthop list member.
              A nexthop list member is a nexthop.";
         }
         leaf nexthop-preference {
           type nexthop-preference-def;
           mandatory true;
           description
             "Nexthop-preference is used for protection schemes.
              It is an integer value between 1 and 99.  Lower
              value values are more preferred.  To download a
              primary/standby/tertiary group to the FIB, the
              nexthops that are resolved and are most=20
              preferred are selected.";
         }
       }
     }

     grouping nexthop-list-w {
       description
         "A nexthop list with weight parameter.";
       list nexthop-list {
         key "nexthop-member-id";
         description
           "A list of nexthop.";
         leaf nexthop-member-id {
           type uint32;
           mandatory true;
           description
             "A nexthop identifier that points
              to a nexthop list member.
              A nexthop list member is a nexthop.";
         }
         leaf nexthop-lb-weight {
           type nexthop-lb-weight-def;
           mandatory true;
           description
             "The weight of a nexthop of
              the load balance nexthops.";
         }
       }
     }



Wang, et al.           Expires September 18, 2016              [Page 38]
=0C
Internet-Draft                   RIB DM                       March 2016


     grouping nexthop {
       description
         "The nexthop structure.";
       leaf nexthop-id {
         type uint32;
         description
           "An identifier that refers to a nexthop.";
       }
       leaf sharing-flag {
         type boolean;
         description
           "To indicate whether a nexthop is sharable
            or non-sharable.
            true - sharable, means the nexthop can be shared
                   with other routes
            false - non-sharable, means the nexthop can not
                   be shared with other routes.";
       }
       choice nexthop-type {
         description
           "Nexthop type options.";
         case nexthop-base {
           container nexthop-base {
             description
               "The base nexthop.";
             uses nexthop-base;
           }
         }
         case nexthop-chain {
           if-feature nexthop-chain;
           container nexthop-chain {
             description
               "A chain nexthop.";
             uses nexthop-list;
           }
         }
         case nexthop-replicates {
           if-feature nexthop-replicates;
           container nexthop-replicates {
             description
               "A replicates nexthop.";
             uses nexthop-list;
           }
         }
         case nexthop-protection {
           if-feature nexthop-protection;
           container nexthop-protection {
             description



Wang, et al.           Expires September 18, 2016              [Page 39]
=0C
Internet-Draft                   RIB DM                       March 2016


               "A protection nexthop.";
             uses nexthop-list-p;
           }
         }
         case nexthop-load-balance {
           if-feature nexthop-load-balance;
           container nexthop-lbs {
             description
               "A load balance nexthop.";
             uses nexthop-list-w;
           }
         }
       }
     }

     grouping nexthop-base {
       description
         "The base nexthop.";
       choice nexthop-base-type {
         description
           "Nexthop base type options.";
         case special-nexthop {
           leaf special {
             type special-nexthop-def;
             description
               "A special nexthop.";
           }
         }
         case egress-interface-nexthop {
            leaf outgoing-interface {
              type if:interface-ref;
              mandatory true;
              description
                "The nexthop is an outgoing interface.";
            }
         }
         case ipv4-address-nexthop {
           leaf ipv4-address {
             type inet:ipv4-address;
             mandatory true;
             description
               "The nexthop is an IPv4 address.";
           }
         }
         case ipv6-address-nexthop {
           leaf ipv6-address {
             type inet:ipv6-address;
             mandatory true;



Wang, et al.           Expires September 18, 2016              [Page 40]
=0C
Internet-Draft                   RIB DM                       March 2016


             description
               "The nexthop is an IPv6 address.";
           }
         }
         case egress-interface-ipv4-nexthop {
           container egress-interface-ipv4-address{
             leaf outgoing-interface {
               type if:interface-ref;
               mandatory true;
               description
                 "Name of the outgoing interface.";
             }
             leaf ipv4-address {
               type inet:ipv4-address;
               mandatory true;
               description
                 "The nexthop points to an interface with
                  an IPv4 address.";
             }
             description
               "The nexthop is an egress-interface and an IP
                address. This can be used in cases e.g. where
                the IP address is a link-local address.";
           }
         }
         case egress-interface-ipv6-nexthop {
           container egress-interface-ipv6-address {
             leaf outgoing-interface {
               type if:interface-ref;
               mandatory true;
               description
                 "Name of the outgoing interface.";
             }
             leaf ipv6-address {
               type inet:ipv6-address;
               mandatory true;
               description
                 "The nexthop points to an interface with
                  an IPv6 address.";
             }
             description
               "The nexthop is an egress-interface and an IP
                address. This can be used in cases e.g. where
                the IP address is a link-local address.";
           }
         }
         case egress-interface-mac-nexthop {
           container egress-interface-mac-address {



Wang, et al.           Expires September 18, 2016              [Page 41]
=0C
Internet-Draft                   RIB DM                       March 2016


             leaf outgoing-interface {
               type if:interface-ref;
               mandatory true;
               description
                 "Name of the outgoing interface.";
             }
             leaf ieee-mac-address {
               type uint32;
               mandatory true;
               description
                 "The nexthop points to an interface with
                  a specific mac-address.";
             }
             description
               "The egress interface must be an ethernet
                interface. Address resolution is not required
                for this nexthop.";
           }
         }
         case tunnel-encap-nexthop {
           if-feature nexthop-tunnel;
           container tunnel-encap {
             uses tunnel-encap;
             description
               "This can be an encap representing an IP tunnel or
                MPLS tunnel or others as defined in info model.
                An optional egress interface can be chained to the
                tunnel encap to indicate which interface to send
                the packet out on.  The egress interface is useful
                when the network device contains Ethernet interfaces
                and one needs to perform address resolution for the
                IP packet.";
           }
         }
         case tunnel-decap-nexthop {
           if-feature nexthop-tunnel;
           container tunnel-decap {
             uses tunnel-decap;
             description
               "This is to specify decapsulating a tunnel header.";
           }
         }
         case logical-tunnel-nexthop {
           if-feature nexthop-tunnel;
           container logical-tunnel {
             uses logical-tunnel;
             description
               "This can be a MPLS LSP or a GRE tunnel (or others



Wang, et al.           Expires September 18, 2016              [Page 42]
=0C
Internet-Draft                   RIB DM                       March 2016


                as defined in this document), that is represented
                by a unique identifier (e.g. name).";
           }
         }
         case rib-name-nexthop {
           leaf rib-name {
             type string;
             description
               "A nexthop pointing to a rib indicates that the
                route lookup needs to continue in the specified
                rib. This is a way to perform chained lookups.";
           }
         }
         case nexthop-identifier {
           leaf nexthop-ref {
             type nexthop-ref;
             mandatory true;
             description
               "A nexthop reference that points to a nexthop.";
           }
         }
       }
     }

     grouping route-vendor-attributes {
       description
         "Route vendor attributes.";
     }

     grouping logical-tunnel {
       description
         "A logical tunnel that is identified
          by a type and a tunnel name.";
       leaf tunnel-type {
         type tunnel-type-def;
         mandatory true;
         description
           "A tunnel type.";
       }
       leaf tunnel-name {
         type string;
         mandatory true;
         description
           "A tunnel name that points to a logical tunnel.";
       }
     }

     grouping ipv4-header {



Wang, et al.           Expires September 18, 2016              [Page 43]
=0C
Internet-Draft                   RIB DM                       March 2016


       description
         "The IPv4 header encapsulation information.";
       leaf src-ipv4-address {
         type inet:ipv4-address;
         mandatory true;
         description
           "The source ip address of the header.";
       }
       leaf dest-ipv4-address {
         type inet:ipv4-address;
         mandatory true;
         description
           "The destination ip address of the header.";
       }
       leaf protocol {
         type uint8;
         mandatory true;
         description
           "The protocol id of the header.";
       }
       leaf ttl {
         type uint8;
         description
           "The TTL of the header.";
       }
       leaf dscp {
         type uint8;
         description
           "The DSCP field of the header.";
       }
     }

     grouping ipv6-header {
       description
         "The IPv6 header encapsulation information.";
       leaf src-ipv6-address {
         type inet:ipv6-address;
         mandatory true;
         description
           "The source ip address of the header.";
       }
       leaf dest-ipv6-address {
         type inet:ipv6-address;
         mandatory true;
         description
           "The destination ip address of the header.";
       }
       leaf next-header {



Wang, et al.           Expires September 18, 2016              [Page 44]
=0C
Internet-Draft                   RIB DM                       March 2016


         type uint8;
         mandatory true;
         description
           "The next header of the IPv6 header.";
       }
       leaf traffic-class {
         type uint8;
         description
           "The traffic class value of the header.";
       }
       leaf flow-label {
         type uint16;
         description
           "The flow label of the header.";
       }
       leaf hop-limit {
         type uint8;
         description
           "The hop limit the header.";
       }
     }

     grouping nvgre-header {
       description
         "The NvGRE header encapsulation information.";
       choice nvgre-type {
         description
           "NvGRE can use eigher IPv4
            or IPv6 header for encapsulation.";
         case ipv4 {
           uses ipv4-header;
         }
         case ipv6 {
           uses ipv6-header;
         }
       }
       leaf virtual-subnet-id {
         type uint32;
         mandatory true;
         description
           "The subnet identifier of the NvGRE header.";
       }
       leaf flow-id {
         type uint16;
         description
           "The flow identifier of the NvGRE header.";
       }
     }



Wang, et al.           Expires September 18, 2016              [Page 45]
=0C
Internet-Draft                   RIB DM                       March 2016


     grouping vxlan-header {
       description
         "The VxLAN encapsulation header information.";
       choice vxlan-type {
         description
           "NvGRE can use eigher IPv4
            or IPv6 header for encapsulation.";
         case ipv4 {
           uses ipv4-header;
         }
         case ipv6 {
           uses ipv6-header;
         }
       }
       leaf vxlan-identifier {
         type uint32;
         mandatory true;
         description
           "The VxLAN identifier of the VxLAN header.";
       }
     }

     grouping gre-header {
       description
         "The GRE encapsulation header information.";
       choice dest-address-type {
         description
           "GRE options: IPv4 and IPv6";
         case ipv4 {
           leaf ipv4-dest {
             type inet:ipv4-address;
             mandatory true;
             description
               "The destination ip address of the GRE header.";
           }
         }
         case ipv6 {
           leaf ipv6-dest {
             type inet:ipv6-address;
             mandatory true;
             description
               "The destination ip address of the GRE header.";
           }
         }
       }
       leaf protocol-type {
         type uint16;
         mandatory true;



Wang, et al.           Expires September 18, 2016              [Page 46]
=0C
Internet-Draft                   RIB DM                       March 2016


         description
           "The protocol type of the GRE header.";
       }
       leaf key {
         type uint64;
         description
           "The GRE key of the GRE header.";
       }
     }

     grouping mpls-header {
       description
         "The MPLS encapsulation header information.";
       list label-operations {
         key "label-oper-id";
         description
           "Label operations.";
         leaf label-oper-id {
           type uint32;
           description
             "An optional identifier that points
              to a label operation.";
         }
         choice label-actions {
           description
             "Label action options.";
           case label-push {
             container label-push {
               description
                 "Label push operation.";
               leaf label {
                 type uint32;
                 mandatory true;
                 description
                   "The label to be pushed.";
               }
               leaf s-bit {
                 type boolean;
                 description
                   "The s-bit of the label to be pushed. ";
               }
               leaf tc-value {
                 type uint8;
                 description
                   "The traffic class value of the label to be pushed.";
               }
               leaf ttl-value {
                 type uint8;



Wang, et al.           Expires September 18, 2016              [Page 47]
=0C
Internet-Draft                   RIB DM                       March 2016


                 description
                   "The TTL value of the label to to be pushed.";
               }
             }
           }
           case label-swap {
             container label-swap {
               description
                 "Label swap operation.";
               leaf in-label {
                 type uint32;
                 mandatory true;
                 description
                   "The label to be swapped.";
               }
               leaf out-label {
                 type uint32;
                 mandatory true;
                 description
                   "The out MPLS label.";
               }
               leaf ttl-action {
                 type ttl-action-def;
                 description
                   "The label ttl actions:
                    - No-action, or
                    - Copy to inner label,or
                    - Decrease (the in label) by 1 and
                      copy to the out label.";
               }
             }
           }
         }
       }
     }

     grouping tunnel-encap{
       description
         "Tunnel encapsulation inforamtion.";
       choice tunnel-type {
         description
           "Tunnel options for next-hops.";
         case ipv4 {
           if-feature ipv4-tunnel;
           container ipv4-header {
             uses ipv4-header;
             description
               "IPv4 header.";



Wang, et al.           Expires September 18, 2016              [Page 48]
=0C
Internet-Draft                   RIB DM                       March 2016


           }
         }
         case ipv6 {
           if-feature ipv6-tunnel;
           container ipv6-header {
             uses ipv6-header;
             description
               "IPv6 header.";
           }
         }
         case mpls {
           if-feature mpls-tunnel;
           container mpls-header {
             uses mpls-header;
             description
               "MPLS header.";
           }
         }
         case gre {
           if-feature gre-tunnel;
           container gre-header {
             uses gre-header;
             description
               "GRE header.";
           }
         }
         case nvgre {
           if-feature nvgre-tunnel;
           container nvgre-header {
             uses nvgre-header;
             description
               "NvGRE header.";
           }
         }
         case vxlan {
           if-feature vxlan-tunnel;
           container vxlan-header {
             uses vxlan-header;
             description
               "VxLAN header.";
           }
         }
       }
     }

     grouping tunnel-decap {
       description
         "Tunnel decapsulation inforamtion.";



Wang, et al.           Expires September 18, 2016              [Page 49]
=0C
Internet-Draft                   RIB DM                       March 2016


       choice tunnel-type {
         description
           "Nexthop tunnel type options.";
         case ipv4 {
           if-feature ipv4-tunnel;
           container ipv4-decap {
             description
               "IPv4 decap.";
             leaf ipv4-decap  {
               type tunnel-decap-action-def;
               mandatory true;
               description
                 "IPv4 decap operations.";
             }
             leaf ttl-action {
               type ttl-action-def;
               description
                 "The ttl actions:
                  no-action or copy to inner header.";
             }
           }
         }
         case ipv6 {
           if-feature ipv6-tunnel;
           container ipv6-decap {
             description
               "IPv6 decap.";
             leaf ipv6-decap {
               type tunnel-decap-action-def;
               mandatory true;
               description
                 "IPv6 decap operations.";
             }
             leaf hop-limit-action {
               type hop-limit-action-def;
               description
                 "The hop limit actions:
                  no-action or copy to inner header.";
             }
           }
         }
         case mpls {
           if-feature mpls-tunnel;
           container label-pop {
             description
               "MPLS decap.";
             leaf label-pop {
               type mpls-label-action-def;



Wang, et al.           Expires September 18, 2016              [Page 50]
=0C
Internet-Draft                   RIB DM                       March 2016


               mandatory true;
               description
                 "Pop a label from the label stack.";
             }
             leaf ttl-action {
               type ttl-action-def;
               description
                 "The label ttl action.";
             }
           }
         }
       }
     }

     grouping route-attributes {
       description
         "Route attributes.";
       leaf route-preference {
         type uint32;
         mandatory true;
         description
           "ROUTE_PREFERENCE: This is a numerical value that
            allows for comparing routes from different
            protocols.  Static configuration is also
            considered a protocol for the purpose of this
            field.  It iss also known as administrative-distance.
            The lower the value, the higher the preference.";
       }
       leaf local-only {
         type boolean ;
         mandatory true;
         description
           "Indicate whether the attributes is local only.";
       }
       container address-family-route-attributes{
         description
           "Address family related route attributes.";
         choice route-type {
           description
             "Address family related route attributes.";
           case ip-route-attributes {
           }
           case mpls-route-attributes {
           }
           case ethernet-route-attributes {
           }
         }
       }



Wang, et al.           Expires September 18, 2016              [Page 51]
=0C
Internet-Draft                   RIB DM                       March 2016


     }

     container routing-instance {
       description
         "A routing instance, in the context of
          the RIB information model, is a collection
          of RIBs, interfaces, and routing parameters";
       leaf name {
         type string;
         mandatory true;
         description
           "The name of the routing instance.This MUST
            be unique across all routing instances in
            a given network device.";
       }
       list interface-list {
         key "name";
         description
           "This represents the list of interfaces associated
            with this routing instance. The interface list helps
            constrain the boundaries of packet forwarding.
            Packets coming on these interfaces are directly
            associated with the given routing instance. The
            interface list contains a list of identifiers, with
            each identifier uniquely identifying an interface.";
         leaf name {
           type if:interface-ref;
           description
             "A reference to the name of a network layer interface.";
         }
       }
       leaf router-id {
         type yang:dotted-quad;
         description
           "Router ID - 32-bit number in the form of a dotted quad.";
       }
       leaf lookup-limit {
         type uint8;
         description
           "A limit on how many levels of a lookup can be performed.";
       }
       list rib-list {
         key "name";
         description
           "A list of RIBs that are associated with the routing
            instance.";
         leaf name {
           type string;



Wang, et al.           Expires September 18, 2016              [Page 52]
=0C
Internet-Draft                   RIB DM                       March 2016


           mandatory true;
           description
             "A reference to the name of each rib.";
         }
         leaf rib-family {
           type rib-family-def;
           mandatory true;
           description
             "The address family of a rib.";
         }
         leaf ip-rpf-check {
           type boolean;
           description
             "Each RIB can be optionally associated with a
              ENABLE_IP_RPF_CHECK attribute that enables Reverse
              path forwarding (RPF) checks on all IP routes in that
              RIB.  Reverse path forwarding (RPF) check is used to
              prevent spoofing and limit malicious traffic.";
         }
         list route-list {
           key "route-index";
           description
             "A list of routes of a rib.";
           uses route;
         }
       }
     }

     //RPC Operations
     rpc rib-add {
       description
         "To add a rib to a instance";
       input {
         leaf rib-name {
           type string;
           mandatory true;
           description
             "A reference to the name of the rib
              that is to be added.";
         }
         leaf rib-family {
           type rib-family-def;
           mandatory true;
           description
             "The address family of the rib.";
         }
         leaf ip-rpf-check {
           type boolean;



Wang, et al.           Expires September 18, 2016              [Page 53]
=0C
Internet-Draft                   RIB DM                       March 2016


           description
             "Each RIB can be optionally associated with a
              ENABLE_IP_RPF_CHECK attribute that enables Reverse
              path forwarding (RPF) checks on all IP routes in that
              RIB.  Reverse path forwarding (RPF) check is used to
              prevent spoofing and limit malicious traffic.";
         }
       }
       output {
         leaf result {
           type boolean;
           mandatory true;
           description
             "Return the result of the rib-add operation.
              true  - success;
              false - failed";
         }
         leaf reason {
           type string;
           description
             "The specific reason that causes the failure.";
         }
       }
     }

     rpc rib-delete {
       description
         "To delete a rib from a routing instance.
          After deleting the rib, all routes installed
          in the rib will be deleted as well.";
       input {
         leaf rib-name {
           type string;
           mandatory true;
           description
             "A reference to the name of the rib
              that is to be deleted.";
         }
       }
       output {
         leaf result {
           type boolean;
           mandatory true;
           description
             "Return the result of the rib-delete operation.
              true  - success;
              false - failed";
         }



Wang, et al.           Expires September 18, 2016              [Page 54]
=0C
Internet-Draft                   RIB DM                       March 2016


         leaf reason {
           type string;
           description
             "The specific reason that causes failure.";
         }
       }
     }

     grouping route-operation-state {
       description
         "Route operation state.";
       leaf success-count {
         type uint32;
         mandatory true;
         description
           "The numbers of routes that are successfully
            added/deleted/updated.";
       }
       leaf failed-count {
         type uint32;
         mandatory true;
         description
           "The numbers of the routes that are failed
            to be added/deleted/updated.";
       }
       container failure-detail {
         description
           "The failure detail reflects the reason why a route
            operation fails. It is a array that includes the route
            index and error code of the failed route.";
         list failed-routes {
            key "route-index";
            description
             "The list of failed routes.";
            leaf route-index {
             type uint32;
             description
               "The route index of the failed route.";
           }
           leaf error-code {
             type uint32;
             description
               "The error code that reflects the failure reason.";
           }
         }
       }
     }




Wang, et al.           Expires September 18, 2016              [Page 55]
=0C
Internet-Draft                   RIB DM                       March 2016


     rpc route-add {
       description
         "To add a route or a list of route to a rib";
       input {
         leaf return-failure-detail {
           type boolean;
           default false;
           description
             "Whether return the failure detail.
              true  - return the failure detail;
              false - do not return the failure detail;
              the default is false.";
         }
         leaf rib-name {
           type string;
           mandatory true;
           description
             "A reference to the name of a rib.";
         }
         container routes {
           description
             "The routes to be added to the rib.";
           list route-list {
             key "route-index";
             description
               "The list of routes to be added.";
             uses route-prefix;
             container route-attributes {
               uses route-attributes;
               description
                 "The route attributes.";
             }
             container route-vendor-attributes {
               if-feature route-vendor-attributes;
               uses route-vendor-attributes;
               description
                 "The route vendor attributes.";
             }
             container nexthop {
               uses nexthop;
               description
                 "The nexthop of the added route.";
             }
           }
         }
       }
       output {
         uses route-operation-state;



Wang, et al.           Expires September 18, 2016              [Page 56]
=0C
Internet-Draft                   RIB DM                       March 2016


       }
     }

     rpc route-delete {
       description
         "To delete a route or a list of route from a rib";
       input {
         leaf return-failure-detail {
           type boolean;
           default false;
           description
             "Whether return the failure detail.
              true  - return the failure detail;
              false - do not return the failure detail;
              the default is false.";
         }
         leaf rib-name {
           type string;
           mandatory true;
           description
             "A reference to the name of a rib.";
         }
         container routes {
           description
             "The routes to be added to the rib.";
           list route-list{
             key "route-index";
             description
               "The list of routes to be deleted.";
             uses route-prefix;
           }
         }
       }
       output {
         uses route-operation-state;
       }
     }

     grouping route-update-options {
       description
         "Update options:
          1. update the nexthop
          2. update the route attributes
          3. update the route-vendor-attributes.";
       choice update-options {
         description
           "Update options:
            1. update the nexthop



Wang, et al.           Expires September 18, 2016              [Page 57]
=0C
Internet-Draft                   RIB DM                       March 2016


            2. update the route attributes
            3. update the route-vendor-attributes.";
         case update-nexthop {
           container updated-nexthop {
             uses nexthop;
             description
               "The nexthop used for updating.";
           }
         }
         case update-route-attributes {
           container updated-route-attr {
             uses route-attributes;
             description
               "The route attributes used for updating.";
           }
         }
         case update-route-vendor-attributes {
           container updated-route-vendor-attr {
             uses route-vendor-attributes;
             description
               "The vender route attributes used for updating.";
           }
         }
       }
     }

     rpc route-update {
       description
         "To update a route or a list of routes of a rib.
          The inputs:
            1. The match conditions, could be:
              a. route prefix, or
              b. route attributes, or
              c. nexthop;
            2. The update parameters to be used:
              a. new nexthop;
              b. new route attributes;nexthop
          Actions:
            1. update the nexthop
            2. update the route attributes
          The outputs:
            success-count - the number of routes updated;
            failed-count - the number of routes fail to update
            failure-detail - the detail failure info.
          ";
       input {
         leaf return-failure-detail {
           type boolean;



Wang, et al.           Expires September 18, 2016              [Page 58]
=0C
Internet-Draft                   RIB DM                       March 2016


           default false;
           description
             "Whether return the failure detail.
              true  - return the failure detail;
              false - do not return the failure detail;
              the default is false.";
         }
         leaf rib-name {
           type string;
           mandatory true;
           description
             "A reference to the name of a rib.";
         }
         choice match-options {
           description
             "Match options.";
           case match-route-prefix {
             description
               "Update the routes that match route
                prefix(es) condition.";
             container input-routes {
               description
                 "The matched routes to be updated.";
               list route-list {
                 key "route-index";
                 description
                   "The list of routes to be updated.";
                 uses route-prefix;
                 uses route-update-options;
               }
             }
           }
           case match-route-attributes {
             description
               "Update the routes that match the
                route attributes condition.";
             container input-route-attributes {
               description
                 "The route attributes are used for matching.";
               uses route-attributes;
             }
             container update-parametors {
               description
                 "Update options:
                  1. update the nexthop
                  2. update the route attributes
                  3. update the route-vendor-attributes.";
               uses route-update-options;



Wang, et al.           Expires September 18, 2016              [Page 59]
=0C
Internet-Draft                   RIB DM                       March 2016


             }
           }
           case match-route-vendor-attributes {
             if-feature route-vendor-attributes;
             description
               "Update the routes that match the
                vendor attributes condition";
             container input-route-vendor-attributes {
               description
                 "The vendor route attributes are used for matching.";
               uses route-vendor-attributes;
             }
             container update-parameters-vendor {
               description
                 "Update options:
                  1. update the nexthop
                  2. update the route attributes
                  3. update the route-vendor-attributes.";
               uses route-update-options;
             }
           }
           case match-nexthop {
             description
               "Update the routes that match the nexthop.";
             container input-nexthop {
               description
                 "The nexthop used for matching.";
               uses nexthop;
             }
             container update-parameters-nexthop {
               description
                 "Update options:
                  1. update the nexthop
                  2. update the route attributes
                  3. update the route-vendor-attributes.";
               uses route-update-options;
             }
           }
         }
       }
       output {
         uses route-operation-state;
       }
     }

     rpc nh-add {
       description
         "To add a nexthop to a rib.



Wang, et al.           Expires September 18, 2016              [Page 60]
=0C
Internet-Draft                   RIB DM                       March 2016


          Inputs parameters:
            1. rib name
            2. nexthop;
          Actions:
            Add the nexthop to the rib
          Outputs:
            1.Operation result:
              true  - success
              false - failed;
            2. nexthop identifier.";
       input {
         leaf rib-name {
           type string;
           mandatory true;
           description
             "A reference to the name of a rib.";
         }
         uses nexthop;
       }
       output {
         leaf result {
           type boolean;
           mandatory true;
           description
             "Return the result of the rib-add operation.
              true  - success;
              false - failed;";
         }
         leaf reason {
           type string;
           description
             "The specific reason that causes the failure.";
         }
         leaf nexthop-id {
           type uint32;
           description
             "A nexthop identifer that is allocated to the nexthop.";
         }
       }
     }

     rpc nh-delete {
       description
         "To delete a nexthop from a rib";
       input {
         leaf rib-name {
           type string;
           mandatory true;



Wang, et al.           Expires September 18, 2016              [Page 61]
=0C
Internet-Draft                   RIB DM                       March 2016


           description
             "A reference to the name of a rib.";
         }
         uses nexthop;
       }
       output {
         leaf result {
           type boolean;
           mandatory true;
           description
             "Return the result of the rib-add operation.
              true  - success;
              false - failed.";
         }
         leaf reason {
           type string;
           description
             "The specific reason that causes the failure.";
         }
       }
     }

     //Notifications
     notification nexthop-resolution-status-change {
       description
         "Nexthop resolution status (resolved/unresolved)
          notification.";
       container nexthop{
         description
           "The nexthop.";
         uses nexthop;
       }
       leaf nexthop-state {
         type nexthop-state-def;
         mandatory true;
         description
           "Nexthop resolution status (resolved/unresolved)
            notification.";
       }
     }

     notification route-change {
       description
         "Route change notification.";
       leaf rib-name {
         type string;
         mandatory true;
         description



Wang, et al.           Expires September 18, 2016              [Page 62]
=0C
Internet-Draft                   RIB DM                       March 2016


           "A reference to the name of a rib.";
       }
       leaf rib-family {
         type rib-family-def;
         mandatory true;
         description
           "A reference to address family of a rib.";
       }
       uses route-prefix;
       leaf route-installed-state {
         type route-installed-state-def;
         mandatory true;
         description
           "Indicates whether the route got installed in the FIB.";
       }
       leaf route-state {
         type route-state-def;
         mandatory true;
         description
           "Indicates whether a route is active or inactive.";
       }
       list route-change-reasons {
         key "route-change-reason";
         description
           "The reasons that cause the route change. A route
            change that may result from several reasons. For
            example, a nexthop becoming resolved will make a
            route A active which is of better preference than
            a currently active route B, which results in the
            route A being installed";
         leaf route-change-reason {
           type route-change-reason-def;
           mandatory true;
           description
             "The reason that causes the route change.";
         }
       }
     }
   }

   <CODE ENDS>

4.  IANA Considerations

   This document requests to register a URI in the "ns" registry within =
the "IETF XML registry"
   [RFC3688]:





Wang, et al.           Expires September 18, 2016              [Page 63]
=0C
Internet-Draft                   RIB DM                       March 2016


    --------------------------------------------------------------------
    URI: urn:ietf:params:xml:ns:yang:ietf-i2rs-rib
    Registrant Contact: The IESG.
    XML: N/A, the requested URI is an XML namespace.
    --------------------------------------------------------------------

   This document requests to register a YANG module in the "YANG Module
   Names registry" [RFC6020]:

    --------------------------------------------------------------------
    name:         ietf-i2rs-rib
    namespace:    urn:ietf:params:xml:ns:yang:ietf-i2rs-rib
    prefix:       iir
    reference:    RFC XXXX
    --------------------------------------------------------------------

5.  Security Considerations

   This document introduces no extra new security threat and SHOULD
   follow the security requirements as stated in
   [I-D.ietf-i2rs-architecture].

6.  Contributors

   The following individuals also contribute to this document.

   o  Zekun He, Tencent Holdings Ltd

   o  Sujian Lu, Tencent Holdings Ltd

   o  Jeffery Zhang, Juniper Networks

7.  Acknowledgements

   The authors would like to thank Chris Bowers for his review,
   suggestion and comments to this document.

8.  References

8.1.  Normative References

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119,
              DOI 10.17487/RFC2119, March 1997,
              <http://www.rfc-editor.org/info/rfc2119>.






Wang, et al.           Expires September 18, 2016              [Page 64]
=0C
Internet-Draft                   RIB DM                       March 2016


   [RFC3688]  Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688,
              DOI 10.17487/RFC3688, January 2004,
              <http://www.rfc-editor.org/info/rfc3688>.

   [RFC6020]  Bjorklund, M., Ed., "YANG - A Data Modeling Language for
              the Network Configuration Protocol (NETCONF)", RFC 6020,
              DOI 10.17487/RFC6020, October 2010,
              <http://www.rfc-editor.org/info/rfc6020>.

   [RFC6991]  Schoenwaelder, J., Ed., "Common YANG Data Types",
              RFC 6991, DOI 10.17487/RFC6991, July 2013,
              <http://www.rfc-editor.org/info/rfc6991>.

8.2.  Informative References

   [I-D.ietf-i2rs-architecture]
              Atlas, A., Halpern, J., Hares, S., Ward, D., and T.
              Nadeau, "An Architecture for the Interface to the Routing
              System", draft-ietf-i2rs-architecture-13 (work in
              progress), February 2016.

   [I-D.ietf-i2rs-rib-info-model]
              Bahadur, N., Kini, S., and J. Medved, "Routing Information
              Base Info Model", draft-ietf-i2rs-rib-info-model-08 (work
              in progress), October 2015.

   [I-D.ietf-i2rs-usecase-reqs-summary]
              Hares, S. and M. Chen, "Summary of I2RS Use Case
              Requirements", draft-ietf-i2rs-usecase-reqs-summary-02
              (work in progress), March 2016.

Authors' Addresses

   Lixing Wang
   Individual

   Email: wang_little_star@sina.com


   Hariharan Ananthakrishnan
   Packet Design

   Email: hari@packetdesign.com








Wang, et al.           Expires September 18, 2016              [Page 65]
=0C
Internet-Draft                   RIB DM                       March 2016


   Mach(Guoyi) Chen
   Huawei

   Email: mach.chen@huawei.com


   Amit Dass
   Ericsson
   Torshamnsgatan 48.
   Stockholm  16480
   Sweden

   Email: amit.dass@ericsson.com


   Sriganesh Kini
   Ericsson

   Email: sriganesh.kini@ericsson.com


   Nitin Bahadur
   Bracket Computing

   Email: nitin_bahadur@yahoo.com


























Wang, et al.           Expires September 18, 2016              [Page 66]

--Apple-Mail=_AFF5F2DF-B671-42BD-885B-3FAB9441256F--


From nobody Sat Jun  4 04:36:37 2016
Return-Path: <7riw77@gmail.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 13BC812D1DB for <i2rs@ietfa.amsl.com>; Sat,  4 Jun 2016 04:36:35 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.45
X-Spam-Level: 
X-Spam-Status: No, score=-2.45 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
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 mylqWLtww0yM for <i2rs@ietfa.amsl.com>; Sat,  4 Jun 2016 04:36:33 -0700 (PDT)
Received: from mail-yw0-x22b.google.com (mail-yw0-x22b.google.com [IPv6:2607:f8b0:4002:c05::22b]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 1156312D0C5 for <i2rs@ietf.org>; Sat,  4 Jun 2016 04:36:33 -0700 (PDT)
Received: by mail-yw0-x22b.google.com with SMTP id x189so102865092ywe.3 for <i2rs@ietf.org>; Sat, 04 Jun 2016 04:36:33 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;  h=from:to:cc:references:in-reply-to:subject:date:message-id :mime-version:content-transfer-encoding:thread-index :content-language; bh=PPdZFaFZzra1lq/n2G41e4s8A/R1dQWjPWFM3Qxx5kw=; b=P3Z8I5gxtwfcHxALeIG8zMMN1l6arIyp74zfsYtnknKNJlxTlZUMybbYqPuUfzNiqz HJGzLrGXu35pabTGByPZXBGHnlTHLc90HI+GvQ9lZw6WGep7tGTZW+xVSjb3lvtFqkrR jCltGN5g45tEe0g4E+0HnfyevI8Cn8QpRCvZ5V8lrlCoXkHil6An5ftU05rinTxfUDOe TMCR1Sd96xXVkCIvzglK5NyTRrHmjEH4dOYI2oQ5oR90yQcMF1FLfm8xVG/GBaZSQ4s7 Q9zMlu7N3gLagbJLsLLIS+n9nbAGynFybcQ6AsxIaYschDYWNVgBhxY9WgJqyigqyt4C pcuQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:references:in-reply-to:subject:date :message-id:mime-version:content-transfer-encoding:thread-index :content-language; bh=PPdZFaFZzra1lq/n2G41e4s8A/R1dQWjPWFM3Qxx5kw=; b=QahmzjET546purs+6sEaP3ve9kCrsOYvA926odJmc6Also1tMTJIEt0vuztkul4Jw6 SVk5FfFfsIrVEo5uvWSb+Wk/+VFqAHrHXhXWe/c9pFl9gaKggS+t8gfbay/nFfL5hGi5 +ScCqPnxC99cz/bWV0IeMDbcpvMR0DBik4oz+FlHxtNZfRE6sIP5GlsjbmRe0Pg4dlM/ 2oPRgEAdbCFPcoU1HNjdh3wA5YKYPQloKpjQ08jTjLguCTf7K3aqX+zAsohjne40APKj u8KoHcNMV8ypMNoNSWX4TrnCLbXlS/PgV/wFBH2u45ZCS1Pa3yxjXQXehn0NemB8Qwll KH/w==
X-Gm-Message-State: ALyK8tLV0UY5BdLnaj7lFjmGHHh18e6wF2Qb5bNLqkxKBz7ReOsRj3a2I4QZYpgfAZ9+Uw==
X-Received: by 10.37.208.21 with SMTP id h21mr5286697ybg.90.1465040192359; Sat, 04 Jun 2016 04:36:32 -0700 (PDT)
Received: from Russ (108-78-210-25.lightspeed.chrlnc.sbcglobal.net. [108.78.210.25]) by smtp.gmail.com with ESMTPSA id w124sm5948610ywb.36.2016.06.04.04.36.31 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sat, 04 Jun 2016 04:36:31 -0700 (PDT)
From: "Russ White" <7riw77@gmail.com>
To: "'Jeffrey Haas'" <jhaas@pfrc.org>, "'Sue Hares'" <shares@ndzh.com>
References: <CAG4d1rf+EH2EtweMfqQNjCyKKYk7YvEXMf0_CmeLFak5mW4q1Q@mail.gmail.com> <003c01d1bd11$3aa30170$afe90450$@ndzh.com> <E2285DA0-8D0C-44AD-BC39-9C585135CD39@pfrc.org>
In-Reply-To: <E2285DA0-8D0C-44AD-BC39-9C585135CD39@pfrc.org>
Date: Sat, 4 Jun 2016 07:36:28 -0400
Message-ID: <029e01d1be55$55c5a990$0150fcb0$@gmail.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
X-Mailer: Microsoft Outlook 16.0
Thread-Index: AQI9yJK319dlmGFLYtujqOA0MSM1zgGcXalNAwbXviye2//F4A==
Content-Language: en-us
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/1VzPoPgyZ6xI6UgVov_QB0GMM2Q>
Cc: i2rs@ietf.org, 'Alia Atlas' <akatlas@gmail.com>
Subject: Re: [i2rs] new I2RS chair: Russ White replacing Jeff Haas
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Sat, 04 Jun 2016 11:36:35 -0000

+1 -- thanks for all the hard work, Jeff!

:-)

Russ

> -----Original Message-----
> From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Jeffrey Haas
> Sent: Thursday, June 2, 2016 5:11 PM
> To: Sue Hares <shares@ndzh.com>
> Cc: i2rs@ietf.org; Alia Atlas <akatlas@gmail.com>
> Subject: Re: [i2rs] new I2RS chair: Russ White replacing Jeff Haas
>=20
> Thanks!  It's been a pleasure to serve.
>=20
> While day-job pressures are having me step back from quite as much =
IETF for
> a while, that won't last forever. :-)
>=20
> -- Jeff
>=20
>=20
> 	On Jun 2, 2016, at 4:56 PM, Susan Hares <shares@ndzh.com
> <mailto:shares@ndzh.com> > wrote:
>=20
> 	+1 =E2=80=93 Jeff Haas has been insightful and brought the I2RS group =
a long
> way toward the goal of I2RS protocol requirements/protocol, and I2RS
> ephemeral models.
>=20
> 	Thanks Jeff!
>=20
> 	Sue
>=20
> 	From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Alia Atlas
> 	Sent: Thursday, June 02, 2016 4:50 PM
> 	To: i2rs@ietf.org <mailto:i2rs@ietf.org>
> 	Subject: [i2rs] new I2RS chair: Russ White replacing Jeff Haas
>=20
> 	I would like to announce that Russ White is replacing Jeff Haas
> 	as I2RS Chair.  I would like to thank Jeff for his efforts over the
> 	years in helping I2RS progress.
>=20
> 	Regards,
> 	Alia
> 	_______________________________________________
> 	i2rs mailing list
> 	i2rs@ietf.org <mailto:i2rs@ietf.org>
> 	https://www.ietf.org/mailman/listinfo/i2rs
>=20



From nobody Sat Jun  4 16:30:19 2016
Return-Path: <jefftant.ietf@gmail.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 1BF3012B043 for <i2rs@ietfa.amsl.com>; Sat,  4 Jun 2016 16:30:17 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.7
X-Spam-Level: 
X-Spam-Status: No, score=-2.7 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
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 hINLMjjtnf5i for <i2rs@ietfa.amsl.com>; Sat,  4 Jun 2016 16:30:15 -0700 (PDT)
Received: from mail-pf0-x22f.google.com (mail-pf0-x22f.google.com [IPv6:2607:f8b0:400e:c00::22f]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 6220D12B032 for <i2rs@ietf.org>; Sat,  4 Jun 2016 16:30:15 -0700 (PDT)
Received: by mail-pf0-x22f.google.com with SMTP id 62so55146470pfd.1 for <i2rs@ietf.org>; Sat, 04 Jun 2016 16:30:15 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;  h=mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=T0TEBV5xvK80cSMEngaVxTZtTjqWtIproDYSOmkAcfU=; b=Ho8VcQ9zMmW+zFOGSsemHhmIw51K0F6W63fdRgYWhaizQGImNwU5XNBM553KsiVCon i2tVQw+n+O0dGBwtKtkvNOxaTLHUq0g0plGScPpzFSJuJRdMamaPlZl6gJgXkGSUZ5l2 l765o5BYJCjR+j8nx7dCwGfBWpF3BhCXQg7HoII3jnJ3lS2Pj9nPNbfbQsgEfRaRv3ZC 7CdR1xYNkTwCZf5inJH3FMYsWrHCT1QkiZXizQMsp2jngl1VbmNCxEV2DxiFqSLjYmZ1 ZMb/o1WTiWsRwzW5qfihpb/DON8jG3LhOxkC/RxkIB7bgTT3GchOVruNYhc0vaPfmzHd XJGw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=T0TEBV5xvK80cSMEngaVxTZtTjqWtIproDYSOmkAcfU=; b=fN7IzQtv4+mqH+FrLtDyGBUGwHgMiFaueeCG3cFk9UqPDoEZC9TTI9Aqsb1RMyVQA2 wp6u6LHq18D1Zayv5nHH+M6YMzuuWjUHf21zE0gVMH22KhmvdIZYx4bIrzouYfw8z5LE Nx7gWAFsh/ofP9WvsFrbFXznDS2CIwMc89VbnUHiQIVoqwJ4n+P9K/0rtUfp14tatoiy jGQ08NOSpL7e2T/qLM+48fR1++CyFxst2pbPLGofnKgqE5+1McjSMC12P5Vs7PH6+gpg 6w1MjjhVEtkvuBzsVJDw7hBV9xb9Yf2eSx/E1pZWJDVTPH7mo2HbhEcfko/vKUwrbuTW CAng==
X-Gm-Message-State: ALyK8tJ17NYfu1vCDcqvF+FKoXHsqJSJVtyPTQLsZjkmUYH+oQKioeL3654d607nIoZ0CQ==
X-Received: by 10.98.93.145 with SMTP id n17mr15457158pfj.66.1465083014951; Sat, 04 Jun 2016 16:30:14 -0700 (PDT)
Received: from [10.129.196.122] ([166.170.39.165]) by smtp.gmail.com with ESMTPSA id m75sm17536297pfj.31.2016.06.04.16.30.14 (version=TLSv1/SSLv3 cipher=OTHER); Sat, 04 Jun 2016 16:30:14 -0700 (PDT)
Content-Type: text/plain; charset=windows-1251
Mime-Version: 1.0 (1.0)
From: Jeff Tantsura <jefftant.ietf@gmail.com>
X-Mailer: iPhone Mail (13F69)
In-Reply-To: <029e01d1be55$55c5a990$0150fcb0$@gmail.com>
Date: Sat, 4 Jun 2016 16:30:13 -0700
Content-Transfer-Encoding: quoted-printable
Message-Id: <5AD7CD85-7817-4C0A-97D3-1C5E6B940315@gmail.com>
References: <CAG4d1rf+EH2EtweMfqQNjCyKKYk7YvEXMf0_CmeLFak5mW4q1Q@mail.gmail.com> <003c01d1bd11$3aa30170$afe90450$@ndzh.com> <E2285DA0-8D0C-44AD-BC39-9C585135CD39@pfrc.org> <029e01d1be55$55c5a990$0150fcb0$@gmail.com>
To: Russ White <7riw77@gmail.com>
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/HZFG47A2ANZ4FRLd0Igg0isw07k>
Cc: Jeffrey Haas <jhaas@pfrc.org>, i2rs@ietf.org, Sue Hares <shares@ndzh.com>, Alia Atlas <akatlas@gmail.com>
Subject: Re: [i2rs] new I2RS chair: Russ White replacing Jeff Haas
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Sat, 04 Jun 2016 23:30:17 -0000

Thanks Jeff and welcome Russ!

Regards,
Jeff

> On Jun 4, 2016, at 4:36 AM, Russ White <7riw77@gmail.com> wrote:
>=20
>=20
> +1 -- thanks for all the hard work, Jeff!
>=20
> :-)
>=20
> Russ
>=20
>> -----Original Message-----
>> From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Jeffrey Haas
>> Sent: Thursday, June 2, 2016 5:11 PM
>> To: Sue Hares <shares@ndzh.com>
>> Cc: i2rs@ietf.org; Alia Atlas <akatlas@gmail.com>
>> Subject: Re: [i2rs] new I2RS chair: Russ White replacing Jeff Haas
>>=20
>> Thanks!  It's been a pleasure to serve.
>>=20
>> While day-job pressures are having me step back from quite as much IETF f=
or
>> a while, that won't last forever. :-)
>>=20
>> -- Jeff
>>=20
>>=20
>>    On Jun 2, 2016, at 4:56 PM, Susan Hares <shares@ndzh.com
>> <mailto:shares@ndzh.com> > wrote:
>>=20
>>    +1 =96 Jeff Haas has been insightful and brought the I2RS group a long=

>> way toward the goal of I2RS protocol requirements/protocol, and I2RS
>> ephemeral models.
>>=20
>>    Thanks Jeff!
>>=20
>>    Sue
>>=20
>>    From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Alia Atlas
>>    Sent: Thursday, June 02, 2016 4:50 PM
>>    To: i2rs@ietf.org <mailto:i2rs@ietf.org>
>>    Subject: [i2rs] new I2RS chair: Russ White replacing Jeff Haas
>>=20
>>    I would like to announce that Russ White is replacing Jeff Haas
>>    as I2RS Chair.  I would like to thank Jeff for his efforts over the
>>    years in helping I2RS progress.
>>=20
>>    Regards,
>>    Alia
>>    _______________________________________________
>>    i2rs mailing list
>>    i2rs@ietf.org <mailto:i2rs@ietf.org>
>>    https://www.ietf.org/mailman/listinfo/i2rs
>=20
>=20
> _______________________________________________
> i2rs mailing list
> i2rs@ietf.org
> https://www.ietf.org/mailman/listinfo/i2rs


From nobody Sun Jun  5 14:42:34 2016
Return-Path: <andy@yumaworks.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 CB72E12D636 for <i2rs@ietfa.amsl.com>; Sun,  5 Jun 2016 14:42:32 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.6
X-Spam-Level: 
X-Spam-Status: No, score=-2.6 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=yumaworks-com.20150623.gappssmtp.com
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 wzweP-zFF4FR for <i2rs@ietfa.amsl.com>; Sun,  5 Jun 2016 14:42:31 -0700 (PDT)
Received: from mail-yw0-x235.google.com (mail-yw0-x235.google.com [IPv6:2607:f8b0:4002:c05::235]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 7C03212D626 for <i2rs@ietf.org>; Sun,  5 Jun 2016 14:42:31 -0700 (PDT)
Received: by mail-yw0-x235.google.com with SMTP id c127so125073826ywb.1 for <i2rs@ietf.org>; Sun, 05 Jun 2016 14:42:31 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yumaworks-com.20150623.gappssmtp.com; s=20150623; h=mime-version:date:message-id:subject:from:to; bh=+EVjeFXe/25czphFIDtmFPnbRISq1/oXGvG1OjPSGvI=; b=NYakSRRWTyBP0uYWrmWE0Qwe67cMHbNTX97ySZUPA00kWHdBVlAmh2RamuUh1ZZ5d5 +DMZCwqRmeJzx9pCueZPNVG8iz8r0yM7RFlAvsK7c0QHX2eMMwSkfTzy8ok5XVvbg3hg 5+S7tyjtllsHdwlcPiKi4MhoOxQx6SMG0Em2e45ow+7C1ibyrVClJEaVxTBTOLKjjy3U /jCfSQJ30W6q5uPTT0Do2s89NxVa/pyT2qXPmUSszNdUK3xdJC3dZbvk73KR/2Bh/lP2 PsRZ32EjjinQhjquiLq0YWvRhrvaNodaEfMhBs4zQfwJooT/aoUkO990tspTCa31J/Sh eyAA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:date:message-id:subject:from:to; bh=+EVjeFXe/25czphFIDtmFPnbRISq1/oXGvG1OjPSGvI=; b=ZzbAmEcdUvPHneUsKsAMPlxNBTxWFziD/per9jwB0h4jQO2yDjlcfkSC1Bxw3Ib6GK TFqog3sAz5I0cqQMjzTSNq7/YTFyZQe7tXQP4qfkOwwlUf6vBS7ZSCvmD4QXPx+2O4s2 BtNkkeV+57lPyPdx2PnkoSN4AO3c4Ee3as7i7hqLMDwWQBAJTcXfdAhbSTC8iuDzeH67 veFl3aHBP0sP+pTGbU8HEqU5m/9CJlju0mKKUHZEyktklhxRCp3zvEOimPlLeOT6Y1qQ jBNp6YKEUBLF5V87Yiy60VzqkgvvDuuqxBtlvQXPhP9FBVAbW/W+Q0A9qP7OQMGuuDXy w4Tg==
X-Gm-Message-State: ALyK8tKWV2QHA9IRjcAQB10hexEqGSBu1uhiLNfqWccbkJgFLTu2pujwaGaqw7r5+CkTdLaRUuWPgAMi3j0PlQ==
MIME-Version: 1.0
X-Received: by 10.13.202.15 with SMTP id m15mr9172142ywd.259.1465162950741; Sun, 05 Jun 2016 14:42:30 -0700 (PDT)
Received: by 10.37.115.68 with HTTP; Sun, 5 Jun 2016 14:42:30 -0700 (PDT)
Date: Sun, 5 Jun 2016 14:42:30 -0700
Message-ID: <CABCOCHQAuhsngAKXE=-o=wWsv1u6BXDWCJ--0JJ4p5D0f2WY3Q@mail.gmail.com>
From: Andy Bierman <andy@yumaworks.com>
To: "i2rs@ietf.org" <i2rs@ietf.org>
Content-Type: multipart/alternative; boundary=001a11481ab637966005348ed5e3
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/tK_n7lFlIEyDOId66Y7BHvrjoOg>
Subject: [i2rs] YANG validation and opstate
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Sun, 05 Jun 2016 21:42:33 -0000

--001a11481ab637966005348ed5e3
Content-Type: text/plain; charset=UTF-8

Hi,

I don't really agree with idea that I2RS agents pick which
YANG statements they will implement, but I think there is
a way to handle this correctly in the datastore framework.

The proposed enumeration for server validation
capabilities (e.g., full, XPath, leafref) is not really needed.
This enum is too course-grained to be useful.

IMO it is better to say the server MAY do YANG validation
on the ephemeral datastore.  Whether or not the server uses
data from the ephemeral datastore is left as an implementation detail.
The server could use invalid input parameters or ignore them
or reject them in the first place.

The client needs to check operational state to know if/when the
ephemeral data was applied to the system.



Andy

--001a11481ab637966005348ed5e3
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">Hi,<div><br></div><div>I don&#39;t really agree with idea =
that I2RS agents pick which</div><div>YANG statements they will implement, =
but I think there is</div><div>a way to handle this correctly in the datast=
ore framework.</div><div><br></div><div>The proposed enumeration for server=
 validation</div><div>capabilities (e.g., full, XPath, leafref) is not real=
ly needed.</div><div>This enum is too course-grained to be useful.</div><di=
v><br></div><div>IMO it is better to say the server MAY do YANG validation<=
/div><div>on the ephemeral datastore.=C2=A0 Whether or not the server uses<=
/div><div>data from the ephemeral datastore is left as an implementation de=
tail.</div><div>The server could use invalid input parameters or ignore the=
m</div><div>or reject them in the first place.</div><div>=C2=A0</div><div>T=
he client needs to check operational state to know if/when the</div><div>ep=
hemeral data was applied to the system.</div><div><br></div><div><br></div>=
<div><br></div><div>Andy</div><div><br></div></div>

--001a11481ab637966005348ed5e3--


From nobody Mon Jun  6 02:19:35 2016
Return-Path: <mach.chen@huawei.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 CEE0B12D650; Mon,  6 Jun 2016 02:19:32 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.647
X-Spam-Level: 
X-Spam-Status: No, score=-5.647 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-1.426, SPF_PASS=-0.001] autolearn=ham autolearn_force=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 UbQn8rmdpgdr; Mon,  6 Jun 2016 02:19:29 -0700 (PDT)
Received: from lhrrgout.huawei.com (lhrrgout.huawei.com [194.213.3.17]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 452AF12D09F; Mon,  6 Jun 2016 02:19:28 -0700 (PDT)
Received: from 172.18.7.190 (EHLO lhreml703-cah.china.huawei.com) ([172.18.7.190]) by lhrrg02-dlp.huawei.com (MOS 4.3.7-GA FastPath queued) with ESMTP id CLL26800; Mon, 06 Jun 2016 09:19:25 +0000 (GMT)
Received: from SZXEMA412-HUB.china.huawei.com (10.82.72.71) by lhreml703-cah.china.huawei.com (10.201.5.104) with Microsoft SMTP Server (TLS) id 14.3.235.1; Mon, 6 Jun 2016 10:13:28 +0100
Received: from SZXEMA510-MBX.china.huawei.com ([169.254.3.42]) by SZXEMA412-HUB.china.huawei.com ([10.82.72.71]) with mapi id 14.03.0235.001; Mon, 6 Jun 2016 17:13:24 +0800
From: Mach Chen <mach.chen@huawei.com>
To: "John G.Scudder" <jgs@juniper.net>, "i2rs-chairs@ietf.org" <i2rs-chairs@ietf.org>, "draft-ietf-i2rs-rib-data-model@ietf.org" <draft-ietf-i2rs-rib-data-model@ietf.org>
Thread-Topic: Routing Directorate QA review of draft-ietf-i2rs-rib-data-model-05
Thread-Index: AQHRveUlQHwHhIXdD0CTsAKTcS0ELZ/bvPhw
Date: Mon, 6 Jun 2016 09:13:24 +0000
Message-ID: <F73A3CB31E8BE34FA1BBE3C8F0CB2AE28CC771CB@SZXEMA510-MBX.china.huawei.com>
References: <F9C09DAA-6540-4E0D-8A7C-63FB58B54B73@juniper.net>
In-Reply-To: <F9C09DAA-6540-4E0D-8A7C-63FB58B54B73@juniper.net>
Accept-Language: en-US, zh-CN
Content-Language: zh-CN
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-originating-ip: [10.111.102.135]
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-CFilter-Loop: Reflected
X-Mirapoint-Virus-RAPID-Raw: score=unknown(0), refid=str=0001.0A090205.5755401E.0059, ss=1, re=0.000, recu=0.000, reip=0.000,  cl=1, cld=1, fgs=0, ip=169.254.3.42, so=2013-06-18 04:22:30, dmn=2013-03-21 17:37:32
X-Mirapoint-Loop-Id: ed00fde3cd36bab5a0d699fe2ee567fe
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/M5jFgn9fsNtQ3DaHaMzsfvbDZ-E>
Cc: "rtg-dir@ietf.org" <rtg-dir@ietf.org>, "i2rs@ietf.org" <i2rs@ietf.org>
Subject: Re: [i2rs] Routing Directorate QA review of draft-ietf-i2rs-rib-data-model-05
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Mon, 06 Jun 2016 09:19:33 -0000

SGkgSm9obiwNCg0KTWFueSB0aGFua3MgZm9yIHRoZSBkZXRhaWxlZCByZXZpZXcgYW5kIGNvbW1l
bnRzIQ0KDQpQbGVhc2Ugc29tZSByZXNwb25zZSBpbmxpbmUuLi4NCg0KPiAtLS0tLU9yaWdpbmFs
IE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBKb2huIEcuU2N1ZGRlciBbbWFpbHRvOmpnc0BqdW5pcGVy
Lm5ldF0NCj4gU2VudDogU2F0dXJkYXksIEp1bmUgMDQsIDIwMTYgNjoxMyBBTQ0KPiBUbzogaTJy
cy1jaGFpcnNAaWV0Zi5vcmc7IGRyYWZ0LWlldGYtaTJycy1yaWItZGF0YS1tb2RlbEBpZXRmLm9y
Zw0KPiBDYzogcnRnLWRpckBpZXRmLm9yZzsgaTJyc0BpZXRmLm9yZw0KPiBTdWJqZWN0OiBSb3V0
aW5nIERpcmVjdG9yYXRlIFFBIHJldmlldyBvZiBkcmFmdC1pZXRmLWkycnMtcmliLWRhdGEtbW9k
ZWwtMDUNCj4gDQo+IEhlbGxvLA0KPiANCj4gSSBoYXZlIGJlZW4gc2VsZWN0ZWQgYXMgdGhlIFJv
dXRpbmcgRGlyZWN0b3JhdGUgUUEgcmV2aWV3ZXIgZm9yIHRoaXMgZHJhZnQuIE15DQo+IHJldmll
dyBpcyBiZWxvdy4NCj4gDQo+IFJlZ2FyZHMsDQo+IA0KPiAtLUpvaG4NCj4gDQo+IA0KPiBEb2N1
bWVudDogZHJhZnQtaWV0Zi1pMnJzLXJpYi1kYXRhLW1vZGVsLTA1DQo+IFJldmlld2VyOiBKb2hu
IFNjdWRkZXINCj4gUmV2aWV3IERhdGU6IEp1bmUgMywgMjAxNg0KPiANCj4gDQo+IFN1bW1hcnk6
DQo+IA0KPiBUaGUgZG9jdW1lbnQgaXMgcmVhc29uYWJseSB1bmRlcnN0YW5kYWJsZSwgYWx0aG91
Z2ggSSBkaWQgZmluZCBteXNlbGYgd2l0aCBhDQo+IGZhaXIgbnVtYmVyIG9mIHF1ZXN0aW9ucywg
d2hpY2ggSSd2ZSB3cml0dGVuIGJlbG93LiBBcyBub3RlZCBiZWxvdywgbWFueSBvZg0KPiB0aGVz
ZSBxdWVzdGlvbnMgbWF5IG9ubHkgaGF2ZSBhcmlzZW4gYmVjYXVzZSBJIGFtIG5vdCBza2lsbGVk
IGluIHRoZSBzdWJqZWN0DQo+IGFyZWEuIEkgZGlkIGZpbmQgb25lIG1ham9yIGlzc3VlLCB3aXRo
IHRoZSBTZWN1cml0eSBDb25zaWRlcmF0aW9ucyBzZWN0aW9uLCB3aGljaA0KPiB3aWxsIGNlcnRh
aW5seSBuZWVkIHRvIGJlIHJlc29sdmVkIHNvbWVob3cgYmVmb3JlIHRoZSBkb2N1bWVudCBpcyBw
cm9ncmVzc2VkLg0KPiANCj4gDQo+IENvbW1lbnRzOg0KPiANCj4gSW4gcHJlcGFyaW5nIG15IHJl
dmlldywgSSByZXZpZXdlZCB0aGUgZHJhZnQgaXRzZWxmLCBidXQgZGlkIG5vdCBjYXJlZnVsbHkg
cmVhZCBhbGwNCj4gdGhlIHJlZmVyZW5jZXMuIEFzIGEgcmVzdWx0LCBpdCdzIHBvc3NpYmxlIHNv
bWUgb2YgbXkgb2JzZXJ2YXRpb25zIG1pZ2h0IGJlIGluDQo+IHRoZSByb3VnaCwgd2hlbiB0YWtl
biBpbiBjb250ZXh0IG9mIHRoZSBmdWxsIGJvZHkgb2Ygd29yay4gSXQncyBhbHNvIHRoZSBjYXNl
IHRoYXQNCj4gSSBhbSBub3QgYW4gZXhwZXJpZW5jZWQgWWFuZyBwcmFjdGl0aW9uZXIsIHNvIHNv
bWUgcHJhY3RpY2VzIGFuZCBpZGlvbXMgdGhhdA0KPiBtYXkgYmUgd2VsbCBrbm93biBjb3VsZCBl
YXNpbHkgaGF2ZSBlc2NhcGVkIG1lLCBhbmQgYSBzaW1pbGFyIGRpc2NsYWltZXINCj4gYXBwbGll
cy4NCj4gDQo+IEZpbmFsbHksIEkgZGlkIG5vdCByZXZpZXcgU2VjdGlvbiAzLCBZQU5HIE1vZHVs
ZXMsIGluIGRldGFpbCwgYWx0aG91Z2ggSSBtYWRlIGENCj4gZmV3IHN1Z2dlc3Rpb25zLg0KPiAN
Cj4gDQo+IE1ham9yIElzc3VlczoNCj4gDQo+IDEuIFRoZXJlIGFyZSB0d28gcHJvYmxlbXMgd2l0
aCB0aGUgU2VjdXJpdHkgQ29uc2lkZXJhdGlvbnMgc2VjdGlvbi4gVGhlIGZpcnN0IGlzDQo+IHRo
YXQgdGhlIHNlY3Rpb24gaXNuJ3QgZ29vZCAoc29ycnkpLiBNb3JlIG9uIHRoaXMgYmVsb3cuIFRo
ZSBzZWNvbmQgaXMgdGhhdCBpdA0KPiByZWZlcmVuY2VzIHRoZSBpMnJzLWFyY2hpdGVjdHVyZSBk
b2N1bWVudCBub3JtYXRpdmVseSwgYnV0IHRoYXQgZG9jdW1lbnQgaXMNCj4gbGlzdGVkIHVuZGVy
IEluZm9ybWF0aXZlIFJlZmVyZW5jZXMuIFRoZSBzZWNvbmQgcHJvYmxlbSBpcyBlYXNpbHkgZml4
ZWQsIG9mDQo+IGNvdXJzZSwgYnkgc2ltcGx5IG1vdmluZyB0aGUgYXJjaGl0ZWN0dXJlIGRvY3Vt
ZW50IHRvIE5vcm1hdGl2ZSBSZWZlcmVuY2VzLg0KPiANCj4gIFRoZSBzZWN1cml0eSBzZWN0aW9u
LCBpbiBpdHMgZW50aXJldHksIGlzOg0KPiANCj4gICAgVGhpcyBkb2N1bWVudCBpbnRyb2R1Y2Vz
IG5vIGV4dHJhIG5ldyBzZWN1cml0eSB0aHJlYXQgYW5kIFNIT1VMRA0KPiAgICBmb2xsb3cgdGhl
IHNlY3VyaXR5IHJlcXVpcmVtZW50cyBhcyBzdGF0ZWQgaW4NCj4gICAgW0ktRC5pZXRmLWkycnMt
YXJjaGl0ZWN0dXJlXS4NCj4gDQo+IEhvd2V2ZXIsIGlmIEkgZ28gbG9vayBhdCB0aGUgYXJjaGl0
ZWN0dXJlIGRvY3VtZW50IHRvIHNlZSB3aGF0ICJ0aGUgc2VjdXJpdHkNCj4gcmVxdWlyZW1lbnRz
IiBhcmUgdGhhdCBJIGFtIHN1cHBvc2VkIHRvIGZvbGxvdywgSSBmaW5kIGEgZmFpcmx5IGxvbmcg
U2VjdXJpdHkNCj4gQ29uc2lkZXJhdGlvbnMgc2VjdGlvbiB3aGljaCBzdGF0ZXMgbm90aGluZyB0
aGF0IGZvcm1hbGx5IGFwcGVhcnMgdG8gYmUgYQ0KPiByZXF1aXJlbWVudC4gSXQgYWxzbyBzYXlz
IHRoYXQgaW5zdGFudGlhdGlvbnMgb2YgaTJycyB3aWxsIHByb3ZpZGUgbW9yZSBkZXRhaWxlZA0K
PiBhbmFseXNpcyBvZiBzZWN1cml0eSBwcm9wZXJ0aWVzLiBTaW5jZSB0aGlzIGRvY3VtZW50IGRv
ZXNuJ3QgZG8gdGhhdCwgdGhlcmUgbXVzdA0KPiBiZSBzb21lIG90aGVyIGkycnMgZG9jdW1lbnQg
dGhhdCBkb2VzLCByaWdodD8gQW5kIHRoaXMgZG9jdW1lbnQgc2hvdWxkDQo+IHJlZmVyZW5jZSB0
aGF0IG9uZT8NCj4gDQo+IEl0IHNlZW1zIHBlcmZlY3RseSByZWFzb25hYmxlIHRvIHN0YXRlIHRo
YXQgdGhpcyBkb2N1bWVudCBkb2Vzbid0IGludHJvZHVjZQ0KPiBhbnkgc2VjdXJpdHkgY29uc2lk
ZXJhdGlvbnMgb2YgaXRzIG93biwgYW5kIHRvIHJlZmVyZW5jZSBzb21lIGZvdW5kYXRpb25hbA0K
PiBkb2N1bWVudC4gSG93ZXZlciwgdGhlIGN1cnJlbnQgc2VjdXJpdHkgc2VjdGlvbiBkb2Vzbid0
IGRvIHRoYXQgZWZmZWN0aXZlbHksDQo+IGRvZXNuJ3QgcmVmZXJlbmNlIHRoZSBjb3JyZWN0IGRv
Y3VtZW50LCBhbmQgSSB3b3VsZG4ndCBleHBlY3QgaXQgdG8gc3Vydml2ZSBhDQo+IFNlY3VyaXR5
IERpcmVjdG9yYXRlIHJldmlldy4gU3VnZ2VzdGluZyBhIHJld3JpdGUgaXMgYmV5b25kIHRoZSBz
Y29wZSBvZiB0aGlzDQo+IFFBIHJldmlldywgc29ycnksIGJ1dCBvbmUgaXMgbmVlZGVkLiBJIGRv
bid0IHRoaW5rIGl0IG5lY2Vzc2FyaWx5IG5lZWRzIHRvIGJlIHZlcnkNCj4gbG9uZywgYnV0IGl0
IGRvZXMgbmVlZCB0byBjb3JyZWN0IHRoZXNlIGlzc3Vlcy4NCg0KVGhhbmtzIGZvciBwb2ludGlu
ZyB0aGlzIG91dCwgd2Ugd2lsbCByZXdyaXRlIHRoZSBzZWN1cml0eSBjb25zaWRlcmF0aW9uLg0K
DQo+IA0KPiANCj4gTWlub3IgSXNzdWVzOg0KPiANCj4gMS4gVGhlIGF1dGhvciBsaXN0IG9mIHNp
eCBwZW9wbGUgZXhjZWVkcyB0aGUgY3VycmVudCBSRkMgRWRpdG9yIGd1aWRhbmNlIG9mIGZpdmUN
Cj4gb3IgZmV3ZXIgbmFtZWQgYXV0aG9ycy4gU2VlIFJGQyA3MzIyOg0KPiANCj4gICBUaGUgdG90
YWwgbnVtYmVyIG9mIGF1dGhvcnMgb3IgZWRpdG9ycyBvbiB0aGUgZmlyc3QgcGFnZSBpcyBnZW5l
cmFsbHkNCj4gICBsaW1pdGVkIHRvIGZpdmUgaW5kaXZpZHVhbHMgYW5kIHRoZWlyIGFmZmlsaWF0
aW9ucy4gIElmIHRoZXJlIGlzIGENCj4gICByZXF1ZXN0IGZvciBtb3JlIHRoYW4gZml2ZSBhdXRo
b3JzLCB0aGUgc3RyZWFtLWFwcHJvdmluZyBib2R5IG5lZWRzDQo+ICAgdG8gY29uc2lkZXIgaWYg
b25lIG9yIHR3byBlZGl0b3JzIHNob3VsZCBoYXZlIHByaW1hcnkgcmVzcG9uc2liaWxpdHkNCj4g
ICBmb3IgdGhpcyBkb2N1bWVudCwgd2l0aCB0aGUgb3RoZXIgaW5kaXZpZHVhbHMgbGlzdGVkIGlu
IHRoZQ0KPiAgIENvbnRyaWJ1dG9ycyBvciBBY2tub3dsZWRnZW1lbnRzIHNlY3Rpb24uDQoNCldp
bGwgZGlzY3VzcyB0aGlzIGFtb25nIGF1dGhvciBhbmQgZm9sbG93IHRoZSBndWlkYW5jZSBmcm9t
IHRoZSBXRyBjaGFpcnMgYW5kIEFELg0KDQo+IA0KPiAyLiBBIG51bWJlciBvZiBzeW1ib2xzIGFy
ZSBub3QgZGVmaW5lZCBpbiBTZWN0aW9uIDEuMiwgVHJlZSBEaWFncmFtcy4gSSBub3RpY2VkDQo+
IHRoZSBmb2xsb3dpbmcgYXMgbmVlZGluZyB0byBiZSBkZWZpbmVkOiB7IH0geCB3IG4uDQoNCk9L
Lg0KDQo+IA0KPiAzLiBQb3NzaWJseSB0aGlzIGlzIGNvdmVyZWQgaW4gYSBjb21wYW5pb24gZG9j
dW1lbnQgb3IgaXMgd2VsbC1rbm93biB0byB0aG9zZQ0KPiBiZXR0ZXIgdmVyc2VkIGluIFlhbmcg
dGhhbiBtZSwgYnV0IEkgZm91bmQgbXlzZWxmIHdvbmRlcmluZyB3aGF0IHRoZSBkZWZhdWx0DQo+
IHZhbHVlcyBmb3Igb3B0aW9uYWwgaXRlbXMgd2VyZS4gSW4gcGFydGljdWxhciwgZXZlcnkgd3Jp
dGFibGUgYm9vbGVhbiBpcyBvcHRpb25hbC4NCj4gTWFueSBoYXZlIG5vIGRlZmF1bHQgdmFsdWUs
IGZvciBleGFtcGxlIHNoYXJpbmctZmxhZyBoYXMgbm9uZS4gQnV0DQo+IHJldHVybi1mYWlsdXJl
LWRldGFpbCBkb2VzIGhhdmUgYSBkZWZhdWx0IG9mIGZhbHNlLiBJcyBpdCBva2F5IHRoYXQgc29t
ZSBvZiB0aGVzZQ0KPiBvcHRpb25hbCBpdGVtcyBoYXZlIG5vIGRlZmF1bHQgdmFsdWVzPyBJcyB0
aGUgZXhwZWN0ZWQgYmVoYXZpb3INCj4gaW1wbGVtZW50YXRpb24tc3BlY2lmaWMgaW4gdGhhdCBj
YXNlPw0KDQpZZXMsIGFuIG9wdGlvbmFsIGl0ZW0gY2FuIGhhdmUgbm8gYSBkZWZhdWx0IHZhbHVl
IGFuZCB0aGUgYmVoYXZpb3IgaXMgaW1wbGVtZW50YXRpb24tc3BlY2lmaWMuIA0KDQo+IA0KPiA0
LiAicm91dGUtc3RhdGlzdGljIiBzaG91bGQgcHJvYmFibHkgYmUgInJvdXRlLXN0YXRpc3RpY3Mi
IChwbHVyYWwpLiBUaGVuIGFnYWluLA0KPiBsb29raW5nIGF0IHRoZSBjb250ZW50IG9mICJyb3V0
ZS1zdGF0aXN0aWMiLCBpdCdzIG5vdCB3aGF0IEkgd291bGQgcmVmZXIgdG8gYXMNCj4gc3RhdGlz
dGljcyBhdCBhbGwuIFRoZSBjb250ZW50IGlzIHN0YXRlIChhY3RpdmUgb3IgaW5hY3RpdmUpLCBp
bnN0YWxsYXRpb24gc3RhdGUNCj4gKGluc3RhbGxlZCwgb3Igbm90KSBhbmQgcmVhc29uIChJIGd1
ZXNzIHRoaXMgaW5kaWNhdGVzIHRoZSByZWFzb24gdGhlIHJvdXRlDQo+IGVudGVyZWQgaXRzIGN1
cnJlbnQgc3RhdGUsIHNlZSBhbHNvIGNvbW1lbnQgMTEgYmVsb3cpLiBOb25lIG9mIHRoaXMgc2Vl
bXMgbGlrZQ0KPiBzdGF0aXN0aWNhbCBkYXRhIHRvIG1lLiBNYXliZSAic3RhdHVzIj8NCg0KVGhl
IG5hbWUgaXMgaW5oZXJpdGVkIGZyb20gdGhlIGluZm9ybWF0aW9uIG1vZGVsLCAic3RhdHVzIiBz
b3VuZHMgbGlrZSBhIGJldHRlciBuYW1lLg0KDQo+IA0KPiA1LiAgVGhlIG1vZGVsIGRvZXNuJ3Qg
c2VlbSB0byBjYXB0dXJlIGFueSByZXN0cmljdGlvbnMgb24gaG93IG5leHRob3BzIGNhbg0KPiBi
ZSBjaGFpbmVkLiBQcmVzdW1hYmx5IHRoZXJlIGFyZSBzb21lIHJlc3RyaWN0aW9ucywgZm9yIGV4
YW1wbGUgaXQgd291bGRuJ3QNCj4gc2VlbSB0byBtYWtlIGEgd2hvbGUgbG90IG9mIHNlbnNlIHRv
IGNoYWluIGVncmVzcy1pbnRlcmZhY2UgYW5kDQo+IGVncmVzcy1pbnRlcmZhY2UtaXB2NC1uZXh0
aG9wIHRvZ2V0aGVyLCB0aGUgbW9yZSBzbyBzaW5jZSB0aGUgcmVzcGVjdGl2ZQ0KPiBvdXRnb2lu
Zy1pbnRlcmZhY2VzIG1pZ2h0IGNvbmZsaWN0LiBQb3NzaWJseSBjYXB0dXJpbmcgdGhpcyBpcyBv
dXRzaWRlIHRoZSBzY29wZQ0KPiBvZiB0aGlzIGRvY3VtZW50Lg0KDQpJIHRlbmQgdG8gYmVsaWV2
ZSB0aGlzIHNob3VsZCBiZSBvdXQgb2Ygc2NvcGUuIEhvdyB0byB1c2UgdGhlIG5leHRob3BzIGNo
YWluIGRlcGVuZHMgb24gdGhlIHVzZSBjYXNlLiBTZWN0aW9uIDcuMiBvZiBodHRwczovL3Rvb2xz
LmlldGYub3JnL2h0bWwvZHJhZnQtaWV0Zi1pMnJzLXJpYi1pbmZvLW1vZGVsLTA4IGdpdmVzIGEg
c2V0IG9mIHVzZSBjYXNlcyB0byBkZXNjcmliZSBob3cgdG8gdXNlIG5leHQgaG9wIGNvbWJpbmF0
aW9ucy4NCg0KPiANCj4gNi4gSW4gdmFyaW91cyBwYXJ0cyBvZiB0aGUgbW9kZWwsIGl0IGFwcGVh
cnMgdG8gYmUgcG9zc2libGUgdG8gcmVmZXJlbmNlIGFuIG9iamVjdA0KPiBlaXRoZXIgYnkgYW4g
b3BhcXVlIGlkZW50aWZpZXIgb3IgYnkgdmFsdWUuIE1heWJlIHRoaXMgaXMgYSBjb21tb24gaWRp
b20sIGJ1dCBpdA0KPiB3YXNuJ3Qgb2J2aW91cyB0byBtZSB3aHkgdGhpcyBzaG91bGQgYmUsIGl0
IHNlZW1zIHJlZHVuZGFudC4gRm9yIGV4YW1wbGUsDQo+IGV2ZXJ5IHJvdXRlIGhhcyBhIHJvdXRl
LWluZGV4LCBidXQgd2hlbiBJIHdhbnQgdG8gb3BlcmF0ZSBvbiBhIHJvdXRlIHdpdGgNCj4gcm91
dGUtdXBkYXRlIG9yIHJvdXRlLWRlbGV0ZSwgSSBoYXZlIHRvIGlkZW50aWZ5IGl0IGJ5IHJpYiBu
YW1lIGFuZCBwcmVmaXguIFRoZQ0KPiB1dGlsaXR5IG9mIHRoZSBpbmRleCwgdGhlbiwgaXMgbm90
IGNsZWFyIHRvIG1lLiBBbm90aGVyIGV4YW1wbGUgaXMgaW4gU2VjdGlvbiAyLjU6DQoNClNvbWUg
b2YgdGhlIGluZGV4L2lkZW50aWZpZXIgYXJlIHJlYWxseSB1c2VsZXNzIGV4Y2VwdCBmb3Igc2F0
aXNmeWluZyB0aGUgZ3JhbW1hciByZXF1aXJlbWVudCBvZiBZQU5HLCBmb3IgZXhhbXBsZSwgYSBs
aXN0IG11c3QgaGF2ZSBhIGtleSB0aGF0IGNhbiBiZSB1c2VkIHRvIHVuaXF1ZWx5IGlkZW50aWZ5
IGFuIGl0ZW0gb2YgdGhlIGxpc3QuIFNvbWUgb2YgdGhlIHJlZmVyZW5jZS9pZGVudGlmaWVyIGhh
dmUgdGhlaXIgdXNhZ2UsIGZvciBleGFtcGxlLCB0aGUgbmV4dGhvcCBpZGVudGlmaWVyIHRoYXQg
aXMgZGVzaWduZWQgdG8gcHJvdmlkZSBhIGxldmVsIG9mIGluZGlyZWN0aW9uIGhlbmNlIHRvIGlt
cHJvdmUgdGhlIHJvdXRlL25leHRob3AgdXBkYXRlIGVmZmljaWVuY3kuIA0KDQo+IA0KPiAgICBv
ICBuaC1kZWxldGU6IERlbGV0ZSBhIG5leHRob3AgZnJvbSBhIHJpYi4gIEEgbmFtZQ0KPiAgICAg
ICBvZiBhIHJpYiBhbmQgYSBuZXh0aG9wIG9yIG5leHRob3AgaWRlbnRpZmllciBhcmUgcGFzc2Vk
IGFzIHRoZQ0KPiAgICAgICBpbnB1dCBwYXJhbWV0ZXJzLg0KPiANCj4gQWdhaW4sIGl0J3MgdW5j
bGVhciB0byBtZSB3aHkgaXQncyBkZXNpcmFibGUgdG8gYmUgYWJsZSB0byBkZWxldGUgdGhlIE5I
IGJ5IGVpdGhlcg0KPiByZWZlcmVuY2Ugb3IgdmFsdWUuDQoNCkZvciB0aGUgTkggY2FzZSwgSU1I
TywgZWl0aGVyIHRoZSByZWZlcmVuY2Ugb3IgdmFsdWUgY2FuIGJlIHVzZWQgZm9yIE5IIGRlbGV0
aW9uLiBXaGljaCBpcyB1c2VkIGlzIHVwIHRvIHRoZSBjbGllbnQvY29udHJvbGxlci4NCg0KPiAN
Cj4gNy4gSXQgd2FzIHVuY2xlYXIgdG8gbWUgd2h5IGEgcmVhc29uIGlzIHJlcXVpcmVkIGZvciBh
IHJvdXRlIGNoYW5nZSBub3RpZmljYXRpb24sDQo+IGJ1dCBub3QgZm9yIGEgbmV4dCBob3AgY2hh
bmdlIG5vdGlmaWNhdGlvbi4NCg0KU2VlbXMgdGhhdCBhbiAiaW50ZXJmYWNlIiAocGh5c2ljYWwg
b3IgbG9naWMpIHVwL2Rvd24gaXMgdGhlIG9ubHkgcmVhc29uIGZvciB0aGUgc3RhdHVzIGNoYW5n
ZSBvZiBhIG5leHQgaG9wLiBBcmUgdGhlcmUgYW55IG90aGVyIHJlYXNvbnM/DQoNCj4gDQo+IDgu
IFRoaXMgY29uc3RydWN0IGFwcGVhcnMgdGhyZWUgdGltZXM6DQo+IA0KPiAgICAgICAgbGVhZiBy
aWItZmFtaWx5IHsNCj4gICAgICAgICAgdHlwZSByaWItZmFtaWx5LWRlZjsNCj4gICAgICAgICAg
bWFuZGF0b3J5IHRydWU7DQo+ICAgICAgICAgIGRlc2NyaXB0aW9uDQo+ICAgICAgICAgICAgIkEg
cmVmZXJlbmNlIHRvIGFkZHJlc3MgZmFtaWx5IG9mIGEgcmliLiI7DQo+ICAgICAgICB9DQo+IA0K
PiBIb3dldmVyLCBpbiB0d28gbG9jYXRpb25zIHRoZSBkZXNjcmlwdGlvbiBpcyAiVGhlIGFkZHJl
c3MgZmFtaWx5IG9mIGEgcmliLiIgIGFuZA0KPiBpbiB0aGUgdGhpcmQsIHRoZSAicmVmZXJlbmNl
IHRvIiBsYW5ndWFnZSBpcyB1c2VkLiBQcm9iYWJseSB0aGlzIGlzIGp1c3QgYSBjdXQgYW5kDQo+
IHBhc3RlIGVycm9yLCBidXQgYmVjYXVzZSBhIHJlZmVyZW5jZSBpcyBkaWZmZXJlbnQgZnJvbSB0
aGUgdGhpbmcgaXRzZWxmDQo+IChwcmVzdW1hYmx5IGEgdmFsdWUpLCBtYXliZSB0aGUgY2hvaWNl
IG9mIGxhbmd1YWdlIHJlYWxseSBkb2VzIGluZGljYXRlIHNvbWUNCj4gc3VidGxlIGRpZmZlcmVu
Y2U/IEJlY2F1c2UgSSBoYXZlbid0IGV4aGF1c3RpdmVseSByZXZpZXdlZCBTZWN0aW9uIDMsIEkg
dGhpbmsgaXQNCj4gaXMgbGlrZWx5IG1vcmUgc3VjaCBpbmNvbnNpc3RlbmNpZXMgZXhpc3QsIGFu
ZCBJIHRoaW5rIGl0IHdvdWxkIGJlIGdvb2QgdG8gY2hlY2sNCj4gZm9yIHRoZW0uDQoNCk9LLg0K
DQo+IA0KPiA5LiAiVG8gZG93bmxvYWQgTg0KPiAgICAgICAgICAgbmV4dGhvcHMgdG8gdGhlIEZJ
QiwgdGhlIE4gbmV4dGhvcHMgd2l0aCB0aGUgbG93ZXN0DQo+ICAgICAgICAgICB2YWx1ZSBhcmUg
c2VsZWN0ZWQuIg0KPiANCj4gV2hhdCBpZiBtb3JlIHRoYW4gTiBuZXh0aG9wcyBhcmUgdGllZCBm
b3IgaGF2aW5nIHRoZSBsb3dlc3QgdmFsdWU/IEFzIHdyaXR0ZW4sDQo+IHRoaXMgaXMgdW5kZXJz
cGVjaWZpZWQuDQoNCldpbGwgYWRkIHNvbWUgdGV4dCB0byBjbGFyaWZ5IHRoaXMgcG90ZW50aWFs
IGNhc2UuDQo+IA0KPiAxMC4gICAgICAgICAgIk5ob3AtbGItd2VpZ2h0IGlzIGEgbnVtYmVyIGJl
dHdlZW4gMSBhbmQgOTkuIjsNCj4gDQo+IEZpcnN0LCB0aGlzIGRvZXNuJ3QgdXNlIHRoZSBjb3Jy
ZWN0IG5hbWUgb2YgdGhlIHZhbHVlIGl0IGlzIGRlc2NyaWJpbmcuIFNlY29uZCwgaXQncw0KPiBu
b3QgYW4gYWRlcXVhdGUgZGVzY3JpcHRpb24uIChJdCB0ZWxscyB0aGUgcmVhZGVyIG5vdGhpbmcg
aGVscGZ1bC4pDQoNCk9LLCB3aWxsIGZpeCBpdC4NCj4gDQo+IDExLiAgICAgICAgICAgICAgIklu
ZGljYXRlIHRoZSByb3V0ZSByZWFzb24uIg0KPiANCj4gQWdhaW4sIHRoaXMgZG9lc24ndCB0ZWxs
IHRoZSByZWFkZXIgYW55dGhpbmcgaGVscGZ1bC4gUmVhc29uIGZvciB3aGF0Pw0KDQpPSywgd2ls
bCBmaXggaXQuDQoNCj4gDQo+IA0KPiANCj4gTml0czoNCg0KT0ssIHdpbGwgZml4IHRoZSBmb2xs
b3dpbmcgbml0cy4NCg0KPiANCj4gSSBmb3VuZCBhIG51bWJlciBvZiBlZGl0b3JpYWwgbml0cy4g
UmF0aGVyIHRoYW4gZW51bWVyYXRpbmcgdGhlbSBoZXJlLCBJIGVkaXRlZA0KPiBteSBzdWdnZXN0
ZWQgY2hhbmdlcyBpbnRvIGEgY29weSBvZg0KPiBodHRwczovL3d3dy5pZXRmLm9yZy9pZC9kcmFm
dC1pZXRmLWkycnMtcmliLWRhdGEtbW9kZWwtMDUudHh0LiAgSSBoYXZlIHByb3ZpZGVkDQo+IGJv
dGggdGhhdCBjb3B5LCBhbmQgYSBkaWZmIGFnYWluc3QgdGhlIG9yaWdpbmFsLCBpbiBhdHRhY2ht
ZW50cy4gUGxlYXNlIHJldmlldw0KPiBteSBjaGFuZ2VzIGFuZCBkb24ndCBqdXN0IGFjY2VwdCB0
aGVtIGJsaW5kbHksIHdoaWxlIEkgaW50ZW5kZWQgdGhhdCBhbGwgbXkNCj4gY2hhbmdlcyB3ZXJl
IHN0cmljdGx5IGVkaXRvcmlhbCB0aGVyZSdzIGFsd2F5cyB0aGUgY2hhbmNlIEkgYWx0ZXJlZCB0
aGUgbWVhbmluZw0KPiB1bmludGVudGlvbmFsbHkuDQo+IA0KPiBJbiBhZGRpdGlvbiwgSSBub3Rp
Y2VkIHNvbWUgb3RoZXIgaXNzdWVzIHdoZXJlIEknbSBub3Qgc3VyZSBob3cgdGhleSBzaG91bGQg
YmUNCj4gcmVzb2x2ZWQ6DQo+IA0KPiAxLiBUaGUgdGVybSAiUklCIiBpcyB1c2VkIGluY29uc2lz
dGVudGx5IHRocm91Z2hvdXQgdGhlIGRvY3VtZW50LiBJbiBzb21lDQo+IHBsYWNlcyBpdCdzIGNh
cGl0YWxpemVkLCBhcyAiUklCIi4gSW4gb3RoZXJzLCBpdCdzIGxvd2VyY2FzZSwgYXMgInJpYiIs
IG9yIGV2ZW4NCj4gbWl4ZWQtY2FzZSwgIlJpYiIuIEkgZGlkbid0IGNoYW5nZSB0aGlzIGluIG15
IG1hcmtlZCB1cCBjb3B5LCBmb3IgdHdvIHJlYXNvbnMuDQo+IEZpcnN0LCBnbG9iYWwgc2VhcmNo
IGFuZCByZXBsYWNlIHdvdWxkIG5vdCBiZSBzdHJhaWdodGZvcndhcmQsIGJlY2F1c2UgdGhlDQo+
IHN0cmluZyBhbHNvIG9jY3VycyB3aGVyZSBsb3dlcmNhc2UgaXMgY2xlYXJseSBhcHByb3ByaWF0
ZSwgZm9yIGV4YW1wbGUNCj4gImlldGYtaTJycy1yaWIiICh0aGVyZSBhcmUgMzMxIG9jY3VycmVu
Y2VzIG9mIFJJQiBpbiBhbnkgY29tYmluYXRpb24gb2YgdXBwZXINCj4gYW5kIGxvd2VyY2FzZSBi
eSBteSBjb3VudCkuIFNlY29uZCwgSSBkaWRuJ3QgY29tcGxldGVseSBkaXNjb3VudCB0aGUgcG9z
c2liaWxpdHkNCj4gb2YgdGhlIGF1dGhvcnMgYXJlIGRlbGliZXJhdGVseSB1c2luZyB0aGUgbG93
ZXJjYXNlIHRlcm0gc29tZXRpbWVzLiBJDQo+IHJlY29tbWVuZCBlaXRoZXIgdGhlIHRlcm0gc2hv
dWxkIGJlIHVwcGVyY2FzZSAoIlJJQiIpIHRocm91Z2hvdXQsIG9yIGlmIGENCj4gZGlzdGluY3Rp
b24gYmV0d2VlbiAiUklCIiBhbmQgInJpYiIgaXMgaW50ZW5kZWQsIHRoYXQgc2hvdWxkIGJlIGV4
cGxhaW5lZCBpbiB0aGUNCj4gRGVmaW5pdGlvbnMgYW5kIEFjcm9ueW1zIHNlY3Rpb24uDQo+IA0K
PiAyLiAidGhlcmUgc2hvdWxkIGJlIGEgbGltaXRhdGlvbiBvbiBob3cgbWFueSBsZXZlbHMgb2Yg
bG9va3VwIGNhbiBiZSBwcmFjdGljYWxseQ0KPiBwZXJmb3JtZWQuIiBJIHN1c3BlY3Qgd2hhdCB0
aGUgYXV0aG9ycyBtZWFuIGhlcmUgaXMgInRoZXJlIG1pZ2h0IGJlIGENCj4gbGltaXRhdGlvbiIs
IG1lYW5pbmcgYSBwcmFjdGljYWwgbGltaXRhdGlvbiBtaWdodCBleGlzdCAoaW5kZWVkLCBwcm9i
YWJseSBkb2VzDQo+IGV4aXN0KSBpbiB0aGUgaGFyZHdhcmUgaW1wbGVtZW50aW5nIGZvcndhcmRp
bmcuIEkndmUgc3VnZ2VzdGVkIHRoYXQgY2hhbmdlIGluDQo+IG15IG1hcmtlZCB1cCBjb3B5LiBI
b3dldmVyLCBtYXkgYmUgdGhlIGF1dGhvcnMgcmVhbGx5IGRvIG1lYW4gdGhhdCB0aGVyZQ0KPiBu
ZWVkcyB0byBiZSBhIGNvbmZpZ3VyYWJsZSBsaW1pdGF0aW9uIHRvIGFsbG93IHJlc3RyaWN0aW9u
IHRvIHNvbWV0aGluZyBsZXNzIHRoYW4NCj4gd2hhdCB0aGUgaGFyZHdhcmUgaW1wbGVtZW50cy4g
VGhlIGZhY3QgdGhhdCBsb29rdXAtbGltaXQgaXMgYSBydyB2YWx1ZQ0KPiBzZWVtcyB0byBzdXBw
b3J0IHRoaXMg4oCTIEkgZG9uJ3Qgc2VlIHdoeSB0aGF0IHdvdWxkIGJlIGEgY29uZmlndXJhYmxl
IHZhbHVlIGlmIGl0DQo+IHJlcHJlc2VudHMgYW4gZXhwcmVzc2lvbiBvZiB3aGF0IHRoZSBoYXJk
d2FyZSBpcyBjYXBhYmxlIG9mLiBPbiB0aGUgb3RoZXINCj4gaGFuZCwgdGhlIGRvY3VtZW50IGlz
IHNpbGVudCBhYm91dCB3aGF0IGFuIGltcGxlbWVudGF0aW9uIGlzIHN1cHBvc2VkIHRvIGRvDQo+
IHdpdGggdGhhdCB2YWx1ZSBvbmNlIGNvbmZpZ3VyZWQuIChNYXliZSBvbmUgb2YgdGhlIGNvbXBh
bmlvbiBkb2N1bWVudHMNCj4gZXhwbGFpbnM/KQ0KPiANCj4gMy4gVGhlIHJpYi1saXN0IHVuZGVy
IHJvdXRpbmctaW5zdGFuY2UgaXMgaW5kZXhlZCBieSBhIGZpZWxkIGNhbGxlZCAibmFtZSIuIFVu
ZGVyDQo+IHRoZSBub3RpZmljYXRpb24gaGllcmFyY2h5IHRoZSBjb3JyZXNwb25kaW5nIGZpZWxk
IGlzIGNhbGxlZCAicmliLW5hbWUiLiAgaXQNCj4gd29ya3MgYXMgd3JpdHRlbiwgb2YgY291cnNl
LCBidXQgaXQgY2F1c2VkIGEgbGl0dGxlIGRpc3NvbmFuY2UgZm9yIG1lLiAoU2VlICM0DQo+IGJl
bG93IGFzIHdlbGwuKQ0KPiANCj4gNC4gVGhlIG5hbWUgInJpYi1mYW1pbHkiIHdhc24ndCBzZWxm
LWV4cGxhbmF0b3J5IGZvciBtZS4gInJpYi1hZGRyZXNzLWZhbWlseSINCj4gd291bGQgaGF2ZSBi
ZWVuLiBGb3IgdGhhdCBtYXR0ZXIsIHdoeSBwcmVmaXggInJpYi0iIG9udG8gaXQgc2luY2UgeW91
IGhhdmVuJ3QNCj4gcHJlZml4ZWQgInJpYi0iIG9udG8gdGhlIG90aGVyIHZhcmlhYmxlcyAoc2Vl
ICMzIGFib3ZlIGFzIHdlbGwpLg0KPiANCj4gNS4gU2hvdWxkbid0IHRoZXJlIGJlIGFuIGVsbGlw
c2lzIHJpZ2h0IGJlbG93IHJ3LXJvdXRlLXZlbmRvci1hdHRyaWJ1dGVzIGluDQo+IEZpZ3VyZSAx
Pw0KPiANCj4gNi4gSW4gU2VjdGlvbiAyLjEsIGNhcGFiaWxpdHkgbmVnb3RpYXRpb24gaXMgcmVm
ZXJyZWQgdG8gdHdpY2UsIG9uY2UgaW4gdGhlIGZpcnN0DQo+IHBhcmFncmFwaCBhbmQgb25jZSBp
biB0aGUgbGFzdC4gSSB0aGluayB5b3UgcHJvYmFibHkgbWVhbiBjYXBhYmlsaXR5DQo+IGFkdmVy
dGlzZW1lbnQuIFRoZSBkaXN0aW5jdGlvbiBpcyB0aGF0IGluIGFkdmVydGlzZW1lbnQsIGFuIGVu
dGl0eSAodGhlIHJvdXRlcikgaXMNCj4gdGVsbGluZyBhbm90aGVyIGVudGl0eSB3aGF0IGl0J3Mg
Y2FwYWJpbGl0aWVzIGFyZS4gVGhlcmUgaXMgbm90aGluZyB0byBuZWdvdGlhdGUNCj4gYWJvdXQg
cGVyIHNlLCBpZiB0aGUgb3RoZXIgZW50aXR5IGRvZXNuJ3QgbGlrZSB0aGUgcm91dGVyJ3MgY2Fw
YWJpbGl0aWVzLCBpdCBjYW4ndA0KPiB2ZXJ5IHdlbGwgY29udmluY2UgdGhlIHJvdXRlciB0byBj
aGFuZ2UgdGhlbS4gSSBoYXZlIGNoYW5nZWQgIm5lZ290aWF0aW9uIiB0bw0KPiAiYWR2ZXJ0aXNl
bWVudCIgaW4gbXkgbWFya2VkIHVwIGNvcHkgYWNjb3JkaW5nbHksIGlmIHRoYXQncyBub3Qgcmln
aHQgeW91DQo+IHNob3VsZCByZXZlcnQgaXQgYnV0IGFsc28gY2xhcmlmeS4NCj4gDQo+IDcuICJu
ZXh0aG9wLWxicyIgaXMgYSBzdHJhbmdlIGNob2ljZSBvZiBuYW1lIGZvciBsb2FkLWJhbGFuY2lu
Zy4gSSB3b3VsZCBzdWdnZXN0DQo+IGVpdGhlciBkcm9wcGluZyB0aGUgUyBhbmQganVzdCBtYWtp
bmcgaXQgIm5leHRob3AtbGIiLCBvciBzcGVsbGluZyBpdCBvdXQgaW4gZnVsbCwNCj4gIm5leHRo
b3AtbG9hZC1iYWxhbmNlIi4gQnV0IHNvbWV0aGluZyB0aGUgY2FzdWFsIHJlYWRlciBpcyBsaWtl
bHkgdG8gc2VlIGFzDQo+ICJuZXh0IGhvcCBwb3VuZHMiICgibGJzIiBpcyB0aGUgY29tbW9uIGFi
YnJldmlhdGlvbiBmb3IgdGhlIEVuZ2xpc2ggc3lzdGVtDQo+IHVuaXQgb2Ygd2VpZ2h0IHBvdW5k
cywgb2YgY291cnNlKSBzZWVtcyBwcm9ibGVtYXRpYy4NCj4gDQo+IDguIEkgY291bGRuJ3QgdW5k
ZXJzdGFuZCB0aGlzIHNlbnRlbmNlIGF0IGFsbDoNCj4gDQo+ICAgICAgICogIGZhaWx1cmUtZGV0
YWlsOiBzaG93cyB0aGUgc3BlY2lmaWMgZmFpbGVkIHJvdXRlcyB0aGF0IGZhaWx1cmUNCj4gICAg
ICAgICAgcmVhc29uLg0KPiANCj4gICAgIFNpbmNlIEkgZGlkbid0IHVuZGVyc3RhbmQgaXQsIEkg
Y2FuJ3Qgc3VnZ2VzdCBhIHJld3JpdGUsIHNvcnJ5LiAoVGhlIHRleHQNCj4gcmVjdXJzIHRocmVl
IHRpbWVzIGluIHNlY3Rpb24gMi41LikNCj4gDQo+IDkuIG5oLWFkZCBpbiBTZWN0aW9uIDIuNSB0
YWxrcyBhYm91dCAidGhlIG5ldHdvcmsgbm9kZSIgZG9pbmcgc29tZXRoaW5nOg0KPiANCj4gICAg
byAgbmgtYWRkOiBBZGQgYSBuZXh0aG9wIHRvIGEgcmliLiAgQSBuYW1lIG9mIHRoZQ0KPiAgICAg
ICByaWIgYW5kIGEgbmV4dGhvcCBhcmUgcGFzc2VkIGFzIHRoZSBpbnB1dCBwYXJhbWV0ZXJzLiAg
VGhlIG5ldHdvcmsNCj4gICAgICAgbm9kZSBpcyByZXF1aXJlZCB0byBhbGxvY2F0ZSBhIG5leHRo
b3AgaWRlbnRpZmllciB0byB0aGUgbmV4dGhvcC4NCj4gICAgICAgVGhlIG91dHB1dHMgaW5jbHVk
ZSB0aGUgcmVzdWx0IG9mIHRoZSBuZXh0aG9wIGFkZCBvcGVyYXRpb24uDQo+IA0KPiAgICBBcyBm
YXIgYXMgSSBjYW4gdGVsbCwgdGhlIGVudGlyZSByZXN0IG9mIHRoZSBkb2N1bWVudCB0YWxrcyBh
Ym91dCAidGhlIGkycnMNCj4gYWdlbnQiIGRvaW5nIHNvbWV0aGluZy4gU2hvdWxkICJuZXR3b3Jr
IG5vZGUiIHRoZSByZXdyaXR0ZW4gYWNjb3JkaW5nbHk/DQo+IA0KPiAxMC4gU2ltaWxhciB0byAj
OSwgIkEgUklCIGRhdGEtbW9kZWwgTVVTVCBzdXBwb3J0IHNlbmRpbmcgMiBraW5kIG9mDQo+IGFz
eW5jaHJvbm91cyBub3RpZmljYXRpb25zIiAgRG9lc24ndCBzZWVtIHJpZ2h0LiBTdXJlbHkgdGhl
IGRhdGEgbW9kZWwgcGVyIHNlDQo+IGRvZXNuJ3Qgc3VwcG9ydCBzZW5kaW5nIGFueXRoaW5nIGF0
IGFsbCwgaXQncyB0aGUgaTJycyBhZ2VudCB0aGF0IHN1cHBvcnRzIGl0PyBJJ3ZlDQo+IHRlbnRh
dGl2ZWx5IHJlcGxhY2VkIHRoZSB0ZXh0IHdpdGggIkFuIGltcGxlbWVudGF0aW9uIG9mIHRoaXMg
UklCIGRhdGEgbW9kZWwiDQo+IChjcmliYmVkIGZyb20gbG93ZXIgZG93biBpbiB0aGUgZG9jKS4N
Cg0KDQpCZXN0IHJlZ2FyZHMsDQpNYWNoDQoNCg==


From nobody Mon Jun  6 04:19:19 2016
Return-Path: <tnadeau@lucidvision.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 8ED9912D6AF for <i2rs@ietfa.amsl.com>; Mon,  6 Jun 2016 04:19:16 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.428
X-Spam-Level: 
X-Spam-Status: No, score=-3.428 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RP_MATCHES_RCVD=-1.426, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=lucidvision.com
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 YKvd4D4wS2AC for <i2rs@ietfa.amsl.com>; Mon,  6 Jun 2016 04:19:15 -0700 (PDT)
Received: from lucidvision.com (lucidvision.com [64.71.170.115]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 2D9BF12D11F for <i2rs@ietf.org>; Mon,  6 Jun 2016 04:19:15 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=lucidvision.com; s=default; t=1465211894; bh=g0FcG0cnBPaif3T8eYk2n44hmigJaRWm1wURW3uj61E=; h=Subject:From:In-Reply-To:Date:Cc:References:To; b=JxzYkOh5JaLPVOAkWRiqUI87mDlvmJxOD4jBv13R2pXcvKbtvokR3qgCATukaoW4q 1mOQ7aqnfuxEDue43LRQYM0C/IH/DyAof7oVJiqqHOdiwXHN14KVyp8cn8zEamAE5m 9Zt6++OjGl4zTbqVCe8K/dUIZ0vPG/3S87hE4NOw=
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=50.255.148.181; 
Content-Type: text/plain; charset=utf-8
Mime-Version: 1.0 (Mac OS X Mail 9.3 \(3124\))
From: Nadeau Thomas <tnadeau@lucidvision.com>
In-Reply-To: <CABCOCHQAuhsngAKXE=-o=wWsv1u6BXDWCJ--0JJ4p5D0f2WY3Q@mail.gmail.com>
Date: Mon, 6 Jun 2016 07:18:52 -0400
Content-Transfer-Encoding: quoted-printable
Message-Id: <3749ED3B-4627-4123-B405-99B0C9EB7206@lucidvision.com>
References: <CABCOCHQAuhsngAKXE=-o=wWsv1u6BXDWCJ--0JJ4p5D0f2WY3Q@mail.gmail.com>
To: Andy Bierman <andy@yumaworks.com>
X-Mailer: Apple Mail (2.3124)
X-Authenticated-User: tnadeau@lucidvision.com 
X-Info: aspam skipped due to (g_smite_skip_relay)
X-Encryption: SSL encrypted
X-MyRbl: Color=Yellow Age=0 Spam=0 Notspam=6 Stars=0 Good=0 Friend=0 Surbl=0 Catch=0 r=0 ip=50.255.148.181
X-IP-stats: Notspam Incoming Last 0, First 388, in=3841, out=0, spam=0 Known=true ip=50.255.148.181
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/sD8vGBY0mX_JosdAxRA9fYtHd1g>
Cc: "i2rs@ietf.org" <i2rs@ietf.org>
Subject: Re: [i2rs] YANG validation and opstate
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Mon, 06 Jun 2016 11:19:16 -0000

	I personally like it, and will refer people to the wiki.  Its =
far quicker/easier than finding a random RFC.=20
One suggestion might be to make the parts that do overlap, refer back to =
the RFC from the wiki in order to
keep the document more dynamic in case there are errata changes in the =
future and to keep from
having to maintain 2 copies of the same information.

	=E2=80=94Tom


> On Jun 5, 2016:5:42 PM, at 5:42 PM, Andy Bierman <andy@yumaworks.com> =
wrote:
>=20
> Hi,
>=20
> I don't really agree with idea that I2RS agents pick which
> YANG statements they will implement, but I think there is
> a way to handle this correctly in the datastore framework.
>=20
> The proposed enumeration for server validation
> capabilities (e.g., full, XPath, leafref) is not really needed.
> This enum is too course-grained to be useful.
>=20
> IMO it is better to say the server MAY do YANG validation
> on the ephemeral datastore.  Whether or not the server uses
> data from the ephemeral datastore is left as an implementation detail.
> The server could use invalid input parameters or ignore them
> or reject them in the first place.
> =20
> The client needs to check operational state to know if/when the
> ephemeral data was applied to the system.
>=20
>=20
>=20
> Andy
>=20
> _______________________________________________
> i2rs mailing list
> i2rs@ietf.org
> https://www.ietf.org/mailman/listinfo/i2rs


From nobody Mon Jun  6 07:50:54 2016
Return-Path: <shares@ndzh.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 3967112D098 for <i2rs@ietfa.amsl.com>; Mon,  6 Jun 2016 07:50:51 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.738
X-Spam-Level: *
X-Spam-Status: No, score=1.738 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, RDNS_NONE=0.793] autolearn=no autolearn_force=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 8vF624sDDVL4 for <i2rs@ietfa.amsl.com>; Mon,  6 Jun 2016 07:50:50 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id F1BC512B02C for <i2rs@ietf.org>; Mon,  6 Jun 2016 07:50:49 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=174.124.192.86; 
From: "Susan Hares" <shares@ndzh.com>
To: "'Joel Halpern Direct'" <jmh.direct@joelhalpern.com>, "'Linda Dunbar'" <linda.dunbar@huawei.com>, "'Joel M. Halpern'" <jmh@joelhalpern.com>, <i2rs@ietf.org>
References: <f9dd38f6-8350-ab9e-a880-c27dfd2a610d@joelhalpern.com> <4A95BA014132FF49AE685FAB4B9F17F657EAD7E1@dfweml501-mbb> <bf913585-d4ab-bd94-7c60-6ab292bebcf4@joelhalpern.com> <4A95BA014132FF49AE685FAB4B9F17F657EAD911@dfweml501-mbb> <eb046a5a-7e3e-90a7-2462-ce20be24b212@joelhalpern.com>
In-Reply-To: <eb046a5a-7e3e-90a7-2462-ce20be24b212@joelhalpern.com>
Date: Mon, 6 Jun 2016 10:50:30 -0400
Message-ID: <008301d1c002$c69ab3f0$53d01bd0$@ndzh.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQGoLhwIz36TzpEqpl8V8YoA+wXFMQJJC3huAoULjd4CMpIpRAGh6skpn+qUb7A=
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/92oU0BjFAHVq1UXvJCiWX4bjpzg>
Subject: Re: [i2rs] ephemeral requirements - REQ 08 bullet 1
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Mon, 06 Jun 2016 14:50:51 -0000

Joel and Linda: 

Unless you have an objection, I will leave Ephemeral-REQ-08 bullet 1 in. 

Sue 

-----Original Message-----
From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Joel Halpern Direct
Sent: Wednesday, June 01, 2016 7:50 PM
To: Linda Dunbar; Joel M. Halpern; i2rs@ietf.org
Subject: Re: [i2rs] ephemeral requirements - REQ 08 bullet 1

I can live with removing it entirely.  Others had expressed that they felt
it was important to include.

Yours,
Joel

On 6/1/16 7:48 PM, Linda Dunbar wrote:
> Joel,
>
> Does it hurt if this requirement is removed from the document?
>
> To me, it is more to say needing a reliable communication channel between
I2RS client and agent (which should be assumed with NETCONF protocol).
Therefore, I don't think we need to have it in the I2RS Ephemeral
requirement.
>
> Linda
>
> -----Original Message-----
> From: Joel M. Halpern [mailto:jmh@joelhalpern.com]
> Sent: Wednesday, June 01, 2016 6:13 PM
> To: Linda Dunbar; i2rs@ietf.org
> Subject: Re: [i2rs] ephemeral requirements - REQ 08 bullet 1
>
> Linda, the problem is that there is no such thing as an I2RS protocol,
much less version 1 of such a protocol.  If I2RS is using NetConf, the
protocol is NetConf.  If it is using RestConf, then that is the protocol.
>
> Further, the exact mechanism to express what the agent can do over these
protocols is defined by those mechanisms.
>
> I can't argue with your observation that there is not much to the
requirement as reworded.  I consider that it is not vacuous because it
confirms that we need the relevant capability information.  I recognize that
the NetConf and NetMod working groups have been very good about doing that.
>
> My primary point, as I have said several times on the list, and saqid on
the webex, is that the requirement as written was not a description of what
we requried, but of a possible (and in my personal view incorrect) way of
meeting the requirement.
>
> Yours,
> Joel
>
> On 6/1/16 6:48 PM, Linda Dunbar wrote:
>> Joel,
>>
>> The existing text and the proposed test mean different things to me. The
existing text is to say support I2RS Version 1, whereas the proposed text
states a very obvious statement.
>>
>> If I2RS client didn't have the needed "communication mechanisms" to I2RS
agent or can't decide if the communications mechanisms needed is supported,
how can I2RS client even start to send commands to I2RS agent?
>>
>> Linda
>>
>> -----Original Message-----
>> From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Joel M. 
>> Halpern
>> Sent: Wednesday, June 01, 2016 9:48 AM
>> To: i2rs@ietf.org
>> Subject: [i2rs] ephemeral requirements - REQ 08 bullet 1
>>
>> Existing Text:
>> 1.  protocol version support for I2RS modifications - (e.g.  I2RS
>>         version 1)
>>
>> Proposed Text:
>> 1. Support for communication mechanisms to enable an I2RS client to
determine that an I2RS agent supports the mechanisms needed for I2RS
operation.
>>
>>
>> This probably is already met by existing NetConf mechanisms.  I think it
is useful to state anyway, so that solution development will verify that it
is met.
>>
>> Yours,
>> Joel
>>
>> _______________________________________________
>> 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


From nobody Mon Jun  6 08:31:03 2016
Return-Path: <jmh@joelhalpern.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 2D91612D80A for <i2rs@ietfa.amsl.com>; Mon,  6 Jun 2016 08:31:01 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.702
X-Spam-Level: 
X-Spam-Status: No, score=-2.702 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=joelhalpern.com
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 IWPkeSJ4LofI for <i2rs@ietfa.amsl.com>; Mon,  6 Jun 2016 08:30:59 -0700 (PDT)
Received: from maila2.tigertech.net (maila2.tigertech.net [208.80.4.152]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id AEAC812D808 for <i2rs@ietf.org>; Mon,  6 Jun 2016 08:30:59 -0700 (PDT)
Received: from localhost (localhost [127.0.0.1]) by maila2.tigertech.net (Postfix) with ESMTP id 7F65F240297; Mon,  6 Jun 2016 08:30:59 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=joelhalpern.com; s=1.tigertech; t=1465227059; bh=iussqqQTarjDoQEw3y+lzagCIUi2ag1BT4nw7aL5PVA=; h=Subject:To:References:From:Date:In-Reply-To:From; b=Wk5JJiTJ+nm7BR84Snx/kAhM5Vzo5pE4c8xOMTMoCiZIiJzkkDtLO7ooCOFJJWM05 ww9XRYLJfU37tIzu59DCvU/Xw+WNJt/Rh6NQT10u9Si+qLiH5wk+9PXG/3gMsjb3Ig Jbc9Qy7EGHLL27544IqMLJwa0ymVpSBLZZ/0RQ1A=
X-Virus-Scanned: Debian amavisd-new at maila2.tigertech.net
Received: from Joels-MacBook-Pro.local (209-255-163-147.ip.mcleodusa.net [209.255.163.147]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by maila2.tigertech.net (Postfix) with ESMTPSA id EF456242624; Mon,  6 Jun 2016 08:30:58 -0700 (PDT)
To: Susan Hares <shares@ndzh.com>, 'Linda Dunbar' <linda.dunbar@huawei.com>, i2rs@ietf.org
References: <f9dd38f6-8350-ab9e-a880-c27dfd2a610d@joelhalpern.com> <4A95BA014132FF49AE685FAB4B9F17F657EAD7E1@dfweml501-mbb> <bf913585-d4ab-bd94-7c60-6ab292bebcf4@joelhalpern.com> <4A95BA014132FF49AE685FAB4B9F17F657EAD911@dfweml501-mbb> <eb046a5a-7e3e-90a7-2462-ce20be24b212@joelhalpern.com> <008301d1c002$c69ab3f0$53d01bd0$@ndzh.com>
From: "Joel M. Halpern" <jmh@joelhalpern.com>
Message-ID: <bc9977af-c7a4-d45b-ce90-4fedd1efc298@joelhalpern.com>
Date: Mon, 6 Jun 2016 11:30:42 -0400
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:45.0) Gecko/20100101 Thunderbird/45.1.1
MIME-Version: 1.0
In-Reply-To: <008301d1c002$c69ab3f0$53d01bd0$@ndzh.com>
Content-Type: text/plain; charset=windows-1252; format=flowed
Content-Transfer-Encoding: 7bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/T_Q7ACs-7pWrdgkBwEl2MKc0br4>
Subject: Re: [i2rs] ephemeral requirements - REQ 08 bullet 1
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Mon, 06 Jun 2016 15:31:01 -0000

If you mean "leave it in, with the wording that was sent to the list 
after the call", then yes, that works for me.

Yours,
Joel

On 6/6/16 10:50 AM, Susan Hares wrote:
> Joel and Linda:
>
> Unless you have an objection, I will leave Ephemeral-REQ-08 bullet 1 in.
>
> Sue
>
> -----Original Message-----
> From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Joel Halpern Direct
> Sent: Wednesday, June 01, 2016 7:50 PM
> To: Linda Dunbar; Joel M. Halpern; i2rs@ietf.org
> Subject: Re: [i2rs] ephemeral requirements - REQ 08 bullet 1
>
> I can live with removing it entirely.  Others had expressed that they felt
> it was important to include.
>
> Yours,
> Joel
>
> On 6/1/16 7:48 PM, Linda Dunbar wrote:
>> Joel,
>>
>> Does it hurt if this requirement is removed from the document?
>>
>> To me, it is more to say needing a reliable communication channel between
> I2RS client and agent (which should be assumed with NETCONF protocol).
> Therefore, I don't think we need to have it in the I2RS Ephemeral
> requirement.
>>
>> Linda
>>
>> -----Original Message-----
>> From: Joel M. Halpern [mailto:jmh@joelhalpern.com]
>> Sent: Wednesday, June 01, 2016 6:13 PM
>> To: Linda Dunbar; i2rs@ietf.org
>> Subject: Re: [i2rs] ephemeral requirements - REQ 08 bullet 1
>>
>> Linda, the problem is that there is no such thing as an I2RS protocol,
> much less version 1 of such a protocol.  If I2RS is using NetConf, the
> protocol is NetConf.  If it is using RestConf, then that is the protocol.
>>
>> Further, the exact mechanism to express what the agent can do over these
> protocols is defined by those mechanisms.
>>
>> I can't argue with your observation that there is not much to the
> requirement as reworded.  I consider that it is not vacuous because it
> confirms that we need the relevant capability information.  I recognize that
> the NetConf and NetMod working groups have been very good about doing that.
>>
>> My primary point, as I have said several times on the list, and saqid on
> the webex, is that the requirement as written was not a description of what
> we requried, but of a possible (and in my personal view incorrect) way of
> meeting the requirement.
>>
>> Yours,
>> Joel
>>
>> On 6/1/16 6:48 PM, Linda Dunbar wrote:
>>> Joel,
>>>
>>> The existing text and the proposed test mean different things to me. The
> existing text is to say support I2RS Version 1, whereas the proposed text
> states a very obvious statement.
>>>
>>> If I2RS client didn't have the needed "communication mechanisms" to I2RS
> agent or can't decide if the communications mechanisms needed is supported,
> how can I2RS client even start to send commands to I2RS agent?
>>>
>>> Linda
>>>
>>> -----Original Message-----
>>> From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Joel M.
>>> Halpern
>>> Sent: Wednesday, June 01, 2016 9:48 AM
>>> To: i2rs@ietf.org
>>> Subject: [i2rs] ephemeral requirements - REQ 08 bullet 1
>>>
>>> Existing Text:
>>> 1.  protocol version support for I2RS modifications - (e.g.  I2RS
>>>         version 1)
>>>
>>> Proposed Text:
>>> 1. Support for communication mechanisms to enable an I2RS client to
> determine that an I2RS agent supports the mechanisms needed for I2RS
> operation.
>>>
>>>
>>> This probably is already met by existing NetConf mechanisms.  I think it
> is useful to state anyway, so that solution development will verify that it
> is met.
>>>
>>> Yours,
>>> Joel
>>>
>>> _______________________________________________
>>> 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
>


From nobody Mon Jun  6 08:40:34 2016
Return-Path: <bensons@queuefull.net>
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 0520212D7F2; Mon,  6 Jun 2016 08:40:32 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.346
X-Spam-Level: *
X-Spam-Status: No, score=1.346 tagged_above=-999 required=5 tests=[BAYES_40=-0.001, HTML_MESSAGE=0.001, RCVD_IN_BL_SPAMCOP_NET=1.347, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001] autolearn=no autolearn_force=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 UaQJ-kVt6_gp; Mon,  6 Jun 2016 08:40:31 -0700 (PDT)
Received: from p3nlsmtpcp01-04.prod.phx3.secureserver.net (p3nlsmtpcp01-04.prod.phx3.secureserver.net [184.168.200.145]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 4BFB012D816; Mon,  6 Jun 2016 08:40:27 -0700 (PDT)
Received: from mailout01.c06.mtsvc.net ([70.32.122.157]) by : HOSTING RELAY : with SMTP id 9wakblpw5AdhO9wakbeoFF; Mon, 06 Jun 2016 08:37:26 -0700
Received: from n28.c06.mtsvc.net ([205.186.184.28]) by mailout01.c06.mtsvc.net with esmtp (Exim 4.80) (envelope-from <bensons@queuefull.net>) id 1b9wak-0005cW-BW; Mon, 06 Jun 2016 08:37:26 -0700
Received: from 23.29.85.213.bbc.net ([23.29.85.213]:46897 helo=jeozxw.net) by n28.c06.mtsvc.net with esmtpsa (TLS1.2:DHE_RSA_AES_256_CBC_SHA256:256) (Exim 4.80) (envelope-from <bensons@queuefull.net>) id 1b9wah-0007RA-TY; Mon, 06 Jun 2016 08:37:26 -0700
From: <bensons@queuefull.net>
To: "i-d-announce-bounces" <i-d-announce-bounces@ietf.org>, "i-d-announce"  <i-d-announce@ietf.org>, "i2-news" <i2-news@internet2.edu>, "i2rs"  <i2rs@ietf.org>, "iLike.com" <music@mail.ilike.com>
Date: Mon, 6 Jun 2016 18:37:09 +0300
Message-ID: <0000e8d83ee5$9b08295d$16cd01b5$@queuefull.net>
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="----=_NextPart_000_0001_1A2FD39D.34F85813"
X-Mailer: Microsoft Outlook 15.0
Thread-Index: AdHH+YYJU6j1IuqAhSJqNH0avpF1eg==
Content-Language: en-us
X-MT-INTERNAL-ID: queuefull.net
X-Authenticated-User: 92199 quarrymaster@devinobryan.com
X-Spam_score: 0.0
X-Spam_score_int: 0
X-CMAE-Envelope: MS4wfDH2XqKw+C/Hcm///Hwohel1vGaMQvtEsqhbe7xrvuhd3dfsy6lNBKIQeBaTSkildtt4lBzFHPcmeTjuLHJCCzFKxgLarwfcWiEfHYo+EBF8ACxkQ4uZ 97ZjI3wrLYjWMeR7g9UF8Uej470/yuZ+a0paya3uQv78WlIhpOCwJu2YnMeXWVt92lrjl8sWMqd0rnMhMqEtxzNk3W14SLdxP6aM/LekoAU3jQ2SKEzcMzDX shD3dUVqc7g8Z/p1UEFETEM6OS6wTHzA9SvULX9X7QLNdCrmVPuwwWZ4O3SXSubJDJNeLKodTfExDop7/CHaAw==
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/2SMJSpeiCNRl10KERg0TuaX7YWM>
Subject: [i2rs] =?utf-8?b?4pyUIGluc3BpcmF0aW9u?=
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Mon, 06 Jun 2016 15:40:32 -0000

This is a multipart message in MIME format.

------=_NextPart_000_0001_1A2FD39D.34F85813
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit

Hello,

Here is some information that inspired me a lot, read it please, it may be helpful <http://traspepequy.almachinellc.com/aeucv>

Looking forward, bensons@queuefull.net


------=_NextPart_000_0001_1A2FD39D.34F85813
Content-Type: text/html; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" xmlns:o=3D"urn:schemas=
-microsoft-com:office:office" xmlns:w=3D"urn:schemas-microsoft-com:off=
ice:word" xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml"=
 xmlns=3D"http://www.w3.org/TR/REC-html40"><head><META HTTP-EQUIV=3D"C=
ontent-Type" CONTENT=3D"text/html; charset=3Dus-ascii"><meta name=3DGe=
nerator content=3D"Microsoft Word 15 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0cm;
	margin-bottom:.0001pt;
	font-size:11.0pt;
	font-family:"Calibri",sans-serif;
	mso-fareast-language:EN-US;}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:#0563C1;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:#954F72;
	text-decoration:underline;}
span.EmailStyle17
	{mso-style-type:personal-compose;
	font-family:"Calibri",sans-serif;
	color:windowtext;}
=2EMsoChpDefault
	{mso-style-type:export-only;
	font-family:"Calibri",sans-serif;
	mso-fareast-language:EN-US;}
@page WordSection1
	{size:612.0pt 792.0pt;
	margin:2.0cm 42.5pt 2.0cm 3.0cm;}
div.WordSection1
	{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]--></head><body lang=3DEN link=3D"#0563=
C1" vlink=3D"#954F72"><div class=3DWordSection1><p class=3DMsoNormal><=
span lang=3DEN-US>Hello,<o:p></o:p></span></p><p class=3DMsoNormal><sp=
an lang=3DEN-US><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span=
 lang=3DEN-US>Here is some information that inspired me a lot, read it=
 please, it may be helpful <a href=3D"http://traspepequy.almachinellc.=
com/aeucv">http://traspepequy.almachinellc.com/aeucv</a><o:p></o:p></s=
pan></p><p class=3DMsoNormal><span lang=3DEN-US><o:p>&nbsp;</o:p></spa=
n></p><p class=3DMsoNormal><span lang=3DEN-US>Looking forward, bensons=
@queuefull.net<o:p></o:p></span></p></div></body></html>

------=_NextPart_000_0001_1A2FD39D.34F85813--


From nobody Mon Jun  6 09:11:22 2016
Return-Path: <shares@ndzh.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 1F88612D104 for <i2rs@ietfa.amsl.com>; Mon,  6 Jun 2016 09:11:20 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.738
X-Spam-Level: *
X-Spam-Status: No, score=1.738 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, RDNS_NONE=0.793] autolearn=no autolearn_force=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 CFsPYU4A7Obj for <i2rs@ietfa.amsl.com>; Mon,  6 Jun 2016 09:11:18 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 6A1CA12B041 for <i2rs@ietf.org>; Mon,  6 Jun 2016 09:11:18 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=174.124.192.86; 
From: "Susan Hares" <shares@ndzh.com>
To: "'Joel M. Halpern'" <jmh@joelhalpern.com>, "'Linda Dunbar'" <linda.dunbar@huawei.com>, <i2rs@ietf.org>
References: <f9dd38f6-8350-ab9e-a880-c27dfd2a610d@joelhalpern.com> <4A95BA014132FF49AE685FAB4B9F17F657EAD7E1@dfweml501-mbb> <bf913585-d4ab-bd94-7c60-6ab292bebcf4@joelhalpern.com> <4A95BA014132FF49AE685FAB4B9F17F657EAD911@dfweml501-mbb> <eb046a5a-7e3e-90a7-2462-ce20be24b212@joelhalpern.com> <008301d1c002$c69ab3f0$53d01bd0$@ndzh.com> <bc9977af-c7a4-d45b-ce90-4fedd1efc298@joelhalpern.com>
In-Reply-To: <bc9977af-c7a4-d45b-ce90-4fedd1efc298@joelhalpern.com>
Date: Mon, 6 Jun 2016 12:11:10 -0400
Message-ID: <00f601d1c00e$0a6918f0$1f3b4ad0$@ndzh.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQGoLhwIz36TzpEqpl8V8YoA+wXFMQJJC3huAoULjd4CMpIpRAGh6skpAhq6TMMBfP7pT5/N7V6w
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/uxVRcFsC695aiqrgdQFh4oAzI-A>
Subject: Re: [i2rs] ephemeral requirements - REQ 08 bullet 1
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Mon, 06 Jun 2016 16:11:20 -0000

Joel: 

Yes, this is exactly what I meant. 

Sue 

-----Original Message-----
From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Joel M. Halpern
Sent: Monday, June 06, 2016 11:31 AM
To: Susan Hares; 'Linda Dunbar'; i2rs@ietf.org
Subject: Re: [i2rs] ephemeral requirements - REQ 08 bullet 1

If you mean "leave it in, with the wording that was sent to the list after
the call", then yes, that works for me.

Yours,
Joel

On 6/6/16 10:50 AM, Susan Hares wrote:
> Joel and Linda:
>
> Unless you have an objection, I will leave Ephemeral-REQ-08 bullet 1 in.
>
> Sue
>
> -----Original Message-----
> From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Joel Halpern 
> Direct
> Sent: Wednesday, June 01, 2016 7:50 PM
> To: Linda Dunbar; Joel M. Halpern; i2rs@ietf.org
> Subject: Re: [i2rs] ephemeral requirements - REQ 08 bullet 1
>
> I can live with removing it entirely.  Others had expressed that they 
> felt it was important to include.
>
> Yours,
> Joel
>
> On 6/1/16 7:48 PM, Linda Dunbar wrote:
>> Joel,
>>
>> Does it hurt if this requirement is removed from the document?
>>
>> To me, it is more to say needing a reliable communication channel 
>> between
> I2RS client and agent (which should be assumed with NETCONF protocol).
> Therefore, I don't think we need to have it in the I2RS Ephemeral 
> requirement.
>>
>> Linda
>>
>> -----Original Message-----
>> From: Joel M. Halpern [mailto:jmh@joelhalpern.com]
>> Sent: Wednesday, June 01, 2016 6:13 PM
>> To: Linda Dunbar; i2rs@ietf.org
>> Subject: Re: [i2rs] ephemeral requirements - REQ 08 bullet 1
>>
>> Linda, the problem is that there is no such thing as an I2RS 
>> protocol,
> much less version 1 of such a protocol.  If I2RS is using NetConf, the 
> protocol is NetConf.  If it is using RestConf, then that is the protocol.
>>
>> Further, the exact mechanism to express what the agent can do over 
>> these
> protocols is defined by those mechanisms.
>>
>> I can't argue with your observation that there is not much to the
> requirement as reworded.  I consider that it is not vacuous because it 
> confirms that we need the relevant capability information.  I 
> recognize that the NetConf and NetMod working groups have been very good
about doing that.
>>
>> My primary point, as I have said several times on the list, and saqid 
>> on
> the webex, is that the requirement as written was not a description of 
> what we requried, but of a possible (and in my personal view 
> incorrect) way of meeting the requirement.
>>
>> Yours,
>> Joel
>>
>> On 6/1/16 6:48 PM, Linda Dunbar wrote:
>>> Joel,
>>>
>>> The existing text and the proposed test mean different things to me. 
>>> The
> existing text is to say support I2RS Version 1, whereas the proposed 
> text states a very obvious statement.
>>>
>>> If I2RS client didn't have the needed "communication mechanisms" to 
>>> I2RS
> agent or can't decide if the communications mechanisms needed is 
> supported, how can I2RS client even start to send commands to I2RS agent?
>>>
>>> Linda
>>>
>>> -----Original Message-----
>>> From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Joel M.
>>> Halpern
>>> Sent: Wednesday, June 01, 2016 9:48 AM
>>> To: i2rs@ietf.org
>>> Subject: [i2rs] ephemeral requirements - REQ 08 bullet 1
>>>
>>> Existing Text:
>>> 1.  protocol version support for I2RS modifications - (e.g.  I2RS
>>>         version 1)
>>>
>>> Proposed Text:
>>> 1. Support for communication mechanisms to enable an I2RS client to
> determine that an I2RS agent supports the mechanisms needed for I2RS 
> operation.
>>>
>>>
>>> This probably is already met by existing NetConf mechanisms.  I 
>>> think it
> is useful to state anyway, so that solution development will verify 
> that it is met.
>>>
>>> Yours,
>>> Joel
>>>
>>> _______________________________________________
>>> 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
>

_______________________________________________
i2rs mailing list
i2rs@ietf.org
https://www.ietf.org/mailman/listinfo/i2rs


From nobody Mon Jun  6 10:44:23 2016
Return-Path: <j.schoenwaelder@jacobs-university.de>
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 DB15412D891 for <i2rs@ietfa.amsl.com>; Mon,  6 Jun 2016 10:44:21 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.626
X-Spam-Level: 
X-Spam-Status: No, score=-5.626 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, RP_MATCHES_RCVD=-1.426] autolearn=ham autolearn_force=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 C53fK86Qmgu2 for <i2rs@ietfa.amsl.com>; Mon,  6 Jun 2016 10:44:20 -0700 (PDT)
Received: from atlas3.jacobs-university.de (atlas3.jacobs-university.de [212.201.44.18]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 731EA12D88B for <i2rs@ietf.org>; Mon,  6 Jun 2016 10:44:19 -0700 (PDT)
Received: from localhost (demetrius5.irc-it.jacobs-university.de [10.70.0.222]) by atlas3.jacobs-university.de (Postfix) with ESMTP id 47137FEC; Mon,  6 Jun 2016 19:44:18 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from atlas3.jacobs-university.de ([10.70.0.220]) by localhost (demetrius5.jacobs-university.de [10.70.0.222]) (amavisd-new, port 10030) with ESMTP id 9EXVNLh2xd7B; Mon,  6 Jun 2016 19:44:15 +0200 (CEST)
Received: from hermes.jacobs-university.de (hermes.jacobs-university.de [212.201.44.23]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "hermes.jacobs-university.de", Issuer "Jacobs University CA - G01" (verified OK)) by atlas3.jacobs-university.de (Postfix) with ESMTPS; Mon,  6 Jun 2016 19:44:16 +0200 (CEST)
Received: from localhost (demetrius4.jacobs-university.de [212.201.44.49]) by hermes.jacobs-university.de (Postfix) with ESMTP id 785692004E; Mon,  6 Jun 2016 19:44:16 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from hermes.jacobs-university.de ([212.201.44.23]) by localhost (demetrius4.jacobs-university.de [212.201.44.32]) (amavisd-new, port 10024) with ESMTP id gxxkn-StKweK; Mon,  6 Jun 2016 19:44:15 +0200 (CEST)
Received: from elstar.local (elstar.jacobs.jacobs-university.de [10.50.231.133]) by hermes.jacobs-university.de (Postfix) with ESMTP id 0C6A320047; Mon,  6 Jun 2016 19:44:14 +0200 (CEST)
Received: by elstar.local (Postfix, from userid 501) id EFC733B08EA6; Mon,  6 Jun 2016 19:44:13 +0200 (CEST)
Date: Mon, 6 Jun 2016 19:44:13 +0200
From: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
To: Jeffrey Haas <jhaas@pfrc.org>
Message-ID: <20160606174413.GA7492@elstar.local>
Mail-Followup-To: Jeffrey Haas <jhaas@pfrc.org>, Susan Hares <shares@ndzh.com>, "'Joel M. Halpern'" <jmh@joelhalpern.com>, i2rs@ietf.org
References: <000601d1bad5$70523090$50f691b0$@ndzh.com> <20160531063840.GA21289@elstar.local> <026df5be-4a60-f340-60aa-d713a0e75c48@joelhalpern.com> <20160531184844.GB22928@elstar.local> <413ef504-49a8-2ba2-7fd4-582a41bd0ad0@joelhalpern.com> <20160531192729.GA23116@elstar.local> <005801d1bb7a$e7b2e440$b718acc0$@ndzh.com> <20160601091953.GD24118@elstar.local> <20160602142733.GU17462@pfrc.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20160602142733.GU17462@pfrc.org>
User-Agent: Mutt/1.6.0 (2016-04-01)
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/gwb6pS_GJ_O51x1wAx5YfJSUmNY>
Cc: i2rs@ietf.org, "'Joel M. Halpern'" <jmh@joelhalpern.com>, Susan Hares <shares@ndzh.com>
Subject: Re: [i2rs] Ephemeral State Requirements discussion
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
Reply-To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
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: <https://mailarchive.ietf.org/arch/browse/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: Mon, 06 Jun 2016 17:44:22 -0000

On Thu, Jun 02, 2016 at 10:27:33AM -0400, Jeffrey Haas wrote:
> Juergen,
> 
> On Wed, Jun 01, 2016 at 11:19:53AM +0200, Juergen Schoenwaelder wrote:
> > On Tue, May 31, 2016 at 04:27:51PM -0400, Susan Hares wrote:
> > > How does ephemeral sitting next to the <applied> data store provide
> > > the ability to augment configuration with ephemeral configuration or
> > > operational state with ephemeral operational state?
> > 
> > At the schema level, you will augment the schema tree. If the current
> > separation of /foo and /foo-state would go away, this will likely get
> > simpler (but this is orthogonal to the question how an <ephemeral>
> > datastore conceptually interacts with the other datastores).
> > 
> > At the data tree level, there is a magic merging (+) function involved
> > that takes configuration data from a configuration datastore and data
> > from an ephemeral data store and produces the resulting operational
> > state. The idea was to not further detail how this is achieved and
> > instead treat an ephemeral datastore pretty much like any other
> > control plane interface interacting with <operational state>.
> 
> While such a solution-space seems mostly right, I had been under the
> impression that the interactions necessary for validation meant that
> ephemeral needed to move up closer to the top of your diagram.
> 
> Note that I'm not saying I2RS requires validation, however the lack of
> validation has been a contentious point in prior discussions.
> 
> To confirm my understanding, ephemeral configuration state in the model
> you're proposing above is treated as operational state (the output of the
> netconf <get> operation for config true elements)?

For configuration datastores, we have a reasonably precise definition
what validation means. And this comes for a price, e.g., config true
nodes are not allowed to refer to config false nodes. The reason is
that validate should work on the configuration data and it should not
depend on the operational state a device is in.

My understanding is that I2RS wants to inject data that modifies state
that might be purely operational state, e.g., state in a routing table
obtained from a routing protocol. If this is correct, then the
ephemeral state datastore is closer to the ephemeral state and pretty
detached from configuration datastores and likely it needs its own
validation rules (if they are needed at all).

Again, for configuration datastores, I can obtain the config and
validate it pretty much anywhere, on the device or offline at a
controller. My understanding is that this would not be true for I2RS'
ephemeral stat datastores; I would need some amount of additional data
to do something close to YANG's configuration datastore validation.

/js

PS: I think 'ephemeral state datastore' is actually a misnomer. The
    fact that the datastore I2RS is looking for is ephemeral is a
    property of this datastore but there are likely more important
    characteristics that should determine its name. But I have no good
    suggestion and this is perhaps a discussion to have at some later
    point in time.

-- 
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>


From nobody Mon Jun  6 10:46:21 2016
Return-Path: <j.schoenwaelder@jacobs-university.de>
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 A893512D892 for <i2rs@ietfa.amsl.com>; Mon,  6 Jun 2016 10:46:17 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.626
X-Spam-Level: 
X-Spam-Status: No, score=-5.626 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, RP_MATCHES_RCVD=-1.426] autolearn=ham autolearn_force=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 oO8tUyym9qND for <i2rs@ietfa.amsl.com>; Mon,  6 Jun 2016 10:46:16 -0700 (PDT)
Received: from atlas3.jacobs-university.de (atlas3.jacobs-university.de [212.201.44.18]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 1911B12D627 for <i2rs@ietf.org>; Mon,  6 Jun 2016 10:46:16 -0700 (PDT)
Received: from localhost (demetrius5.irc-it.jacobs-university.de [10.70.0.222]) by atlas3.jacobs-university.de (Postfix) with ESMTP id D9D058DF; Mon,  6 Jun 2016 19:46:14 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from atlas3.jacobs-university.de ([10.70.0.220]) by localhost (demetrius5.jacobs-university.de [10.70.0.222]) (amavisd-new, port 10030) with ESMTP id OGkZyzliIdJm; Mon,  6 Jun 2016 19:46:13 +0200 (CEST)
Received: from hermes.jacobs-university.de (hermes.jacobs-university.de [212.201.44.23]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "hermes.jacobs-university.de", Issuer "Jacobs University CA - G01" (verified OK)) by atlas3.jacobs-university.de (Postfix) with ESMTPS; Mon,  6 Jun 2016 19:46:14 +0200 (CEST)
Received: from localhost (demetrius3.jacobs-university.de [212.201.44.48]) by hermes.jacobs-university.de (Postfix) with ESMTP id 0866A2004E; Mon,  6 Jun 2016 19:46:14 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from hermes.jacobs-university.de ([212.201.44.23]) by localhost (demetrius3.jacobs-university.de [212.201.44.32]) (amavisd-new, port 10024) with ESMTP id PbS9NwIC9tTI; Mon,  6 Jun 2016 19:46:13 +0200 (CEST)
Received: from elstar.local (elstar.jacobs.jacobs-university.de [10.50.231.133]) by hermes.jacobs-university.de (Postfix) with ESMTP id 1B57120047; Mon,  6 Jun 2016 19:46:13 +0200 (CEST)
Received: by elstar.local (Postfix, from userid 501) id C96E63B08F11; Mon,  6 Jun 2016 19:46:12 +0200 (CEST)
Date: Mon, 6 Jun 2016 19:46:12 +0200
From: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
To: "Joel M. Halpern" <jmh@joelhalpern.com>
Message-ID: <20160606174612.GB7492@elstar.local>
Mail-Followup-To: "Joel M. Halpern" <jmh@joelhalpern.com>, i2rs@ietf.org, 'Benoit Claise' <bclaise@cisco.com>
References: <6qtqondee9e8m6od11bh1ilt.1464783874424@email.android.com> <20160601123117.GB24741@elstar.local> <014801d1bc06$98eed670$cacc8350$@ndzh.com> <20160602103621.GA26659@elstar.local> <016c01d1bcbd$10aa6ba0$31ff42e0$@ndzh.com> <20160602110449.GC26659@elstar.local> <017101d1bcc0$1b3a18b0$51ae4a10$@ndzh.com> <20160602115004.GF26659@elstar.local> <e8545a72-7671-c0ce-4997-97cbabf82671@joelhalpern.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <e8545a72-7671-c0ce-4997-97cbabf82671@joelhalpern.com>
User-Agent: Mutt/1.6.0 (2016-04-01)
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/s5ddNk_OKtvMax6gZYvv94h1rJQ>
Cc: 'Benoit Claise' <bclaise@cisco.com>, i2rs@ietf.org
Subject: Re: [i2rs] I2RS Interim Meeting - June 1, 2016 - 10:00am - 11:00am -? Topic: Ephemeral State Requirements
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
Reply-To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
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: <https://mailarchive.ietf.org/arch/browse/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: Mon, 06 Jun 2016 17:46:17 -0000

On Thu, Jun 02, 2016 at 11:14:29AM -0400, Joel M. Halpern wrote:
> From where I sit, there is no such thing as "ephemeral operational state".
> There is "operational state" that reflects the effect of "ephemeral
> configuration", but as far as I can tell, it is still just "operational
> state".

This matches my understanding.
 
> Putting aside the operational state aspects, we do need to work out the
> diagramming / positioning of the ephemeral configuration and its
> relationship to the other components in the base diagram.

Yes. And to what extend 'configuration' is the right term...

/js

-- 
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>


From nobody Mon Jun  6 11:16:54 2016
Return-Path: <shares@ndzh.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 3BC7D12D519 for <i2rs@ietfa.amsl.com>; Mon,  6 Jun 2016 11:16:50 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.748
X-Spam-Level: *
X-Spam-Status: No, score=1.748 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, RDNS_NONE=0.793, T_FILL_THIS_FORM_SHORT=0.01] autolearn=no autolearn_force=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 I1-Fpxs1nTPH for <i2rs@ietfa.amsl.com>; Mon,  6 Jun 2016 11:16:49 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id D412B12D1A3 for <i2rs@ietf.org>; Mon,  6 Jun 2016 11:16:48 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=174.124.192.86; 
From: "Susan Hares" <shares@ndzh.com>
To: "'Juergen Schoenwaelder'" <j.schoenwaelder@jacobs-university.de>, "'Jeffrey Haas'" <jhaas@pfrc.org>
References: <000601d1bad5$70523090$50f691b0$@ndzh.com> <20160531063840.GA21289@elstar.local> <026df5be-4a60-f340-60aa-d713a0e75c48@joelhalpern.com> <20160531184844.GB22928@elstar.local> <413ef504-49a8-2ba2-7fd4-582a41bd0ad0@joelhalpern.com> <20160531192729.GA23116@elstar.local> <005801d1bb7a$e7b2e440$b718acc0$@ndzh.com> <20160601091953.GD24118@elstar.local> <20160602142733.GU17462@pfrc.org> <20160606174413.GA7492@elstar.local>
In-Reply-To: <20160606174413.GA7492@elstar.local>
Date: Mon, 6 Jun 2016 14:16:38 -0400
Message-ID: <01a701d1c01f$918dbf00$b4a93d00$@ndzh.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQJdaenpM7ljbP1C/TwjkI20GPnldwI0uYM8ArQFymECLv3ehAG5Y7N3Ajn3nEgCZB5QggIpGxSUAaVvUZYB/7WHjJ4rfhbw
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/OjVS3GQx25IcPKHkprKjebAdTcA>
Cc: i2rs@ietf.org, "'Joel M. Halpern'" <jmh@joelhalpern.com>
Subject: Re: [i2rs] Ephemeral State Requirements discussion
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Mon, 06 Jun 2016 18:16:50 -0000

Juergen: 

I2RS Ephemeral Configuration - is configuration which needs validation, but
does not survive a reboot. 

I2RS data models which are "ephemeral at top node" and have operational
state.  In these models, the operational state is like all other operational
state.  

I suggest we focus on the I2RS ephemeral Configuration.  On this topic you
stated below: 
 
"Again, for configuration datastores, I can obtain the config and validate
it pretty much anywhere, on the device or offline at a controller. My
understanding is that this would not be true for I2RS'
ephemeral stat datastores; I would need some amount of additional data to do
something close to YANG's configuration datastore validation." 

Why is this not true for ephemeral datastore?  I am missing any reason why
you think this is true. 

Sue 

-----Original Message-----
From: Juergen Schoenwaelder [mailto:j.schoenwaelder@jacobs-university.de] 
Sent: Monday, June 06, 2016 1:44 PM
To: Jeffrey Haas
Cc: Susan Hares; 'Joel M. Halpern'; i2rs@ietf.org
Subject: Re: [i2rs] Ephemeral State Requirements discussion

On Thu, Jun 02, 2016 at 10:27:33AM -0400, Jeffrey Haas wrote:
> Juergen,
> 
> On Wed, Jun 01, 2016 at 11:19:53AM +0200, Juergen Schoenwaelder wrote:
> > On Tue, May 31, 2016 at 04:27:51PM -0400, Susan Hares wrote:
> > >>  How does ephemeral sitting next to the <applied> data store 
> > >>  provide the ability to augment configuration with ephemeral 
> > > > configuration or operational state with ephemeral operational state?
> > >
> > At the schema level, you will augment the schema tree. If the 
> > > current separation of /foo and /foo-state would go away, this will 
> > > likely get simpler (but this is orthogonal to the question how an 
> > > <ephemeral> datastore conceptually interacts with the other
datastores).
> > >
> > >At the data tree level, there is a magic merging (+) function 
> > >involved that takes configuration data from a configuration 
> > >datastore and data from an ephemeral data store and produces the 
> > >resulting operational state. The idea was to not further detail how 
> > >this is achieved and instead treat an ephemeral datastore pretty 
> >> much like any other control plane interface interacting with
<operational state>.
>>
>> While such a solution-space seems mostly right, I had been under the 
> >impression that the interactions necessary for validation meant that 
> >ephemeral needed to move up closer to the top of your diagram.
>>
> >Note that I'm not saying I2RS requires validation, however the lack of 
> >validation has been a contentious point in prior discussions.
>> 
> >To confirm my understanding, ephemeral configuration state in the 
> >model you're proposing above is treated as operational state (the 
> >output of the netconf <get> operation for config true elements)?

> For configuration datastores, we have a reasonably precise definition what
validation means. And this comes for a price, e.g., config true nodes are
not allowed to refer to config false nodes. The reason is that validate
should work on the configuration data and it should not depend on the
operational state a device is in.

My understanding is that I2RS wants to inject data that modifies state that
might be purely operational state, e.g., state in a routing table obtained
from a routing protocol. If this is correct, then the ephemeral state
datastore is closer to the ephemeral state and pretty detached from
configuration datastores and likely it needs its own validation rules (if
they are needed at all).
 

Again, for configuration datastores, I can obtain the config and validate it
pretty much anywhere, on the device or offline at a controller. My
understanding is that this would not be true for I2RS'
ephemeral stat datastores; I would need some amount of additional data to do
something close to YANG's configuration datastore validation.

/js

PS: I think 'ephemeral state datastore' is actually a misnomer. The
    fact that the datastore I2RS is looking for is ephemeral is a
    property of this datastore but there are likely more important
    characteristics that should determine its name. But I have no good
    suggestion and this is perhaps a discussion to have at some later
    point in time.

-- 
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>


From nobody Mon Jun  6 11:31:32 2016
Return-Path: <j.schoenwaelder@jacobs-university.de>
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 6E60D12D529 for <i2rs@ietfa.amsl.com>; Mon,  6 Jun 2016 11:31:30 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.626
X-Spam-Level: 
X-Spam-Status: No, score=-5.626 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, RP_MATCHES_RCVD=-1.426] autolearn=ham autolearn_force=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 W-Qo7B6307Xd for <i2rs@ietfa.amsl.com>; Mon,  6 Jun 2016 11:31:28 -0700 (PDT)
Received: from atlas3.jacobs-university.de (atlas3.jacobs-university.de [212.201.44.18]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 95B8712D526 for <i2rs@ietf.org>; Mon,  6 Jun 2016 11:31:27 -0700 (PDT)
Received: from localhost (demetrius5.irc-it.jacobs-university.de [10.70.0.222]) by atlas3.jacobs-university.de (Postfix) with ESMTP id 500DC1006; Mon,  6 Jun 2016 20:31:26 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from atlas3.jacobs-university.de ([10.70.0.220]) by localhost (demetrius5.jacobs-university.de [10.70.0.222]) (amavisd-new, port 10030) with ESMTP id ao4NV7ZDbjnl; Mon,  6 Jun 2016 20:31:24 +0200 (CEST)
Received: from hermes.jacobs-university.de (hermes.jacobs-university.de [212.201.44.23]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "hermes.jacobs-university.de", Issuer "Jacobs University CA - G01" (verified OK)) by atlas3.jacobs-university.de (Postfix) with ESMTPS; Mon,  6 Jun 2016 20:31:25 +0200 (CEST)
Received: from localhost (demetrius4.jacobs-university.de [212.201.44.49]) by hermes.jacobs-university.de (Postfix) with ESMTP id 0027220047; Mon,  6 Jun 2016 20:31:25 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from hermes.jacobs-university.de ([212.201.44.23]) by localhost (demetrius4.jacobs-university.de [212.201.44.32]) (amavisd-new, port 10024) with ESMTP id pPbuZJBXl4p5; Mon,  6 Jun 2016 20:31:24 +0200 (CEST)
Received: from elstar.local (elstar.jacobs.jacobs-university.de [10.50.231.133]) by hermes.jacobs-university.de (Postfix) with ESMTP id 84C932004E; Mon,  6 Jun 2016 20:31:23 +0200 (CEST)
Received: by elstar.local (Postfix, from userid 501) id C829F3B0900F; Mon,  6 Jun 2016 20:31:22 +0200 (CEST)
Date: Mon, 6 Jun 2016 20:31:22 +0200
From: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
To: Susan Hares <shares@ndzh.com>
Message-ID: <20160606183122.GA7624@elstar.local>
Mail-Followup-To: Susan Hares <shares@ndzh.com>, 'Jeffrey Haas' <jhaas@pfrc.org>, "'Joel M. Halpern'" <jmh@joelhalpern.com>, i2rs@ietf.org
References: <20160531063840.GA21289@elstar.local> <026df5be-4a60-f340-60aa-d713a0e75c48@joelhalpern.com> <20160531184844.GB22928@elstar.local> <413ef504-49a8-2ba2-7fd4-582a41bd0ad0@joelhalpern.com> <20160531192729.GA23116@elstar.local> <005801d1bb7a$e7b2e440$b718acc0$@ndzh.com> <20160601091953.GD24118@elstar.local> <20160602142733.GU17462@pfrc.org> <20160606174413.GA7492@elstar.local> <01a701d1c01f$918dbf00$b4a93d00$@ndzh.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <01a701d1c01f$918dbf00$b4a93d00$@ndzh.com>
User-Agent: Mutt/1.6.0 (2016-04-01)
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/zY2QAuck5Q1U8PL1cyixhwe4udk>
Cc: 'Jeffrey Haas' <jhaas@pfrc.org>, i2rs@ietf.org, "'Joel M. Halpern'" <jmh@joelhalpern.com>
Subject: Re: [i2rs] Ephemeral State Requirements discussion
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
Reply-To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
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: <https://mailarchive.ietf.org/arch/browse/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: Mon, 06 Jun 2016 18:31:30 -0000

On Mon, Jun 06, 2016 at 02:16:38PM -0400, Susan Hares wrote:
> Juergen: 
> 
> I2RS Ephemeral Configuration - is configuration which needs validation, but
> does not survive a reboot.

Sue, 'validation' is not enough; there needs to be a clearer
definition what 'validation' means.
 
> I2RS data models which are "ephemeral at top node" and have operational
> state.  In these models, the operational state is like all other operational
> state.

The phrase 'ephemeral at top node' just confuses me.

> I suggest we focus on the I2RS ephemeral Configuration.  On this topic you
> stated below: 
>  
> "Again, for configuration datastores, I can obtain the config and validate
> it pretty much anywhere, on the device or offline at a controller. My
> understanding is that this would not be true for I2RS'
> ephemeral stat datastores; I would need some amount of additional data to do
> something close to YANG's configuration datastore validation." 
> 
> Why is this not true for ephemeral datastore?  I am missing any reason why
> you think this is true.

Configuration datastore validation works because data is
self-consistent without references to any (external) state. Are you
saying that the same is true for I2RS' ephemeral datastores?

/js

-- 
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>


From nobody Mon Jun  6 11:51:54 2016
Return-Path: <don.fedyk@hpe.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 8559912D0B2 for <i2rs@ietfa.amsl.com>; Mon,  6 Jun 2016 11:51:52 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.902
X-Spam-Level: 
X-Spam-Status: No, score=-1.902 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_PASS=-0.001] autolearn=ham autolearn_force=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 odkVWTaXJ8QH for <i2rs@ietfa.amsl.com>; Mon,  6 Jun 2016 11:51:49 -0700 (PDT)
Received: from na01-by2-obe.outbound.protection.outlook.com (mail-by2on0142.outbound.protection.outlook.com [207.46.100.142]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 42CFC12B05A for <i2rs@ietf.org>; Mon,  6 Jun 2016 11:51:49 -0700 (PDT)
Received: from AT5PR84MB0305.NAMPRD84.PROD.OUTLOOK.COM (10.162.138.27) by AT5PR84MB0305.NAMPRD84.PROD.OUTLOOK.COM (10.162.138.27) with Microsoft SMTP Server (TLS) id 15.1.511.8; Mon, 6 Jun 2016 18:51:47 +0000
Received: from AT5PR84MB0305.NAMPRD84.PROD.OUTLOOK.COM ([10.162.138.27]) by AT5PR84MB0305.NAMPRD84.PROD.OUTLOOK.COM ([10.162.138.27]) with mapi id 15.01.0511.010; Mon, 6 Jun 2016 18:51:47 +0000
From: "Fedyk, Don" <don.fedyk@hpe.com>
To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>, Susan Hares <shares@ndzh.com>
Thread-Topic: [i2rs] Ephemeral State Requirements discussion
Thread-Index: AQHRu2oeCP1ke0oWUU2icYgTrkl4wZ/TY0gAgAAFHoCAAAW2gIAAEN6AgADXtICAAehLgIAGgEaAgAAJDgCAAAQeAIAABITA
Date: Mon, 6 Jun 2016 18:51:46 +0000
Message-ID: <AT5PR84MB0305B2CE55770F1A6A216ADDF65C0@AT5PR84MB0305.NAMPRD84.PROD.OUTLOOK.COM>
References: <20160531063840.GA21289@elstar.local> <026df5be-4a60-f340-60aa-d713a0e75c48@joelhalpern.com> <20160531184844.GB22928@elstar.local> <413ef504-49a8-2ba2-7fd4-582a41bd0ad0@joelhalpern.com> <20160531192729.GA23116@elstar.local> <005801d1bb7a$e7b2e440$b718acc0$@ndzh.com> <20160601091953.GD24118@elstar.local> <20160602142733.GU17462@pfrc.org> <20160606174413.GA7492@elstar.local> <01a701d1c01f$918dbf00$b4a93d00$@ndzh.com> <20160606183122.GA7624@elstar.local>
In-Reply-To: <20160606183122.GA7624@elstar.local>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
authentication-results: spf=none (sender IP is ) smtp.mailfrom=don.fedyk@hpe.com; 
x-originating-ip: [15.219.147.13]
x-ms-office365-filtering-correlation-id: 72a42a92-4a19-4b18-4dfc-08d38e3b9c96
x-microsoft-exchange-diagnostics: 1; AT5PR84MB0305; 5:OuiVoPAM66XUus3TNEyr9ySGIWEpJ4aQ1LBOt7aWZLWoPcn5bpuoFojyzKjONGnItPpls1s6q9KDBkbnDzRsCPf+fnIJpEIMan46LXS3KDmop2qD6VIWgbBrZevgbpFpikEG9ZECZqpOFwQGbuhjDg==; 24:YOZDj4vHaL+IhmFwksts98GA2kNORfA+nzjqWYf0+MUg9pVF1rj/emnLfj+VeJszjtotIq9NAJ1ZcgEBPl8R3iEUFRcAI07/+pBlIiWFNHI=; 7:dZ88CjV8uL3Tohst9vTV906/0i1WFNbzvph7skGnKTs+T94J9DChBsMkXDWfmWvvP/f1rKRZ8t9MeBaO19t8dtSQCHFkUx7E4LKspaB/2lYj4+RwGKMNPp+5q/+Q+lyUaU1kMb4t22O9mncbXhIT6kJvpI2PMXONQvQTjFktsPJ3CKpB3Abx3rggdYSTnAYh4mH1p8gSU/piY0voQ+NnfFDfCLQ9tpkhJC3m/ziUMUI=
x-microsoft-antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:AT5PR84MB0305;
x-microsoft-antispam-prvs: <AT5PR84MB030559BF882666C7B03871EEF65C0@AT5PR84MB0305.NAMPRD84.PROD.OUTLOOK.COM>
x-exchange-antispam-report-test: UriScan:;
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(601004)(2401047)(8121501046)(5005006)(10201501046)(3002001); SRVR:AT5PR84MB0305; BCL:0; PCL:0; RULEID:; SRVR:AT5PR84MB0305; 
x-forefront-prvs: 096507C068
x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(6009001)(199003)(13464003)(24454002)(189002)(377454003)(2900100001)(2950100001)(33656002)(93886004)(9686002)(4326007)(2906002)(99286002)(11100500001)(10400500002)(5008740100001)(5002640100001)(77096005)(68736007)(15975445007)(66066001)(5004730100002)(19580405001)(19580395003)(8936002)(105586002)(106356001)(106116001)(97736004)(8676002)(81166006)(189998001)(3660700001)(3280700002)(101416001)(87936001)(5001770100001)(3846002)(5003600100002)(586003)(122556002)(86362001)(81156014)(50986999)(54356999)(76176999)(6116002)(102836003)(92566002); DIR:OUT; SFP:1102; SCL:1; SRVR:AT5PR84MB0305; H:AT5PR84MB0305.NAMPRD84.PROD.OUTLOOK.COM; FPR:; SPF:None; PTR:InfoNoRecords;  A:1; MX:1; LANG:en; 
received-spf: None (protection.outlook.com: hpe.com does not designate permitted sender hosts)
spamdiagnosticoutput: 1:23
spamdiagnosticmetadata: NSPM
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-OriginatorOrg: hpe.com
X-MS-Exchange-CrossTenant-originalarrivaltime: 06 Jun 2016 18:51:46.8648 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 105b2061-b669-4b31-92ac-24d304d195dc
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AT5PR84MB0305
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/AEI8vkpkrZgVAW2VOhj-SuuHahc>
Cc: 'Jeffrey Haas' <jhaas@pfrc.org>, "i2rs@ietf.org" <i2rs@ietf.org>, "'Joel M. Halpern'" <jmh@joelhalpern.com>
Subject: Re: [i2rs] Ephemeral State Requirements discussion
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Mon, 06 Jun 2016 18:51:52 -0000

Does this imply for a minor tweak of some operational datastore (temporary =
link metric change or something similar) , I2RS ephemeral has to have its o=
wn complete datastore? =20

Don=20

> -----Original Message-----
> From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Juergen
> Schoenwaelder
> Sent: Monday, June 06, 2016 2:31 PM
> To: Susan Hares <shares@ndzh.com>
> Cc: 'Jeffrey Haas' <jhaas@pfrc.org>; i2rs@ietf.org; 'Joel M. Halpern'
> <jmh@joelhalpern.com>
> Subject: Re: [i2rs] Ephemeral State Requirements discussion
>=20
> On Mon, Jun 06, 2016 at 02:16:38PM -0400, Susan Hares wrote:
> > Juergen:
> >
> > I2RS Ephemeral Configuration - is configuration which needs
> > validation, but does not survive a reboot.
>=20
> Sue, 'validation' is not enough; there needs to be a clearer definition w=
hat
> 'validation' means.
>=20
> > I2RS data models which are "ephemeral at top node" and have
> > operational state.  In these models, the operational state is like all
> > other operational state.
>=20
> The phrase 'ephemeral at top node' just confuses me.
>=20
> > I suggest we focus on the I2RS ephemeral Configuration.  On this topic
> > you stated below:
> >
> > "Again, for configuration datastores, I can obtain the config and
> > validate it pretty much anywhere, on the device or offline at a
> > controller. My understanding is that this would not be true for I2RS'
> > ephemeral stat datastores; I would need some amount of additional data
> > to do something close to YANG's configuration datastore validation."
> >
> > Why is this not true for ephemeral datastore?  I am missing any reason
> > why you think this is true.
>=20
> Configuration datastore validation works because data is self-consistent
> without references to any (external) state. Are you saying that the same =
is
> true for I2RS' ephemeral datastores?
>=20
> /js
>=20
> --
> Juergen Schoenwaelder           Jacobs University Bremen gGmbH
> Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
> Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>
>=20
> _______________________________________________
> i2rs mailing list
> i2rs@ietf.org
> https://www.ietf.org/mailman/listinfo/i2rs


From nobody Mon Jun  6 11:57:54 2016
Return-Path: <shares@ndzh.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 6791B12D0ED for <i2rs@ietfa.amsl.com>; Mon,  6 Jun 2016 11:57:51 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.738
X-Spam-Level: *
X-Spam-Status: No, score=1.738 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, RDNS_NONE=0.793] autolearn=no autolearn_force=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 7VmyR8p7eArw for <i2rs@ietfa.amsl.com>; Mon,  6 Jun 2016 11:57:49 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id A424712D0B2 for <i2rs@ietf.org>; Mon,  6 Jun 2016 11:57:49 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=174.124.192.86; 
From: "Susan Hares" <shares@ndzh.com>
To: "'Fedyk, Don'" <don.fedyk@hpe.com>, "'Juergen Schoenwaelder'" <j.schoenwaelder@jacobs-university.de>
References: <20160531063840.GA21289@elstar.local> <026df5be-4a60-f340-60aa-d713a0e75c48@joelhalpern.com> <20160531184844.GB22928@elstar.local> <413ef504-49a8-2ba2-7fd4-582a41bd0ad0@joelhalpern.com> <20160531192729.GA23116@elstar.local> <005801d1bb7a$e7b2e440$b718acc0$@ndzh.com> <20160601091953.GD24118@elstar.local> <20160602142733.GU17462@pfrc.org> <20160606174413.GA7492@elstar.local> <01a701d1c01f$918dbf00$b4a93d00$@ndzh.com> <20160606183122.GA7624@elstar.local> <AT5PR84MB0305B2CE55770F1A6A216ADDF65C0@AT5PR84MB0305.NAMPRD84.PROD.OUTLOOK.COM>
In-Reply-To: <AT5PR84MB0305B2CE55770F1A6A216ADDF65C0@AT5PR84MB0305.NAMPRD84.PROD.OUTLOOK.COM>
Date: Mon, 6 Jun 2016 14:57:40 -0400
Message-ID: <020501d1c025$4d46e5f0$e7d4b1d0$@ndzh.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQI0uYM8sjGjGwBI4gABc7Ny2GzULQK0BcphAi793oQBuWOzdwI595xIAmQeUIICKRsUlAGlb1GWAf+1h4wCu7lVpQJ3IH1PAzZI5F+eS0cgkA==
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/vvzUU7Z_isphzsRzcVZXndI-448>
Cc: 'Jeffrey Haas' <jhaas@pfrc.org>, i2rs@ietf.org, "'Joel M. Halpern'" <jmh@joelhalpern.com>
Subject: Re: [i2rs] Ephemeral State Requirements discussion
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Mon, 06 Jun 2016 18:57:51 -0000

Don: 

In my understanding, no.   

I2RS should be able to augment the normal configuration with ephemeral
configuration (see the example in my presentation of Node-Type augmenting
bgp-global-config/config). 

I2RS should be able to augment the operational data store  (see the example
of my presentation of Node-Type augmenting bgp-global-config/state).  


Sue 

-----Original Message-----
From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Fedyk, Don
Sent: Monday, June 06, 2016 2:52 PM
To: Juergen Schoenwaelder; Susan Hares
Cc: 'Jeffrey Haas'; i2rs@ietf.org; 'Joel M. Halpern'
Subject: Re: [i2rs] Ephemeral State Requirements discussion

Does this imply for a minor tweak of some operational datastore (temporary
link metric change or something similar) , I2RS ephemeral has to have its
own complete datastore?  

Don 

> -----Original Message-----
> From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Juergen 
> Schoenwaelder
> Sent: Monday, June 06, 2016 2:31 PM
> To: Susan Hares <shares@ndzh.com>
> Cc: 'Jeffrey Haas' <jhaas@pfrc.org>; i2rs@ietf.org; 'Joel M. Halpern'
> <jmh@joelhalpern.com>
> Subject: Re: [i2rs] Ephemeral State Requirements discussion
> 
> On Mon, Jun 06, 2016 at 02:16:38PM -0400, Susan Hares wrote:
> > Juergen:
> >
> > I2RS Ephemeral Configuration - is configuration which needs 
> > validation, but does not survive a reboot.
> 
> Sue, 'validation' is not enough; there needs to be a clearer 
> definition what 'validation' means.
> 
> > I2RS data models which are "ephemeral at top node" and have 
> > operational state.  In these models, the operational state is like 
> > all other operational state.
> 
> The phrase 'ephemeral at top node' just confuses me.
> 
> > I suggest we focus on the I2RS ephemeral Configuration.  On this 
> > topic you stated below:
> >
> > "Again, for configuration datastores, I can obtain the config and 
> > validate it pretty much anywhere, on the device or offline at a 
> > controller. My understanding is that this would not be true for I2RS'
> > ephemeral stat datastores; I would need some amount of additional 
> > data to do something close to YANG's configuration datastore
validation."
> >
> > Why is this not true for ephemeral datastore?  I am missing any 
> > reason why you think this is true.
> 
> Configuration datastore validation works because data is 
> self-consistent without references to any (external) state. Are you 
> saying that the same is true for I2RS' ephemeral datastores?
> 
> /js
> 
> --
> Juergen Schoenwaelder           Jacobs University Bremen gGmbH
> Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
> Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>
> 
> _______________________________________________
> 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


From nobody Mon Jun  6 12:03:34 2016
Return-Path: <j.schoenwaelder@jacobs-university.de>
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 D364A12D5BF for <i2rs@ietfa.amsl.com>; Mon,  6 Jun 2016 12:03:31 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.626
X-Spam-Level: 
X-Spam-Status: No, score=-5.626 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, RP_MATCHES_RCVD=-1.426] autolearn=ham autolearn_force=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 yRVbptG2N5or for <i2rs@ietfa.amsl.com>; Mon,  6 Jun 2016 12:03:30 -0700 (PDT)
Received: from atlas3.jacobs-university.de (atlas3.jacobs-university.de [212.201.44.18]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 5DFD112D1CA for <i2rs@ietf.org>; Mon,  6 Jun 2016 12:03:30 -0700 (PDT)
Received: from localhost (demetrius5.irc-it.jacobs-university.de [10.70.0.222]) by atlas3.jacobs-university.de (Postfix) with ESMTP id 29915108F; Mon,  6 Jun 2016 21:03:29 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from atlas3.jacobs-university.de ([10.70.0.220]) by localhost (demetrius5.jacobs-university.de [10.70.0.222]) (amavisd-new, port 10030) with ESMTP id KTxCptwSJZSb; Mon,  6 Jun 2016 21:03:27 +0200 (CEST)
Received: from hermes.jacobs-university.de (hermes.jacobs-university.de [212.201.44.23]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "hermes.jacobs-university.de", Issuer "Jacobs University CA - G01" (verified OK)) by atlas3.jacobs-university.de (Postfix) with ESMTPS; Mon,  6 Jun 2016 21:03:28 +0200 (CEST)
Received: from localhost (demetrius3.jacobs-university.de [212.201.44.48]) by hermes.jacobs-university.de (Postfix) with ESMTP id 4C7262004E; Mon,  6 Jun 2016 21:03:28 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from hermes.jacobs-university.de ([212.201.44.23]) by localhost (demetrius3.jacobs-university.de [212.201.44.32]) (amavisd-new, port 10024) with ESMTP id 8seiUwFarhWl; Mon,  6 Jun 2016 21:03:27 +0200 (CEST)
Received: from elstar.local (elstar.jacobs.jacobs-university.de [10.50.231.133]) by hermes.jacobs-university.de (Postfix) with ESMTP id 4205220047; Mon,  6 Jun 2016 21:03:27 +0200 (CEST)
Received: by elstar.local (Postfix, from userid 501) id 08F743B09230; Mon,  6 Jun 2016 21:03:25 +0200 (CEST)
Date: Mon, 6 Jun 2016 21:03:25 +0200
From: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
To: "Fedyk, Don" <don.fedyk@hpe.com>
Message-ID: <20160606190325.GD7624@elstar.local>
Mail-Followup-To: "Fedyk, Don" <don.fedyk@hpe.com>, Susan Hares <shares@ndzh.com>, 'Jeffrey Haas' <jhaas@pfrc.org>, "i2rs@ietf.org" <i2rs@ietf.org>, "'Joel M. Halpern'" <jmh@joelhalpern.com>
References: <20160531184844.GB22928@elstar.local> <413ef504-49a8-2ba2-7fd4-582a41bd0ad0@joelhalpern.com> <20160531192729.GA23116@elstar.local> <005801d1bb7a$e7b2e440$b718acc0$@ndzh.com> <20160601091953.GD24118@elstar.local> <20160602142733.GU17462@pfrc.org> <20160606174413.GA7492@elstar.local> <01a701d1c01f$918dbf00$b4a93d00$@ndzh.com> <20160606183122.GA7624@elstar.local> <AT5PR84MB0305B2CE55770F1A6A216ADDF65C0@AT5PR84MB0305.NAMPRD84.PROD.OUTLOOK.COM>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <AT5PR84MB0305B2CE55770F1A6A216ADDF65C0@AT5PR84MB0305.NAMPRD84.PROD.OUTLOOK.COM>
User-Agent: Mutt/1.6.0 (2016-04-01)
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/TQlyY3YWrsLBBkllRGHOBTePlJY>
Cc: 'Jeffrey Haas' <jhaas@pfrc.org>, "i2rs@ietf.org" <i2rs@ietf.org>, "'Joel M. Halpern'" <jmh@joelhalpern.com>, Susan Hares <shares@ndzh.com>
Subject: Re: [i2rs] Ephemeral State Requirements discussion
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
Reply-To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
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: <https://mailarchive.ietf.org/arch/browse/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: Mon, 06 Jun 2016 19:03:32 -0000

On Mon, Jun 06, 2016 at 06:51:46PM +0000, Fedyk, Don wrote:

> Does this imply for a minor tweak of some operational datastore
> (temporary link metric change or something similar) , I2RS ephemeral
> has to have its own complete datastore?

Yes. Because this is where the information that something got
overwritten is stored. And in this case, the datastore would
essentially consist of a single key/value pair. The phrase 'complete
datastore' may indicate something complex while it can actually be
lightweight. In any case, somewhere information must be kept that
something was overwritten - we call this something a datastore.

/js

-- 
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>


From nobody Mon Jun  6 12:07:24 2016
Return-Path: <shares@ndzh.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 05DBB12D529 for <i2rs@ietfa.amsl.com>; Mon,  6 Jun 2016 12:07:22 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.738
X-Spam-Level: *
X-Spam-Status: No, score=1.738 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, RDNS_NONE=0.793] autolearn=no autolearn_force=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 r_UkAoFdcGo8 for <i2rs@ietfa.amsl.com>; Mon,  6 Jun 2016 12:07:21 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 2370E12B02A for <i2rs@ietf.org>; Mon,  6 Jun 2016 12:07:21 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=174.124.192.86; 
From: "Susan Hares" <shares@ndzh.com>
To: "'Juergen Schoenwaelder'" <j.schoenwaelder@jacobs-university.de>
References: <20160531063840.GA21289@elstar.local> <026df5be-4a60-f340-60aa-d713a0e75c48@joelhalpern.com> <20160531184844.GB22928@elstar.local> <413ef504-49a8-2ba2-7fd4-582a41bd0ad0@joelhalpern.com> <20160531192729.GA23116@elstar.local> <005801d1bb7a$e7b2e440$b718acc0$@ndzh.com> <20160601091953.GD24118@elstar.local> <20160602142733.GU17462@pfrc.org> <20160606174413.GA7492@elstar.local> <01a701d1c01f$918dbf00$b4a93d00$@ndzh.com> <20160606183122.GA7624@elstar.local>
In-Reply-To: <20160606183122.GA7624@elstar.local>
Date: Mon, 6 Jun 2016 15:07:13 -0400
Message-ID: <021201d1c026$a26da540$e748efc0$@ndzh.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQI0uYM8sjGjGwBI4gABc7Ny2GzULQK0BcphAi793oQBuWOzdwI595xIAmQeUIICKRsUlAGlb1GWAf+1h4wCu7lVpQJ3IH1PnmT4RrA=
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/LruXFtwXoErrVYDPkNm3OzS9KL0>
Cc: 'Jeffrey Haas' <jhaas@pfrc.org>, i2rs@ietf.org, "'Joel M. Halpern'" <jmh@joelhalpern.com>
Subject: Re: [i2rs] Ephemeral State Requirements discussion
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Mon, 06 Jun 2016 19:07:22 -0000

Juergen: 

Please start by defining validation for NETCONF configuration.  Then, we can
provide the additions for ephemeral configuration state that are not in
ephemeral requirements.  See the rest of the comments below. 

Sue 

-----Original Message-----
From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Juergen Schoenwaelder
Sent: Monday, June 06, 2016 2:31 PM
To: Susan Hares
Cc: 'Jeffrey Haas'; i2rs@ietf.org; 'Joel M. Halpern'
Subject: Re: [i2rs] Ephemeral State Requirements discussion

On Mon, Jun 06, 2016 at 02:16:38PM -0400, Susan Hares wrote:
>> Juergen: 
>> 
>> I2RS Ephemeral Configuration - is configuration which needs 
>> validation, but does not survive a reboot.

> Sue, 'validation' is not enough; there needs to be a clearer definition
what 'validation' means.
 
>> I2RS data models which are "ephemeral at top node" and have 
>> operational state.  In these models, the operational state is like all 
>> other operational state.

>The phrase 'ephemeral at top node' just confuses me.

  module: ietf-i2rs-rib
      +--rw routing-instance  (what do NETCONF people call this node?) 


> I suggest we focus on the I2RS ephemeral Configuration.  On this topic 
> you stated below:
>  
> "Again, for configuration datastores, I can obtain the config and 
> validate it pretty much anywhere, on the device or offline at a 
> controller. My understanding is that this would not be true for I2RS'
> ephemeral stat datastores; I would need some amount of additional data 
> to do something close to YANG's configuration datastore validation."
> 
> Why is this not true for ephemeral datastore?  I am missing any reason 
> why you think this is true.

>Configuration datastore validation works because data is self-consistent
without references to any (external) state. 
>Are you saying that the same is true for I2RS' ephemeral datastores?

Please define what NETCONF/RESTCONF/NETMOD means by external state?  
See Ephemeral-REQ-01 to Ephemeral-REQ-04 which specify the external state
references.  
    
/js

-- 
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>

_______________________________________________
i2rs mailing list
i2rs@ietf.org
https://www.ietf.org/mailman/listinfo/i2rs


From nobody Mon Jun  6 12:20:26 2016
Return-Path: <shares@ndzh.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 CFD5212D105 for <i2rs@ietfa.amsl.com>; Mon,  6 Jun 2016 12:20:22 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.738
X-Spam-Level: *
X-Spam-Status: No, score=1.738 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, RDNS_NONE=0.793] autolearn=no autolearn_force=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 IUkw1TKIxVma for <i2rs@ietfa.amsl.com>; Mon,  6 Jun 2016 12:20:21 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 8F1BC12B02C for <i2rs@ietf.org>; Mon,  6 Jun 2016 12:12:31 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=174.124.192.86; 
From: "Susan Hares" <shares@ndzh.com>
To: "'Juergen Schoenwaelder'" <j.schoenwaelder@jacobs-university.de>, "'Fedyk, Don'" <don.fedyk@hpe.com>
References: <20160531184844.GB22928@elstar.local> <413ef504-49a8-2ba2-7fd4-582a41bd0ad0@joelhalpern.com> <20160531192729.GA23116@elstar.local> <005801d1bb7a$e7b2e440$b718acc0$@ndzh.com> <20160601091953.GD24118@elstar.local> <20160602142733.GU17462@pfrc.org> <20160606174413.GA7492@elstar.local> <01a701d1c01f$918dbf00$b4a93d00$@ndzh.com> <20160606183122.GA7624@elstar.local> <AT5PR84MB0305B2CE55770F1A6A216ADDF65C0@AT5PR84MB0305.NAMPRD84.PROD.OUTLOOK.COM> <20160606190325.GD7624@elstar.local>
In-Reply-To: <20160606190325.GD7624@elstar.local>
Date: Mon, 6 Jun 2016 15:12:23 -0400
Message-ID: <021601d1c027$5b9bf4e0$12d3dea0$@ndzh.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQIu/d6EsYi451nodjFDZLv1cmeIEQG5Y7N3Ajn3nEgCZB5QggIpGxSUAaVvUZYB/7WHjAK7uVWlAncgfU8DNkjkXwD2BRp/nnYrS3A=
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/jrtQXhvv8oX4MkDLht_dygZQqVE>
Cc: 'Jeffrey Haas' <jhaas@pfrc.org>, i2rs@ietf.org, "'Joel M. Halpern'" <jmh@joelhalpern.com>
Subject: Re: [i2rs] Ephemeral State Requirements discussion
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Mon, 06 Jun 2016 19:20:23 -0000

Juergen: 

I agree you if you overwrite data, the original config data and the I2RS
values must be kept some-place.  However, this is an implementation matter
in my mind.  Why do you tag it to a different data store. 

Also, is the augmentation of any variable considered a separate data store?


Sue 

-----Original Message-----
From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Juergen Schoenwaelder
Sent: Monday, June 06, 2016 3:03 PM
To: Fedyk, Don
Cc: 'Jeffrey Haas'; i2rs@ietf.org; 'Joel M. Halpern'; Susan Hares
Subject: Re: [i2rs] Ephemeral State Requirements discussion

On Mon, Jun 06, 2016 at 06:51:46PM +0000, Fedyk, Don wrote:

> Does this imply for a minor tweak of some operational datastore 
> (temporary link metric change or something similar) , I2RS ephemeral 
> has to have its own complete datastore?

Yes. Because this is where the information that something got overwritten is
stored. And in this case, the datastore would essentially consist of a
single key/value pair. The phrase 'complete datastore' may indicate
something complex while it can actually be lightweight. In any case,
somewhere information must be kept that something was overwritten - we call
this something a datastore.

/js

-- 
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>

_______________________________________________
i2rs mailing list
i2rs@ietf.org
https://www.ietf.org/mailman/listinfo/i2rs


From nobody Mon Jun  6 13:00:23 2016
Return-Path: <j.schoenwaelder@jacobs-university.de>
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 32E2E12D8DB for <i2rs@ietfa.amsl.com>; Mon,  6 Jun 2016 13:00:19 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.626
X-Spam-Level: 
X-Spam-Status: No, score=-5.626 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, RP_MATCHES_RCVD=-1.426] autolearn=ham autolearn_force=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 MRN6mdGcXp3K for <i2rs@ietfa.amsl.com>; Mon,  6 Jun 2016 13:00:14 -0700 (PDT)
Received: from atlas3.jacobs-university.de (atlas3.jacobs-university.de [212.201.44.18]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 383DD12D5D3 for <i2rs@ietf.org>; Mon,  6 Jun 2016 13:00:10 -0700 (PDT)
Received: from localhost (demetrius5.irc-it.jacobs-university.de [10.70.0.222]) by atlas3.jacobs-university.de (Postfix) with ESMTP id EF533103F; Mon,  6 Jun 2016 22:00:08 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from atlas3.jacobs-university.de ([10.70.0.220]) by localhost (demetrius5.jacobs-university.de [10.70.0.222]) (amavisd-new, port 10030) with ESMTP id gp_16y2VM9a3; Mon,  6 Jun 2016 22:00:07 +0200 (CEST)
Received: from hermes.jacobs-university.de (hermes.jacobs-university.de [212.201.44.23]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "hermes.jacobs-university.de", Issuer "Jacobs University CA - G01" (verified OK)) by atlas3.jacobs-university.de (Postfix) with ESMTPS; Mon,  6 Jun 2016 22:00:07 +0200 (CEST)
Received: from localhost (demetrius2.jacobs-university.de [212.201.44.47]) by hermes.jacobs-university.de (Postfix) with ESMTP id CBF1D20050; Mon,  6 Jun 2016 22:00:07 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from hermes.jacobs-university.de ([212.201.44.23]) by localhost (demetrius2.jacobs-university.de [212.201.44.32]) (amavisd-new, port 10024) with ESMTP id DpXL6odbJ_P0; Mon,  6 Jun 2016 22:00:06 +0200 (CEST)
Received: from elstar.local (elstar.jacobs.jacobs-university.de [10.50.231.133]) by hermes.jacobs-university.de (Postfix) with ESMTP id B26F720047; Mon,  6 Jun 2016 22:00:04 +0200 (CEST)
Received: by elstar.local (Postfix, from userid 501) id 75F253B093A6; Mon,  6 Jun 2016 22:00:04 +0200 (CEST)
Date: Mon, 6 Jun 2016 22:00:04 +0200
From: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
To: Susan Hares <shares@ndzh.com>
Message-ID: <20160606200004.GA7820@elstar.local>
Mail-Followup-To: Susan Hares <shares@ndzh.com>, "'Fedyk, Don'" <don.fedyk@hpe.com>, 'Jeffrey Haas' <jhaas@pfrc.org>, i2rs@ietf.org, "'Joel M. Halpern'" <jmh@joelhalpern.com>
References: <20160531192729.GA23116@elstar.local> <005801d1bb7a$e7b2e440$b718acc0$@ndzh.com> <20160601091953.GD24118@elstar.local> <20160602142733.GU17462@pfrc.org> <20160606174413.GA7492@elstar.local> <01a701d1c01f$918dbf00$b4a93d00$@ndzh.com> <20160606183122.GA7624@elstar.local> <AT5PR84MB0305B2CE55770F1A6A216ADDF65C0@AT5PR84MB0305.NAMPRD84.PROD.OUTLOOK.COM> <20160606190325.GD7624@elstar.local> <021601d1c027$5b9bf4e0$12d3dea0$@ndzh.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <021601d1c027$5b9bf4e0$12d3dea0$@ndzh.com>
User-Agent: Mutt/1.6.0 (2016-04-01)
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/TGIwbXnkFoy6vWOuDsnAQCz7gHE>
Cc: 'Jeffrey Haas' <jhaas@pfrc.org>, i2rs@ietf.org, "'Joel M. Halpern'" <jmh@joelhalpern.com>, "'Fedyk, Don'" <don.fedyk@hpe.com>
Subject: Re: [i2rs] Ephemeral State Requirements discussion
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
Reply-To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
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: <https://mailarchive.ietf.org/arch/browse/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: Mon, 06 Jun 2016 20:00:19 -0000

On Mon, Jun 06, 2016 at 03:12:23PM -0400, Susan Hares wrote:
> Juergen: 
> 
> I agree you if you overwrite data, the original config data and the I2RS
> values must be kept some-place.  However, this is an implementation matter
> in my mind.  Why do you tag it to a different data store. 
> 
> Also, is the augmentation of any variable considered a separate data store?
>

See the I-D I posted.

/js

-- 
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>


From nobody Mon Jun  6 13:10:30 2016
Return-Path: <j.schoenwaelder@jacobs-university.de>
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 B9B1012D1A5 for <i2rs@ietfa.amsl.com>; Mon,  6 Jun 2016 13:10:23 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.626
X-Spam-Level: 
X-Spam-Status: No, score=-5.626 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, RP_MATCHES_RCVD=-1.426] autolearn=unavailable autolearn_force=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 pN0F01l2Ht-3 for <i2rs@ietfa.amsl.com>; Mon,  6 Jun 2016 13:10:22 -0700 (PDT)
Received: from atlas3.jacobs-university.de (atlas3.jacobs-university.de [212.201.44.18]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id BC36612D18A for <i2rs@ietf.org>; Mon,  6 Jun 2016 13:03:56 -0700 (PDT)
Received: from localhost (demetrius5.irc-it.jacobs-university.de [10.70.0.222]) by atlas3.jacobs-university.de (Postfix) with ESMTP id 8840F765; Mon,  6 Jun 2016 22:03:55 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from atlas3.jacobs-university.de ([10.70.0.220]) by localhost (demetrius5.jacobs-university.de [10.70.0.222]) (amavisd-new, port 10030) with ESMTP id HTqT9QhJdsn7; Mon,  6 Jun 2016 22:03:53 +0200 (CEST)
Received: from hermes.jacobs-university.de (hermes.jacobs-university.de [212.201.44.23]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "hermes.jacobs-university.de", Issuer "Jacobs University CA - G01" (verified OK)) by atlas3.jacobs-university.de (Postfix) with ESMTPS; Mon,  6 Jun 2016 22:03:54 +0200 (CEST)
Received: from localhost (demetrius3.jacobs-university.de [212.201.44.48]) by hermes.jacobs-university.de (Postfix) with ESMTP id 8A2922004E; Mon,  6 Jun 2016 22:03:54 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from hermes.jacobs-university.de ([212.201.44.23]) by localhost (demetrius3.jacobs-university.de [212.201.44.32]) (amavisd-new, port 10024) with ESMTP id pJ320OqsyhzT; Mon,  6 Jun 2016 22:03:53 +0200 (CEST)
Received: from elstar.local (elstar.jacobs.jacobs-university.de [10.50.231.133]) by hermes.jacobs-university.de (Postfix) with ESMTP id 9530D20047; Mon,  6 Jun 2016 22:03:53 +0200 (CEST)
Received: by elstar.local (Postfix, from userid 501) id 8798A3B093ED; Mon,  6 Jun 2016 22:03:53 +0200 (CEST)
Date: Mon, 6 Jun 2016 22:03:53 +0200
From: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
To: Susan Hares <shares@ndzh.com>
Message-ID: <20160606200353.GB7820@elstar.local>
Mail-Followup-To: Susan Hares <shares@ndzh.com>, 'Jeffrey Haas' <jhaas@pfrc.org>, i2rs@ietf.org, "'Joel M. Halpern'" <jmh@joelhalpern.com>
References: <20160531184844.GB22928@elstar.local> <413ef504-49a8-2ba2-7fd4-582a41bd0ad0@joelhalpern.com> <20160531192729.GA23116@elstar.local> <005801d1bb7a$e7b2e440$b718acc0$@ndzh.com> <20160601091953.GD24118@elstar.local> <20160602142733.GU17462@pfrc.org> <20160606174413.GA7492@elstar.local> <01a701d1c01f$918dbf00$b4a93d00$@ndzh.com> <20160606183122.GA7624@elstar.local> <021201d1c026$a26da540$e748efc0$@ndzh.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <021201d1c026$a26da540$e748efc0$@ndzh.com>
User-Agent: Mutt/1.6.0 (2016-04-01)
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/iLM9OZ4Fu3TntKKTNQ8RGrgEWas>
Cc: 'Jeffrey Haas' <jhaas@pfrc.org>, i2rs@ietf.org, "'Joel M. Halpern'" <jmh@joelhalpern.com>
Subject: Re: [i2rs] Ephemeral State Requirements discussion
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
Reply-To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
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: <https://mailarchive.ietf.org/arch/browse/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: Mon, 06 Jun 2016 20:10:24 -0000

On Mon, Jun 06, 2016 at 03:07:13PM -0400, Susan Hares wrote:
> Juergen: 
> 
> Please start by defining validation for NETCONF configuration.  Then, we can
> provide the additions for ephemeral configuration state that are not in
> ephemeral requirements.  See the rest of the comments below. 
>

The validation of NETCONF configurations modelled in YANG 1.0 is
defined in RFC 6020 and for configurations modelled in YANG 1.1 it is
defined in draft-ietf-netmod-rfc6020bis-12.

/js

PS: Our communication is not effective, I drop out for now.

-- 
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>


From nobody Mon Jun  6 16:05:29 2016
Return-Path: <shares@ndzh.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 26B4012D665 for <i2rs@ietfa.amsl.com>; Mon,  6 Jun 2016 16:05:28 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.738
X-Spam-Level: *
X-Spam-Status: No, score=1.738 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, RDNS_NONE=0.793] autolearn=no autolearn_force=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 t9Lomj1RLA37 for <i2rs@ietfa.amsl.com>; Mon,  6 Jun 2016 16:05:26 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id AEFFA12D662 for <i2rs@ietf.org>; Mon,  6 Jun 2016 16:05:26 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=174.124.192.86; 
From: "Susan Hares" <shares@ndzh.com>
To: "'Juergen Schoenwaelder'" <j.schoenwaelder@jacobs-university.de>
References: <20160531184844.GB22928@elstar.local> <413ef504-49a8-2ba2-7fd4-582a41bd0ad0@joelhalpern.com> <20160531192729.GA23116@elstar.local> <005801d1bb7a$e7b2e440$b718acc0$@ndzh.com> <20160601091953.GD24118@elstar.local> <20160602142733.GU17462@pfrc.org> <20160606174413.GA7492@elstar.local> <01a701d1c01f$918dbf00$b4a93d00$@ndzh.com> <20160606183122.GA7624@elstar.local> <021201d1c026$a26da540$e748efc0$@ndzh.com> <20160606200353.GB7820@elstar.local>
In-Reply-To: <20160606200353.GB7820@elstar.local>
Date: Mon, 6 Jun 2016 19:05:15 -0400
Message-ID: <029b01d1c047$e38fd400$aaaf7c00$@ndzh.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQIu/d6EsYi451nodjFDZLv1cmeIEQG5Y7N3Ajn3nEgCZB5QggIpGxSUAaVvUZYB/7WHjAK7uVWlAncgfU8BmLDpUgIpvPMxnnm3EyA=
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/7vuL9NXF3A9w-oqpu-t4FuUQTlM>
Cc: 'Jeffrey Haas' <jhaas@pfrc.org>, i2rs@ietf.org, "'Joel M. Halpern'" <jmh@joelhalpern.com>
Subject: Re: [i2rs] Ephemeral State Requirements discussion
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Mon, 06 Jun 2016 23:05:28 -0000

Juergen: 

Thank you for the pointer,  I am assuming you are referring to section 8.3
on constraint enforcement (from RFC6020bis), and as a part of constraint
enforcement, the validation.  

I2RS ephemeral requirements 1-4 are: 
   Ephemeral-REQ-01: I2RS requires ephemeral configuration state; i.e. state
that does not persist
    across reboots. If state must be restored, it should be done solely
    by replay actions from the I2RS client via the I2RS agent.

   Ephemeral-REQ-02: Non-ephemeral state MUST NOT refer to  ephemeral state
for constraint purposes; 
   it SHALL be considered a validation error if it does.
   Ephemeral-REQ-03: Ephemeral state must be able to utilized temporary
operational state 
    (e.g. MPLS LSP-ID or a BGP IN-RIB) as a constraints. 
   Ephemeral-REQ-04: Ephemeral state MAY refer to non-ephemeral state 
   for purposes of implementing constraints.

I2RS uses the definition you do of constraint and validation.  For
discussion purposes, let us consider  "ephemeral state" in these
requirements as "ephemeral configuration state".   

What needs to be expanded for Ephemeral Configuration State is the second
paragraph of section 8.3.3 to include ephemeral state.  In the end, the
ephemeral configuration parsing of rpc payloads, <edit-config>, and
validation MUST obey all validation constraints.  What we are discussing is
"when" and "how" the I2RS constraint enforcement occurs, and "when" and
"how" validation occurs.   

Sue 
  

================
For reference of I2RS list

8.3.  NETCONF Constraint Enforcement Model

   For configuration data, there are three windows when constraints MUST
   be enforced:
   o  during parsing of RPC payloads - 
   o  during processing of the <edit-config> operation
   o  during validation
   Each of these scenarios is considered in the following sections.


8.3.3.  Validation

   When datastore processing is complete, the final contents MUST obey
   all validation constraints.  This validation processing is performed
   at differing times according to the datastore.  

  If the datastore is "running" or "startup", these constraints MUST be
enforced at the end
   of the <edit-config> or <copy-config> operation.  If the datastore is
   "candidate", the constraint enforcement is delayed until a <commit>
   or <validate> operation.



-----Original Message-----
From: Juergen Schoenwaelder [mailto:j.schoenwaelder@jacobs-university.de] 
Sent: Monday, June 06, 2016 4:04 PM
To: Susan Hares
Cc: 'Jeffrey Haas'; i2rs@ietf.org; 'Joel M. Halpern'
Subject: Re: [i2rs] Ephemeral State Requirements discussion

On Mon, Jun 06, 2016 at 03:07:13PM -0400, Susan Hares wrote:
> Juergen: 
> 
> Please start by defining validation for NETCONF configuration.  Then, 
> we can provide the additions for ephemeral configuration state that 
> are not in ephemeral requirements.  See the rest of the comments below.
>

The validation of NETCONF configurations modelled in YANG 1.0 is defined in
RFC 6020 and for configurations modelled in YANG 1.1 it is defined in
draft-ietf-netmod-rfc6020bis-12.

/js

PS: Our communication is not effective, I drop out for now.

-- 
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>


From nobody Mon Jun  6 16:25:05 2016
Return-Path: <shares@ndzh.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 E699812D66A for <i2rs@ietfa.amsl.com>; Mon,  6 Jun 2016 16:25:03 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.739
X-Spam-Level: *
X-Spam-Status: No, score=1.739 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, HTML_MESSAGE=0.001, RDNS_NONE=0.793] autolearn=no autolearn_force=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 I3iDuptys9_A for <i2rs@ietfa.amsl.com>; Mon,  6 Jun 2016 16:25:03 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id EC49D12D621 for <i2rs@ietf.org>; Mon,  6 Jun 2016 16:25:02 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=174.124.192.86; 
From: "Susan Hares" <shares@ndzh.com>
To: "'Andy Bierman'" <andy@yumaworks.com>, <i2rs@ietf.org>
References: <CABCOCHQAuhsngAKXE=-o=wWsv1u6BXDWCJ--0JJ4p5D0f2WY3Q@mail.gmail.com>
In-Reply-To: <CABCOCHQAuhsngAKXE=-o=wWsv1u6BXDWCJ--0JJ4p5D0f2WY3Q@mail.gmail.com>
Date: Mon, 6 Jun 2016 19:25:04 -0400
Message-ID: <029d01d1c04a$a7d1c330$f7754990$@ndzh.com>
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="----=_NextPart_000_029E_01D1C029.20C1A9D0"
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQIp0ciFbSIrz3BYT8v9ACaIYSu+5J8s7b8Q
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/AtHEKn8mjRZOk_4bARUm8dUyeus>
Subject: Re: [i2rs] YANG validation and opstate
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Mon, 06 Jun 2016 23:25:04 -0000

This is a multipart message in MIME format.

------=_NextPart_000_029E_01D1C029.20C1A9D0
Content-Type: text/plain;
	charset="utf-8"
Content-Transfer-Encoding: quoted-printable

Andy:=20

=20

I=E2=80=99m not sure the context you are referring to as =E2=80=9CI2RS =
agent pick which Yang statements they will implement=E2=80=9D. =20

=20

>From the context, I guess you are investigating Ephemeral Configuration =
State.  If =E2=80=9Cthe server MAY do YANG validation

on the ephemeral datastore=E2=80=9D, and then check it in operational =
state =E2=80=93 this clearly works.  However, I=E2=80=99m struggling to =
fit the normal Ephemeral Configuration State validation into section 8.3 =
of RFC6020bis.   There are three steps in constraint enforcement =
(section 8.3 of RFC6020bis). =20

   o  during parsing of RPC payloads -=20

   o  during processing of the <edit-config> operation

   o  during validation

=20

Currently section 8.3.3 says:=20

=20

=E2=80=9C8.3.3.  Validation

=20

   When datastore processing is complete, the final contents MUST obey  =
all validation constraints.  This validation processing is performed  at =
differing times according to the datastore.  =20

=20

If the datastore is "running" or "startup",   these constraints MUST be =
enforced at the end of the <edit-config> or <copy-config> operation.  If =
the datastore is "candidate", the constraint enforcement is delayed =
until a <commit>

or <validate> operation.=E2=80=9D

=20

My understanding is we are discussing how constraint enforcement works =
in Ephemeral Configuration State. =20

You need to define where the ephemeral constraints MUST Be enforced.  It =
would seem reasonable to enforces at the end of <edit-config> or =
<copy-config>, or by the end of an rpc operation defined in a data =
model. =20

=20

Since RESTCONF uses PUTS/PATCH within a HTTP exchange, then the =
constraint enforcement must be at the end of that http operation. =20

=20

Sue=20

=20

=20

=20

From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Andy Bierman
Sent: Sunday, June 05, 2016 5:43 PM
To: i2rs@ietf.org
Subject: [i2rs] YANG validation and opstate

=20

Hi,

=20

I don't really agree with idea that I2RS agents pick which

YANG statements they will implement, but I think there is

a way to handle this correctly in the datastore framework.

=20

The proposed enumeration for server validation

capabilities (e.g., full, XPath, leafref) is not really needed.

This enum is too course-grained to be useful.

=20

IMO it is better to say the server MAY do YANG validation

on the ephemeral datastore.  Whether or not the server uses

data from the ephemeral datastore is left as an implementation detail.

The server could use invalid input parameters or ignore them

or reject them in the first place.

=20

The client needs to check operational state to know if/when the

ephemeral data was applied to the system.

=20

=20

=20

Andy

=20


------=_NextPart_000_029E_01D1C029.20C1A9D0
Content-Type: text/html;
	charset="utf-8"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" =
xmlns:o=3D"urn:schemas-microsoft-com:office:office" =
xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" =
xmlns=3D"http://www.w3.org/TR/REC-html40"><head><meta =
http-equiv=3DContent-Type content=3D"text/html; charset=3Dutf-8"><meta =
name=3DGenerator content=3D"Microsoft Word 14 (filtered =
medium)"><style><!--
/* Font Definitions */
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
	{font-family:Tahoma;
	panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0in;
	margin-bottom:.0001pt;
	font-size:12.0pt;
	font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:blue;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:purple;
	text-decoration:underline;}
p.MsoPlainText, li.MsoPlainText, div.MsoPlainText
	{mso-style-priority:99;
	mso-style-link:"Plain Text Char";
	margin:0in;
	margin-bottom:.0001pt;
	font-size:11.0pt;
	font-family:"Calibri","sans-serif";}
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
	{mso-style-priority:34;
	margin-top:0in;
	margin-right:0in;
	margin-bottom:0in;
	margin-left:.5in;
	margin-bottom:.0001pt;
	font-size:12.0pt;
	font-family:"Times New Roman","serif";}
span.EmailStyle17
	{mso-style-type:personal-reply;
	font-family:"Calibri","sans-serif";
	color:#1F497D;}
span.PlainTextChar
	{mso-style-name:"Plain Text Char";
	mso-style-priority:99;
	mso-style-link:"Plain Text";
	font-family:"Calibri","sans-serif";}
.MsoChpDefault
	{mso-style-type:export-only;
	font-family:"Calibri","sans-serif";}
@page WordSection1
	{size:8.5in 11.0in;
	margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
	{page:WordSection1;}
/* List Definitions */
@list l0
	{mso-list-id:42020121;
	mso-list-type:hybrid;
	mso-list-template-ids:1033389752 67698705 67698713 67698715 67698703 =
67698713 67698715 67698703 67698713 67698715;}
@list l0:level1
	{mso-level-text:"%1\)";
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l0:level2
	{mso-level-number-format:alpha-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l0:level3
	{mso-level-number-format:roman-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:right;
	text-indent:-9.0pt;}
@list l0:level4
	{mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l0:level5
	{mso-level-number-format:alpha-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l0:level6
	{mso-level-number-format:roman-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:right;
	text-indent:-9.0pt;}
@list l0:level7
	{mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l0:level8
	{mso-level-number-format:alpha-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l0:level9
	{mso-level-number-format:roman-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:right;
	text-indent:-9.0pt;}
ol
	{margin-bottom:0in;}
ul
	{margin-bottom:0in;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]--></head><body lang=3DEN-US link=3Dblue =
vlink=3Dpurple><div class=3DWordSection1><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Andy: <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>I=E2=80=99m not sure the context you are referring to as =
=E2=80=9CI2RS agent pick which Yang statements they will =
implement=E2=80=9D.=C2=A0 <o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>From the context, I guess you are investigating Ephemeral =
Configuration State. =C2=A0If =E2=80=9Cthe server MAY do YANG =
validation<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>on the ephemeral datastore=E2=80=9D, and then check it in operational =
state =E2=80=93 this clearly works.=C2=A0 However, I=E2=80=99m =
struggling to fit the normal Ephemeral Configuration State validation =
into section 8.3 of RFC6020bis. =C2=A0=C2=A0There are three steps in =
constraint enforcement (section 8.3 of RFC6020bis). =
=C2=A0<o:p></o:p></span></p><p =
class=3DMsoPlainText>=C2=A0=C2=A0=C2=A0o=C2=A0 during parsing of RPC =
payloads - <o:p></o:p></p><p =
class=3DMsoPlainText>=C2=A0=C2=A0=C2=A0o=C2=A0 during processing of the =
&lt;edit-config&gt; operation<o:p></o:p></p><p =
class=3DMsoPlainText>=C2=A0=C2=A0 o=C2=A0 during =
validation<o:p></o:p></p><p class=3DMsoPlainText><o:p>&nbsp;</o:p></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Currently section 8.3.3 says: <o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoPlainText>=E2=80=9C8.3.3.=C2=A0 Validation<o:p></o:p></p><p =
class=3DMsoPlainText><o:p>&nbsp;</o:p></p><p =
class=3DMsoPlainText>=C2=A0=C2=A0 When datastore processing is complete, =
the final contents MUST obey =C2=A0all validation constraints.=C2=A0 =
This validation processing is performed=C2=A0 at differing times =
according to the datastore.=C2=A0 =C2=A0<o:p></o:p></p><p =
class=3DMsoPlainText><o:p>&nbsp;</o:p></p><p class=3DMsoPlainText>If the =
datastore is &quot;running&quot; or &quot;startup&quot;, =
=C2=A0=C2=A0these constraints MUST be enforced at the end of the =
&lt;edit-config&gt; or &lt;copy-config&gt; operation.=C2=A0 If the =
datastore is &quot;candidate&quot;, the constraint enforcement is =
delayed until a &lt;commit&gt;<o:p></o:p></p><p class=3DMsoPlainText>or =
&lt;validate&gt; operation.=E2=80=9D<o:p></o:p></p><p =
class=3DMsoPlainText><o:p>&nbsp;</o:p></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>My understanding is we are discussing how constraint enforcement =
works in Ephemeral Configuration State.=C2=A0 <o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>You need to define where the ephemeral constraints MUST Be =
enforced.=C2=A0 It would seem reasonable to enforces at the end of =
&lt;edit-config&gt; or &lt;copy-config&gt;, or by the end of an rpc =
operation defined in a data model.=C2=A0 <o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Since RESTCONF uses PUTS/PATCH within a HTTP exchange, then the =
constraint enforcement must be at the end of that http operation. =
=C2=A0<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Sue <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'> <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><b><span =
style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span>=
</b><span style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif"'> =
i2rs [mailto:i2rs-bounces@ietf.org] <b>On Behalf Of </b>Andy =
Bierman<br><b>Sent:</b> Sunday, June 05, 2016 5:43 PM<br><b>To:</b> =
i2rs@ietf.org<br><b>Subject:</b> [i2rs] YANG validation and =
opstate<o:p></o:p></span></p><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p><div><p =
class=3DMsoNormal>Hi,<o:p></o:p></p><div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div><div><p class=3DMsoNormal>I =
don't really agree with idea that I2RS agents pick =
which<o:p></o:p></p></div><div><p class=3DMsoNormal>YANG statements they =
will implement, but I think there is<o:p></o:p></p></div><div><p =
class=3DMsoNormal>a way to handle this correctly in the datastore =
framework.<o:p></o:p></p></div><div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div><div><p =
class=3DMsoNormal>The proposed enumeration for server =
validation<o:p></o:p></p></div><div><p class=3DMsoNormal>capabilities =
(e.g., full, XPath, leafref) is not really =
needed.<o:p></o:p></p></div><div><p class=3DMsoNormal>This enum is too =
course-grained to be useful.<o:p></o:p></p></div><div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div><div><p =
class=3DMsoNormal>IMO it is better to say the server MAY do YANG =
validation<o:p></o:p></p></div><div><p class=3DMsoNormal>on the =
ephemeral datastore.&nbsp; Whether or not the server =
uses<o:p></o:p></p></div><div><p class=3DMsoNormal>data from the =
ephemeral datastore is left as an implementation =
detail.<o:p></o:p></p></div><div><p class=3DMsoNormal>The server could =
use invalid input parameters or ignore them<o:p></o:p></p></div><div><p =
class=3DMsoNormal>or reject them in the first =
place.<o:p></o:p></p></div><div><p =
class=3DMsoNormal>&nbsp;<o:p></o:p></p></div><div><p =
class=3DMsoNormal>The client needs to check operational state to know =
if/when the<o:p></o:p></p></div><div><p class=3DMsoNormal>ephemeral data =
was applied to the system.<o:p></o:p></p></div><div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div><div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div><div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div><div><p =
class=3DMsoNormal>Andy<o:p></o:p></p></div><div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div></div></div></body></html>
------=_NextPart_000_029E_01D1C029.20C1A9D0--


From nobody Mon Jun  6 17:26:08 2016
Return-Path: <andy@yumaworks.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 9139512D688 for <i2rs@ietfa.amsl.com>; Mon,  6 Jun 2016 17:26:07 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.9
X-Spam-Level: 
X-Spam-Status: No, score=-1.9 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=yumaworks-com.20150623.gappssmtp.com
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 IN5NzRAeg0FY for <i2rs@ietfa.amsl.com>; Mon,  6 Jun 2016 17:26:05 -0700 (PDT)
Received: from mail-yw0-x229.google.com (mail-yw0-x229.google.com [IPv6:2607:f8b0:4002:c05::229]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 72B7612D630 for <i2rs@ietf.org>; Mon,  6 Jun 2016 17:26:05 -0700 (PDT)
Received: by mail-yw0-x229.google.com with SMTP id c127so155725519ywb.1 for <i2rs@ietf.org>; Mon, 06 Jun 2016 17:26:05 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yumaworks-com.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc; bh=AD+JBQ5/mV1m1Zqn5FyxwPNPT4dQ1HYSJTT1kb8hwCw=; b=nz95x2LiL7YnNplwq7JWGGDrW8xI6PKOnXJOCUlmbhuz6BO/85jOuEkU2GQm4sY2zt WjaQNlxxfsJEweVEPHKFkm6CbrO66Us3h0nDU4iaHYXq8t8EjNPQjFq9T1DfKyht0Zkc GIHlCBIYu37tp+gd/bJ4FX7UnxoP4HfMk/Jwb/tqj4UMEfG/t68INVP2w1szuFg0150q 3BtVq4KOdiRJ+4cS4SBbr9BFCx1i655F76GCFAxxaGkErj6SoJPJAT2m8RPJI81ilHJS fT0PqX6aW+rtQAkXlGwXA1DRdp2wf3g5OtSjo9uXZRrsmZHbwX+X9wW4qT8d5o2B7J7E L0vw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc; bh=AD+JBQ5/mV1m1Zqn5FyxwPNPT4dQ1HYSJTT1kb8hwCw=; b=j/XFwfg/U2h24XFthrgPCRl2y7LCGaVymEgijOES0goDSjrdeXbksY+x3UvTxQR8hg iMl2F58l1zOuTjwj5tX7Yp/CD0L+EB56yUztG+He0Wpy4NihBGgw3EAt/G8Kq3taWzd4 1dqPKpUXcUxxtI5hQuUERFUkyrnzPwlPeTTrtejuObax9k0SGVrtcdogPdmY3Awr1FrZ CrNGFcbqJivATQpaY+wB0hHFXKsVZqLFBFGECs804ZOH0jMCiid+d/5cxKbr9ouo6nRP R5ywRqTL9v04E2WUsKKNxB+Aq1xEV8GguW4qBo8rQDshdOCYjExnbyOrbm/5eV4qcCZl rC0A==
X-Gm-Message-State: ALyK8tLk+fJxkaKjvgvKWrAFXtEhUVS0rqwVUKb1UjCU9LXaDo4R6JLXZbzFTuKG5KQqfLz/9vn1r8sh98MjBw==
MIME-Version: 1.0
X-Received: by 10.13.202.15 with SMTP id m15mr12647854ywd.259.1465259164713; Mon, 06 Jun 2016 17:26:04 -0700 (PDT)
Received: by 10.37.115.68 with HTTP; Mon, 6 Jun 2016 17:26:04 -0700 (PDT)
In-Reply-To: <029d01d1c04a$a7d1c330$f7754990$@ndzh.com>
References: <CABCOCHQAuhsngAKXE=-o=wWsv1u6BXDWCJ--0JJ4p5D0f2WY3Q@mail.gmail.com> <029d01d1c04a$a7d1c330$f7754990$@ndzh.com>
Date: Mon, 6 Jun 2016 17:26:04 -0700
Message-ID: <CABCOCHSihuGOpMy3fqvTcnmRbYYszOpxYcwNsRc9RRkX6gk+fQ@mail.gmail.com>
From: Andy Bierman <andy@yumaworks.com>
To: Susan Hares <shares@ndzh.com>
Content-Type: multipart/alternative; boundary=001a11481ab60478120534a53c90
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/gcsfVhBZWODQwAB9pVUeHvn-KLg>
Cc: "i2rs@ietf.org" <i2rs@ietf.org>
Subject: Re: [i2rs] YANG validation and opstate
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Tue, 07 Jun 2016 00:26:07 -0000

--001a11481ab60478120534a53c90
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

Hi,

I am still a little confused on the intent of the partial YANG validation.
It seems trivial to adapt the NETCONF or RESTCONF validation points to I2RS=
.
The only difference is that I2RS data can have constraints pointing at
config=3Dfalse
nodes, so this is more complicated and expensive to implement than NETCONF
or RESTCONF.

The argument for partial validation I have heard is "We only support 1
client and
we know the client already checks the data, so we know the data is valid."
This is not arguing that there will be invalid data in the datastore.  It
is arguing
that the client can be trusted to be correct and bug-free so why bother
spending
server resources duplicating the validation.

Typically in NM standards we assume more than 1 client is allowed in the
design
and a client cannot be trusted.  A client could be malicious or buggy.
Either way, if the server crashes or allows a security breach
it's still the server vendor's fault.

I2RS seems like an implementation detail (not a standard) if vendors plan o=
n
writing both client and server code and not intending to support
any 3rd party implementations.


Andy



On Mon, Jun 6, 2016 at 4:25 PM, Susan Hares <shares@ndzh.com> wrote:

> Andy:
>
>
>
> I=E2=80=99m not sure the context you are referring to as =E2=80=9CI2RS ag=
ent pick which
> Yang statements they will implement=E2=80=9D.
>
>
>
> From the context, I guess you are investigating Ephemeral Configuration
> State.  If =E2=80=9Cthe server MAY do YANG validation
>
> on the ephemeral datastore=E2=80=9D, and then check it in operational sta=
te =E2=80=93 this
> clearly works.  However, I=E2=80=99m struggling to fit the normal Ephemer=
al
> Configuration State validation into section 8.3 of RFC6020bis.   There ar=
e
> three steps in constraint enforcement (section 8.3 of RFC6020bis).
>
>    o  during parsing of RPC payloads -
>
>    o  during processing of the <edit-config> operation
>
>    o  during validation
>
>
>
> Currently section 8.3.3 says:
>
>
>
> =E2=80=9C8.3.3.  Validation
>
>
>
>    When datastore processing is complete, the final contents MUST obey
>  all validation constraints.  This validation processing is performed  at
> differing times according to the datastore.
>
>
>
> If the datastore is "running" or "startup",   these constraints MUST be
> enforced at the end of the <edit-config> or <copy-config> operation.  If
> the datastore is "candidate", the constraint enforcement is delayed until=
 a
> <commit>
>
> or <validate> operation.=E2=80=9D
>
>
>
> My understanding is we are discussing how constraint enforcement works in
> Ephemeral Configuration State.
>
> You need to define where the ephemeral constraints MUST Be enforced.  It
> would seem reasonable to enforces at the end of <edit-config> or
> <copy-config>, or by the end of an rpc operation defined in a data model.
>
>
>
> Since RESTCONF uses PUTS/PATCH within a HTTP exchange, then the constrain=
t
> enforcement must be at the end of that http operation.
>
>
>
> Sue
>
>
>
>
>
>
>
> *From:* i2rs [mailto:i2rs-bounces@ietf.org] *On Behalf Of *Andy Bierman
> *Sent:* Sunday, June 05, 2016 5:43 PM
> *To:* i2rs@ietf.org
> *Subject:* [i2rs] YANG validation and opstate
>
>
>
> Hi,
>
>
>
> I don't really agree with idea that I2RS agents pick which
>
> YANG statements they will implement, but I think there is
>
> a way to handle this correctly in the datastore framework.
>
>
>
> The proposed enumeration for server validation
>
> capabilities (e.g., full, XPath, leafref) is not really needed.
>
> This enum is too course-grained to be useful.
>
>
>
> IMO it is better to say the server MAY do YANG validation
>
> on the ephemeral datastore.  Whether or not the server uses
>
> data from the ephemeral datastore is left as an implementation detail.
>
> The server could use invalid input parameters or ignore them
>
> or reject them in the first place.
>
>
>
> The client needs to check operational state to know if/when the
>
> ephemeral data was applied to the system.
>
>
>
>
>
>
>
> Andy
>
>
>

--001a11481ab60478120534a53c90
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">Hi,<div><br></div><div>I am still a little confused on the=
 intent of the partial YANG validation.</div><div>It seems trivial to adapt=
 the NETCONF or RESTCONF validation points to I2RS.</div><div>The only diff=
erence is that I2RS data can have constraints pointing at config=3Dfalse</d=
iv><div>nodes, so this is more complicated and expensive to implement than =
NETCONF</div><div>or RESTCONF.</div><div><br></div><div>The argument for pa=
rtial validation I have heard is &quot;We only support 1 client and</div><d=
iv>we know the client already checks the data, so we know the data is valid=
.&quot;</div><div>This is not arguing that there will be invalid data in th=
e datastore.=C2=A0 It is arguing</div><div>that the client can be trusted t=
o be correct and bug-free so why bother spending</div><div>server resources=
 duplicating the validation.</div><div><br></div><div>Typically in NM stand=
ards we assume more than 1 client is allowed in the design</div><div>and a =
client cannot be trusted.=C2=A0 A client could be malicious or buggy.=C2=A0=
</div><div>Either way, if the server crashes or allows a security breach</d=
iv><div>it&#39;s still the server vendor&#39;s fault.</div><div><br></div><=
div>I2RS seems like an implementation detail (not a standard) if vendors pl=
an on</div><div>writing both client and server code and not intending to su=
pport</div><div>any 3rd party implementations.</div><div><br></div><div><br=
></div><div>Andy</div><div><br></div><div><br></div><div><div class=3D"gmai=
l_extra"><br><div class=3D"gmail_quote">On Mon, Jun 6, 2016 at 4:25 PM, Sus=
an Hares <span dir=3D"ltr">&lt;<a href=3D"mailto:shares@ndzh.com" target=3D=
"_blank">shares@ndzh.com</a>&gt;</span> wrote:<br><blockquote class=3D"gmai=
l_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left=
:1ex"><div lang=3D"EN-US" link=3D"blue" vlink=3D"purple"><div><p class=3D"M=
soNormal"><span style=3D"font-size:11.0pt;font-family:&quot;Calibri&quot;,&=
quot;sans-serif&quot;;color:#1f497d">Andy: <u></u><u></u></span></p><p clas=
s=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:&quot;Calibri&q=
uot;,&quot;sans-serif&quot;;color:#1f497d"><u></u>=C2=A0<u></u></span></p><=
p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:&quot;Cal=
ibri&quot;,&quot;sans-serif&quot;;color:#1f497d">I=E2=80=99m not sure the c=
ontext you are referring to as =E2=80=9CI2RS agent pick which Yang statemen=
ts they will implement=E2=80=9D.=C2=A0 <u></u><u></u></span></p><p class=3D=
"MsoNormal"><span style=3D"font-size:11.0pt;font-family:&quot;Calibri&quot;=
,&quot;sans-serif&quot;;color:#1f497d"><u></u>=C2=A0<u></u></span></p><p cl=
ass=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:&quot;Calibri=
&quot;,&quot;sans-serif&quot;;color:#1f497d">From the context, I guess you =
are investigating Ephemeral Configuration State.=C2=A0 If =E2=80=9Cthe serv=
er MAY do YANG validation<u></u><u></u></span></p><p class=3D"MsoNormal"><s=
pan style=3D"font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-se=
rif&quot;;color:#1f497d">on the ephemeral datastore=E2=80=9D, and then chec=
k it in operational state =E2=80=93 this clearly works.=C2=A0 However, I=E2=
=80=99m struggling to fit the normal Ephemeral Configuration State validati=
on into section 8.3 of RFC6020bis. =C2=A0=C2=A0There are three steps in con=
straint enforcement (section 8.3 of RFC6020bis). =C2=A0<u></u><u></u></span=
></p><p>=C2=A0=C2=A0=C2=A0o=C2=A0 during parsing of RPC payloads - <u></u><=
u></u></p><p>=C2=A0=C2=A0=C2=A0o=C2=A0 during processing of the &lt;edit-co=
nfig&gt; operation<u></u><u></u></p><p>=C2=A0=C2=A0 o=C2=A0 during validati=
on<u></u><u></u></p><p><u></u>=C2=A0<u></u></p><p class=3D"MsoNormal"><span=
 style=3D"font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif=
&quot;;color:#1f497d">Currently section 8.3.3 says: <u></u><u></u></span></=
p><p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:&quot;=
Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d"><u></u>=C2=A0<u></u></s=
pan></p><p>=E2=80=9C8.3.3.=C2=A0 Validation<u></u><u></u></p><p><u></u>=C2=
=A0<u></u></p><p>=C2=A0=C2=A0 When datastore processing is complete, the fi=
nal contents MUST obey =C2=A0all validation constraints.=C2=A0 This validat=
ion processing is performed=C2=A0 at differing times according to the datas=
tore.=C2=A0 =C2=A0<u></u><u></u></p><p><u></u>=C2=A0<u></u></p><p>If the da=
tastore is &quot;running&quot; or &quot;startup&quot;, =C2=A0=C2=A0these co=
nstraints MUST be enforced at the end of the &lt;edit-config&gt; or &lt;cop=
y-config&gt; operation.=C2=A0 If the datastore is &quot;candidate&quot;, th=
e constraint enforcement is delayed until a &lt;commit&gt;<u></u><u></u></p=
><p>or &lt;validate&gt; operation.=E2=80=9D<u></u><u></u></p><p><u></u>=C2=
=A0<u></u></p><p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-f=
amily:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">My understa=
nding is we are discussing how constraint enforcement works in Ephemeral Co=
nfiguration State.=C2=A0 <u></u><u></u></span></p><p class=3D"MsoNormal"><s=
pan style=3D"font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-se=
rif&quot;;color:#1f497d">You need to define where the ephemeral constraints=
 MUST Be enforced.=C2=A0 It would seem reasonable to enforces at the end of=
 &lt;edit-config&gt; or &lt;copy-config&gt;, or by the end of an rpc operat=
ion defined in a data model.=C2=A0 <u></u><u></u></span></p><p class=3D"Mso=
Normal"><span style=3D"font-size:11.0pt;font-family:&quot;Calibri&quot;,&qu=
ot;sans-serif&quot;;color:#1f497d"><u></u>=C2=A0<u></u></span></p><p class=
=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:&quot;Calibri&qu=
ot;,&quot;sans-serif&quot;;color:#1f497d">Since RESTCONF uses PUTS/PATCH wi=
thin a HTTP exchange, then the constraint enforcement must be at the end of=
 that http operation. =C2=A0<u></u><u></u></span></p><p class=3D"MsoNormal"=
><span style=3D"font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans=
-serif&quot;;color:#1f497d"><u></u>=C2=A0<u></u></span></p><p class=3D"MsoN=
ormal"><span style=3D"font-size:11.0pt;font-family:&quot;Calibri&quot;,&quo=
t;sans-serif&quot;;color:#1f497d">Sue <u></u><u></u></span></p><p class=3D"=
MsoNormal"><span style=3D"font-size:11.0pt;font-family:&quot;Calibri&quot;,=
&quot;sans-serif&quot;;color:#1f497d"><u></u>=C2=A0<u></u></span></p><p cla=
ss=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:&quot;Calibri&=
quot;,&quot;sans-serif&quot;;color:#1f497d"> <u></u><u></u></span></p><p cl=
ass=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:&quot;Calibri=
&quot;,&quot;sans-serif&quot;;color:#1f497d"><u></u>=C2=A0<u></u></span></p=
><p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:&quot;C=
alibri&quot;,&quot;sans-serif&quot;;color:#1f497d"><u></u>=C2=A0<u></u></sp=
an></p><p class=3D"MsoNormal"><b><span style=3D"font-size:10.0pt;font-famil=
y:&quot;Tahoma&quot;,&quot;sans-serif&quot;">From:</span></b><span style=3D=
"font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;"> i=
2rs [mailto:<a href=3D"mailto:i2rs-bounces@ietf.org" target=3D"_blank">i2rs=
-bounces@ietf.org</a>] <b>On Behalf Of </b>Andy Bierman<br><b>Sent:</b> Sun=
day, June 05, 2016 5:43 PM<br><b>To:</b> <a href=3D"mailto:i2rs@ietf.org" t=
arget=3D"_blank">i2rs@ietf.org</a><br><b>Subject:</b> [i2rs] YANG validatio=
n and opstate<u></u><u></u></span></p><p class=3D"MsoNormal"><u></u>=C2=A0<=
u></u></p><div><p class=3D"MsoNormal">Hi,<u></u><u></u></p><div><p class=3D=
"MsoNormal"><u></u>=C2=A0<u></u></p></div><div><p class=3D"MsoNormal">I don=
&#39;t really agree with idea that I2RS agents pick which<u></u><u></u></p>=
</div><div><p class=3D"MsoNormal">YANG statements they will implement, but =
I think there is<u></u><u></u></p></div><div><p class=3D"MsoNormal">a way t=
o handle this correctly in the datastore framework.<u></u><u></u></p></div>=
<div><p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p></div><div><p class=3D"=
MsoNormal">The proposed enumeration for server validation<u></u><u></u></p>=
</div><div><p class=3D"MsoNormal">capabilities (e.g., full, XPath, leafref)=
 is not really needed.<u></u><u></u></p></div><div><p class=3D"MsoNormal">T=
his enum is too course-grained to be useful.<u></u><u></u></p></div><div><p=
 class=3D"MsoNormal"><u></u>=C2=A0<u></u></p></div><div><p class=3D"MsoNorm=
al">IMO it is better to say the server MAY do YANG validation<u></u><u></u>=
</p></div><div><p class=3D"MsoNormal">on the ephemeral datastore.=C2=A0 Whe=
ther or not the server uses<u></u><u></u></p></div><div><p class=3D"MsoNorm=
al">data from the ephemeral datastore is left as an implementation detail.<=
u></u><u></u></p></div><div><p class=3D"MsoNormal">The server could use inv=
alid input parameters or ignore them<u></u><u></u></p></div><div><p class=
=3D"MsoNormal">or reject them in the first place.<u></u><u></u></p></div><d=
iv><p class=3D"MsoNormal">=C2=A0<u></u><u></u></p></div><div><p class=3D"Ms=
oNormal">The client needs to check operational state to know if/when the<u>=
</u><u></u></p></div><div><p class=3D"MsoNormal">ephemeral data was applied=
 to the system.<u></u><u></u></p></div><div><p class=3D"MsoNormal"><u></u>=
=C2=A0<u></u></p></div><div><p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>=
</div><div><p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p></div><div><p cla=
ss=3D"MsoNormal">Andy<u></u><u></u></p></div><div><p class=3D"MsoNormal"><u=
></u>=C2=A0<u></u></p></div></div></div></div></blockquote></div><br></div>=
</div></div>

--001a11481ab60478120534a53c90--


From nobody Mon Jun  6 17:46:41 2016
Return-Path: <jmh@joelhalpern.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 E68F812D738 for <i2rs@ietfa.amsl.com>; Mon,  6 Jun 2016 17:46:39 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.702
X-Spam-Level: 
X-Spam-Status: No, score=-2.702 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=joelhalpern.com
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 b-arBE-NWmde for <i2rs@ietfa.amsl.com>; Mon,  6 Jun 2016 17:46:38 -0700 (PDT)
Received: from maila2.tigertech.net (maila2.tigertech.net [208.80.4.152]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 3A71812B037 for <i2rs@ietf.org>; Mon,  6 Jun 2016 17:46:38 -0700 (PDT)
Received: from localhost (localhost [127.0.0.1]) by maila2.tigertech.net (Postfix) with ESMTP id 264F124088D; Mon,  6 Jun 2016 17:46:38 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=joelhalpern.com; s=1.tigertech; t=1465260398; bh=LibZD4vaZ2wycabsTUJ9nyAOHFFvm0C/A8ZN+PFCiPc=; h=Subject:To:References:Cc:From:Date:In-Reply-To:From; b=IT4PgRIeKhxJgTTliI0SHuJTgp38NfmvrhWKU4paDLgbeibJFH7BW6Ll8IOmNMwir 6MPZDUGf2+t2ZMutM0qT6M/HnoYH//8pap1W7EbzceTpM4gxeFiQmetQ6gAu6tkJYv pqB3QIvDaJlIWKnxeab1Ejnl5rzfTFFgg6RLXNX0=
X-Virus-Scanned: Debian amavisd-new at maila2.tigertech.net
Received: from Joels-MacBook-Pro.local (209-255-163-147.ip.mcleodusa.net [209.255.163.147]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by maila2.tigertech.net (Postfix) with ESMTPSA id 961DE240E33; Mon,  6 Jun 2016 17:46:37 -0700 (PDT)
To: Andy Bierman <andy@yumaworks.com>
References: <CABCOCHQAuhsngAKXE=-o=wWsv1u6BXDWCJ--0JJ4p5D0f2WY3Q@mail.gmail.com> <029d01d1c04a$a7d1c330$f7754990$@ndzh.com> <CABCOCHSihuGOpMy3fqvTcnmRbYYszOpxYcwNsRc9RRkX6gk+fQ@mail.gmail.com>
From: "Joel M. Halpern" <jmh@joelhalpern.com>
Message-ID: <ae6c929d-bfd4-02ca-d7b3-fbc32a7fae84@joelhalpern.com>
Date: Mon, 6 Jun 2016 20:46:19 -0400
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:45.0) Gecko/20100101 Thunderbird/45.1.1
MIME-Version: 1.0
In-Reply-To: <CABCOCHSihuGOpMy3fqvTcnmRbYYszOpxYcwNsRc9RRkX6gk+fQ@mail.gmail.com>
Content-Type: text/plain; charset=windows-1252; format=flowed
Content-Transfer-Encoding: 8bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/AYK1G2IWzh6OJW6qSbLMPcMQm5o>
Cc: "i2rs@ietf.org" <i2rs@ietf.org>
Subject: Re: [i2rs] YANG validation and opstate
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Tue, 07 Jun 2016 00:46:40 -0000

When we started on the I2RS work, the explicit request from the 
operators was to make this as simple as practical and as efficient as 
practical.

In regard to constraints on what they could do, the specific request was 
"let us shoot ourselves in the foot."  That is, if some change will 
break the network, so be it.  it is the operators problem.  If the 
change only causes the box to reboot, that is less dangerous.  So it 
seems to fall within "let me shoot my foot."

I expect that there are some forms of validation that need to take place 
just to attempt to apply the RPC.  But everything beyond that was 
requested to be not performed.  Whether we can actually achieve that is 
a different question.
It does strike me that we can also go back and ask the operators again 
what they meant, if you think it is likely we misunderstood.

Yours,
Joel

On 6/6/16 8:26 PM, Andy Bierman wrote:
> Hi,
>
> I am still a little confused on the intent of the partial YANG validation.
> It seems trivial to adapt the NETCONF or RESTCONF validation points to I2RS.
> The only difference is that I2RS data can have constraints pointing at
> config=false
> nodes, so this is more complicated and expensive to implement than NETCONF
> or RESTCONF.
>
> The argument for partial validation I have heard is "We only support 1
> client and
> we know the client already checks the data, so we know the data is valid."
> This is not arguing that there will be invalid data in the datastore.
> It is arguing
> that the client can be trusted to be correct and bug-free so why bother
> spending
> server resources duplicating the validation.
>
> Typically in NM standards we assume more than 1 client is allowed in the
> design
> and a client cannot be trusted.  A client could be malicious or buggy.
> Either way, if the server crashes or allows a security breach
> it's still the server vendor's fault.
>
> I2RS seems like an implementation detail (not a standard) if vendors plan on
> writing both client and server code and not intending to support
> any 3rd party implementations.
>
>
> Andy
>
>
>
> On Mon, Jun 6, 2016 at 4:25 PM, Susan Hares <shares@ndzh.com
> <mailto:shares@ndzh.com>> wrote:
>
>     Andy: ____
>
>     __ __
>
>     I’m not sure the context you are referring to as “I2RS agent pick
>     which Yang statements they will implement”.  ____
>
>     __ __
>
>     From the context, I guess you are investigating Ephemeral
>     Configuration State.  If “the server MAY do YANG validation____
>
>     on the ephemeral datastore”, and then check it in operational state
>     – this clearly works.  However, I’m struggling to fit the normal
>     Ephemeral Configuration State validation into section 8.3 of
>     RFC6020bis.   There are three steps in constraint enforcement
>     (section 8.3 of RFC6020bis).  ____
>
>        o  during parsing of RPC payloads - ____
>
>        o  during processing of the <edit-config> operation____
>
>        o  during validation____
>
>     __ __
>
>     Currently section 8.3.3 says: ____
>
>     __ __
>
>     “8.3.3.  Validation____
>
>     __ __
>
>        When datastore processing is complete, the final contents MUST
>     obey  all validation constraints.  This validation processing is
>     performed  at differing times according to the datastore.   ____
>
>     __ __
>
>     If the datastore is "running" or "startup",   these constraints MUST
>     be enforced at the end of the <edit-config> or <copy-config>
>     operation.  If the datastore is "candidate", the constraint
>     enforcement is delayed until a <commit>____
>
>     or <validate> operation.”____
>
>     __ __
>
>     My understanding is we are discussing how constraint enforcement
>     works in Ephemeral Configuration State.  ____
>
>     You need to define where the ephemeral constraints MUST Be
>     enforced.  It would seem reasonable to enforces at the end of
>     <edit-config> or <copy-config>, or by the end of an rpc operation
>     defined in a data model.  ____
>
>     __ __
>
>     Since RESTCONF uses PUTS/PATCH within a HTTP exchange, then the
>     constraint enforcement must be at the end of that http operation.  ____
>
>     __ __
>
>     Sue ____
>
>     __ __
>
>     ____
>
>     __ __
>
>     __ __
>
>     *From:*i2rs [mailto:i2rs-bounces@ietf.org
>     <mailto:i2rs-bounces@ietf.org>] *On Behalf Of *Andy Bierman
>     *Sent:* Sunday, June 05, 2016 5:43 PM
>     *To:* i2rs@ietf.org <mailto:i2rs@ietf.org>
>     *Subject:* [i2rs] YANG validation and opstate____
>
>     __ __
>
>     Hi,____
>
>     __ __
>
>     I don't really agree with idea that I2RS agents pick which____
>
>     YANG statements they will implement, but I think there is____
>
>     a way to handle this correctly in the datastore framework.____
>
>     __ __
>
>     The proposed enumeration for server validation____
>
>     capabilities (e.g., full, XPath, leafref) is not really needed.____
>
>     This enum is too course-grained to be useful.____
>
>     __ __
>
>     IMO it is better to say the server MAY do YANG validation____
>
>     on the ephemeral datastore.  Whether or not the server uses____
>
>     data from the ephemeral datastore is left as an implementation
>     detail.____
>
>     The server could use invalid input parameters or ignore them____
>
>     or reject them in the first place.____
>
>      ____
>
>     The client needs to check operational state to know if/when the____
>
>     ephemeral data was applied to the system.____
>
>     __ __
>
>     __ __
>
>     __ __
>
>     Andy____
>
>     __ __
>
>
>
>
> _______________________________________________
> i2rs mailing list
> i2rs@ietf.org
> https://www.ietf.org/mailman/listinfo/i2rs
>


From nobody Mon Jun  6 18:01:29 2016
Return-Path: <andy@yumaworks.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 431CD12B037 for <i2rs@ietfa.amsl.com>; Mon,  6 Jun 2016 18:01:27 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.6
X-Spam-Level: 
X-Spam-Status: No, score=-2.6 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=yumaworks-com.20150623.gappssmtp.com
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 O27f4AT09pOn for <i2rs@ietfa.amsl.com>; Mon,  6 Jun 2016 18:01:24 -0700 (PDT)
Received: from mail-yw0-x235.google.com (mail-yw0-x235.google.com [IPv6:2607:f8b0:4002:c05::235]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 0C07D12B014 for <i2rs@ietf.org>; Mon,  6 Jun 2016 18:01:24 -0700 (PDT)
Received: by mail-yw0-x235.google.com with SMTP id o16so156437792ywd.2 for <i2rs@ietf.org>; Mon, 06 Jun 2016 18:01:24 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yumaworks-com.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc; bh=jiSyjwX3Oddhyc8hcsYTjeTACAtzBjMCzzytscgsGT0=; b=gljVOrifl1gdvKNjSvdz/rHnNRdlu14D9mDRRvFLaqa27qsp7AZOIBRQpfsgllmUcF Uv1yCCLwyy9d+PNxQJr52kGDNzQmt+yCa1Q8gnO5g84s1hLhNOfv2tiP+raoY2TO7sD9 bNLnj12lSaQZg+W1kn+T/7Lt9S3ND7tC/MgQUkxAwXYXMZ24GN/EVZ87xZBcczZHT+L9 Vn8zRdT73FAbrHjM+YHr7degbd4ThAU2Hgj4uBDM1FsU7LSp21TcCszSpLNasH/qdFgo XY2UStGkDYkj3t134oKZk6x3pzzX9RknR6pNyv8PoB+/NNUut/v+GW72+fUk2nA1o7VS shkw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc; bh=jiSyjwX3Oddhyc8hcsYTjeTACAtzBjMCzzytscgsGT0=; b=CIzq9NDjtpQuK8QG0LjHWneoytnneZ+s3/D7JzJfMMfg8GHr1lIHo6qUQtoaX6je47 5Blz5H2Smp30FW5rm2+47XwZbMxx9J093yhBSE+Z6Qdf/3yfxudqLvQCU1x9Htg04OGq BCnjSSnXD0/QSW3YGe5OdO082tJnshPD8b5Gpr4lyHgrzL/rqru6vEwRBnVhL0ZbCmwc 938EExm/REBZzTHu3iIDxGO/da2spjhOT3u3Y3WVBuk08I3yqfJlsID1SyrVIyhN6ttr JYepF7VTtEIspPzEIewM6FxzlyOMQC0nh98BO+wydEFr86GSAXBWEQaOnpIRI+FWw3Qj tmWQ==
X-Gm-Message-State: ALyK8tJB7eKhUGDnn2r9uypLnSpfx9RsA8/TpuKT2R+VWoe8nJxsRsHj8bYWj1l+fZ6JYkGFOeCD6H321PI9eA==
MIME-Version: 1.0
X-Received: by 10.129.111.132 with SMTP id k126mr12897230ywc.11.1465261283322;  Mon, 06 Jun 2016 18:01:23 -0700 (PDT)
Received: by 10.37.115.68 with HTTP; Mon, 6 Jun 2016 18:01:23 -0700 (PDT)
In-Reply-To: <ae6c929d-bfd4-02ca-d7b3-fbc32a7fae84@joelhalpern.com>
References: <CABCOCHQAuhsngAKXE=-o=wWsv1u6BXDWCJ--0JJ4p5D0f2WY3Q@mail.gmail.com> <029d01d1c04a$a7d1c330$f7754990$@ndzh.com> <CABCOCHSihuGOpMy3fqvTcnmRbYYszOpxYcwNsRc9RRkX6gk+fQ@mail.gmail.com> <ae6c929d-bfd4-02ca-d7b3-fbc32a7fae84@joelhalpern.com>
Date: Mon, 6 Jun 2016 18:01:23 -0700
Message-ID: <CABCOCHSsn-7YW1dDPJqLe-es592UaYEoeTfBKVidV8u7QbDXQg@mail.gmail.com>
From: Andy Bierman <andy@yumaworks.com>
To: "Joel M. Halpern" <jmh@joelhalpern.com>
Content-Type: multipart/alternative; boundary=001a114926064bd9f60534a5baf0
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/Lz3CfrAQM0Xy2NRkxYiKJcQpjCc>
Cc: "i2rs@ietf.org" <i2rs@ietf.org>
Subject: Re: [i2rs] YANG validation and opstate
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Tue, 07 Jun 2016 01:01:27 -0000

--001a114926064bd9f60534a5baf0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

On Mon, Jun 6, 2016 at 5:46 PM, Joel M. Halpern <jmh@joelhalpern.com> wrote=
:

> When we started on the I2RS work, the explicit request from the operators
> was to make this as simple as practical and as efficient as practical.
>
> In regard to constraints on what they could do, the specific request was
> "let us shoot ourselves in the foot."  That is, if some change will break
> the network, so be it.  it is the operators problem.  If the change only
> causes the box to reboot, that is less dangerous.  So it seems to fall
> within "let me shoot my foot."
>
> I expect that there are some forms of validation that need to take place
> just to attempt to apply the RPC.  But everything beyond that was request=
ed
> to be not performed.  Whether we can actually achieve that is a different
> question.
> It does strike me that we can also go back and ask the operators again
> what they meant, if you think it is likely we misunderstood.
>
>
In my example "when IPv4" is ignored so IPv6 parameters are
accepted as valid.

Does this mean the server faithfully applies the wrong parameters that
make no sense whatsoever?  Probably not.  It means the client developer
and operator have no idea what a server implementation is SUPPOSED to
accept as a valid edit.  (Which diminishes the standards value of I2RS)

My original point was that extra flags for I2RS like "I ignore all leafrefs=
"
are worthless. It is better to declare that validation is not part of
the ephemeral datastore.  It is an implementation detail whether accepted
data in that datastore  ever gets used.


Yours,
> Joel
>

Andy


>
> On 6/6/16 8:26 PM, Andy Bierman wrote:
>
>> Hi,
>>
>> I am still a little confused on the intent of the partial YANG validatio=
n.
>> It seems trivial to adapt the NETCONF or RESTCONF validation points to
>> I2RS.
>> The only difference is that I2RS data can have constraints pointing at
>> config=3Dfalse
>> nodes, so this is more complicated and expensive to implement than NETCO=
NF
>> or RESTCONF.
>>
>> The argument for partial validation I have heard is "We only support 1
>> client and
>> we know the client already checks the data, so we know the data is valid=
."
>> This is not arguing that there will be invalid data in the datastore.
>> It is arguing
>> that the client can be trusted to be correct and bug-free so why bother
>> spending
>> server resources duplicating the validation.
>>
>> Typically in NM standards we assume more than 1 client is allowed in the
>> design
>> and a client cannot be trusted.  A client could be malicious or buggy.
>> Either way, if the server crashes or allows a security breach
>> it's still the server vendor's fault.
>>
>> I2RS seems like an implementation detail (not a standard) if vendors pla=
n
>> on
>> writing both client and server code and not intending to support
>> any 3rd party implementations.
>>
>>
>> Andy
>>
>>
>>
>> On Mon, Jun 6, 2016 at 4:25 PM, Susan Hares <shares@ndzh.com
>> <mailto:shares@ndzh.com>> wrote:
>>
>>     Andy: ____
>>
>>     __ __
>>
>>     I=E2=80=99m not sure the context you are referring to as =E2=80=9CI2=
RS agent pick
>>     which Yang statements they will implement=E2=80=9D.  ____
>>
>>     __ __
>>
>>     From the context, I guess you are investigating Ephemeral
>>     Configuration State.  If =E2=80=9Cthe server MAY do YANG validation_=
___
>>
>>     on the ephemeral datastore=E2=80=9D, and then check it in operationa=
l state
>>     =E2=80=93 this clearly works.  However, I=E2=80=99m struggling to fi=
t the normal
>>     Ephemeral Configuration State validation into section 8.3 of
>>     RFC6020bis.   There are three steps in constraint enforcement
>>     (section 8.3 of RFC6020bis).  ____
>>
>>        o  during parsing of RPC payloads - ____
>>
>>        o  during processing of the <edit-config> operation____
>>
>>        o  during validation____
>>
>>     __ __
>>
>>     Currently section 8.3.3 says: ____
>>
>>     __ __
>>
>>     =E2=80=9C8.3.3.  Validation____
>>
>>     __ __
>>
>>        When datastore processing is complete, the final contents MUST
>>     obey  all validation constraints.  This validation processing is
>>     performed  at differing times according to the datastore.   ____
>>
>>     __ __
>>
>>     If the datastore is "running" or "startup",   these constraints MUST
>>     be enforced at the end of the <edit-config> or <copy-config>
>>     operation.  If the datastore is "candidate", the constraint
>>     enforcement is delayed until a <commit>____
>>
>>     or <validate> operation.=E2=80=9D____
>>
>>     __ __
>>
>>     My understanding is we are discussing how constraint enforcement
>>     works in Ephemeral Configuration State.  ____
>>
>>     You need to define where the ephemeral constraints MUST Be
>>     enforced.  It would seem reasonable to enforces at the end of
>>     <edit-config> or <copy-config>, or by the end of an rpc operation
>>     defined in a data model.  ____
>>
>>     __ __
>>
>>     Since RESTCONF uses PUTS/PATCH within a HTTP exchange, then the
>>     constraint enforcement must be at the end of that http operation.
>> ____
>>
>>     __ __
>>
>>     Sue ____
>>
>>     __ __
>>
>>     ____
>>
>>     __ __
>>
>>     __ __
>>
>>     *From:*i2rs [mailto:i2rs-bounces@ietf.org
>>     <mailto:i2rs-bounces@ietf.org>] *On Behalf Of *Andy Bierman
>>     *Sent:* Sunday, June 05, 2016 5:43 PM
>>     *To:* i2rs@ietf.org <mailto:i2rs@ietf.org>
>>     *Subject:* [i2rs] YANG validation and opstate____
>>
>>     __ __
>>
>>     Hi,____
>>
>>     __ __
>>
>>     I don't really agree with idea that I2RS agents pick which____
>>
>>     YANG statements they will implement, but I think there is____
>>
>>     a way to handle this correctly in the datastore framework.____
>>
>>     __ __
>>
>>     The proposed enumeration for server validation____
>>
>>     capabilities (e.g., full, XPath, leafref) is not really needed.____
>>
>>     This enum is too course-grained to be useful.____
>>
>>     __ __
>>
>>     IMO it is better to say the server MAY do YANG validation____
>>
>>     on the ephemeral datastore.  Whether or not the server uses____
>>
>>     data from the ephemeral datastore is left as an implementation
>>     detail.____
>>
>>     The server could use invalid input parameters or ignore them____
>>
>>     or reject them in the first place.____
>>
>>      ____
>>
>>     The client needs to check operational state to know if/when the____
>>
>>     ephemeral data was applied to the system.____
>>
>>     __ __
>>
>>     __ __
>>
>>     __ __
>>
>>     Andy____
>>
>>     __ __
>>
>>
>>
>>
>> _______________________________________________
>> i2rs mailing list
>> i2rs@ietf.org
>> https://www.ietf.org/mailman/listinfo/i2rs
>>
>>

--001a114926064bd9f60534a5baf0
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><br><div class=3D"gmail_extra"><br><div class=3D"gmail_quo=
te">On Mon, Jun 6, 2016 at 5:46 PM, Joel M. Halpern <span dir=3D"ltr">&lt;<=
a href=3D"mailto:jmh@joelhalpern.com" target=3D"_blank">jmh@joelhalpern.com=
</a>&gt;</span> wrote:<br><blockquote class=3D"gmail_quote" style=3D"margin=
:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">When we started on=
 the I2RS work, the explicit request from the operators was to make this as=
 simple as practical and as efficient as practical.<br>
<br>
In regard to constraints on what they could do, the specific request was &q=
uot;let us shoot ourselves in the foot.&quot;=C2=A0 That is, if some change=
 will break the network, so be it.=C2=A0 it is the operators problem.=C2=A0=
 If the change only causes the box to reboot, that is less dangerous.=C2=A0=
 So it seems to fall within &quot;let me shoot my foot.&quot;<br>
<br>
I expect that there are some forms of validation that need to take place ju=
st to attempt to apply the RPC.=C2=A0 But everything beyond that was reques=
ted to be not performed.=C2=A0 Whether we can actually achieve that is a di=
fferent question.<br>
It does strike me that we can also go back and ask the operators again what=
 they meant, if you think it is likely we misunderstood.<br>
<br></blockquote><div><br></div><div>In my example &quot;when IPv4&quot; is=
 ignored so IPv6 parameters are</div><div>accepted as valid.</div><div><br>=
</div><div>Does this mean the server faithfully applies the wrong parameter=
s that</div><div>make no sense whatsoever?=C2=A0 Probably not.=C2=A0 It mea=
ns the client developer</div><div>and operator have no idea what a server i=
mplementation is SUPPOSED to</div><div>accept as a valid edit. =C2=A0(Which=
 diminishes the standards value of I2RS)</div><div><br></div><div>My origin=
al point was that extra flags for I2RS like &quot;I ignore all leafrefs&quo=
t;</div><div>are worthless. It is better to declare that validation is not =
part of</div><div>the ephemeral datastore.=C2=A0 It is an implementation de=
tail whether accepted</div><div>data in that datastore =C2=A0ever gets used=
.</div><div><br></div><div><br></div><blockquote class=3D"gmail_quote" styl=
e=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Yours,<br>
Joel<br></blockquote><div><br></div><div>Andy</div><div>=C2=A0</div><blockq=
uote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc =
solid;padding-left:1ex">
<br>
On 6/6/16 8:26 PM, Andy Bierman wrote:<br>
<blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p=
x #ccc solid;padding-left:1ex">
Hi,<br>
<br>
I am still a little confused on the intent of the partial YANG validation.<=
br>
It seems trivial to adapt the NETCONF or RESTCONF validation points to I2RS=
.<br>
The only difference is that I2RS data can have constraints pointing at<br>
config=3Dfalse<br>
nodes, so this is more complicated and expensive to implement than NETCONF<=
br>
or RESTCONF.<br>
<br>
The argument for partial validation I have heard is &quot;We only support 1=
<br>
client and<br>
we know the client already checks the data, so we know the data is valid.&q=
uot;<br>
This is not arguing that there will be invalid data in the datastore.<br>
It is arguing<br>
that the client can be trusted to be correct and bug-free so why bother<br>
spending<br>
server resources duplicating the validation.<br>
<br>
Typically in NM standards we assume more than 1 client is allowed in the<br=
>
design<br>
and a client cannot be trusted.=C2=A0 A client could be malicious or buggy.=
<br>
Either way, if the server crashes or allows a security breach<br>
it&#39;s still the server vendor&#39;s fault.<br>
<br>
I2RS seems like an implementation detail (not a standard) if vendors plan o=
n<br>
writing both client and server code and not intending to support<br>
any 3rd party implementations.<br>
<br>
<br>
Andy<br>
<br>
<br>
<br>
On Mon, Jun 6, 2016 at 4:25 PM, Susan Hares &lt;<a href=3D"mailto:shares@nd=
zh.com" target=3D"_blank">shares@ndzh.com</a><br>
&lt;mailto:<a href=3D"mailto:shares@ndzh.com" target=3D"_blank">shares@ndzh=
.com</a>&gt;&gt; wrote:<br>
<br>
=C2=A0 =C2=A0 Andy: ____<br>
<br>
=C2=A0 =C2=A0 __ __<br>
<br>
=C2=A0 =C2=A0 I=E2=80=99m not sure the context you are referring to as =E2=
=80=9CI2RS agent pick<br>
=C2=A0 =C2=A0 which Yang statements they will implement=E2=80=9D.=C2=A0 ___=
_<br>
<br>
=C2=A0 =C2=A0 __ __<br>
<br>
=C2=A0 =C2=A0 From the context, I guess you are investigating Ephemeral<br>
=C2=A0 =C2=A0 Configuration State.=C2=A0 If =E2=80=9Cthe server MAY do YANG=
 validation____<br>
<br>
=C2=A0 =C2=A0 on the ephemeral datastore=E2=80=9D, and then check it in ope=
rational state<br>
=C2=A0 =C2=A0 =E2=80=93 this clearly works.=C2=A0 However, I=E2=80=99m stru=
ggling to fit the normal<br>
=C2=A0 =C2=A0 Ephemeral Configuration State validation into section 8.3 of<=
br>
=C2=A0 =C2=A0 RFC6020bis.=C2=A0 =C2=A0There are three steps in constraint e=
nforcement<br>
=C2=A0 =C2=A0 (section 8.3 of RFC6020bis).=C2=A0 ____<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0o=C2=A0 during parsing of RPC payloads - ____<br=
>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0o=C2=A0 during processing of the &lt;edit-config=
&gt; operation____<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0o=C2=A0 during validation____<br>
<br>
=C2=A0 =C2=A0 __ __<br>
<br>
=C2=A0 =C2=A0 Currently section 8.3.3 says: ____<br>
<br>
=C2=A0 =C2=A0 __ __<br>
<br>
=C2=A0 =C2=A0 =E2=80=9C8.3.3.=C2=A0 Validation____<br>
<br>
=C2=A0 =C2=A0 __ __<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0When datastore processing is complete, the final=
 contents MUST<br>
=C2=A0 =C2=A0 obey=C2=A0 all validation constraints.=C2=A0 This validation =
processing is<br>
=C2=A0 =C2=A0 performed=C2=A0 at differing times according to the datastore=
.=C2=A0 =C2=A0____<br>
<br>
=C2=A0 =C2=A0 __ __<br>
<br>
=C2=A0 =C2=A0 If the datastore is &quot;running&quot; or &quot;startup&quot=
;,=C2=A0 =C2=A0these constraints MUST<br>
=C2=A0 =C2=A0 be enforced at the end of the &lt;edit-config&gt; or &lt;copy=
-config&gt;<br>
=C2=A0 =C2=A0 operation.=C2=A0 If the datastore is &quot;candidate&quot;, t=
he constraint<br>
=C2=A0 =C2=A0 enforcement is delayed until a &lt;commit&gt;____<br>
<br>
=C2=A0 =C2=A0 or &lt;validate&gt; operation.=E2=80=9D____<br>
<br>
=C2=A0 =C2=A0 __ __<br>
<br>
=C2=A0 =C2=A0 My understanding is we are discussing how constraint enforcem=
ent<br>
=C2=A0 =C2=A0 works in Ephemeral Configuration State.=C2=A0 ____<br>
<br>
=C2=A0 =C2=A0 You need to define where the ephemeral constraints MUST Be<br=
>
=C2=A0 =C2=A0 enforced.=C2=A0 It would seem reasonable to enforces at the e=
nd of<br>
=C2=A0 =C2=A0 &lt;edit-config&gt; or &lt;copy-config&gt;, or by the end of =
an rpc operation<br>
=C2=A0 =C2=A0 defined in a data model.=C2=A0 ____<br>
<br>
=C2=A0 =C2=A0 __ __<br>
<br>
=C2=A0 =C2=A0 Since RESTCONF uses PUTS/PATCH within a HTTP exchange, then t=
he<br>
=C2=A0 =C2=A0 constraint enforcement must be at the end of that http operat=
ion.=C2=A0 ____<br>
<br>
=C2=A0 =C2=A0 __ __<br>
<br>
=C2=A0 =C2=A0 Sue ____<br>
<br>
=C2=A0 =C2=A0 __ __<br>
<br>
=C2=A0 =C2=A0 ____<br>
<br>
=C2=A0 =C2=A0 __ __<br>
<br>
=C2=A0 =C2=A0 __ __<br>
<br>
=C2=A0 =C2=A0 *From:*i2rs [mailto:<a href=3D"mailto:i2rs-bounces@ietf.org" =
target=3D"_blank">i2rs-bounces@ietf.org</a><br>
=C2=A0 =C2=A0 &lt;mailto:<a href=3D"mailto:i2rs-bounces@ietf.org" target=3D=
"_blank">i2rs-bounces@ietf.org</a>&gt;] *On Behalf Of *Andy Bierman<br>
=C2=A0 =C2=A0 *Sent:* Sunday, June 05, 2016 5:43 PM<br>
=C2=A0 =C2=A0 *To:* <a href=3D"mailto:i2rs@ietf.org" target=3D"_blank">i2rs=
@ietf.org</a> &lt;mailto:<a href=3D"mailto:i2rs@ietf.org" target=3D"_blank"=
>i2rs@ietf.org</a>&gt;<br>
=C2=A0 =C2=A0 *Subject:* [i2rs] YANG validation and opstate____<br>
<br>
=C2=A0 =C2=A0 __ __<br>
<br>
=C2=A0 =C2=A0 Hi,____<br>
<br>
=C2=A0 =C2=A0 __ __<br>
<br>
=C2=A0 =C2=A0 I don&#39;t really agree with idea that I2RS agents pick whic=
h____<br>
<br>
=C2=A0 =C2=A0 YANG statements they will implement, but I think there is____=
<br>
<br>
=C2=A0 =C2=A0 a way to handle this correctly in the datastore framework.___=
_<br>
<br>
=C2=A0 =C2=A0 __ __<br>
<br>
=C2=A0 =C2=A0 The proposed enumeration for server validation____<br>
<br>
=C2=A0 =C2=A0 capabilities (e.g., full, XPath, leafref) is not really neede=
d.____<br>
<br>
=C2=A0 =C2=A0 This enum is too course-grained to be useful.____<br>
<br>
=C2=A0 =C2=A0 __ __<br>
<br>
=C2=A0 =C2=A0 IMO it is better to say the server MAY do YANG validation____=
<br>
<br>
=C2=A0 =C2=A0 on the ephemeral datastore.=C2=A0 Whether or not the server u=
ses____<br>
<br>
=C2=A0 =C2=A0 data from the ephemeral datastore is left as an implementatio=
n<br>
=C2=A0 =C2=A0 detail.____<br>
<br>
=C2=A0 =C2=A0 The server could use invalid input parameters or ignore them_=
___<br>
<br>
=C2=A0 =C2=A0 or reject them in the first place.____<br>
<br>
=C2=A0 =C2=A0 =C2=A0____<br>
<br>
=C2=A0 =C2=A0 The client needs to check operational state to know if/when t=
he____<br>
<br>
=C2=A0 =C2=A0 ephemeral data was applied to the system.____<br>
<br>
=C2=A0 =C2=A0 __ __<br>
<br>
=C2=A0 =C2=A0 __ __<br>
<br>
=C2=A0 =C2=A0 __ __<br>
<br>
=C2=A0 =C2=A0 Andy____<br>
<br>
=C2=A0 =C2=A0 __ __<br>
<br>
<br>
<br>
<br>
_______________________________________________<br>
i2rs mailing list<br>
<a href=3D"mailto:i2rs@ietf.org" target=3D"_blank">i2rs@ietf.org</a><br>
<a href=3D"https://www.ietf.org/mailman/listinfo/i2rs" rel=3D"noreferrer" t=
arget=3D"_blank">https://www.ietf.org/mailman/listinfo/i2rs</a><br>
<br>
</blockquote>
</blockquote></div><br></div></div>

--001a114926064bd9f60534a5baf0--


From nobody Mon Jun  6 18:04:52 2016
Return-Path: <jmh@joelhalpern.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 6583612B037 for <i2rs@ietfa.amsl.com>; Mon,  6 Jun 2016 18:04:49 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.702
X-Spam-Level: 
X-Spam-Status: No, score=-2.702 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=joelhalpern.com
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 Sb9rKkljsZQa for <i2rs@ietfa.amsl.com>; Mon,  6 Jun 2016 18:04:47 -0700 (PDT)
Received: from maila2.tigertech.net (maila2.tigertech.net [208.80.4.152]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 4F40C12B014 for <i2rs@ietf.org>; Mon,  6 Jun 2016 18:04:47 -0700 (PDT)
Received: from localhost (localhost [127.0.0.1]) by maila2.tigertech.net (Postfix) with ESMTP id 3821F240E33; Mon,  6 Jun 2016 18:04:47 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=joelhalpern.com; s=1.tigertech; t=1465261487; bh=7t+n2syaZkvC2kToBIo6/vbLmarwYsa8bTD3kYBzf6A=; h=Subject:To:References:Cc:From:Date:In-Reply-To:From; b=SiJ5pg36VR84IgWFGYMyg8+q7yqE47Nx3WPx5S5L50RRMLq8P61Fzns9eDyaEg/EU 3ncPr5TPlOaDWOyte8o+8q6VEOU7Z9Ixvy78hh5ZZWNGZ51xcMHDj8lArcusQw6MzW AMTVte1TRABbzAd1eaBss8oVrfabA2xlpWsSGhzY=
X-Virus-Scanned: Debian amavisd-new at maila2.tigertech.net
Received: from Joels-MacBook-Pro.local (209-255-163-147.ip.mcleodusa.net [209.255.163.147]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by maila2.tigertech.net (Postfix) with ESMTPSA id B03DC240610; Mon,  6 Jun 2016 18:04:44 -0700 (PDT)
To: Andy Bierman <andy@yumaworks.com>
References: <CABCOCHQAuhsngAKXE=-o=wWsv1u6BXDWCJ--0JJ4p5D0f2WY3Q@mail.gmail.com> <029d01d1c04a$a7d1c330$f7754990$@ndzh.com> <CABCOCHSihuGOpMy3fqvTcnmRbYYszOpxYcwNsRc9RRkX6gk+fQ@mail.gmail.com> <ae6c929d-bfd4-02ca-d7b3-fbc32a7fae84@joelhalpern.com> <CABCOCHSsn-7YW1dDPJqLe-es592UaYEoeTfBKVidV8u7QbDXQg@mail.gmail.com>
From: "Joel M. Halpern" <jmh@joelhalpern.com>
Message-ID: <166da791-a4e5-479c-a74a-793ee2b433b6@joelhalpern.com>
Date: Mon, 6 Jun 2016 21:04:24 -0400
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:45.0) Gecko/20100101 Thunderbird/45.1.1
MIME-Version: 1.0
In-Reply-To: <CABCOCHSsn-7YW1dDPJqLe-es592UaYEoeTfBKVidV8u7QbDXQg@mail.gmail.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 8bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/HzQtP85AsvaksDQB6oAc6h1zbP4>
Cc: "i2rs@ietf.org" <i2rs@ietf.org>
Subject: Re: [i2rs] YANG validation and opstate
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Tue, 07 Jun 2016 01:04:49 -0000

I think that works for me.

What I read you as saying is that we could simply define that any and 
all validation of I2RS operations is a local matter and up to the server.

This would remove any need for flags or marking, and also remove any 
need for indicating a mode of operation.

If that is what you meant, it works for me.
Yours,
Joel

On 6/6/16 9:01 PM, Andy Bierman wrote:
>
>
> On Mon, Jun 6, 2016 at 5:46 PM, Joel M. Halpern <jmh@joelhalpern.com
> <mailto:jmh@joelhalpern.com>> wrote:
>
>     When we started on the I2RS work, the explicit request from the
>     operators was to make this as simple as practical and as efficient
>     as practical.
>
>     In regard to constraints on what they could do, the specific request
>     was "let us shoot ourselves in the foot."  That is, if some change
>     will break the network, so be it.  it is the operators problem.  If
>     the change only causes the box to reboot, that is less dangerous.
>     So it seems to fall within "let me shoot my foot."
>
>     I expect that there are some forms of validation that need to take
>     place just to attempt to apply the RPC.  But everything beyond that
>     was requested to be not performed.  Whether we can actually achieve
>     that is a different question.
>     It does strike me that we can also go back and ask the operators
>     again what they meant, if you think it is likely we misunderstood.
>
>
> In my example "when IPv4" is ignored so IPv6 parameters are
> accepted as valid.
>
> Does this mean the server faithfully applies the wrong parameters that
> make no sense whatsoever?  Probably not.  It means the client developer
> and operator have no idea what a server implementation is SUPPOSED to
> accept as a valid edit.  (Which diminishes the standards value of I2RS)
>
> My original point was that extra flags for I2RS like "I ignore all leafrefs"
> are worthless. It is better to declare that validation is not part of
> the ephemeral datastore.  It is an implementation detail whether accepted
> data in that datastore  ever gets used.
>
>
>     Yours,
>     Joel
>
>
> Andy
>
>
>
>     On 6/6/16 8:26 PM, Andy Bierman wrote:
>
>         Hi,
>
>         I am still a little confused on the intent of the partial YANG
>         validation.
>         It seems trivial to adapt the NETCONF or RESTCONF validation
>         points to I2RS.
>         The only difference is that I2RS data can have constraints
>         pointing at
>         config=false
>         nodes, so this is more complicated and expensive to implement
>         than NETCONF
>         or RESTCONF.
>
>         The argument for partial validation I have heard is "We only
>         support 1
>         client and
>         we know the client already checks the data, so we know the data
>         is valid."
>         This is not arguing that there will be invalid data in the
>         datastore.
>         It is arguing
>         that the client can be trusted to be correct and bug-free so why
>         bother
>         spending
>         server resources duplicating the validation.
>
>         Typically in NM standards we assume more than 1 client is
>         allowed in the
>         design
>         and a client cannot be trusted.  A client could be malicious or
>         buggy.
>         Either way, if the server crashes or allows a security breach
>         it's still the server vendor's fault.
>
>         I2RS seems like an implementation detail (not a standard) if
>         vendors plan on
>         writing both client and server code and not intending to support
>         any 3rd party implementations.
>
>
>         Andy
>
>
>
>         On Mon, Jun 6, 2016 at 4:25 PM, Susan Hares <shares@ndzh.com
>         <mailto:shares@ndzh.com>
>         <mailto:shares@ndzh.com <mailto:shares@ndzh.com>>> wrote:
>
>             Andy: ____
>
>             __ __
>
>             Iâ€™m not sure the context you are referring to as â€œI2RS agent
>         pick
>             which Yang statements they will implementâ€.  ____
>
>             __ __
>
>             From the context, I guess you are investigating Ephemeral
>             Configuration State.  If â€œthe server MAY do YANG validation____
>
>             on the ephemeral datastoreâ€, and then check it in
>         operational state
>             â€“ this clearly works.  However, Iâ€™m struggling to fit the normal
>             Ephemeral Configuration State validation into section 8.3 of
>             RFC6020bis.   There are three steps in constraint enforcement
>             (section 8.3 of RFC6020bis).  ____
>
>                o  during parsing of RPC payloads - ____
>
>                o  during processing of the <edit-config> operation____
>
>                o  during validation____
>
>             __ __
>
>             Currently section 8.3.3 says: ____
>
>             __ __
>
>             â€œ8.3.3.  Validation____
>
>             __ __
>
>                When datastore processing is complete, the final contents
>         MUST
>             obey  all validation constraints.  This validation processing is
>             performed  at differing times according to the datastore.   ____
>
>             __ __
>
>             If the datastore is "running" or "startup",   these
>         constraints MUST
>             be enforced at the end of the <edit-config> or <copy-config>
>             operation.  If the datastore is "candidate", the constraint
>             enforcement is delayed until a <commit>____
>
>             or <validate> operation.â€____
>
>             __ __
>
>             My understanding is we are discussing how constraint enforcement
>             works in Ephemeral Configuration State.  ____
>
>             You need to define where the ephemeral constraints MUST Be
>             enforced.  It would seem reasonable to enforces at the end of
>             <edit-config> or <copy-config>, or by the end of an rpc
>         operation
>             defined in a data model.  ____
>
>             __ __
>
>             Since RESTCONF uses PUTS/PATCH within a HTTP exchange, then the
>             constraint enforcement must be at the end of that http
>         operation.  ____
>
>             __ __
>
>             Sue ____
>
>             __ __
>
>             ____
>
>             __ __
>
>             __ __
>
>             *From:*i2rs [mailto:i2rs-bounces@ietf.org
>         <mailto:i2rs-bounces@ietf.org>
>             <mailto:i2rs-bounces@ietf.org
>         <mailto:i2rs-bounces@ietf.org>>] *On Behalf Of *Andy Bierman
>             *Sent:* Sunday, June 05, 2016 5:43 PM
>             *To:* i2rs@ietf.org <mailto:i2rs@ietf.org>
>         <mailto:i2rs@ietf.org <mailto:i2rs@ietf.org>>
>             *Subject:* [i2rs] YANG validation and opstate____
>
>             __ __
>
>             Hi,____
>
>             __ __
>
>             I don't really agree with idea that I2RS agents pick which____
>
>             YANG statements they will implement, but I think there is____
>
>             a way to handle this correctly in the datastore framework.____
>
>             __ __
>
>             The proposed enumeration for server validation____
>
>             capabilities (e.g., full, XPath, leafref) is not really
>         needed.____
>
>             This enum is too course-grained to be useful.____
>
>             __ __
>
>             IMO it is better to say the server MAY do YANG validation____
>
>             on the ephemeral datastore.  Whether or not the server uses____
>
>             data from the ephemeral datastore is left as an implementation
>             detail.____
>
>             The server could use invalid input parameters or ignore them____
>
>             or reject them in the first place.____
>
>              ____
>
>             The client needs to check operational state to know if/when
>         the____
>
>             ephemeral data was applied to the system.____
>
>             __ __
>
>             __ __
>
>             __ __
>
>             Andy____
>
>             __ __
>
>
>
>
>         _______________________________________________
>         i2rs mailing list
>         i2rs@ietf.org <mailto:i2rs@ietf.org>
>         https://www.ietf.org/mailman/listinfo/i2rs
>
>


From nobody Mon Jun  6 18:38:07 2016
Return-Path: <andy@yumaworks.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 C4A0D12D0A4 for <i2rs@ietfa.amsl.com>; Mon,  6 Jun 2016 18:38:05 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.6
X-Spam-Level: 
X-Spam-Status: No, score=-2.6 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=yumaworks-com.20150623.gappssmtp.com
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 B40Bl83oemK2 for <i2rs@ietfa.amsl.com>; Mon,  6 Jun 2016 18:38:03 -0700 (PDT)
Received: from mail-yw0-x234.google.com (mail-yw0-x234.google.com [IPv6:2607:f8b0:4002:c05::234]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id C74461200A0 for <i2rs@ietf.org>; Mon,  6 Jun 2016 18:38:02 -0700 (PDT)
Received: by mail-yw0-x234.google.com with SMTP id x189so156969571ywe.3 for <i2rs@ietf.org>; Mon, 06 Jun 2016 18:38:02 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yumaworks-com.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc; bh=H4oYM9gPm6aHwUrLvfLmYmlVIJENuMfee5dLsTxjbhA=; b=PixbIOHv0lgkEp3vrqrx3q6ADdbwYwbmYQDKaIJ3NZjVnAHSiwZ3mSiIIVHV64E8wV Ok/RtsjJ/lePIJ1JyrmEaXJR1k9UFuQQ/w6aSQEBuDezuHZGU86vcV3sAql1W7iEzF6z UQnzkVYKMhptjwq34mxvhYlYQhjA35sSgMqJvq6CEfnx9oexCqABinA0y3NkG+qdV2gC oyQo6bfTFVQ64mUK+6GzgGkkZL9SZmleCb1/nCZp1AJD+VavctFiVxNNgMWoc748489P l+73HFuyo4FFYubE6h07yTmwMbEaTXaZeq0A2OxZql+V1gtWBVabc4+cGmMeBraYMgSY L9mQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc; bh=H4oYM9gPm6aHwUrLvfLmYmlVIJENuMfee5dLsTxjbhA=; b=lPgRng7JoKvFLMoJ6EeNgJhAQrTp0Kqju6UzxaPjwQjQtDL1fEWyAj/I/n8JsefNPO kkchrBBRzgamb9+tN3qHq/X42iYLDBMKVv8O7qTxGpSFjyp1HhQp0W8+N/oQ3UUTPLcX YH1F+r5EBUiRTaDFEmCVm4lROHCWnBzKEWOPMBmS5FpIuxZxbmWxBpBdi2tk6O4wwha8 qZ/qSHJ5OjHYTMukLaWhqlXTFgQ0zZBG1yajGKFgoSd2BeidG52p8oR5S83Ae+ybnrPf t90FDb86JvaYtcB8VTqRQo/prQ+KGAx6UtSXPfJcsgdmg5UxCxzaORZo801TwvnhTotA 11yQ==
X-Gm-Message-State: ALyK8tJ2VB56RBfaZ2QDIdNDcuax7DQjVJox6BgdK5xvW5XBhwBYVA0g0ZFmITcot51TqVAepZEvmCiimIPViA==
MIME-Version: 1.0
X-Received: by 10.129.74.86 with SMTP id x83mr14022942ywa.38.1465263481793; Mon, 06 Jun 2016 18:38:01 -0700 (PDT)
Received: by 10.37.115.68 with HTTP; Mon, 6 Jun 2016 18:38:01 -0700 (PDT)
In-Reply-To: <166da791-a4e5-479c-a74a-793ee2b433b6@joelhalpern.com>
References: <CABCOCHQAuhsngAKXE=-o=wWsv1u6BXDWCJ--0JJ4p5D0f2WY3Q@mail.gmail.com> <029d01d1c04a$a7d1c330$f7754990$@ndzh.com> <CABCOCHSihuGOpMy3fqvTcnmRbYYszOpxYcwNsRc9RRkX6gk+fQ@mail.gmail.com> <ae6c929d-bfd4-02ca-d7b3-fbc32a7fae84@joelhalpern.com> <CABCOCHSsn-7YW1dDPJqLe-es592UaYEoeTfBKVidV8u7QbDXQg@mail.gmail.com> <166da791-a4e5-479c-a74a-793ee2b433b6@joelhalpern.com>
Date: Mon, 6 Jun 2016 18:38:01 -0700
Message-ID: <CABCOCHRTdLJMZHLs=-Np9mvqzUrCO2mDLA8EpDBw0vStcR5q2A@mail.gmail.com>
From: Andy Bierman <andy@yumaworks.com>
To: "Joel M. Halpern" <jmh@joelhalpern.com>
Content-Type: multipart/alternative; boundary=001a114c8c3a55e5160534a63d0c
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/yE3j00qgs5xF_FnmChR7DvLrjuk>
Cc: "i2rs@ietf.org" <i2rs@ietf.org>
Subject: Re: [i2rs] YANG validation and opstate
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Tue, 07 Jun 2016 01:38:06 -0000

--001a114c8c3a55e5160534a63d0c
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

On Mon, Jun 6, 2016 at 6:04 PM, Joel M. Halpern <jmh@joelhalpern.com> wrote=
:

> I think that works for me.
>
> What I read you as saying is that we could simply define that any and all
> validation of I2RS operations is a local matter and up to the server.
>
> This would remove any need for flags or marking, and also remove any need
> for indicating a mode of operation.
>
> If that is what you meant, it works for me.
>


I think clue-full client developers will understand how this will assist
their foot-shooting efforts.

YANG already has the deviation-stmt so the server can say "I ignore this
leafref and that must-stmt".



Yours,
> Joel
>
>

Andy


> On 6/6/16 9:01 PM, Andy Bierman wrote:
>
>>
>>
>> On Mon, Jun 6, 2016 at 5:46 PM, Joel M. Halpern <jmh@joelhalpern.com
>> <mailto:jmh@joelhalpern.com>> wrote:
>>
>>     When we started on the I2RS work, the explicit request from the
>>     operators was to make this as simple as practical and as efficient
>>     as practical.
>>
>>     In regard to constraints on what they could do, the specific request
>>     was "let us shoot ourselves in the foot."  That is, if some change
>>     will break the network, so be it.  it is the operators problem.  If
>>     the change only causes the box to reboot, that is less dangerous.
>>     So it seems to fall within "let me shoot my foot."
>>
>>     I expect that there are some forms of validation that need to take
>>     place just to attempt to apply the RPC.  But everything beyond that
>>     was requested to be not performed.  Whether we can actually achieve
>>     that is a different question.
>>     It does strike me that we can also go back and ask the operators
>>     again what they meant, if you think it is likely we misunderstood.
>>
>>
>> In my example "when IPv4" is ignored so IPv6 parameters are
>> accepted as valid.
>>
>> Does this mean the server faithfully applies the wrong parameters that
>> make no sense whatsoever?  Probably not.  It means the client developer
>> and operator have no idea what a server implementation is SUPPOSED to
>> accept as a valid edit.  (Which diminishes the standards value of I2RS)
>>
>> My original point was that extra flags for I2RS like "I ignore all
>> leafrefs"
>> are worthless. It is better to declare that validation is not part of
>> the ephemeral datastore.  It is an implementation detail whether accepte=
d
>> data in that datastore  ever gets used.
>>
>>
>>     Yours,
>>     Joel
>>
>>
>> Andy
>>
>>
>>
>>     On 6/6/16 8:26 PM, Andy Bierman wrote:
>>
>>         Hi,
>>
>>         I am still a little confused on the intent of the partial YANG
>>         validation.
>>         It seems trivial to adapt the NETCONF or RESTCONF validation
>>         points to I2RS.
>>         The only difference is that I2RS data can have constraints
>>         pointing at
>>         config=3Dfalse
>>         nodes, so this is more complicated and expensive to implement
>>         than NETCONF
>>         or RESTCONF.
>>
>>         The argument for partial validation I have heard is "We only
>>         support 1
>>         client and
>>         we know the client already checks the data, so we know the data
>>         is valid."
>>         This is not arguing that there will be invalid data in the
>>         datastore.
>>         It is arguing
>>         that the client can be trusted to be correct and bug-free so why
>>         bother
>>         spending
>>         server resources duplicating the validation.
>>
>>         Typically in NM standards we assume more than 1 client is
>>         allowed in the
>>         design
>>         and a client cannot be trusted.  A client could be malicious or
>>         buggy.
>>         Either way, if the server crashes or allows a security breach
>>         it's still the server vendor's fault.
>>
>>         I2RS seems like an implementation detail (not a standard) if
>>         vendors plan on
>>         writing both client and server code and not intending to support
>>         any 3rd party implementations.
>>
>>
>>         Andy
>>
>>
>>
>>         On Mon, Jun 6, 2016 at 4:25 PM, Susan Hares <shares@ndzh.com
>>         <mailto:shares@ndzh.com>
>>         <mailto:shares@ndzh.com <mailto:shares@ndzh.com>>> wrote:
>>
>>             Andy: ____
>>
>>             __ __
>>
>>             I=E2=80=99m not sure the context you are referring to as =E2=
=80=9CI2RS agent
>>         pick
>>             which Yang statements they will implement=E2=80=9D.  ____
>>
>>             __ __
>>
>>             From the context, I guess you are investigating Ephemeral
>>             Configuration State.  If =E2=80=9Cthe server MAY do YANG
>> validation____
>>
>>             on the ephemeral datastore=E2=80=9D, and then check it in
>>         operational state
>>             =E2=80=93 this clearly works.  However, I=E2=80=99m struggli=
ng to fit the
>> normal
>>             Ephemeral Configuration State validation into section 8.3 of
>>             RFC6020bis.   There are three steps in constraint enforcemen=
t
>>             (section 8.3 of RFC6020bis).  ____
>>
>>                o  during parsing of RPC payloads - ____
>>
>>                o  during processing of the <edit-config> operation____
>>
>>                o  during validation____
>>
>>             __ __
>>
>>             Currently section 8.3.3 says: ____
>>
>>             __ __
>>
>>             =E2=80=9C8.3.3.  Validation____
>>
>>             __ __
>>
>>                When datastore processing is complete, the final contents
>>         MUST
>>             obey  all validation constraints.  This validation processin=
g
>> is
>>             performed  at differing times according to the datastore.
>>  ____
>>
>>             __ __
>>
>>             If the datastore is "running" or "startup",   these
>>         constraints MUST
>>             be enforced at the end of the <edit-config> or <copy-config>
>>             operation.  If the datastore is "candidate", the constraint
>>             enforcement is delayed until a <commit>____
>>
>>             or <validate> operation.=E2=80=9D____
>>
>>             __ __
>>
>>             My understanding is we are discussing how constraint
>> enforcement
>>             works in Ephemeral Configuration State.  ____
>>
>>             You need to define where the ephemeral constraints MUST Be
>>             enforced.  It would seem reasonable to enforces at the end o=
f
>>             <edit-config> or <copy-config>, or by the end of an rpc
>>         operation
>>             defined in a data model.  ____
>>
>>             __ __
>>
>>             Since RESTCONF uses PUTS/PATCH within a HTTP exchange, then
>> the
>>             constraint enforcement must be at the end of that http
>>         operation.  ____
>>
>>             __ __
>>
>>             Sue ____
>>
>>             __ __
>>
>>             ____
>>
>>             __ __
>>
>>             __ __
>>
>>             *From:*i2rs [mailto:i2rs-bounces@ietf.org
>>         <mailto:i2rs-bounces@ietf.org>
>>             <mailto:i2rs-bounces@ietf.org
>>         <mailto:i2rs-bounces@ietf.org>>] *On Behalf Of *Andy Bierman
>>             *Sent:* Sunday, June 05, 2016 5:43 PM
>>             *To:* i2rs@ietf.org <mailto:i2rs@ietf.org>
>>         <mailto:i2rs@ietf.org <mailto:i2rs@ietf.org>>
>>             *Subject:* [i2rs] YANG validation and opstate____
>>
>>             __ __
>>
>>             Hi,____
>>
>>             __ __
>>
>>             I don't really agree with idea that I2RS agents pick which__=
__
>>
>>             YANG statements they will implement, but I think there is___=
_
>>
>>             a way to handle this correctly in the datastore framework.__=
__
>>
>>             __ __
>>
>>             The proposed enumeration for server validation____
>>
>>             capabilities (e.g., full, XPath, leafref) is not really
>>         needed.____
>>
>>             This enum is too course-grained to be useful.____
>>
>>             __ __
>>
>>             IMO it is better to say the server MAY do YANG validation___=
_
>>
>>             on the ephemeral datastore.  Whether or not the server
>> uses____
>>
>>             data from the ephemeral datastore is left as an implementati=
on
>>             detail.____
>>
>>             The server could use invalid input parameters or ignore
>> them____
>>
>>             or reject them in the first place.____
>>
>>              ____
>>
>>             The client needs to check operational state to know if/when
>>         the____
>>
>>             ephemeral data was applied to the system.____
>>
>>             __ __
>>
>>             __ __
>>
>>             __ __
>>
>>             Andy____
>>
>>             __ __
>>
>>
>>
>>
>>         _______________________________________________
>>         i2rs mailing list
>>         i2rs@ietf.org <mailto:i2rs@ietf.org>
>>         https://www.ietf.org/mailman/listinfo/i2rs
>>
>>
>>

--001a114c8c3a55e5160534a63d0c
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><br><div class=3D"gmail_extra"><br><div class=3D"gmail_quo=
te">On Mon, Jun 6, 2016 at 6:04 PM, Joel M. Halpern <span dir=3D"ltr">&lt;<=
a href=3D"mailto:jmh@joelhalpern.com" target=3D"_blank">jmh@joelhalpern.com=
</a>&gt;</span> wrote:<br><blockquote class=3D"gmail_quote" style=3D"margin=
:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">I think that works=
 for me.<br>
<br>
What I read you as saying is that we could simply define that any and all v=
alidation of I2RS operations is a local matter and up to the server.<br>
<br>
This would remove any need for flags or marking, and also remove any need f=
or indicating a mode of operation.<br>
<br>
If that is what you meant, it works for me.<br></blockquote><div><br></div>=
<div><br></div><div>I think clue-full client developers will understand how=
 this will assist their foot-shooting efforts.</div><div><br></div><div>YAN=
G already has the deviation-stmt so the server can say &quot;I ignore this =
leafref and that must-stmt&quot;.</div><div><br></div><div><br></div><div><=
br></div><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;borde=
r-left:1px #ccc solid;padding-left:1ex">
Yours,<br>
Joel<br>
<br></blockquote><div><br></div><div><br></div><div>Andy</div><div>=C2=A0</=
div><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-lef=
t:1px #ccc solid;padding-left:1ex">
On 6/6/16 9:01 PM, Andy Bierman wrote:<br>
<blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p=
x #ccc solid;padding-left:1ex">
<br>
<br>
On Mon, Jun 6, 2016 at 5:46 PM, Joel M. Halpern &lt;<a href=3D"mailto:jmh@j=
oelhalpern.com" target=3D"_blank">jmh@joelhalpern.com</a><br>
&lt;mailto:<a href=3D"mailto:jmh@joelhalpern.com" target=3D"_blank">jmh@joe=
lhalpern.com</a>&gt;&gt; wrote:<br>
<br>
=C2=A0 =C2=A0 When we started on the I2RS work, the explicit request from t=
he<br>
=C2=A0 =C2=A0 operators was to make this as simple as practical and as effi=
cient<br>
=C2=A0 =C2=A0 as practical.<br>
<br>
=C2=A0 =C2=A0 In regard to constraints on what they could do, the specific =
request<br>
=C2=A0 =C2=A0 was &quot;let us shoot ourselves in the foot.&quot;=C2=A0 Tha=
t is, if some change<br>
=C2=A0 =C2=A0 will break the network, so be it.=C2=A0 it is the operators p=
roblem.=C2=A0 If<br>
=C2=A0 =C2=A0 the change only causes the box to reboot, that is less danger=
ous.<br>
=C2=A0 =C2=A0 So it seems to fall within &quot;let me shoot my foot.&quot;<=
br>
<br>
=C2=A0 =C2=A0 I expect that there are some forms of validation that need to=
 take<br>
=C2=A0 =C2=A0 place just to attempt to apply the RPC.=C2=A0 But everything =
beyond that<br>
=C2=A0 =C2=A0 was requested to be not performed.=C2=A0 Whether we can actua=
lly achieve<br>
=C2=A0 =C2=A0 that is a different question.<br>
=C2=A0 =C2=A0 It does strike me that we can also go back and ask the operat=
ors<br>
=C2=A0 =C2=A0 again what they meant, if you think it is likely we misunders=
tood.<br>
<br>
<br>
In my example &quot;when IPv4&quot; is ignored so IPv6 parameters are<br>
accepted as valid.<br>
<br>
Does this mean the server faithfully applies the wrong parameters that<br>
make no sense whatsoever?=C2=A0 Probably not.=C2=A0 It means the client dev=
eloper<br>
and operator have no idea what a server implementation is SUPPOSED to<br>
accept as a valid edit.=C2=A0 (Which diminishes the standards value of I2RS=
)<br>
<br>
My original point was that extra flags for I2RS like &quot;I ignore all lea=
frefs&quot;<br>
are worthless. It is better to declare that validation is not part of<br>
the ephemeral datastore.=C2=A0 It is an implementation detail whether accep=
ted<br>
data in that datastore=C2=A0 ever gets used.<br>
<br>
<br>
=C2=A0 =C2=A0 Yours,<br>
=C2=A0 =C2=A0 Joel<br>
<br>
<br>
Andy<br>
<br>
<br>
<br>
=C2=A0 =C2=A0 On 6/6/16 8:26 PM, Andy Bierman wrote:<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 Hi,<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 I am still a little confused on the intent of t=
he partial YANG<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 validation.<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 It seems trivial to adapt the NETCONF or RESTCO=
NF validation<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 points to I2RS.<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 The only difference is that I2RS data can have =
constraints<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 pointing at<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 config=3Dfalse<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 nodes, so this is more complicated and expensiv=
e to implement<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 than NETCONF<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 or RESTCONF.<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 The argument for partial validation I have hear=
d is &quot;We only<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 support 1<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 client and<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 we know the client already checks the data, so =
we know the data<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 is valid.&quot;<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 This is not arguing that there will be invalid =
data in the<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 datastore.<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 It is arguing<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 that the client can be trusted to be correct an=
d bug-free so why<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 bother<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 spending<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 server resources duplicating the validation.<br=
>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 Typically in NM standards we assume more than 1=
 client is<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 allowed in the<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 design<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 and a client cannot be trusted.=C2=A0 A client =
could be malicious or<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 buggy.<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 Either way, if the server crashes or allows a s=
ecurity breach<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 it&#39;s still the server vendor&#39;s fault.<b=
r>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 I2RS seems like an implementation detail (not a=
 standard) if<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 vendors plan on<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 writing both client and server code and not int=
ending to support<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 any 3rd party implementations.<br>
<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 Andy<br>
<br>
<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 On Mon, Jun 6, 2016 at 4:25 PM, Susan Hares &lt=
;<a href=3D"mailto:shares@ndzh.com" target=3D"_blank">shares@ndzh.com</a><b=
r>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 &lt;mailto:<a href=3D"mailto:shares@ndzh.com" t=
arget=3D"_blank">shares@ndzh.com</a>&gt;<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 &lt;mailto:<a href=3D"mailto:shares@ndzh.com" t=
arget=3D"_blank">shares@ndzh.com</a> &lt;mailto:<a href=3D"mailto:shares@nd=
zh.com" target=3D"_blank">shares@ndzh.com</a>&gt;&gt;&gt; wrote:<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 Andy: ____<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 __ __<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 I=E2=80=99m not sure the context =
you are referring to as =E2=80=9CI2RS agent<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 pick<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 which Yang statements they will i=
mplement=E2=80=9D.=C2=A0 ____<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 __ __<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 From the context, I guess you are=
 investigating Ephemeral<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 Configuration State.=C2=A0 If =E2=
=80=9Cthe server MAY do YANG validation____<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 on the ephemeral datastore=E2=80=
=9D, and then check it in<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 operational state<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =E2=80=93 this clearly works.=C2=
=A0 However, I=E2=80=99m struggling to fit the normal<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 Ephemeral Configuration State val=
idation into section 8.3 of<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 RFC6020bis.=C2=A0 =C2=A0There are=
 three steps in constraint enforcement<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 (section 8.3 of RFC6020bis).=C2=
=A0 ____<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0o=C2=A0 during parsi=
ng of RPC payloads - ____<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0o=C2=A0 during proce=
ssing of the &lt;edit-config&gt; operation____<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0o=C2=A0 during valid=
ation____<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 __ __<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 Currently section 8.3.3 says: ___=
_<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 __ __<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =E2=80=9C8.3.3.=C2=A0 Validation_=
___<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 __ __<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0When datastore proce=
ssing is complete, the final contents<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 MUST<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 obey=C2=A0 all validation constra=
ints.=C2=A0 This validation processing is<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 performed=C2=A0 at differing time=
s according to the datastore.=C2=A0 =C2=A0____<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 __ __<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 If the datastore is &quot;running=
&quot; or &quot;startup&quot;,=C2=A0 =C2=A0these<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 constraints MUST<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 be enforced at the end of the &lt=
;edit-config&gt; or &lt;copy-config&gt;<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 operation.=C2=A0 If the datastore=
 is &quot;candidate&quot;, the constraint<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 enforcement is delayed until a &l=
t;commit&gt;____<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 or &lt;validate&gt; operation.=E2=
=80=9D____<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 __ __<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 My understanding is we are discus=
sing how constraint enforcement<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 works in Ephemeral Configuration =
State.=C2=A0 ____<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 You need to define where the ephe=
meral constraints MUST Be<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 enforced.=C2=A0 It would seem rea=
sonable to enforces at the end of<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &lt;edit-config&gt; or &lt;copy-c=
onfig&gt;, or by the end of an rpc<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 operation<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 defined in a data model.=C2=A0 __=
__<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 __ __<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 Since RESTCONF uses PUTS/PATCH wi=
thin a HTTP exchange, then the<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 constraint enforcement must be at=
 the end of that http<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 operation.=C2=A0 ____<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 __ __<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 Sue ____<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 __ __<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 ____<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 __ __<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 __ __<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 *From:*i2rs [mailto:<a href=3D"ma=
ilto:i2rs-bounces@ietf.org" target=3D"_blank">i2rs-bounces@ietf.org</a><br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 &lt;mailto:<a href=3D"mailto:i2rs-bounces@ietf.=
org" target=3D"_blank">i2rs-bounces@ietf.org</a>&gt;<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &lt;mailto:<a href=3D"mailto:i2rs=
-bounces@ietf.org" target=3D"_blank">i2rs-bounces@ietf.org</a><br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 &lt;mailto:<a href=3D"mailto:i2rs-bounces@ietf.=
org" target=3D"_blank">i2rs-bounces@ietf.org</a>&gt;&gt;] *On Behalf Of *An=
dy Bierman<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 *Sent:* Sunday, June 05, 2016 5:4=
3 PM<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 *To:* <a href=3D"mailto:i2rs@ietf=
.org" target=3D"_blank">i2rs@ietf.org</a> &lt;mailto:<a href=3D"mailto:i2rs=
@ietf.org" target=3D"_blank">i2rs@ietf.org</a>&gt;<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 &lt;mailto:<a href=3D"mailto:i2rs@ietf.org" tar=
get=3D"_blank">i2rs@ietf.org</a> &lt;mailto:<a href=3D"mailto:i2rs@ietf.org=
" target=3D"_blank">i2rs@ietf.org</a>&gt;&gt;<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 *Subject:* [i2rs] YANG validation=
 and opstate____<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 __ __<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 Hi,____<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 __ __<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 I don&#39;t really agree with ide=
a that I2RS agents pick which____<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 YANG statements they will impleme=
nt, but I think there is____<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 a way to handle this correctly in=
 the datastore framework.____<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 __ __<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 The proposed enumeration for serv=
er validation____<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 capabilities (e.g., full, XPath, =
leafref) is not really<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 needed.____<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 This enum is too course-grained t=
o be useful.____<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 __ __<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 IMO it is better to say the serve=
r MAY do YANG validation____<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 on the ephemeral datastore.=C2=A0=
 Whether or not the server uses____<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 data from the ephemeral datastore=
 is left as an implementation<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 detail.____<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 The server could use invalid inpu=
t parameters or ignore them____<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 or reject them in the first place=
.____<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0____<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 The client needs to check operati=
onal state to know if/when<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 the____<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 ephemeral data was applied to the=
 system.____<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 __ __<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 __ __<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 __ __<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 Andy____<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 __ __<br>
<br>
<br>
<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 _______________________________________________=
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 i2rs mailing list<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 <a href=3D"mailto:i2rs@ietf.org" target=3D"_bla=
nk">i2rs@ietf.org</a> &lt;mailto:<a href=3D"mailto:i2rs@ietf.org" target=3D=
"_blank">i2rs@ietf.org</a>&gt;<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 <a href=3D"https://www.ietf.org/mailman/listinf=
o/i2rs" rel=3D"noreferrer" target=3D"_blank">https://www.ietf.org/mailman/l=
istinfo/i2rs</a><br>
<br>
<br>
</blockquote>
</blockquote></div><br></div></div>

--001a114c8c3a55e5160534a63d0c--


From nobody Tue Jun  7 07:22:14 2016
Return-Path: <j.schoenwaelder@jacobs-university.de>
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 C27FD12D69C for <i2rs@ietfa.amsl.com>; Tue,  7 Jun 2016 07:22:12 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.626
X-Spam-Level: 
X-Spam-Status: No, score=-5.626 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, RP_MATCHES_RCVD=-1.426] autolearn=ham autolearn_force=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 JXwdogyeNWpb for <i2rs@ietfa.amsl.com>; Tue,  7 Jun 2016 07:22:11 -0700 (PDT)
Received: from atlas3.jacobs-university.de (atlas3.jacobs-university.de [212.201.44.18]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 554B212D69B for <i2rs@ietf.org>; Tue,  7 Jun 2016 07:22:11 -0700 (PDT)
Received: from localhost (demetrius5.irc-it.jacobs-university.de [10.70.0.222]) by atlas3.jacobs-university.de (Postfix) with ESMTP id 1B309FDE; Tue,  7 Jun 2016 16:22:10 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from atlas3.jacobs-university.de ([10.70.0.220]) by localhost (demetrius5.jacobs-university.de [10.70.0.222]) (amavisd-new, port 10030) with ESMTP id 8fT91LPgrjK1; Tue,  7 Jun 2016 16:22:07 +0200 (CEST)
Received: from hermes.jacobs-university.de (hermes.jacobs-university.de [212.201.44.23]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "hermes.jacobs-university.de", Issuer "Jacobs University CA - G01" (verified OK)) by atlas3.jacobs-university.de (Postfix) with ESMTPS; Tue,  7 Jun 2016 16:22:08 +0200 (CEST)
Received: from localhost (demetrius2.jacobs-university.de [212.201.44.47]) by hermes.jacobs-university.de (Postfix) with ESMTP id BC3CA2004E; Tue,  7 Jun 2016 16:22:08 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from hermes.jacobs-university.de ([212.201.44.23]) by localhost (demetrius2.jacobs-university.de [212.201.44.32]) (amavisd-new, port 10024) with ESMTP id FMvQrXo1JzaA; Tue,  7 Jun 2016 16:22:07 +0200 (CEST)
Received: from elstar.local (elstar.jacobs.jacobs-university.de [10.50.231.133]) by hermes.jacobs-university.de (Postfix) with ESMTP id 13F0F20047; Tue,  7 Jun 2016 16:22:06 +0200 (CEST)
Received: by elstar.local (Postfix, from userid 501) id 026153B0AF23; Tue,  7 Jun 2016 16:22:05 +0200 (CEST)
Date: Tue, 7 Jun 2016 16:22:05 +0200
From: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
To: Susan Hares <shares@ndzh.com>
Message-ID: <20160607142205.GA9632@elstar.local>
Mail-Followup-To: Susan Hares <shares@ndzh.com>, 'Jeffrey Haas' <jhaas@pfrc.org>, i2rs@ietf.org, "'Joel M. Halpern'" <jmh@joelhalpern.com>
References: <20160531192729.GA23116@elstar.local> <005801d1bb7a$e7b2e440$b718acc0$@ndzh.com> <20160601091953.GD24118@elstar.local> <20160602142733.GU17462@pfrc.org> <20160606174413.GA7492@elstar.local> <01a701d1c01f$918dbf00$b4a93d00$@ndzh.com> <20160606183122.GA7624@elstar.local> <021201d1c026$a26da540$e748efc0$@ndzh.com> <20160606200353.GB7820@elstar.local> <029b01d1c047$e38fd400$aaaf7c00$@ndzh.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <029b01d1c047$e38fd400$aaaf7c00$@ndzh.com>
User-Agent: Mutt/1.6.0 (2016-04-01)
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/VXg4MNjrORTiJjfK0bcts6SmkP0>
Cc: 'Jeffrey Haas' <jhaas@pfrc.org>, i2rs@ietf.org, "'Joel M. Halpern'" <jmh@joelhalpern.com>
Subject: Re: [i2rs] Ephemeral State Requirements discussion
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
Reply-To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
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: <https://mailarchive.ietf.org/arch/browse/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: Tue, 07 Jun 2016 14:22:13 -0000

Sue,

Ephemeral-REQ-03 seems to be in conflict with what YANG validation
rules expects. If I2RS validation depends on 'temporary operational
state', then the validation result is only meaningful at a specific
point in time; YANG validation specially avoids this in order to have
the property that a configuration that is valid remains valid (and
does not become invalid if 'temporary operational state' changes.

Hence: I2RS ephemeral validation != YANG config true validation

/js

On Mon, Jun 06, 2016 at 07:05:15PM -0400, Susan Hares wrote:
> Juergen: 
> 
> Thank you for the pointer,  I am assuming you are referring to section 8.3
> on constraint enforcement (from RFC6020bis), and as a part of constraint
> enforcement, the validation.  
> 
> I2RS ephemeral requirements 1-4 are: 
>    Ephemeral-REQ-01: I2RS requires ephemeral configuration state; i.e. state
> that does not persist
>     across reboots. If state must be restored, it should be done solely
>     by replay actions from the I2RS client via the I2RS agent.
> 
>    Ephemeral-REQ-02: Non-ephemeral state MUST NOT refer to  ephemeral state
> for constraint purposes; 
>    it SHALL be considered a validation error if it does.
>    Ephemeral-REQ-03: Ephemeral state must be able to utilized temporary
> operational state 
>     (e.g. MPLS LSP-ID or a BGP IN-RIB) as a constraints. 
>    Ephemeral-REQ-04: Ephemeral state MAY refer to non-ephemeral state 
>    for purposes of implementing constraints.
> 
> I2RS uses the definition you do of constraint and validation.  For
> discussion purposes, let us consider  "ephemeral state" in these
> requirements as "ephemeral configuration state".   
> 
> What needs to be expanded for Ephemeral Configuration State is the second
> paragraph of section 8.3.3 to include ephemeral state.  In the end, the
> ephemeral configuration parsing of rpc payloads, <edit-config>, and
> validation MUST obey all validation constraints.  What we are discussing is
> "when" and "how" the I2RS constraint enforcement occurs, and "when" and
> "how" validation occurs.   
> 
> Sue 
>   
> 
> ================
> For reference of I2RS list
> 
> 8.3.  NETCONF Constraint Enforcement Model
> 
>    For configuration data, there are three windows when constraints MUST
>    be enforced:
>    o  during parsing of RPC payloads - 
>    o  during processing of the <edit-config> operation
>    o  during validation
>    Each of these scenarios is considered in the following sections.
> 
> 
> 8.3.3.  Validation
> 
>    When datastore processing is complete, the final contents MUST obey
>    all validation constraints.  This validation processing is performed
>    at differing times according to the datastore.  
> 
>   If the datastore is "running" or "startup", these constraints MUST be
> enforced at the end
>    of the <edit-config> or <copy-config> operation.  If the datastore is
>    "candidate", the constraint enforcement is delayed until a <commit>
>    or <validate> operation.
> 
> 
> 
> -----Original Message-----
> From: Juergen Schoenwaelder [mailto:j.schoenwaelder@jacobs-university.de] 
> Sent: Monday, June 06, 2016 4:04 PM
> To: Susan Hares
> Cc: 'Jeffrey Haas'; i2rs@ietf.org; 'Joel M. Halpern'
> Subject: Re: [i2rs] Ephemeral State Requirements discussion
> 
> On Mon, Jun 06, 2016 at 03:07:13PM -0400, Susan Hares wrote:
> > Juergen: 
> > 
> > Please start by defining validation for NETCONF configuration.  Then, 
> > we can provide the additions for ephemeral configuration state that 
> > are not in ephemeral requirements.  See the rest of the comments below.
> >
> 
> The validation of NETCONF configurations modelled in YANG 1.0 is defined in
> RFC 6020 and for configurations modelled in YANG 1.1 it is defined in
> draft-ietf-netmod-rfc6020bis-12.
> 
> /js
> 
> PS: Our communication is not effective, I drop out for now.
> 
> -- 
> Juergen Schoenwaelder           Jacobs University Bremen gGmbH
> Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
> Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>
> 

-- 
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>


From nobody Tue Jun  7 08:29:57 2016
Return-Path: <shares@ndzh.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 8FC1F12D786 for <i2rs@ietfa.amsl.com>; Tue,  7 Jun 2016 08:29:55 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.738
X-Spam-Level: *
X-Spam-Status: No, score=1.738 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, RDNS_NONE=0.793] autolearn=no autolearn_force=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 vz6k1TfLyl0M for <i2rs@ietfa.amsl.com>; Tue,  7 Jun 2016 08:29:53 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 3B25112D775 for <i2rs@ietf.org>; Tue,  7 Jun 2016 08:29:53 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=174.124.192.86; 
From: "Susan Hares" <shares@ndzh.com>
To: "'Juergen Schoenwaelder'" <j.schoenwaelder@jacobs-university.de>
References: <20160531192729.GA23116@elstar.local> <005801d1bb7a$e7b2e440$b718acc0$@ndzh.com> <20160601091953.GD24118@elstar.local> <20160602142733.GU17462@pfrc.org> <20160606174413.GA7492@elstar.local> <01a701d1c01f$918dbf00$b4a93d00$@ndzh.com> <20160606183122.GA7624@elstar.local> <021201d1c026$a26da540$e748efc0$@ndzh.com> <20160606200353.GB7820@elstar.local> <029b01d1c047$e38fd400$aaaf7c00$@ndzh.com> <20160607142205.GA9632@elstar.local>
In-Reply-To: <20160607142205.GA9632@elstar.local>
Date: Tue, 7 Jun 2016 11:29:43 -0400
Message-ID: <00b301d1c0d1$6af0f850$40d2e8f0$@ndzh.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQI595xICbs8qxkzxeXdZeOMjeBz3QJkHlCCAikbFJQBpW9RlgH/tYeMAru5VaUCdyB9TwGYsOlSAim88zEBeXATgQE4c+Ztnm7br6A=
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/CayTd9IDi6jd82ncaLVGv680ANw>
Cc: 'Jeffrey Haas' <jhaas@pfrc.org>, i2rs@ietf.org, "'Joel M. Halpern'" <jmh@joelhalpern.com>
Subject: Re: [i2rs] Ephemeral State Requirements discussion
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Tue, 07 Jun 2016 15:29:55 -0000

Juergen: 

You are correct that I2RS ephemeral validation !:== YANG config true
validation (where !:== - means is not defined as).  This is why we defined
Ephemeral-REQ-03.  Otherwise, we would not have added it to the list of
requirements.

There is a range of state (static ----> virtual (configured/not existent)
---> LSPs).  You may want to look at OSPF Yang to consider the
virtual-links.  IMHO, NETCONF is being provided with requirements to that
suggest  changes to constraint checking for Ephemeral Configuration State.
In many messages, you asked for requirement and not design. 

In your discussions, I have not heard any suggestions regarding new text for
the ephemeral state document.  Did you have any specific suggestions?  

Sue 
 

-----Original Message-----
From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Juergen Schoenwaelder
Sent: Tuesday, June 07, 2016 10:22 AM
To: Susan Hares
Cc: 'Jeffrey Haas'; i2rs@ietf.org; 'Joel M. Halpern'
Subject: Re: [i2rs] Ephemeral State Requirements discussion

Sue,

Ephemeral-REQ-03 seems to be in conflict with what YANG validation rules
expects. If I2RS validation depends on 'temporary operational state', then
the validation result is only meaningful at a specific point in time; YANG
validation specially avoids this in order to have the property that a
configuration that is valid remains valid (and does not become invalid if
'temporary operational state' changes.

Hence: I2RS ephemeral validation != YANG config true validation

/js

On Mon, Jun 06, 2016 at 07:05:15PM -0400, Susan Hares wrote:
> Juergen: 
> 
> Thank you for the pointer,  I am assuming you are referring to section 
> 8.3 on constraint enforcement (from RFC6020bis), and as a part of 
> constraint enforcement, the validation.
> 
> I2RS ephemeral requirements 1-4 are: 
>    Ephemeral-REQ-01: I2RS requires ephemeral configuration state; i.e. 
> state that does not persist
>     across reboots. If state must be restored, it should be done solely
>     by replay actions from the I2RS client via the I2RS agent.
> 
>    Ephemeral-REQ-02: Non-ephemeral state MUST NOT refer to  ephemeral 
> state for constraint purposes;
>    it SHALL be considered a validation error if it does.
>    Ephemeral-REQ-03: Ephemeral state must be able to utilized 
> temporary operational state
>     (e.g. MPLS LSP-ID or a BGP IN-RIB) as a constraints. 
>    Ephemeral-REQ-04: Ephemeral state MAY refer to non-ephemeral state 
>    for purposes of implementing constraints.
> 
> I2RS uses the definition you do of constraint and validation.  For 
> discussion purposes, let us consider  "ephemeral state" in these
> requirements as "ephemeral configuration state".   
> 
> What needs to be expanded for Ephemeral Configuration State is the 
> second paragraph of section 8.3.3 to include ephemeral state.  In the 
> end, the ephemeral configuration parsing of rpc payloads, 
> <edit-config>, and validation MUST obey all validation constraints.  
> What we are discussing is "when" and "how" the I2RS constraint enforcement
occurs, and "when" and
> "how" validation occurs.   
> 
> Sue
>   
> 
> ================
> For reference of I2RS list
> 
> 8.3.  NETCONF Constraint Enforcement Model
> 
>    For configuration data, there are three windows when constraints MUST
>    be enforced:
>    o  during parsing of RPC payloads - 
>    o  during processing of the <edit-config> operation
>    o  during validation
>    Each of these scenarios is considered in the following sections.
> 
> 
> 8.3.3.  Validation
> 
>    When datastore processing is complete, the final contents MUST obey
>    all validation constraints.  This validation processing is performed
>    at differing times according to the datastore.  
> 
>   If the datastore is "running" or "startup", these constraints MUST 
> be enforced at the end
>    of the <edit-config> or <copy-config> operation.  If the datastore is
>    "candidate", the constraint enforcement is delayed until a <commit>
>    or <validate> operation.
> 
> 
> 
> -----Original Message-----
> From: Juergen Schoenwaelder 
> [mailto:j.schoenwaelder@jacobs-university.de]
> Sent: Monday, June 06, 2016 4:04 PM
> To: Susan Hares
> Cc: 'Jeffrey Haas'; i2rs@ietf.org; 'Joel M. Halpern'
> Subject: Re: [i2rs] Ephemeral State Requirements discussion
> 
> On Mon, Jun 06, 2016 at 03:07:13PM -0400, Susan Hares wrote:
> > Juergen: 
> > 
> > Please start by defining validation for NETCONF configuration.  
> > Then, we can provide the additions for ephemeral configuration state 
> > that are not in ephemeral requirements.  See the rest of the comments
below.
> >
> 
> The validation of NETCONF configurations modelled in YANG 1.0 is 
> defined in RFC 6020 and for configurations modelled in YANG 1.1 it is 
> defined in draft-ietf-netmod-rfc6020bis-12.
> 
> /js
> 
> PS: Our communication is not effective, I drop out for now.
> 
> -- 
> Juergen Schoenwaelder           Jacobs University Bremen gGmbH
> Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
> Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>
> 

-- 
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>

_______________________________________________
i2rs mailing list
i2rs@ietf.org
https://www.ietf.org/mailman/listinfo/i2rs


From nobody Tue Jun  7 08:56:48 2016
Return-Path: <j.schoenwaelder@jacobs-university.de>
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 A4B2012B048 for <i2rs@ietfa.amsl.com>; Tue,  7 Jun 2016 08:56:46 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.626
X-Spam-Level: 
X-Spam-Status: No, score=-5.626 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, RP_MATCHES_RCVD=-1.426] autolearn=ham autolearn_force=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 5N8D5N1RjCBK for <i2rs@ietfa.amsl.com>; Tue,  7 Jun 2016 08:56:45 -0700 (PDT)
Received: from atlas3.jacobs-university.de (atlas3.jacobs-university.de [212.201.44.18]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 7E026127078 for <i2rs@ietf.org>; Tue,  7 Jun 2016 08:56:45 -0700 (PDT)
Received: from localhost (demetrius5.irc-it.jacobs-university.de [10.70.0.222]) by atlas3.jacobs-university.de (Postfix) with ESMTP id 41A9C1006; Tue,  7 Jun 2016 17:56:44 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from atlas3.jacobs-university.de ([10.70.0.220]) by localhost (demetrius5.jacobs-university.de [10.70.0.222]) (amavisd-new, port 10030) with ESMTP id K2KDBr6OVrBk; Tue,  7 Jun 2016 17:56:42 +0200 (CEST)
Received: from hermes.jacobs-university.de (hermes.jacobs-university.de [212.201.44.23]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "hermes.jacobs-university.de", Issuer "Jacobs University CA - G01" (verified OK)) by atlas3.jacobs-university.de (Postfix) with ESMTPS; Tue,  7 Jun 2016 17:56:43 +0200 (CEST)
Received: from localhost (demetrius4.jacobs-university.de [212.201.44.49]) by hermes.jacobs-university.de (Postfix) with ESMTP id 8CD0F20047; Tue,  7 Jun 2016 17:56:43 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from hermes.jacobs-university.de ([212.201.44.23]) by localhost (demetrius4.jacobs-university.de [212.201.44.32]) (amavisd-new, port 10024) with ESMTP id oNyLjjkTUAW0; Tue,  7 Jun 2016 17:56:43 +0200 (CEST)
Received: from elstar.local (elstar.jacobs.jacobs-university.de [10.50.231.133]) by hermes.jacobs-university.de (Postfix) with ESMTP id 0AFA22004E; Tue,  7 Jun 2016 17:56:39 +0200 (CEST)
Received: by elstar.local (Postfix, from userid 501) id EBDBA3B0B3A0; Tue,  7 Jun 2016 17:56:38 +0200 (CEST)
Date: Tue, 7 Jun 2016 17:56:38 +0200
From: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
To: Susan Hares <shares@ndzh.com>
Message-ID: <20160607155638.GA9870@elstar.local>
Mail-Followup-To: Susan Hares <shares@ndzh.com>, 'Jeffrey Haas' <jhaas@pfrc.org>, i2rs@ietf.org, "'Joel M. Halpern'" <jmh@joelhalpern.com>
References: <20160601091953.GD24118@elstar.local> <20160602142733.GU17462@pfrc.org> <20160606174413.GA7492@elstar.local> <01a701d1c01f$918dbf00$b4a93d00$@ndzh.com> <20160606183122.GA7624@elstar.local> <021201d1c026$a26da540$e748efc0$@ndzh.com> <20160606200353.GB7820@elstar.local> <029b01d1c047$e38fd400$aaaf7c00$@ndzh.com> <20160607142205.GA9632@elstar.local> <00b301d1c0d1$6af0f850$40d2e8f0$@ndzh.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <00b301d1c0d1$6af0f850$40d2e8f0$@ndzh.com>
User-Agent: Mutt/1.6.0 (2016-04-01)
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/78Y85xt7R0m9seNi4yj4CQViWxM>
Cc: 'Jeffrey Haas' <jhaas@pfrc.org>, i2rs@ietf.org, "'Joel M. Halpern'" <jmh@joelhalpern.com>
Subject: Re: [i2rs] Ephemeral State Requirements discussion
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
Reply-To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
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: <https://mailarchive.ietf.org/arch/browse/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: Tue, 07 Jun 2016 15:56:46 -0000

On Tue, Jun 07, 2016 at 11:29:43AM -0400, Susan Hares wrote:
> 
> In your discussions, I have not heard any suggestions regarding new text for
> the ephemeral state document.  Did you have any specific suggestions?  
>

No, I think I am giving up.

/js

-- 
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>


From nobody Tue Jun  7 09:46:36 2016
Return-Path: <shares@ndzh.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 4315212D13E for <i2rs@ietfa.amsl.com>; Tue,  7 Jun 2016 09:46:35 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.749
X-Spam-Level: *
X-Spam-Status: No, score=1.749 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, HTML_MESSAGE=0.001, RDNS_NONE=0.793, T_KAM_HTML_FONT_INVALID=0.01] autolearn=no autolearn_force=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 8Fo3OhtjQo2Z for <i2rs@ietfa.amsl.com>; Tue,  7 Jun 2016 09:46:33 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id B9D1F12D1CB for <i2rs@ietf.org>; Tue,  7 Jun 2016 09:46:33 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=174.124.192.86; 
From: "Susan Hares" <shares@ndzh.com>
To: "'Juergen Schoenwaelder'" <j.schoenwaelder@jacobs-university.de>
References: <20160601091953.GD24118@elstar.local> <20160602142733.GU17462@pfrc.org> <20160606174413.GA7492@elstar.local> <01a701d1c01f$918dbf00$b4a93d00$@ndzh.com> <20160606183122.GA7624@elstar.local> <021201d1c026$a26da540$e748efc0$@ndzh.com> <20160606200353.GB7820@elstar.local> <029b01d1c047$e38fd400$aaaf7c00$@ndzh.com> <20160607142205.GA9632@elstar.local> <00b301d1c0d1$6af0f850$40d2e8f0$@ndzh.com> <20160607155638.GA9870@elstar.local>
In-Reply-To: <20160607155638.GA9870@elstar.local>
Date: Tue, 7 Jun 2016 12:46:24 -0400
Message-ID: <006b01d1c0dc$210d8f90$6328aeb0$@ndzh.com>
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="----=_NextPart_000_006C_01D1C0BA.99FEFCD0"
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQIpGxSUzHjp7QwWJ4uSdhlA/6f99AGlb1GWAf+1h4wCu7lVpQJ3IH1PAZiw6VICKbzzMQF5cBOBAThz5m0Aq5hkKQIP49ignp9CaJA=
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/MDkRun795wwBzdpI4Pc1EXEQsxs>
Cc: 'Jeffrey Haas' <jhaas@pfrc.org>, i2rs@ietf.org, "'Joel M. Halpern'" <jmh@joelhalpern.com>
Subject: Re: [i2rs] Ephemeral State Requirements discussion
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Tue, 07 Jun 2016 16:46:35 -0000

This is a multipart message in MIME format.

------=_NextPart_000_006C_01D1C0BA.99FEFCD0
Content-Type: text/plain;
	charset="us-ascii"
Content-Transfer-Encoding: 7bit

Juergen: 

 

<author hat on> 

Just to clarify your statement, you are giving up on your review regarding
the ephemeral state document, and you do not have any additional input.
Your past comments can be summarized as;  

.         Please define ephemeral state, ephemeral configuration state, and
ephemeral operational state. 

.         Please state as requirements only things which are changes to
Yang, NETCONF, or RESTCONF. 

 

I do not believe I had any other actionable suggestions for this document.
If there are more, please let me know. 

 

Thank you for your questions and active participation. 

 

Sue 

 

-----Original Message-----
From: Juergen Schoenwaelder [mailto:j.schoenwaelder@jacobs-university.de] 
Sent: Tuesday, June 07, 2016 11:57 AM
To: Susan Hares
Cc: 'Jeffrey Haas'; i2rs@ietf.org; 'Joel M. Halpern'
Subject: Re: [i2rs] Ephemeral State Requirements discussion

 

On Tue, Jun 07, 2016 at 11:29:43AM -0400, Susan Hares wrote:

> 

> In your discussions, I have not heard any suggestions regarding new 

> text for the ephemeral state document.  Did you have any specific
suggestions?

> 

 

No, I think I am giving up.

 

/js

 

-- 

Juergen Schoenwaelder           Jacobs University Bremen gGmbH

Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany

Fax:   +49 421 200 3103         < <http://www.jacobs-university.de/>
http://www.jacobs-university.de/>


------=_NextPart_000_006C_01D1C0BA.99FEFCD0
Content-Type: text/html;
	charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" =
xmlns:o=3D"urn:schemas-microsoft-com:office:office" =
xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" =
xmlns=3D"http://www.w3.org/TR/REC-html40"><head><META =
HTTP-EQUIV=3D"Content-Type" CONTENT=3D"text/html; =
charset=3Dus-ascii"><meta name=3DGenerator content=3D"Microsoft Word 14 =
(filtered medium)"><style><!--
/* Font Definitions */
@font-face
	{font-family:Wingdings;
	panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0in;
	margin-bottom:.0001pt;
	font-size:11.0pt;
	font-family:"Calibri","sans-serif";}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:blue;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:purple;
	text-decoration:underline;}
p.MsoPlainText, li.MsoPlainText, div.MsoPlainText
	{mso-style-priority:99;
	mso-style-link:"Plain Text Char";
	margin:0in;
	margin-bottom:.0001pt;
	font-size:11.0pt;
	font-family:"Calibri","sans-serif";}
span.PlainTextChar
	{mso-style-name:"Plain Text Char";
	mso-style-priority:99;
	mso-style-link:"Plain Text";
	font-family:"Calibri","sans-serif";}
.MsoChpDefault
	{mso-style-type:export-only;
	font-family:"Calibri","sans-serif";}
@page WordSection1
	{size:8.5in 11.0in;
	margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
	{page:WordSection1;}
/* List Definitions */
@list l0
	{mso-list-id:1125730937;
	mso-list-type:hybrid;
	mso-list-template-ids:-1375989510 67698689 67698691 67698693 67698689 =
67698691 67698693 67698689 67698691 67698693;}
@list l0:level1
	{mso-level-number-format:bullet;
	mso-level-text:\F0B7;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;
	font-family:Symbol;}
@list l0:level2
	{mso-level-number-format:bullet;
	mso-level-text:o;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;
	font-family:"Courier New";}
@list l0:level3
	{mso-level-number-format:bullet;
	mso-level-text:\F0A7;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;
	font-family:Wingdings;}
@list l0:level4
	{mso-level-number-format:bullet;
	mso-level-text:\F0B7;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;
	font-family:Symbol;}
@list l0:level5
	{mso-level-number-format:bullet;
	mso-level-text:o;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;
	font-family:"Courier New";}
@list l0:level6
	{mso-level-number-format:bullet;
	mso-level-text:\F0A7;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;
	font-family:Wingdings;}
@list l0:level7
	{mso-level-number-format:bullet;
	mso-level-text:\F0B7;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;
	font-family:Symbol;}
@list l0:level8
	{mso-level-number-format:bullet;
	mso-level-text:o;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;
	font-family:"Courier New";}
@list l0:level9
	{mso-level-number-format:bullet;
	mso-level-text:\F0A7;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;
	font-family:Wingdings;}
ol
	{margin-bottom:0in;}
ul
	{margin-bottom:0in;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]--></head><body lang=3DEN-US link=3Dblue =
vlink=3Dpurple><div class=3DWordSection1><p =
class=3DMsoPlainText>Juergen: <o:p></o:p></p><p =
class=3DMsoPlainText><o:p>&nbsp;</o:p></p><p =
class=3DMsoPlainText>&lt;author hat on&gt; <o:p></o:p></p><p =
class=3DMsoPlainText>Just to clarify your statement, you are giving up =
on your review regarding the ephemeral state document, and you do not =
have any additional input. &nbsp;Your past comments can be summarized =
as; &nbsp;<o:p></o:p></p><p class=3DMsoPlainText =
style=3D'margin-left:.5in;text-indent:-.25in;mso-list:l0 level1 =
lfo1'><![if !supportLists]><span style=3D'font-family:Symbol'><span =
style=3D'mso-list:Ignore'>&middot;<span style=3D'font:7.0pt "Times New =
Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
</span></span></span><![endif]>Please define ephemeral state, ephemeral =
configuration state, and ephemeral operational state. <o:p></o:p></p><p =
class=3DMsoPlainText =
style=3D'margin-left:.5in;text-indent:-.25in;mso-list:l0 level1 =
lfo1'><![if !supportLists]><span style=3D'font-family:Symbol'><span =
style=3D'mso-list:Ignore'>&middot;<span style=3D'font:7.0pt "Times New =
Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
</span></span></span><![endif]>Please state as requirements only things =
which are changes to Yang, NETCONF, or RESTCONF. <o:p></o:p></p><p =
class=3DMsoPlainText><o:p>&nbsp;</o:p></p><p class=3DMsoPlainText>I do =
not believe I had any other actionable suggestions for this =
document.&nbsp; If there are more, please let me know. <o:p></o:p></p><p =
class=3DMsoPlainText><o:p>&nbsp;</o:p></p><p class=3DMsoPlainText>Thank =
you for your questions and active participation. <o:p></o:p></p><p =
class=3DMsoPlainText><o:p>&nbsp;</o:p></p><p class=3DMsoPlainText>Sue =
<o:p></o:p></p><p class=3DMsoPlainText><o:p>&nbsp;</o:p></p><p =
class=3DMsoPlainText>-----Original Message-----<br>From: Juergen =
Schoenwaelder [mailto:j.schoenwaelder@jacobs-university.de] <br>Sent: =
Tuesday, June 07, 2016 11:57 AM<br>To: Susan Hares<br>Cc: 'Jeffrey =
Haas'; i2rs@ietf.org; 'Joel M. Halpern'<br>Subject: Re: [i2rs] Ephemeral =
State Requirements discussion</p><p =
class=3DMsoPlainText><o:p>&nbsp;</o:p></p><p class=3DMsoPlainText>On =
Tue, Jun 07, 2016 at 11:29:43AM -0400, Susan Hares =
wrote:<o:p></o:p></p><p class=3DMsoPlainText>&gt; <o:p></o:p></p><p =
class=3DMsoPlainText>&gt; In your discussions, I have not heard any =
suggestions regarding new <o:p></o:p></p><p class=3DMsoPlainText>&gt; =
text for the ephemeral state document.&nbsp; Did you have any specific =
suggestions?<o:p></o:p></p><p =
class=3DMsoPlainText>&gt;<o:p>&nbsp;</o:p></p><p =
class=3DMsoPlainText><o:p>&nbsp;</o:p></p><p class=3DMsoPlainText>No, I =
think I am giving up.<o:p></o:p></p><p =
class=3DMsoPlainText><o:p>&nbsp;</o:p></p><p =
class=3DMsoPlainText>/js<o:p></o:p></p><p =
class=3DMsoPlainText><o:p>&nbsp;</o:p></p><p class=3DMsoPlainText>-- =
<o:p></o:p></p><p class=3DMsoPlainText>Juergen =
Schoenwaelder&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=
 Jacobs University Bremen gGmbH<o:p></o:p></p><p =
class=3DMsoPlainText>Phone: +49 421 200 =
3587&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Campus Ring 1 | =
28759 Bremen | Germany<o:p></o:p></p><p =
class=3DMsoPlainText>Fax:&nbsp;&nbsp; +49 421 200 =
3103&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;<a =
href=3D"http://www.jacobs-university.de/"><span =
style=3D'color:windowtext;text-decoration:none'>http://www.jacobs-univers=
ity.de/</span></a>&gt;<o:p></o:p></p></div></body></html>
------=_NextPart_000_006C_01D1C0BA.99FEFCD0--


From nobody Wed Jun  8 09:10:57 2016
Return-Path: <shares@ndzh.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 8070512DA34; Wed,  8 Jun 2016 09:10:37 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.738
X-Spam-Level: *
X-Spam-Status: No, score=1.738 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, RDNS_NONE=0.793] autolearn=no autolearn_force=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 p0Y37d0eoMFa; Wed,  8 Jun 2016 09:10:29 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id BA59812DA1F; Wed,  8 Jun 2016 09:10:05 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=174.124.192.86; 
From: "Susan Hares" <shares@ndzh.com>
To: "'Lou Berger'" <lberger@labn.net>, <Rtg-yang-coord@ietf.org>
References: <63b1dc74-c60c-351d-8d6d-38c860a6476e@labn.net> <155301e8b20.2818.9b4188e636579690ba6c69f2c8a0f1fd@labn.net>
In-Reply-To: <155301e8b20.2818.9b4188e636579690ba6c69f2c8a0f1fd@labn.net>
Date: Wed, 8 Jun 2016 12:10:09 -0400
Message-ID: <00d301d1c1a0$3b12c8f0$b1385ad0$@ndzh.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQH5OFvhp0hvxO8+SMw1aajlqpN6IwJELg8in36m9tA=
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/MJpJnU6QtX3OnHqpDm7A4giLzcM>
Cc: 'Benoit Claise' <bclaise@cisco.com>, i2rs@ietf.org, 'Alia Atlas' <akatlas@gmail.com>
Subject: Re: [i2rs] [Rtg-yang-coord] Fwd: [netmod] Opstate solutions discussions: update and request for WG input
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 08 Jun 2016 16:10:37 -0000

Lou: 

Thank you for your work on the two options.  I'd like to comment on the
following statement in your message statement, and reference a few things in
[4] and [5] regarding ephemeral state: 

You state: 
"  2) Model OpState using a revised logical datastore definition
       as introduced in [4] and also covered in [5]. There is
       also a variant of this that we believe doesn't significantly
       impact this choice.  
       With this approach, model definitions need no explicit
       changes to support applied configuration."

In [4], the author states: 

   "o  The model foresees ephemeral datastores that are by definition not
      part of the persistent configuration of a device.  These ephemeral
      datastores are considered to interact with the rest of the system
      like any other control-plane mechanisms (e.g., routing protocols,
      discovery protocols).  [XXX Note that this is different from what
      is described in some of the I2RS documents.  XXX]"

In [5], the author states: 

"5.5.  Ephemeral Configuration Datastore (Optional)
   This document does not intend to formally define an Ephemeral
   Configuration Datastore.  In particular, it must be noted that the
   ephemeral configuration datastore described here does not match that
   described in version -09 of draft-ietf-i2rs-ephemeral-state
   [I-D.ietf-i2rs-ephemeral-state].  Instead, it describes conceptually
   how such a datastore (restricted to configuration only) might fit
   into a conceptual refined datastore model."

Therefore, the result of I2RS WG spending 2 years writing requirements for
the ephemeral data store that both option 2 documents "do not  match" the
I2RS ephemeral requirements set.  [4] lumps ephemeral with operational
state.  [5] provides an ephemeral architecture closer to I2RS ephemeral
requirements, but does not understand that draft-ietf-i2rs-ephemeral-state
is a requirements document.    Your statement " With this approach, model
definitions need no explicit changes to support applied configuration"
cannot be true if you consider the I2RS data models (RIB, topology). 

How is option (2) a reasonable design for ephemeral state?  I have spent the
last week answering questions to Juergen [4] on the I2RS ephemeral state.
After our discussion, he did not have any specific suggestions to change
these requirements
(https://www.ietf.org/mail-archive/web/i2rs/current/msg03688.html).  

Can I have an option 2b that considers ephemeral state based on the
requirements listed by I2RS? 

 Sue Hares  
 I2RS WG-chair 

-----Original Message-----
From: Rtg-yang-coord [mailto:rtg-yang-coord-bounces@ietf.org] On Behalf Of
Lou Berger
Sent: Wednesday, June 08, 2016 9:06 AM
To: Rtg-yang-coord@ietf.org
Subject: [Rtg-yang-coord] Fwd: [netmod] Opstate solutions discussions:
update and request for WG input

FYI this decision is likely to have some impact on models under development,
including in the routing area. Comments on the message itself should go to
netmod.

Lou


--- Forwarded message ---
From: Lou Berger <lberger@labn.net>
Date: June 7, 2016 10:20:23 AM
Subject: [netmod] Opstate solutions discussions: update and request for WG
input
To: netmod WG <netmod@ietf.org>
CC: netmod-chairs@ietf.org

All,

We want to provide an update based on the off line discussions related to
OpState Solutions that we have been having and solicit input from the WG.

All authors of current solution drafts [1,2,3] together with those who
helped conduct the solutions analysis* were invited to the these discussions
-- with the objective of coming up with a single consolidated proposal to
bring to the WG. (I/Lou acted as facilitator as Kent and Juergen were and
are involved with the technical details.)

The discussions have yielded some results but, unfortunately, not a single
consolidated proposal as hoped, but rather two alternate directions -- and
clearly we need to choose one:

    1) Adopt the conventions for representing state/config
       based on Section 6 of [1].

       From a model definition perspective, these conventions
       impact every model and every model writer.

    2) Model OpState using a revised logical datastore definition
       as introduced in [4] and also covered in [5]. There is
       also a variant of this that we believe doesn't significantly
       impact this choice.

       With this approach, model definitions need no explicit
       changes to support applied configuration.

>From a technology/WG standpoint, we believe an approach
that doesn't impact every model written (i.e., #2) is superior.
The counterpoint to this is that the conventions based approach (i.e., #1)
is available today and being followed in OpenConfig defined models.

We would like to hear opinions on this from the WG before declaring one of
the following as the WG direction:

    A) models that wish to support applied configuration MUST
       follow conventions based on [1] -- and the WG needs to
       formalize these conventions.
or
    B) no explicit support is required for models to support
       applied configuration -- and that the WG needs to
       formalize an opstate solution based on the approach
       discussed in [4] and [5].

We intend to close on this choice before Berlin.

Thank you,
Lou (and co-chairs)

[1] https://tools.ietf.org/html/draft-openconfig-netmod-opstate-01
[2] https://tools.ietf.org/html/draft-kwatsen-netmod-opstate-02
[3] https://tools.ietf.org/html/draft-wilton-netmod-opstate-yang-02
[4] https://tools.ietf.org/html/draft-schoenw-netmod-revised-datastores-00
[5] https://tools.ietf.org/html/draft-wilton-netmod-refined-datastores-00
* - Chris H. and Acee L.


_______________________________________________
netmod mailing list
netmod@ietf.org
https://www.ietf.org/mailman/listinfo/netmod



_______________________________________________
Rtg-yang-coord mailing list
Rtg-yang-coord@ietf.org
https://www.ietf.org/mailman/listinfo/rtg-yang-coord


From nobody Wed Jun  8 09:23:40 2016
Return-Path: <lberger@labn.net>
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 7427612D786 for <i2rs@ietfa.amsl.com>; Wed,  8 Jun 2016 09:23:38 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.002
X-Spam-Level: 
X-Spam-Status: No, score=-2.002 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_PASS=-0.001] autolearn=unavailable autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (768-bit key) header.d=labn.net
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 C_20LIcFrfA6 for <i2rs@ietfa.amsl.com>; Wed,  8 Jun 2016 09:23:37 -0700 (PDT)
Received: from gproxy2-pub.mail.unifiedlayer.com (gproxy2-pub.mail.unifiedlayer.com [69.89.18.3]) by ietfa.amsl.com (Postfix) with SMTP id 5B03F12D5BE for <i2rs@ietf.org>; Wed,  8 Jun 2016 09:23:35 -0700 (PDT)
Received: (qmail 3999 invoked by uid 0); 8 Jun 2016 16:23:35 -0000
Received: from unknown (HELO cmgw4) (10.0.90.85) by gproxy2.mail.unifiedlayer.com with SMTP; 8 Jun 2016 16:23:35 -0000
Received: from box313.bluehost.com ([69.89.31.113]) by cmgw4 with  id 4GPV1t01N2SSUrH01GPYr1; Wed, 08 Jun 2016 10:23:34 -0600
X-Authority-Analysis: v=2.1 cv=ecGuId0H c=1 sm=1 tr=0 a=h1BC+oY+fLhyFmnTBx92Jg==:117 a=N659UExz7-8A:10 a=-NfooI8aBGcA:10 a=uEJ9t1CZtbIA:10 a=pD_ry4oyNxEA:10 a=48vgC7mUAAAA:8 a=wU2YTnxGAAAA:8 a=_YrKmtLnOJmTjYVyYW4A:9 a=6XKu0j9-T9O7taiO:21 a=7DWPM4YPNewJAEty:21 a=pILNOxqGKmIA:10 a=aHrNv8WqsBEA:10 a=972hS-PGyNsA:10 a=w1C3t2QeGrPiZgrLijVG:22 a=Yz9wTY_ffGCQnEDHKrcv:22
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=labn.net; s=default; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:MIME-Version :Date:Message-ID:From:Cc:References:To:Subject; bh=Yxbqurd2owgDW4dAn0/av2uqoXMqqoezr8AEqNAFWOw=; b=CE/Ww/9JFI8GLCQ7W74dwbiDUv z4LT8R2S7ueXeATjl7QGSghfnMgw6m0vPMyxqpLh1uFcHwgdkHOb9OO69TUm6ZgJEX2r7FF7xDG5K O5yJ5+YPlIjx3g3R/i/zKbtis;
Received: from box313.bluehost.com ([69.89.31.113]:48005 helo=[127.0.0.1]) by box313.bluehost.com with esmtpa (Exim 4.86_2) (envelope-from <lberger@labn.net>) id 1bAgGP-0006Cx-Ev; Wed, 08 Jun 2016 10:23:29 -0600
To: Susan Hares <shares@ndzh.com>, Rtg-yang-coord@ietf.org
References: <63b1dc74-c60c-351d-8d6d-38c860a6476e@labn.net> <155301e8b20.2818.9b4188e636579690ba6c69f2c8a0f1fd@labn.net> <00d301d1c1a0$3b12c8f0$b1385ad0$@ndzh.com>
From: Lou Berger <lberger@labn.net>
Message-ID: <9fbe631a-6a93-44fc-da02-7b2dd9827ddb@labn.net>
Date: Wed, 8 Jun 2016 12:23:23 -0400
User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.1.1
MIME-Version: 1.0
In-Reply-To: <00d301d1c1a0$3b12c8f0$b1385ad0$@ndzh.com>
Content-Type: text/plain; charset=windows-1252
Content-Transfer-Encoding: 7bit
X-Identified-User: {1038:box313.bluehost.com:labnmobi:labn.net} {sentby:smtp auth 69.89.31.113 authed with lberger@labn.net}
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/sNretLQRjlwh2V4prRwT3SlzZr4>
Cc: 'Benoit Claise' <bclaise@cisco.com>, i2rs@ietf.org, 'Alia Atlas' <akatlas@gmail.com>
Subject: Re: [i2rs] [Rtg-yang-coord] Fwd: [netmod] Opstate solutions discussions: update and request for WG input
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 08 Jun 2016 16:23:38 -0000

Sue,

I think you're looking a step beyond the scope of decision we're
considering now. This is a fine thing, and certainly the right thing to
be thinking about from the I2RS (or any other WG working on YANG models
that is considering operational state for that matter) perspective.

The decision at hand is to choose between directions A and B.  I think
you are saying you that you like direction B but that the details aren't
sufficient for your (WG's) needs.  Is this correct?

If so, then I think you're point is that [4] and [5] need work.  We
agree with this statement and we believe consistent with the statement in B:

    -- and that the WG needs to
       formalize an opstate solution based on the approach
       discussed in [4] and [5].

So, once the WG closes on direction B (before Berlin), the WG can then
start discussing details of the WG's version of [4] and [5] -- and
issues on ephemeral support makes sense to discuss then if they still
haven't been addressed.   Of course discussion on the individual drafts
don't need to wait for the decision on basic direction.

Make sense?

Lou

On 6/8/2016 12:10 PM, Susan Hares wrote:
> Lou: 
>
> Thank you for your work on the two options.  I'd like to comment on the
> following statement in your message statement, and reference a few things in
> [4] and [5] regarding ephemeral state: 
>
> You state: 
> "  2) Model OpState using a revised logical datastore definition
>        as introduced in [4] and also covered in [5]. There is
>        also a variant of this that we believe doesn't significantly
>        impact this choice.  
>        With this approach, model definitions need no explicit
>        changes to support applied configuration."
>
> In [4], the author states: 
>
>    "o  The model foresees ephemeral datastores that are by definition not
>       part of the persistent configuration of a device.  These ephemeral
>       datastores are considered to interact with the rest of the system
>       like any other control-plane mechanisms (e.g., routing protocols,
>       discovery protocols).  [XXX Note that this is different from what
>       is described in some of the I2RS documents.  XXX]"
>
> In [5], the author states: 
>
> "5.5.  Ephemeral Configuration Datastore (Optional)
>    This document does not intend to formally define an Ephemeral
>    Configuration Datastore.  In particular, it must be noted that the
>    ephemeral configuration datastore described here does not match that
>    described in version -09 of draft-ietf-i2rs-ephemeral-state
>    [I-D.ietf-i2rs-ephemeral-state].  Instead, it describes conceptually
>    how such a datastore (restricted to configuration only) might fit
>    into a conceptual refined datastore model."
>
> Therefore, the result of I2RS WG spending 2 years writing requirements for
> the ephemeral data store that both option 2 documents "do not  match" the
> I2RS ephemeral requirements set.  [4] lumps ephemeral with operational
> state.  [5] provides an ephemeral architecture closer to I2RS ephemeral
> requirements, but does not understand that draft-ietf-i2rs-ephemeral-state
> is a requirements document.    Your statement " With this approach, model
> definitions need no explicit changes to support applied configuration"
> cannot be true if you consider the I2RS data models (RIB, topology). 
>
> How is option (2) a reasonable design for ephemeral state?  I have spent the
> last week answering questions to Juergen [4] on the I2RS ephemeral state.
> After our discussion, he did not have any specific suggestions to change
> these requirements
> (https://www.ietf.org/mail-archive/web/i2rs/current/msg03688.html).  
>
> Can I have an option 2b that considers ephemeral state based on the
> requirements listed by I2RS? 
>
>  Sue Hares  
>  I2RS WG-chair 
>
> -----Original Message-----
> From: Rtg-yang-coord [mailto:rtg-yang-coord-bounces@ietf.org] On Behalf Of
> Lou Berger
> Sent: Wednesday, June 08, 2016 9:06 AM
> To: Rtg-yang-coord@ietf.org
> Subject: [Rtg-yang-coord] Fwd: [netmod] Opstate solutions discussions:
> update and request for WG input
>
> FYI this decision is likely to have some impact on models under development,
> including in the routing area. Comments on the message itself should go to
> netmod.
>
> Lou
>
>
> --- Forwarded message ---
> From: Lou Berger <lberger@labn.net>
> Date: June 7, 2016 10:20:23 AM
> Subject: [netmod] Opstate solutions discussions: update and request for WG
> input
> To: netmod WG <netmod@ietf.org>
> CC: netmod-chairs@ietf.org
>
> All,
>
> We want to provide an update based on the off line discussions related to
> OpState Solutions that we have been having and solicit input from the WG.
>
> All authors of current solution drafts [1,2,3] together with those who
> helped conduct the solutions analysis* were invited to the these discussions
> -- with the objective of coming up with a single consolidated proposal to
> bring to the WG. (I/Lou acted as facilitator as Kent and Juergen were and
> are involved with the technical details.)
>
> The discussions have yielded some results but, unfortunately, not a single
> consolidated proposal as hoped, but rather two alternate directions -- and
> clearly we need to choose one:
>
>     1) Adopt the conventions for representing state/config
>        based on Section 6 of [1].
>
>        From a model definition perspective, these conventions
>        impact every model and every model writer.
>
>     2) Model OpState using a revised logical datastore definition
>        as introduced in [4] and also covered in [5]. There is
>        also a variant of this that we believe doesn't significantly
>        impact this choice.
>
>        With this approach, model definitions need no explicit
>        changes to support applied configuration.
>
> >From a technology/WG standpoint, we believe an approach
> that doesn't impact every model written (i.e., #2) is superior.
> The counterpoint to this is that the conventions based approach (i.e., #1)
> is available today and being followed in OpenConfig defined models.
>
> We would like to hear opinions on this from the WG before declaring one of
> the following as the WG direction:
>
>     A) models that wish to support applied configuration MUST
>        follow conventions based on [1] -- and the WG needs to
>        formalize these conventions.
> or
>     B) no explicit support is required for models to support
>        applied configuration -- and that the WG needs to
>        formalize an opstate solution based on the approach
>        discussed in [4] and [5].
>
> We intend to close on this choice before Berlin.
>
> Thank you,
> Lou (and co-chairs)
>
> [1] https://tools.ietf.org/html/draft-openconfig-netmod-opstate-01
> [2] https://tools.ietf.org/html/draft-kwatsen-netmod-opstate-02
> [3] https://tools.ietf.org/html/draft-wilton-netmod-opstate-yang-02
> [4] https://tools.ietf.org/html/draft-schoenw-netmod-revised-datastores-00
> [5] https://tools.ietf.org/html/draft-wilton-netmod-refined-datastores-00
> * - Chris H. and Acee L.
>
>
> _______________________________________________
> netmod mailing list
> netmod@ietf.org
> https://www.ietf.org/mailman/listinfo/netmod
>
>
>
> _______________________________________________
> Rtg-yang-coord mailing list
> Rtg-yang-coord@ietf.org
> https://www.ietf.org/mailman/listinfo/rtg-yang-coord
>
>



From nobody Wed Jun  8 09:52:33 2016
Return-Path: <shares@ndzh.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 5B2E512D5F9; Wed,  8 Jun 2016 09:52:31 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.738
X-Spam-Level: *
X-Spam-Status: No, score=1.738 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, RDNS_NONE=0.793] autolearn=no autolearn_force=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 HKsFtqjDsYeh; Wed,  8 Jun 2016 09:52:29 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 9C40112D576; Wed,  8 Jun 2016 09:52:29 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=174.124.192.86; 
From: "Susan Hares" <shares@ndzh.com>
To: "'Lou Berger'" <lberger@labn.net>, <Rtg-yang-coord@ietf.org>
References: <63b1dc74-c60c-351d-8d6d-38c860a6476e@labn.net> <155301e8b20.2818.9b4188e636579690ba6c69f2c8a0f1fd@labn.net> <00d301d1c1a0$3b12c8f0$b1385ad0$@ndzh.com> <9fbe631a-6a93-44fc-da02-7b2dd9827ddb@labn.net>
In-Reply-To: <9fbe631a-6a93-44fc-da02-7b2dd9827ddb@labn.net>
Date: Wed, 8 Jun 2016 12:52:33 -0400
Message-ID: <00fc01d1c1a6$274832f0$75d898d0$@ndzh.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQH5OFvhp0hvxO8+SMw1aajlqpN6IwJELg8iAeYo0GEDLoLykJ9WDx1Q
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/hOFIJBaoVxHTYgLhXcYAaUYXkUs>
Cc: 'Benoit Claise' <bclaise@cisco.com>, i2rs@ietf.org, 'Alia Atlas' <akatlas@gmail.com>
Subject: Re: [i2rs] [Rtg-yang-coord] Fwd: [netmod] Opstate solutions discussions: update and request for WG input
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 08 Jun 2016 16:52:31 -0000

Lou: 

My email message was to express my concerns as I2RS co-chair.  
<WG co-chair hat on> 
  [A] does not even consider ephemeral.  [B] at least considers it, but does
not match I2RS requirements.  As I2RS WG Chair, both [A] and [B] have
problems.  
<WG co-chair hat off> 

<individual contributor hat on> 
 Either [A] or [B] work as long as ephemeral state gets handed.  On B, at
least [4] and [5] at least give some ideas on handling ephemeral state. I
will work with authors [1][2][3][4][5] to suggest ephemeral improvements.
Will getting support [A] or [B] to work as individual contributor. 
<individual contributor hat off> 
Sue Hares 

========= 

 .   [A] does not even consider ephemeral.  [B] at least considers it, but
does not match it.  As I2RS WG Chair, [A] and [B] both has problems.  
<WG chair hat off> 
<individual contributor> 
[A] - will not cause me to re-write data models.  All data models (BGP,
I2RS) have split between operational data and configuration data. 
[B] As individual contributor, I appreciate that [4] and [5] at trying to
work through the details of ephemeral.  [5] has a really good diagram in
section 4 that would work for I2RS Ephemeral Configuration State.  [5] uses
the term "ephemeral configuration datastore" and correctly understands what
a get of the ephemeral datastore should result in.  It also allows multiple
layers.  However, [5] has not considered the multi-headed issues in the I2RS
ephemeral requirements.  
</individual contributor off> 
-----Original Message-----
From: Rtg-yang-coord [mailto:rtg-yang-coord-bounces@ietf.org] On Behalf Of
Lou Berger
Sent: Wednesday, June 08, 2016 12:23 PM
To: Susan Hares; Rtg-yang-coord@ietf.org
Cc: 'Benoit Claise'; i2rs@ietf.org; 'Alia Atlas'
Subject: Re: [Rtg-yang-coord] Fwd: [netmod] Opstate solutions discussions:
update and request for WG input

Sue,

I think you're looking a step beyond the scope of decision we're considering
now. This is a fine thing, and certainly the right thing to be thinking
about from the I2RS (or any other WG working on YANG models that is
considering operational state for that matter) perspective.

The decision at hand is to choose between directions A and B.  I think you
are saying you that you like direction B but that the details aren't
sufficient for your (WG's) needs.  Is this correct?

If so, then I think you're point is that [4] and [5] need work.  We agree
with this statement and we believe consistent with the statement in B:

    -- and that the WG needs to
       formalize an opstate solution based on the approach
       discussed in [4] and [5].

So, once the WG closes on direction B (before Berlin), the WG can then start
discussing details of the WG's version of [4] and [5] -- and issues on
ephemeral support makes sense to discuss then if they still
haven't been addressed.   Of course discussion on the individual drafts
don't need to wait for the decision on basic direction.

Make sense?

Lou

On 6/8/2016 12:10 PM, Susan Hares wrote:
> Lou: 
>
> Thank you for your work on the two options.  I'd like to comment on 
> the following statement in your message statement, and reference a few 
> things in [4] and [5] regarding ephemeral state:
>
> You state: 
> "  2) Model OpState using a revised logical datastore definition
>        as introduced in [4] and also covered in [5]. There is
>        also a variant of this that we believe doesn't significantly
>        impact this choice.  
>        With this approach, model definitions need no explicit
>        changes to support applied configuration."
>
> In [4], the author states: 
>
>    "o  The model foresees ephemeral datastores that are by definition not
>       part of the persistent configuration of a device.  These ephemeral
>       datastores are considered to interact with the rest of the system
>       like any other control-plane mechanisms (e.g., routing protocols,
>       discovery protocols).  [XXX Note that this is different from what
>       is described in some of the I2RS documents.  XXX]"
>
> In [5], the author states: 
>
> "5.5.  Ephemeral Configuration Datastore (Optional)
>    This document does not intend to formally define an Ephemeral
>    Configuration Datastore.  In particular, it must be noted that the
>    ephemeral configuration datastore described here does not match that
>    described in version -09 of draft-ietf-i2rs-ephemeral-state
>    [I-D.ietf-i2rs-ephemeral-state].  Instead, it describes conceptually
>    how such a datastore (restricted to configuration only) might fit
>    into a conceptual refined datastore model."
>
> Therefore, the result of I2RS WG spending 2 years writing requirements 
> for the ephemeral data store that both option 2 documents "do not  
> match" the I2RS ephemeral requirements set.  [4] lumps ephemeral with 
> operational state.  [5] provides an ephemeral architecture closer to 
> I2RS ephemeral requirements, but does not understand that
draft-ietf-i2rs-ephemeral-state
> is a requirements document.    Your statement " With this approach, model
> definitions need no explicit changes to support applied configuration"
> cannot be true if you consider the I2RS data models (RIB, topology). 
>
> How is option (2) a reasonable design for ephemeral state?  I have 
> spent the last week answering questions to Juergen [4] on the I2RS
ephemeral state.
> After our discussion, he did not have any specific suggestions to 
> change these requirements 
> (https://www.ietf.org/mail-archive/web/i2rs/current/msg03688.html).
>
> Can I have an option 2b that considers ephemeral state based on the 
> requirements listed by I2RS?
>
>  Sue Hares
>  I2RS WG-chair
>
> -----Original Message-----
> From: Rtg-yang-coord [mailto:rtg-yang-coord-bounces@ietf.org] On 
> Behalf Of Lou Berger
> Sent: Wednesday, June 08, 2016 9:06 AM
> To: Rtg-yang-coord@ietf.org
> Subject: [Rtg-yang-coord] Fwd: [netmod] Opstate solutions discussions:
> update and request for WG input
>
> FYI this decision is likely to have some impact on models under 
> development, including in the routing area. Comments on the message 
> itself should go to netmod.
>
> Lou
>
>
> --- Forwarded message ---
> From: Lou Berger <lberger@labn.net>
> Date: June 7, 2016 10:20:23 AM
> Subject: [netmod] Opstate solutions discussions: update and request 
> for WG input
> To: netmod WG <netmod@ietf.org>
> CC: netmod-chairs@ietf.org
>
> All,
>
> We want to provide an update based on the off line discussions related 
> to OpState Solutions that we have been having and solicit input from the
WG.
>
> All authors of current solution drafts [1,2,3] together with those who 
> helped conduct the solutions analysis* were invited to the these 
> discussions
> -- with the objective of coming up with a single consolidated proposal 
> to bring to the WG. (I/Lou acted as facilitator as Kent and Juergen 
> were and are involved with the technical details.)
>
> The discussions have yielded some results but, unfortunately, not a 
> single consolidated proposal as hoped, but rather two alternate 
> directions -- and clearly we need to choose one:
>
>     1) Adopt the conventions for representing state/config
>        based on Section 6 of [1].
>
>        From a model definition perspective, these conventions
>        impact every model and every model writer.
>
>     2) Model OpState using a revised logical datastore definition
>        as introduced in [4] and also covered in [5]. There is
>        also a variant of this that we believe doesn't significantly
>        impact this choice.
>
>        With this approach, model definitions need no explicit
>        changes to support applied configuration.
>
> >From a technology/WG standpoint, we believe an approach
> that doesn't impact every model written (i.e., #2) is superior.
> The counterpoint to this is that the conventions based approach (i.e., 
> #1) is available today and being followed in OpenConfig defined models.
>
> We would like to hear opinions on this from the WG before declaring 
> one of the following as the WG direction:
>
>     A) models that wish to support applied configuration MUST
>        follow conventions based on [1] -- and the WG needs to
>        formalize these conventions.
> or
>     B) no explicit support is required for models to support
>        applied configuration -- and that the WG needs to
>        formalize an opstate solution based on the approach
>        discussed in [4] and [5].
>
> We intend to close on this choice before Berlin.
>
> Thank you,
> Lou (and co-chairs)
>
> [1] https://tools.ietf.org/html/draft-openconfig-netmod-opstate-01
> [2] https://tools.ietf.org/html/draft-kwatsen-netmod-opstate-02
> [3] https://tools.ietf.org/html/draft-wilton-netmod-opstate-yang-02
> [4] 
> https://tools.ietf.org/html/draft-schoenw-netmod-revised-datastores-00
> [5] 
> https://tools.ietf.org/html/draft-wilton-netmod-refined-datastores-00
> * - Chris H. and Acee L.
>
>
> _______________________________________________
> netmod mailing list
> netmod@ietf.org
> https://www.ietf.org/mailman/listinfo/netmod
>
>
>
> _______________________________________________
> Rtg-yang-coord mailing list
> Rtg-yang-coord@ietf.org
> https://www.ietf.org/mailman/listinfo/rtg-yang-coord
>
>


_______________________________________________
Rtg-yang-coord mailing list
Rtg-yang-coord@ietf.org
https://www.ietf.org/mailman/listinfo/rtg-yang-coord


From nobody Wed Jun  8 10:39:14 2016
Return-Path: <andy@yumaworks.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 019AA12D7BA for <i2rs@ietfa.amsl.com>; Wed,  8 Jun 2016 10:39:13 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.6
X-Spam-Level: 
X-Spam-Status: No, score=-2.6 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=yumaworks-com.20150623.gappssmtp.com
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 RzJ9RbvKQ8Og for <i2rs@ietfa.amsl.com>; Wed,  8 Jun 2016 10:39:10 -0700 (PDT)
Received: from mail-yw0-x22c.google.com (mail-yw0-x22c.google.com [IPv6:2607:f8b0:4002:c05::22c]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 3F8B512D7B6 for <i2rs@ietf.org>; Wed,  8 Jun 2016 10:39:10 -0700 (PDT)
Received: by mail-yw0-x22c.google.com with SMTP id o16so14402032ywd.2 for <i2rs@ietf.org>; Wed, 08 Jun 2016 10:39:10 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yumaworks-com.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc; bh=Q8W4/XuhBcsClMt1mqneZ8VUsrTLTbAG1TVaeBAWJI4=; b=h1q7h3WhmnOOkCcgtzWHYR5NxB6D91NUupY/JnWIW/VtAdyTG2JQYsxeMclljIRtaY 6KfzLq51TWCpJFhuc86cCXONyn1dWfT7r69e4R5bWEs/gRnO+usi2T/bkjxT7OdP2THI NJtWFRJh9kcNgOD9dR765PunnC4rQQquiFm9fJJ71WXR7CUNFTQusXx2qiX1GqurluFg dw3Gdsl9TmblQPchgerRY9UrbZfndmKolKQwdpHU20FpOsHK1boqUUT7stvByLy2jWvk mgUu9OhNeLhbhqWzj+LUnjnUAvdxZ0ASlTjVZK45SD3ZkAKJEdO9V+gbQo4aSp6Trpij iFCA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc; bh=Q8W4/XuhBcsClMt1mqneZ8VUsrTLTbAG1TVaeBAWJI4=; b=BLy5sHpmfRODH6B3MP6Ka8KZ7iFic7KndUcN3BlM0LsB/6f2X+TvUzmI+G6TwFhEIK 9YckTLh2uj/YJCcl5AKWyScTsciDw6MQhYbbZmmLDmGamt6kmK/k7DpqvGNmTEp0wzA/ GEN3//85zc/4tg0LEMZNeDC28Dr+WgDNX8gxc5MrSOpus6/Uyivv94fmP2d1E8uBGffX eQSkiv71HKTUT5I24ul255FdiFSCHeVMlfUcDrkpB+Bzyiu8FzSgSgkqgsusTIFy9N3o jWDn40LQE8aHVb59h1U/loYcs972CGEvEcWGjBUyAVrKDoOKZ9iOMd//Xcj1wI8VRHT/ sYww==
X-Gm-Message-State: ALyK8tIklwJeMupz5/7OlyyvGcFJJbn7OZjrTCtEjbEZ8Wak9rime20MWmmQwo7yVi5WHEYuSUjQJ6XZHqrbzw==
MIME-Version: 1.0
X-Received: by 10.37.10.4 with SMTP id 4mr3405837ybk.160.1465407549316; Wed, 08 Jun 2016 10:39:09 -0700 (PDT)
Received: by 10.37.42.77 with HTTP; Wed, 8 Jun 2016 10:39:09 -0700 (PDT)
In-Reply-To: <9fbe631a-6a93-44fc-da02-7b2dd9827ddb@labn.net>
References: <63b1dc74-c60c-351d-8d6d-38c860a6476e@labn.net> <155301e8b20.2818.9b4188e636579690ba6c69f2c8a0f1fd@labn.net> <00d301d1c1a0$3b12c8f0$b1385ad0$@ndzh.com> <9fbe631a-6a93-44fc-da02-7b2dd9827ddb@labn.net>
Date: Wed, 8 Jun 2016 10:39:09 -0700
Message-ID: <CABCOCHTY6pcW-RzXJsk6Ft2OFwCL2GwixAi_dH923noYKmXo0A@mail.gmail.com>
From: Andy Bierman <andy@yumaworks.com>
To: Lou Berger <lberger@labn.net>
Content-Type: multipart/alternative; boundary=001a113dde166dd84a0534c7c88d
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/X8s7fKyk4YWu5M_UN2NBF9gsAGQ>
Cc: "rtg-yang-coord@ietf.org" <Rtg-yang-coord@ietf.org>, Benoit Claise <bclaise@cisco.com>, Alia Atlas <akatlas@gmail.com>, Susan Hares <shares@ndzh.com>, "i2rs@ietf.org" <i2rs@ietf.org>
Subject: Re: [i2rs] [Rtg-yang-coord] Fwd: [netmod] Opstate solutions discussions: update and request for WG input
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 08 Jun 2016 17:39:13 -0000

--001a113dde166dd84a0534c7c88d
Content-Type: text/plain; charset=UTF-8

Hi Lou,

I would say 2 steps ahead.
Step 1 seems to be to reconfirm the meeting room consensus from Yokohama
(model-based vs. protocol-based)

Step 2 is usually picking a starting point for a solution draft.

Step 3 is when people can start detailed solution reviews.

IMO [4] is a good starting point but there are many open issues that need
to be resolved,
possibly addressed in the other drafts.


Andy


On Wed, Jun 8, 2016 at 9:23 AM, Lou Berger <lberger@labn.net> wrote:

> Sue,
>
> I think you're looking a step beyond the scope of decision we're
> considering now. This is a fine thing, and certainly the right thing to
> be thinking about from the I2RS (or any other WG working on YANG models
> that is considering operational state for that matter) perspective.
>
> The decision at hand is to choose between directions A and B.  I think
> you are saying you that you like direction B but that the details aren't
> sufficient for your (WG's) needs.  Is this correct?
>
> If so, then I think you're point is that [4] and [5] need work.  We
> agree with this statement and we believe consistent with the statement in
> B:
>
>     -- and that the WG needs to
>        formalize an opstate solution based on the approach
>        discussed in [4] and [5].
>
> So, once the WG closes on direction B (before Berlin), the WG can then
> start discussing details of the WG's version of [4] and [5] -- and
> issues on ephemeral support makes sense to discuss then if they still
> haven't been addressed.   Of course discussion on the individual drafts
> don't need to wait for the decision on basic direction.
>
> Make sense?
>
> Lou
>
> On 6/8/2016 12:10 PM, Susan Hares wrote:
> > Lou:
> >
> > Thank you for your work on the two options.  I'd like to comment on the
> > following statement in your message statement, and reference a few
> things in
> > [4] and [5] regarding ephemeral state:
> >
> > You state:
> > "  2) Model OpState using a revised logical datastore definition
> >        as introduced in [4] and also covered in [5]. There is
> >        also a variant of this that we believe doesn't significantly
> >        impact this choice.
> >        With this approach, model definitions need no explicit
> >        changes to support applied configuration."
> >
> > In [4], the author states:
> >
> >    "o  The model foresees ephemeral datastores that are by definition not
> >       part of the persistent configuration of a device.  These ephemeral
> >       datastores are considered to interact with the rest of the system
> >       like any other control-plane mechanisms (e.g., routing protocols,
> >       discovery protocols).  [XXX Note that this is different from what
> >       is described in some of the I2RS documents.  XXX]"
> >
> > In [5], the author states:
> >
> > "5.5.  Ephemeral Configuration Datastore (Optional)
> >    This document does not intend to formally define an Ephemeral
> >    Configuration Datastore.  In particular, it must be noted that the
> >    ephemeral configuration datastore described here does not match that
> >    described in version -09 of draft-ietf-i2rs-ephemeral-state
> >    [I-D.ietf-i2rs-ephemeral-state].  Instead, it describes conceptually
> >    how such a datastore (restricted to configuration only) might fit
> >    into a conceptual refined datastore model."
> >
> > Therefore, the result of I2RS WG spending 2 years writing requirements
> for
> > the ephemeral data store that both option 2 documents "do not  match" the
> > I2RS ephemeral requirements set.  [4] lumps ephemeral with operational
> > state.  [5] provides an ephemeral architecture closer to I2RS ephemeral
> > requirements, but does not understand that
> draft-ietf-i2rs-ephemeral-state
> > is a requirements document.    Your statement " With this approach, model
> > definitions need no explicit changes to support applied configuration"
> > cannot be true if you consider the I2RS data models (RIB, topology).
> >
> > How is option (2) a reasonable design for ephemeral state?  I have spent
> the
> > last week answering questions to Juergen [4] on the I2RS ephemeral state.
> > After our discussion, he did not have any specific suggestions to change
> > these requirements
> > (https://www.ietf.org/mail-archive/web/i2rs/current/msg03688.html).
> >
> > Can I have an option 2b that considers ephemeral state based on the
> > requirements listed by I2RS?
> >
> >  Sue Hares
> >  I2RS WG-chair
> >
> > -----Original Message-----
> > From: Rtg-yang-coord [mailto:rtg-yang-coord-bounces@ietf.org] On Behalf
> Of
> > Lou Berger
> > Sent: Wednesday, June 08, 2016 9:06 AM
> > To: Rtg-yang-coord@ietf.org
> > Subject: [Rtg-yang-coord] Fwd: [netmod] Opstate solutions discussions:
> > update and request for WG input
> >
> > FYI this decision is likely to have some impact on models under
> development,
> > including in the routing area. Comments on the message itself should go
> to
> > netmod.
> >
> > Lou
> >
> >
> > --- Forwarded message ---
> > From: Lou Berger <lberger@labn.net>
> > Date: June 7, 2016 10:20:23 AM
> > Subject: [netmod] Opstate solutions discussions: update and request for
> WG
> > input
> > To: netmod WG <netmod@ietf.org>
> > CC: netmod-chairs@ietf.org
> >
> > All,
> >
> > We want to provide an update based on the off line discussions related to
> > OpState Solutions that we have been having and solicit input from the WG.
> >
> > All authors of current solution drafts [1,2,3] together with those who
> > helped conduct the solutions analysis* were invited to the these
> discussions
> > -- with the objective of coming up with a single consolidated proposal to
> > bring to the WG. (I/Lou acted as facilitator as Kent and Juergen were and
> > are involved with the technical details.)
> >
> > The discussions have yielded some results but, unfortunately, not a
> single
> > consolidated proposal as hoped, but rather two alternate directions --
> and
> > clearly we need to choose one:
> >
> >     1) Adopt the conventions for representing state/config
> >        based on Section 6 of [1].
> >
> >        From a model definition perspective, these conventions
> >        impact every model and every model writer.
> >
> >     2) Model OpState using a revised logical datastore definition
> >        as introduced in [4] and also covered in [5]. There is
> >        also a variant of this that we believe doesn't significantly
> >        impact this choice.
> >
> >        With this approach, model definitions need no explicit
> >        changes to support applied configuration.
> >
> > >From a technology/WG standpoint, we believe an approach
> > that doesn't impact every model written (i.e., #2) is superior.
> > The counterpoint to this is that the conventions based approach (i.e.,
> #1)
> > is available today and being followed in OpenConfig defined models.
> >
> > We would like to hear opinions on this from the WG before declaring one
> of
> > the following as the WG direction:
> >
> >     A) models that wish to support applied configuration MUST
> >        follow conventions based on [1] -- and the WG needs to
> >        formalize these conventions.
> > or
> >     B) no explicit support is required for models to support
> >        applied configuration -- and that the WG needs to
> >        formalize an opstate solution based on the approach
> >        discussed in [4] and [5].
> >
> > We intend to close on this choice before Berlin.
> >
> > Thank you,
> > Lou (and co-chairs)
> >
> > [1] https://tools.ietf.org/html/draft-openconfig-netmod-opstate-01
> > [2] https://tools.ietf.org/html/draft-kwatsen-netmod-opstate-02
> > [3] https://tools.ietf.org/html/draft-wilton-netmod-opstate-yang-02
> > [4]
> https://tools.ietf.org/html/draft-schoenw-netmod-revised-datastores-00
> > [5]
> https://tools.ietf.org/html/draft-wilton-netmod-refined-datastores-00
> > * - Chris H. and Acee L.
> >
> >
> > _______________________________________________
> > netmod mailing list
> > netmod@ietf.org
> > https://www.ietf.org/mailman/listinfo/netmod
> >
> >
> >
> > _______________________________________________
> > Rtg-yang-coord mailing list
> > Rtg-yang-coord@ietf.org
> > https://www.ietf.org/mailman/listinfo/rtg-yang-coord
> >
> >
>
>
> _______________________________________________
> Rtg-yang-coord mailing list
> Rtg-yang-coord@ietf.org
> https://www.ietf.org/mailman/listinfo/rtg-yang-coord
>

--001a113dde166dd84a0534c7c88d
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">Hi Lou,<div><br></div><div>I would say 2 steps ahead.</div=
><div>Step 1 seems to be to reconfirm the meeting room consensus from=C2=A0=
Yokohama</div><div>(model-based vs. protocol-based)</div><div><br></div><di=
v>Step 2 is usually picking a starting point for a solution draft.</div><di=
v><br></div><div>Step 3 is when people can start detailed solution reviews.=
</div><div><br></div><div>IMO [4] is a good starting point but there are ma=
ny open issues that need to be resolved,</div><div>possibly addressed in th=
e other drafts.</div><div><br></div><div><br></div><div>Andy</div><div><br>=
</div><div class=3D"gmail_extra"><br><div class=3D"gmail_quote">On Wed, Jun=
 8, 2016 at 9:23 AM, Lou Berger <span dir=3D"ltr">&lt;<a href=3D"mailto:lbe=
rger@labn.net" target=3D"_blank">lberger@labn.net</a>&gt;</span> wrote:<br>=
<blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p=
x #ccc solid;padding-left:1ex">Sue,<br>
<br>
I think you&#39;re looking a step beyond the scope of decision we&#39;re<br=
>
considering now. This is a fine thing, and certainly the right thing to<br>
be thinking about from the I2RS (or any other WG working on YANG models<br>
that is considering operational state for that matter) perspective.<br>
<br>
The decision at hand is to choose between directions A and B.=C2=A0 I think=
<br>
you are saying you that you like direction B but that the details aren&#39;=
t<br>
sufficient for your (WG&#39;s) needs.=C2=A0 Is this correct?<br>
<br>
If so, then I think you&#39;re point is that [4] and [5] need work.=C2=A0 W=
e<br>
agree with this statement and we believe consistent with the statement in B=
:<br>
<br>
=C2=A0 =C2=A0 -- and that the WG needs to<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0formalize an opstate solution based on the appro=
ach<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0discussed in [4] and [5].<br>
<br>
So, once the WG closes on direction B (before Berlin), the WG can then<br>
start discussing details of the WG&#39;s version of [4] and [5] -- and<br>
issues on ephemeral support makes sense to discuss then if they still<br>
haven&#39;t been addressed.=C2=A0 =C2=A0Of course discussion on the individ=
ual drafts<br>
don&#39;t need to wait for the decision on basic direction.<br>
<br>
Make sense?<br>
<br>
Lou<br>
<br>
On 6/8/2016 12:10 PM, Susan Hares wrote:<br>
&gt; Lou:<br>
&gt;<br>
&gt; Thank you for your work on the two options.=C2=A0 I&#39;d like to comm=
ent on the<br>
&gt; following statement in your message statement, and reference a few thi=
ngs in<br>
&gt; [4] and [5] regarding ephemeral state:<br>
&gt;<br>
&gt; You state:<br>
&gt; &quot;=C2=A0 2) Model OpState using a revised logical datastore defini=
tion<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 as introduced in [4] and also covered in [5=
]. There is<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 also a variant of this that we believe does=
n&#39;t significantly<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 impact this choice.<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 With this approach, model definitions need =
no explicit<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 changes to support applied configuration.&q=
uot;<br>
&gt;<br>
&gt; In [4], the author states:<br>
&gt;<br>
&gt;=C2=A0 =C2=A0 &quot;o=C2=A0 The model foresees ephemeral datastores tha=
t are by definition not<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0part of the persistent configuration of a de=
vice.=C2=A0 These ephemeral<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0datastores are considered to interact with t=
he rest of the system<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0like any other control-plane mechanisms (e.g=
., routing protocols,<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0discovery protocols).=C2=A0 [XXX Note that t=
his is different from what<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0is described in some of the I2RS documents.=
=C2=A0 XXX]&quot;<br>
&gt;<br>
&gt; In [5], the author states:<br>
&gt;<br>
&gt; &quot;5.5.=C2=A0 Ephemeral Configuration Datastore (Optional)<br>
&gt;=C2=A0 =C2=A0 This document does not intend to formally define an Ephem=
eral<br>
&gt;=C2=A0 =C2=A0 Configuration Datastore.=C2=A0 In particular, it must be =
noted that the<br>
&gt;=C2=A0 =C2=A0 ephemeral configuration datastore described here does not=
 match that<br>
&gt;=C2=A0 =C2=A0 described in version -09 of draft-ietf-i2rs-ephemeral-sta=
te<br>
&gt;=C2=A0 =C2=A0 [I-D.ietf-i2rs-ephemeral-state].=C2=A0 Instead, it descri=
bes conceptually<br>
&gt;=C2=A0 =C2=A0 how such a datastore (restricted to configuration only) m=
ight fit<br>
&gt;=C2=A0 =C2=A0 into a conceptual refined datastore model.&quot;<br>
&gt;<br>
&gt; Therefore, the result of I2RS WG spending 2 years writing requirements=
 for<br>
&gt; the ephemeral data store that both option 2 documents &quot;do not=C2=
=A0 match&quot; the<br>
&gt; I2RS ephemeral requirements set.=C2=A0 [4] lumps ephemeral with operat=
ional<br>
&gt; state.=C2=A0 [5] provides an ephemeral architecture closer to I2RS eph=
emeral<br>
&gt; requirements, but does not understand that draft-ietf-i2rs-ephemeral-s=
tate<br>
&gt; is a requirements document.=C2=A0 =C2=A0 Your statement &quot; With th=
is approach, model<br>
&gt; definitions need no explicit changes to support applied configuration&=
quot;<br>
&gt; cannot be true if you consider the I2RS data models (RIB, topology).<b=
r>
&gt;<br>
&gt; How is option (2) a reasonable design for ephemeral state?=C2=A0 I hav=
e spent the<br>
&gt; last week answering questions to Juergen [4] on the I2RS ephemeral sta=
te.<br>
&gt; After our discussion, he did not have any specific suggestions to chan=
ge<br>
&gt; these requirements<br>
&gt; (<a href=3D"https://www.ietf.org/mail-archive/web/i2rs/current/msg0368=
8.html" rel=3D"noreferrer" target=3D"_blank">https://www.ietf.org/mail-arch=
ive/web/i2rs/current/msg03688.html</a>).<br>
&gt;<br>
&gt; Can I have an option 2b that considers ephemeral state based on the<br=
>
&gt; requirements listed by I2RS?<br>
&gt;<br>
&gt;=C2=A0 Sue Hares<br>
&gt;=C2=A0 I2RS WG-chair<br>
&gt;<br>
&gt; -----Original Message-----<br>
&gt; From: Rtg-yang-coord [mailto:<a href=3D"mailto:rtg-yang-coord-bounces@=
ietf.org">rtg-yang-coord-bounces@ietf.org</a>] On Behalf Of<br>
&gt; Lou Berger<br>
&gt; Sent: Wednesday, June 08, 2016 9:06 AM<br>
&gt; To: <a href=3D"mailto:Rtg-yang-coord@ietf.org">Rtg-yang-coord@ietf.org=
</a><br>
&gt; Subject: [Rtg-yang-coord] Fwd: [netmod] Opstate solutions discussions:=
<br>
&gt; update and request for WG input<br>
&gt;<br>
&gt; FYI this decision is likely to have some impact on models under develo=
pment,<br>
&gt; including in the routing area. Comments on the message itself should g=
o to<br>
&gt; netmod.<br>
&gt;<br>
&gt; Lou<br>
&gt;<br>
&gt;<br>
&gt; --- Forwarded message ---<br>
&gt; From: Lou Berger &lt;<a href=3D"mailto:lberger@labn.net">lberger@labn.=
net</a>&gt;<br>
&gt; Date: June 7, 2016 10:20:23 AM<br>
&gt; Subject: [netmod] Opstate solutions discussions: update and request fo=
r WG<br>
&gt; input<br>
&gt; To: netmod WG &lt;<a href=3D"mailto:netmod@ietf.org">netmod@ietf.org</=
a>&gt;<br>
&gt; CC: <a href=3D"mailto:netmod-chairs@ietf.org">netmod-chairs@ietf.org</=
a><br>
&gt;<br>
&gt; All,<br>
&gt;<br>
&gt; We want to provide an update based on the off line discussions related=
 to<br>
&gt; OpState Solutions that we have been having and solicit input from the =
WG.<br>
&gt;<br>
&gt; All authors of current solution drafts [1,2,3] together with those who=
<br>
&gt; helped conduct the solutions analysis* were invited to the these discu=
ssions<br>
&gt; -- with the objective of coming up with a single consolidated proposal=
 to<br>
&gt; bring to the WG. (I/Lou acted as facilitator as Kent and Juergen were =
and<br>
&gt; are involved with the technical details.)<br>
&gt;<br>
&gt; The discussions have yielded some results but, unfortunately, not a si=
ngle<br>
&gt; consolidated proposal as hoped, but rather two alternate directions --=
 and<br>
&gt; clearly we need to choose one:<br>
&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A01) Adopt the conventions for representing state/con=
fig<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 based on Section 6 of [1].<br>
&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 From a model definition perspective, these =
conventions<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 impact every model and every model writer.<=
br>
&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A02) Model OpState using a revised logical datastore =
definition<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 as introduced in [4] and also covered in [5=
]. There is<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 also a variant of this that we believe does=
n&#39;t significantly<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 impact this choice.<br>
&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 With this approach, model definitions need =
no explicit<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 changes to support applied configuration.<b=
r>
&gt;<br>
&gt; &gt;From a technology/WG standpoint, we believe an approach<br>
&gt; that doesn&#39;t impact every model written (i.e., #2) is superior.<br=
>
&gt; The counterpoint to this is that the conventions based approach (i.e.,=
 #1)<br>
&gt; is available today and being followed in OpenConfig defined models.<br=
>
&gt;<br>
&gt; We would like to hear opinions on this from the WG before declaring on=
e of<br>
&gt; the following as the WG direction:<br>
&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0A) models that wish to support applied configuratio=
n MUST<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 follow conventions based on [1] -- and the =
WG needs to<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 formalize these conventions.<br>
&gt; or<br>
&gt;=C2=A0 =C2=A0 =C2=A0B) no explicit support is required for models to su=
pport<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 applied configuration -- and that the WG ne=
eds to<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 formalize an opstate solution based on the =
approach<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 discussed in [4] and [5].<br>
&gt;<br>
&gt; We intend to close on this choice before Berlin.<br>
&gt;<br>
&gt; Thank you,<br>
&gt; Lou (and co-chairs)<br>
&gt;<br>
&gt; [1] <a href=3D"https://tools.ietf.org/html/draft-openconfig-netmod-ops=
tate-01" rel=3D"noreferrer" target=3D"_blank">https://tools.ietf.org/html/d=
raft-openconfig-netmod-opstate-01</a><br>
&gt; [2] <a href=3D"https://tools.ietf.org/html/draft-kwatsen-netmod-opstat=
e-02" rel=3D"noreferrer" target=3D"_blank">https://tools.ietf.org/html/draf=
t-kwatsen-netmod-opstate-02</a><br>
&gt; [3] <a href=3D"https://tools.ietf.org/html/draft-wilton-netmod-opstate=
-yang-02" rel=3D"noreferrer" target=3D"_blank">https://tools.ietf.org/html/=
draft-wilton-netmod-opstate-yang-02</a><br>
&gt; [4] <a href=3D"https://tools.ietf.org/html/draft-schoenw-netmod-revise=
d-datastores-00" rel=3D"noreferrer" target=3D"_blank">https://tools.ietf.or=
g/html/draft-schoenw-netmod-revised-datastores-00</a><br>
&gt; [5] <a href=3D"https://tools.ietf.org/html/draft-wilton-netmod-refined=
-datastores-00" rel=3D"noreferrer" target=3D"_blank">https://tools.ietf.org=
/html/draft-wilton-netmod-refined-datastores-00</a><br>
&gt; * - Chris H. and Acee L.<br>
&gt;<br>
&gt;<br>
&gt; _______________________________________________<br>
&gt; netmod mailing list<br>
&gt; <a href=3D"mailto:netmod@ietf.org">netmod@ietf.org</a><br>
&gt; <a href=3D"https://www.ietf.org/mailman/listinfo/netmod" rel=3D"norefe=
rrer" target=3D"_blank">https://www.ietf.org/mailman/listinfo/netmod</a><br=
>
&gt;<br>
&gt;<br>
&gt;<br>
&gt; _______________________________________________<br>
&gt; Rtg-yang-coord mailing list<br>
&gt; <a href=3D"mailto:Rtg-yang-coord@ietf.org">Rtg-yang-coord@ietf.org</a>=
<br>
&gt; <a href=3D"https://www.ietf.org/mailman/listinfo/rtg-yang-coord" rel=
=3D"noreferrer" target=3D"_blank">https://www.ietf.org/mailman/listinfo/rtg=
-yang-coord</a><br>
&gt;<br>
&gt;<br>
<br>
<br>
_______________________________________________<br>
Rtg-yang-coord mailing list<br>
<a href=3D"mailto:Rtg-yang-coord@ietf.org">Rtg-yang-coord@ietf.org</a><br>
<a href=3D"https://www.ietf.org/mailman/listinfo/rtg-yang-coord" rel=3D"nor=
eferrer" target=3D"_blank">https://www.ietf.org/mailman/listinfo/rtg-yang-c=
oord</a><br>
</blockquote></div><br></div></div>

--001a113dde166dd84a0534c7c88d--


From nobody Wed Jun  8 10:40:35 2016
Return-Path: <mbj@tail-f.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 A334712D7B8; Wed,  8 Jun 2016 10:40:31 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.327
X-Spam-Level: 
X-Spam-Status: No, score=-3.327 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RP_MATCHES_RCVD=-1.426, SPF_PASS=-0.001] autolearn=ham autolearn_force=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 B9Xa9_ZP6LZE; Wed,  8 Jun 2016 10:40:30 -0700 (PDT)
Received: from mail.tail-f.com (mail.tail-f.com [46.21.102.45]) by ietfa.amsl.com (Postfix) with ESMTP id 7EC3812D7B6; Wed,  8 Jun 2016 10:40:30 -0700 (PDT)
Received: from localhost (h-46-190.a165.priv.bahnhof.se [46.59.46.190]) by mail.tail-f.com (Postfix) with ESMTPSA id CB0721AE0389; Wed,  8 Jun 2016 19:40:28 +0200 (CEST)
Date: Wed, 08 Jun 2016 19:40:28 +0200 (CEST)
Message-Id: <20160608.194028.358336333232277992.mbj@tail-f.com>
To: shares@ndzh.com
From: Martin Bjorklund <mbj@tail-f.com>
In-Reply-To: <00d301d1c1a0$3b12c8f0$b1385ad0$@ndzh.com>
References: <63b1dc74-c60c-351d-8d6d-38c860a6476e@labn.net> <155301e8b20.2818.9b4188e636579690ba6c69f2c8a0f1fd@labn.net> <00d301d1c1a0$3b12c8f0$b1385ad0$@ndzh.com>
X-Mailer: Mew version 6.5 on Emacs 24.3 / Mule 6.0 (HANACHIRUSATO)
Mime-Version: 1.0
Content-Type: Text/Plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/zbxa_pd8JHulVZfWW8qou_qS1Io>
Cc: Rtg-yang-coord@ietf.org, bclaise@cisco.com, lberger@labn.net, akatlas@gmail.com, i2rs@ietf.org
Subject: Re: [i2rs] [Rtg-yang-coord] Fwd: [netmod] Opstate solutions discussions: update and request for WG input
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 08 Jun 2016 17:40:32 -0000

Hi Sue,


"Susan Hares" <shares@ndzh.com> wrote:
> In [4], the author states: 
> 
>    "o  The model foresees ephemeral datastores that are by definition not
>       part of the persistent configuration of a device.  These ephemeral
>       datastores are considered to interact with the rest of the system
>       like any other control-plane mechanisms (e.g., routing protocols,
>       discovery protocols).  [XXX Note that this is different from what
>       is described in some of the I2RS documents.  XXX]"

[...]

> Therefore, the result of I2RS WG spending 2 years writing requirements for
> the ephemeral data store that both option 2 documents "do not  match" the
> I2RS ephemeral requirements set.  [4] lumps ephemeral with operational
> state.

I don't think this last sentence is correct.  Admittedly, the details
about ephemeral in [4] are not worked out (by design).  But the idea
was not to "lump ephemeral and operational state".  The idea was
rather that the content of ephemeral datastore(s) would interact with
the applied config to produce the resulting operational state.

If the WG agrees that B is the right way to go, we'll need to work out
all the details about how the ephemeral datastore(s) work.

The main point is that [4] (and [5]) provides an architecture into
which ephemeral datastores can fit.


/martin


From nobody Wed Jun  8 12:27:32 2016
Return-Path: <lberger@labn.net>
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 B88E712D5A2 for <i2rs@ietfa.amsl.com>; Wed,  8 Jun 2016 12:27:30 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.002
X-Spam-Level: 
X-Spam-Status: No, score=-2.002 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (768-bit key) header.d=labn.net
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 hjsFi8e8qPAC for <i2rs@ietfa.amsl.com>; Wed,  8 Jun 2016 12:27:28 -0700 (PDT)
Received: from gproxy6-pub.mail.unifiedlayer.com (gproxy6-pub.mail.unifiedlayer.com [67.222.39.168]) by ietfa.amsl.com (Postfix) with SMTP id 80B7412B00B for <i2rs@ietf.org>; Wed,  8 Jun 2016 12:27:28 -0700 (PDT)
Received: (qmail 23171 invoked by uid 0); 8 Jun 2016 19:27:24 -0000
Received: from unknown (HELO cmgw2) (10.0.90.83) by gproxy6.mail.unifiedlayer.com with SMTP; 8 Jun 2016 19:27:24 -0000
Received: from box313.bluehost.com ([69.89.31.113]) by cmgw2 with  id 4KTB1t01F2SSUrH01KTEoP; Wed, 08 Jun 2016 13:27:22 -0600
X-Authority-Analysis: v=2.1 cv=ff4+lSgF c=1 sm=1 tr=0 a=h1BC+oY+fLhyFmnTBx92Jg==:117 a=IkcTkHD0fZMA:10 a=-NfooI8aBGcA:10 a=uEJ9t1CZtbIA:10 a=pD_ry4oyNxEA:10 a=wU2YTnxGAAAA:8 a=48vgC7mUAAAA:8 a=h1CNhEJjTAOSSbiXWbYA:9 a=XKglFbNVR357Agop:21 a=yK49gFaQljK2HJlX:21 a=QEXdDO2ut3YA:10 a=aHrNv8WqsBEA:10 a=972hS-PGyNsA:10 a=Yz9wTY_ffGCQnEDHKrcv:22 a=w1C3t2QeGrPiZgrLijVG:22
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=labn.net; s=default; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:MIME-Version :Date:Message-ID:From:Cc:References:To:Subject; bh=yXEcu2gseVYk/UjI5LpVKOE36p2AovIPkN6M/JtcIME=; b=jd4Ci1s/VbSx/dJ8eHGCxWwFb8 gpas7Xgif/lZt394YAW2t5e0JLR/9fTW9zaCYrwsMNAMDeloYrip5QnNNbDZ/EFip3xLPNETbd6Yv +WQJR+N9JV3R7rwzsc6g+1IPn;
Received: from box313.bluehost.com ([69.89.31.113]:48454 helo=[127.0.0.1]) by box313.bluehost.com with esmtpa (Exim 4.86_2) (envelope-from <lberger@labn.net>) id 1bAj8D-00009Y-7q; Wed, 08 Jun 2016 13:27:13 -0600
To: Andy Bierman <andy@yumaworks.com>
References: <63b1dc74-c60c-351d-8d6d-38c860a6476e@labn.net> <155301e8b20.2818.9b4188e636579690ba6c69f2c8a0f1fd@labn.net> <00d301d1c1a0$3b12c8f0$b1385ad0$@ndzh.com> <9fbe631a-6a93-44fc-da02-7b2dd9827ddb@labn.net> <CABCOCHTY6pcW-RzXJsk6Ft2OFwCL2GwixAi_dH923noYKmXo0A@mail.gmail.com>
From: Lou Berger <lberger@labn.net>
Message-ID: <834c9a77-76e4-23b9-87e6-d28439e52bd2@labn.net>
Date: Wed, 8 Jun 2016 15:27:07 -0400
User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.1.1
MIME-Version: 1.0
In-Reply-To: <CABCOCHTY6pcW-RzXJsk6Ft2OFwCL2GwixAi_dH923noYKmXo0A@mail.gmail.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 7bit
X-Identified-User: {1038:box313.bluehost.com:labnmobi:labn.net} {sentby:smtp auth 69.89.31.113 authed with lberger@labn.net}
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/Lm0MWXK6eBdhfFhcuI5FWPWCsN4>
Cc: "rtg-yang-coord@ietf.org" <Rtg-yang-coord@ietf.org>, Benoit Claise <bclaise@cisco.com>, Alia Atlas <akatlas@gmail.com>, Susan Hares <shares@ndzh.com>, "i2rs@ietf.org" <i2rs@ietf.org>
Subject: Re: [i2rs] [Rtg-yang-coord] Fwd: [netmod] Opstate solutions discussions: update and request for WG input
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 08 Jun 2016 19:27:31 -0000

Andy, (Sue)

    Valid point -- either way the WG will get to Ephemeral *after* the
direction question is settled.

Lou


On 6/8/2016 1:39 PM, Andy Bierman wrote:
> Hi Lou,
>
> I would say 2 steps ahead.
> Step 1 seems to be to reconfirm the meeting room consensus from Yokohama
> (model-based vs. protocol-based)
>
> Step 2 is usually picking a starting point for a solution draft.
>
> Step 3 is when people can start detailed solution reviews.
>
> IMO [4] is a good starting point but there are many open issues that
> need to be resolved,
> possibly addressed in the other drafts.
>
>
> Andy
>
>
> On Wed, Jun 8, 2016 at 9:23 AM, Lou Berger <lberger@labn.net
> <mailto:lberger@labn.net>> wrote:
>
>     Sue,
>
>     I think you're looking a step beyond the scope of decision we're
>     considering now. This is a fine thing, and certainly the right
>     thing to
>     be thinking about from the I2RS (or any other WG working on YANG
>     models
>     that is considering operational state for that matter) perspective.
>
>     The decision at hand is to choose between directions A and B.  I think
>     you are saying you that you like direction B but that the details
>     aren't
>     sufficient for your (WG's) needs.  Is this correct?
>
>     If so, then I think you're point is that [4] and [5] need work.  We
>     agree with this statement and we believe consistent with the
>     statement in B:
>
>         -- and that the WG needs to
>            formalize an opstate solution based on the approach
>            discussed in [4] and [5].
>
>     So, once the WG closes on direction B (before Berlin), the WG can then
>     start discussing details of the WG's version of [4] and [5] -- and
>     issues on ephemeral support makes sense to discuss then if they still
>     haven't been addressed.   Of course discussion on the individual
>     drafts
>     don't need to wait for the decision on basic direction.
>
>     Make sense?
>
>     Lou
>
>     On 6/8/2016 12:10 PM, Susan Hares wrote:
>     > Lou:
>     >
>     > Thank you for your work on the two options.  I'd like to comment
>     on the
>     > following statement in your message statement, and reference a
>     few things in
>     > [4] and [5] regarding ephemeral state:
>     >
>     > You state:
>     > "  2) Model OpState using a revised logical datastore definition
>     >        as introduced in [4] and also covered in [5]. There is
>     >        also a variant of this that we believe doesn't significantly
>     >        impact this choice.
>     >        With this approach, model definitions need no explicit
>     >        changes to support applied configuration."
>     >
>     > In [4], the author states:
>     >
>     >    "o  The model foresees ephemeral datastores that are by
>     definition not
>     >       part of the persistent configuration of a device.  These
>     ephemeral
>     >       datastores are considered to interact with the rest of the
>     system
>     >       like any other control-plane mechanisms (e.g., routing
>     protocols,
>     >       discovery protocols).  [XXX Note that this is different
>     from what
>     >       is described in some of the I2RS documents.  XXX]"
>     >
>     > In [5], the author states:
>     >
>     > "5.5.  Ephemeral Configuration Datastore (Optional)
>     >    This document does not intend to formally define an Ephemeral
>     >    Configuration Datastore.  In particular, it must be noted
>     that the
>     >    ephemeral configuration datastore described here does not
>     match that
>     >    described in version -09 of draft-ietf-i2rs-ephemeral-state
>     >    [I-D.ietf-i2rs-ephemeral-state].  Instead, it describes
>     conceptually
>     >    how such a datastore (restricted to configuration only) might fit
>     >    into a conceptual refined datastore model."
>     >
>     > Therefore, the result of I2RS WG spending 2 years writing
>     requirements for
>     > the ephemeral data store that both option 2 documents "do not 
>     match" the
>     > I2RS ephemeral requirements set.  [4] lumps ephemeral with
>     operational
>     > state.  [5] provides an ephemeral architecture closer to I2RS
>     ephemeral
>     > requirements, but does not understand that
>     draft-ietf-i2rs-ephemeral-state
>     > is a requirements document.    Your statement " With this
>     approach, model
>     > definitions need no explicit changes to support applied
>     configuration"
>     > cannot be true if you consider the I2RS data models (RIB, topology).
>     >
>     > How is option (2) a reasonable design for ephemeral state?  I
>     have spent the
>     > last week answering questions to Juergen [4] on the I2RS
>     ephemeral state.
>     > After our discussion, he did not have any specific suggestions
>     to change
>     > these requirements
>     > (https://www.ietf.org/mail-archive/web/i2rs/current/msg03688.html).
>     >
>     > Can I have an option 2b that considers ephemeral state based on the
>     > requirements listed by I2RS?
>     >
>     >  Sue Hares
>     >  I2RS WG-chair
>     >
>     > -----Original Message-----
>     > From: Rtg-yang-coord [mailto:rtg-yang-coord-bounces@ietf.org
>     <mailto:rtg-yang-coord-bounces@ietf.org>] On Behalf Of
>     > Lou Berger
>     > Sent: Wednesday, June 08, 2016 9:06 AM
>     > To: Rtg-yang-coord@ietf.org <mailto:Rtg-yang-coord@ietf.org>
>     > Subject: [Rtg-yang-coord] Fwd: [netmod] Opstate solutions
>     discussions:
>     > update and request for WG input
>     >
>     > FYI this decision is likely to have some impact on models under
>     development,
>     > including in the routing area. Comments on the message itself
>     should go to
>     > netmod.
>     >
>     > Lou
>     >
>     >
>     > --- Forwarded message ---
>     > From: Lou Berger <lberger@labn.net <mailto:lberger@labn.net>>
>     > Date: June 7, 2016 10:20:23 AM
>     > Subject: [netmod] Opstate solutions discussions: update and
>     request for WG
>     > input
>     > To: netmod WG <netmod@ietf.org <mailto:netmod@ietf.org>>
>     > CC: netmod-chairs@ietf.org <mailto:netmod-chairs@ietf.org>
>     >
>     > All,
>     >
>     > We want to provide an update based on the off line discussions
>     related to
>     > OpState Solutions that we have been having and solicit input
>     from the WG.
>     >
>     > All authors of current solution drafts [1,2,3] together with
>     those who
>     > helped conduct the solutions analysis* were invited to the these
>     discussions
>     > -- with the objective of coming up with a single consolidated
>     proposal to
>     > bring to the WG. (I/Lou acted as facilitator as Kent and Juergen
>     were and
>     > are involved with the technical details.)
>     >
>     > The discussions have yielded some results but, unfortunately,
>     not a single
>     > consolidated proposal as hoped, but rather two alternate
>     directions -- and
>     > clearly we need to choose one:
>     >
>     >     1) Adopt the conventions for representing state/config
>     >        based on Section 6 of [1].
>     >
>     >        From a model definition perspective, these conventions
>     >        impact every model and every model writer.
>     >
>     >     2) Model OpState using a revised logical datastore definition
>     >        as introduced in [4] and also covered in [5]. There is
>     >        also a variant of this that we believe doesn't significantly
>     >        impact this choice.
>     >
>     >        With this approach, model definitions need no explicit
>     >        changes to support applied configuration.
>     >
>     > >From a technology/WG standpoint, we believe an approach
>     > that doesn't impact every model written (i.e., #2) is superior.
>     > The counterpoint to this is that the conventions based approach
>     (i.e., #1)
>     > is available today and being followed in OpenConfig defined models.
>     >
>     > We would like to hear opinions on this from the WG before
>     declaring one of
>     > the following as the WG direction:
>     >
>     >     A) models that wish to support applied configuration MUST
>     >        follow conventions based on [1] -- and the WG needs to
>     >        formalize these conventions.
>     > or
>     >     B) no explicit support is required for models to support
>     >        applied configuration -- and that the WG needs to
>     >        formalize an opstate solution based on the approach
>     >        discussed in [4] and [5].
>     >
>     > We intend to close on this choice before Berlin.
>     >
>     > Thank you,
>     > Lou (and co-chairs)
>     >
>     > [1] https://tools.ietf.org/html/draft-openconfig-netmod-opstate-01
>     > [2] https://tools.ietf.org/html/draft-kwatsen-netmod-opstate-02
>     > [3] https://tools.ietf.org/html/draft-wilton-netmod-opstate-yang-02
>     > [4]
>     https://tools.ietf.org/html/draft-schoenw-netmod-revised-datastores-00
>     > [5]
>     https://tools.ietf.org/html/draft-wilton-netmod-refined-datastores-00
>     > * - Chris H. and Acee L.
>     >
>     >
>     > _______________________________________________
>     > netmod mailing list
>     > netmod@ietf.org <mailto:netmod@ietf.org>
>     > https://www.ietf.org/mailman/listinfo/netmod
>     >
>     >
>     >
>     > _______________________________________________
>     > Rtg-yang-coord mailing list
>     > Rtg-yang-coord@ietf.org <mailto:Rtg-yang-coord@ietf.org>
>     > https://www.ietf.org/mailman/listinfo/rtg-yang-coord
>     >
>     >
>
>
>     _______________________________________________
>     Rtg-yang-coord mailing list
>     Rtg-yang-coord@ietf.org <mailto:Rtg-yang-coord@ietf.org>
>     https://www.ietf.org/mailman/listinfo/rtg-yang-coord
>
>



From nobody Thu Jun  9 00:37:16 2016
Return-Path: <j.schoenwaelder@jacobs-university.de>
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 4A2A812D0EE; Thu,  9 Jun 2016 00:37:12 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.626
X-Spam-Level: 
X-Spam-Status: No, score=-5.626 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, RP_MATCHES_RCVD=-1.426] autolearn=ham autolearn_force=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 Beddyrrtm-h1; Thu,  9 Jun 2016 00:37:10 -0700 (PDT)
Received: from atlas3.jacobs-university.de (atlas3.jacobs-university.de [212.201.44.18]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 3054F12B035; Thu,  9 Jun 2016 00:37:10 -0700 (PDT)
Received: from localhost (demetrius5.irc-it.jacobs-university.de [10.70.0.222]) by atlas3.jacobs-university.de (Postfix) with ESMTP id 85D10100C; Thu,  9 Jun 2016 09:37:08 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from atlas3.jacobs-university.de ([10.70.0.220]) by localhost (demetrius5.jacobs-university.de [10.70.0.222]) (amavisd-new, port 10030) with ESMTP id M66wJg5fAzBV; Thu,  9 Jun 2016 09:37:04 +0200 (CEST)
Received: from hermes.jacobs-university.de (hermes.jacobs-university.de [212.201.44.23]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "hermes.jacobs-university.de", Issuer "Jacobs University CA - G01" (verified OK)) by atlas3.jacobs-university.de (Postfix) with ESMTPS; Thu,  9 Jun 2016 09:37:07 +0200 (CEST)
Received: from localhost (demetrius3.jacobs-university.de [212.201.44.48]) by hermes.jacobs-university.de (Postfix) with ESMTP id 6AEAD20047; Thu,  9 Jun 2016 09:37:07 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from hermes.jacobs-university.de ([212.201.44.23]) by localhost (demetrius3.jacobs-university.de [212.201.44.32]) (amavisd-new, port 10024) with ESMTP id rlINUO3yR46r; Thu,  9 Jun 2016 09:37:06 +0200 (CEST)
Received: from elstar.local (elstar.jacobs.jacobs-university.de [10.50.231.133]) by hermes.jacobs-university.de (Postfix) with ESMTP id 205822004E; Thu,  9 Jun 2016 09:37:06 +0200 (CEST)
Received: by elstar.local (Postfix, from userid 501) id 1509A3B0E89B; Thu,  9 Jun 2016 09:37:06 +0200 (CEST)
Date: Thu, 9 Jun 2016 09:37:06 +0200
From: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
To: Susan Hares <shares@ndzh.com>
Message-ID: <20160609073706.GB13220@elstar.local>
Mail-Followup-To: Susan Hares <shares@ndzh.com>, 'Lou Berger' <lberger@labn.net>, Rtg-yang-coord@ietf.org, 'Benoit Claise' <bclaise@cisco.com>, i2rs@ietf.org, 'Alia Atlas' <akatlas@gmail.com>
References: <63b1dc74-c60c-351d-8d6d-38c860a6476e@labn.net> <155301e8b20.2818.9b4188e636579690ba6c69f2c8a0f1fd@labn.net> <00d301d1c1a0$3b12c8f0$b1385ad0$@ndzh.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <00d301d1c1a0$3b12c8f0$b1385ad0$@ndzh.com>
User-Agent: Mutt/1.6.0 (2016-04-01)
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/COzwgkD9zPENkCw5BpOnIj-hYhA>
Cc: Rtg-yang-coord@ietf.org, 'Benoit Claise' <bclaise@cisco.com>, 'Lou Berger' <lberger@labn.net>, 'Alia Atlas' <akatlas@gmail.com>, i2rs@ietf.org
Subject: Re: [i2rs] [Rtg-yang-coord] Fwd: [netmod] Opstate solutions discussions: update and request for WG input
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
Reply-To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 09 Jun 2016 07:37:12 -0000

On Wed, Jun 08, 2016 at 12:10:09PM -0400, Susan Hares wrote:
> 
> Therefore, the result of I2RS WG spending 2 years writing requirements for
> the ephemeral data store that both option 2 documents "do not  match" the
> I2RS ephemeral requirements set.  [4] lumps ephemeral with operational
> state.

I tried to bring [4] to the attention of I2RS; nobody ever claimed
that [4] is a final solution. I did ask concrete questions on the I2RS
list concerning I2RS requirements and what the various terms used in
the description of I2RS requirements actually mean. The outcome were
some changes (I think) but there are also requirements I still find
unclear (but where we keep going in circles). That said, I do not
think '[4] lumps ephemeral with operational state' is a fair statement
either.

Anyway, as Lou explained, the subject of this thread is to decide on
the general direction and once we have agreement on the direction, I
am sure there will be further work on the details of the architectural
solutions on the table. And yes, this is then the time to settle what
an I2RS ephemeral datastore is and how it integrates conceptually and
architecturally with the rest.

/js

-- 
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>


From nobody Thu Jun  9 06:42:40 2016
Return-Path: <shares@ndzh.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 C3E6312D0E9; Thu,  9 Jun 2016 06:42:38 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.738
X-Spam-Level: *
X-Spam-Status: No, score=1.738 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, RDNS_NONE=0.793] autolearn=no autolearn_force=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 Ppcky32Qih_C; Thu,  9 Jun 2016 06:42:37 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 16D8812D0AE; Thu,  9 Jun 2016 06:42:37 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=174.124.192.86; 
From: "Susan Hares" <shares@ndzh.com>
To: "'Juergen Schoenwaelder'" <j.schoenwaelder@jacobs-university.de>
References: <63b1dc74-c60c-351d-8d6d-38c860a6476e@labn.net> <155301e8b20.2818.9b4188e636579690ba6c69f2c8a0f1fd@labn.net> <00d301d1c1a0$3b12c8f0$b1385ad0$@ndzh.com> <20160609073706.GB13220@elstar.local>
In-Reply-To: <20160609073706.GB13220@elstar.local>
Date: Thu, 9 Jun 2016 09:42:42 -0400
Message-ID: <002901d1c254$cc2763f0$64762bd0$@ndzh.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQH5OFvhp0hvxO8+SMw1aajlqpN6IwJELg8iAeYo0GEBfkCLqp9k4Okg
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/3uAmLS8hytncr9yit3RlVQ9nJX0>
Cc: Rtg-yang-coord@ietf.org, 'Benoit Claise' <bclaise@cisco.com>, 'Lou Berger' <lberger@labn.net>, i2rs@ietf.org, 'Alia Atlas' <akatlas@gmail.com>
Subject: Re: [i2rs] [Rtg-yang-coord] Fwd: [netmod] Opstate solutions discussions: update and request for WG input
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 09 Jun 2016 13:42:39 -0000

Juergen: 

I'm sorry you felt "lumps in with operational state" [4] was pejorative, it
was not intended to be.    100% agree - pick between option A and B, and
then come back to ephemeral.   If you have specific changes to the text, we
still welcome your comments on the ephemeral requirements document. 

Considering your questions on how constraints work in section 8.3 of
draft-ietf-netmod-6020bis-12 has led me to reconsider how these constraints
apply to ephemeral state. 

Sue 


-----Original Message-----
From: Rtg-yang-coord [mailto:rtg-yang-coord-bounces@ietf.org] On Behalf Of
Juergen Schoenwaelder
Sent: Thursday, June 09, 2016 3:37 AM
To: Susan Hares
Cc: Rtg-yang-coord@ietf.org; 'Benoit Claise'; 'Lou Berger'; 'Alia Atlas';
i2rs@ietf.org
Subject: Re: [Rtg-yang-coord] Fwd: [netmod] Opstate solutions discussions:
update and request for WG input

On Wed, Jun 08, 2016 at 12:10:09PM -0400, Susan Hares wrote:
> 
> Therefore, the result of I2RS WG spending 2 years writing requirements 
> for the ephemeral data store that both option 2 documents "do not  
> match" the I2RS ephemeral requirements set.  [4] lumps ephemeral with 
> operational state.

I tried to bring [4] to the attention of I2RS; nobody ever claimed that [4]
is a final solution. I did ask concrete questions on the I2RS list
concerning I2RS requirements and what the various terms used in the
description of I2RS requirements actually mean. The outcome were some
changes (I think) but there are also requirements I still find unclear (but
where we keep going in circles). That said, I do not think '[4] lumps
ephemeral with operational state' is a fair statement either.

Anyway, as Lou explained, the subject of this thread is to decide on the
general direction and once we have agreement on the direction, I am sure
there will be further work on the details of the architectural solutions on
the table. And yes, this is then the time to settle what an I2RS ephemeral
datastore is and how it integrates conceptually and architecturally with the
rest.

/js

-- 
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>

_______________________________________________
Rtg-yang-coord mailing list
Rtg-yang-coord@ietf.org
https://www.ietf.org/mailman/listinfo/rtg-yang-coord


From nobody Thu Jun  9 06:48:54 2016
Return-Path: <shares@ndzh.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 40B4B12D18C; Thu,  9 Jun 2016 06:48:53 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.738
X-Spam-Level: *
X-Spam-Status: No, score=1.738 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, RDNS_NONE=0.793] autolearn=no autolearn_force=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 sO2brF4jtOZG; Thu,  9 Jun 2016 06:48:52 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 28D0812D09F; Thu,  9 Jun 2016 06:48:52 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=174.124.192.86; 
From: "Susan Hares" <shares@ndzh.com>
To: "'Martin Bjorklund'" <mbj@tail-f.com>
References: <63b1dc74-c60c-351d-8d6d-38c860a6476e@labn.net> <155301e8b20.2818.9b4188e636579690ba6c69f2c8a0f1fd@labn.net> <00d301d1c1a0$3b12c8f0$b1385ad0$@ndzh.com> <20160608.194028.358336333232277992.mbj@tail-f.com>
In-Reply-To: <20160608.194028.358336333232277992.mbj@tail-f.com>
Date: Thu, 9 Jun 2016 09:48:56 -0400
Message-ID: <002b01d1c255$abc9e8c0$035dba40$@ndzh.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQH5OFvhp0hvxO8+SMw1aajlqpN6IwJELg8iAeYo0GEBXY3Csp9l+kNg
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/lewkNi9brCxSXQ456wEe4PLTpWk>
Cc: Rtg-yang-coord@ietf.org, bclaise@cisco.com, lberger@labn.net, i2rs@ietf.org, akatlas@gmail.com
Subject: Re: [i2rs] [Rtg-yang-coord] Fwd: [netmod] Opstate solutions discussions: update and request for WG input
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 09 Jun 2016 13:48:53 -0000

Martin: 

I agree [4] and [5] provide possible architectures that ephemeral could fit
into as part of choice [B].  

Sue 
-----Original Message-----
From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Martin Bjorklund
Sent: Wednesday, June 08, 2016 1:40 PM
To: shares@ndzh.com
Cc: Rtg-yang-coord@ietf.org; bclaise@cisco.com; lberger@labn.net;
akatlas@gmail.com; i2rs@ietf.org
Subject: Re: [i2rs] [Rtg-yang-coord] Fwd: [netmod] Opstate solutions
discussions: update and request for WG input

Hi Sue,


"Susan Hares" <shares@ndzh.com> wrote:
> In [4], the author states: 
> 
>    "o  The model foresees ephemeral datastores that are by definition not
>       part of the persistent configuration of a device.  These ephemeral
>       datastores are considered to interact with the rest of the system
>       like any other control-plane mechanisms (e.g., routing protocols,
>       discovery protocols).  [XXX Note that this is different from what
>       is described in some of the I2RS documents.  XXX]"

[...]

> Therefore, the result of I2RS WG spending 2 years writing requirements 
> for the ephemeral data store that both option 2 documents "do not  
> match" the I2RS ephemeral requirements set.  [4] lumps ephemeral with 
> operational state.

I don't think this last sentence is correct.  Admittedly, the details about
ephemeral in [4] are not worked out (by design).  But the idea was not to
"lump ephemeral and operational state".  The idea was rather that the
content of ephemeral datastore(s) would interact with the applied config to
produce the resulting operational state.

If the WG agrees that B is the right way to go, we'll need to work out all
the details about how the ephemeral datastore(s) work.

The main point is that [4] (and [5]) provides an architecture into which
ephemeral datastores can fit.


/martin

_______________________________________________
i2rs mailing list
i2rs@ietf.org
https://www.ietf.org/mailman/listinfo/i2rs


From nobody Thu Jun  9 15:08:50 2016
Return-Path: <internet-drafts@ietf.org>
X-Original-To: i2rs@ietf.org
Delivered-To: i2rs@ietfa.amsl.com
Received: from ietfa.amsl.com (localhost [IPv6:::1]) by ietfa.amsl.com (Postfix) with ESMTP id AA59812D1CA; Thu,  9 Jun 2016 15:08:49 -0700 (PDT)
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
From: internet-drafts@ietf.org
To: <i-d-announce@ietf.org>
X-Test-IDTracker: no
X-IETF-IDTracker: 6.21.0
Auto-Submitted: auto-generated
Precedence: bulk
Message-ID: <20160609220849.16883.18144.idtracker@ietfa.amsl.com>
Date: Thu, 09 Jun 2016 15:08:49 -0700
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/4XuxJaUb1rU4bMMjkuw0wubM9fU>
Cc: i2rs@ietf.org
Subject: [i2rs] I-D Action: draft-ietf-i2rs-yang-network-topo-03.txt
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 09 Jun 2016 22:08:49 -0000

A New Internet-Draft is available from the on-line Internet-Drafts directories.
This draft is a work item of the Interface to the Routing System of the IETF.

        Title           : A Data Model for Network Topologies
        Authors         : Alexander Clemm
                          Jan Medved
                          Robert Varga
                          Tony Tkacik
                          Nitin Bahadur
                          Hariharan Ananthakrishnan
                          Xufeng Liu
	Filename        : draft-ietf-i2rs-yang-network-topo-03.txt
	Pages           : 31
	Date            : 2016-06-09

Abstract:
   This document defines an abstract (generic) YANG data model for
   network/service topologies and inventories.  The model serves as a
   base model which is augmented with technology-specific details in
   other, more specific topology and inventory models.


The IETF datatracker status page for this draft is:
https://datatracker.ietf.org/doc/draft-ietf-i2rs-yang-network-topo/

There's also a htmlized version available at:
https://tools.ietf.org/html/draft-ietf-i2rs-yang-network-topo-03

A diff from the previous version is available at:
https://www.ietf.org/rfcdiff?url2=draft-ietf-i2rs-yang-network-topo-03


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/


From nobody Thu Jun  9 15:29:25 2016
Return-Path: <alex@cisco.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 4694C12B04E for <i2rs@ietfa.amsl.com>; Thu,  9 Jun 2016 15:29:23 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -15.947
X-Spam-Level: 
X-Spam-Status: No, score=-15.947 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-1.426, SPF_PASS=-0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.com
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 sy2r_ALAM4fl for <i2rs@ietfa.amsl.com>; Thu,  9 Jun 2016 15:29:21 -0700 (PDT)
Received: from alln-iport-8.cisco.com (alln-iport-8.cisco.com [173.37.142.95]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 82C1212B02B for <i2rs@ietf.org>; Thu,  9 Jun 2016 15:29:21 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=3307; q=dns/txt; s=iport; t=1465511361; x=1466720961; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=KXbeI7dy+HXugkR3njiWmEa6/sXGGImDYnqeBj2h/es=; b=da//zFASrFp3mFBmAY7O6cZUqUXDAIa8KNH7tfXaqWEfyxvC81brZbAW 1GuwobN7W8Erc0o1Q6bjOmOLBdOtfDiEne3MLpLOldpi/riyOf+qNgaSl ++Gc5HOjDZfME68Pc7gEz2cO7TsdRIx+4NMdwR94zhk3VSPM60IfUbQg2 Y=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0D+AQB67FlX/4YNJK1egz5WfQa7FYF6F?= =?us-ascii?q?wuFcQKBPDgUAQEBAQEBAWUcC4RFAQEBBAEBATc0CwwEAgEIEQQBAR8JBycLFAk?= =?us-ascii?q?IAgQOBQgTiBQOvkoBAQEBAQEBAQEBAQEBAQEBAQEBAQEcinSEKoVwBZhVAYYCi?= =?us-ascii?q?B2BcE6EBIhlj2QBHjaDbm6JCX8BAQE?=
X-IronPort-AV: E=Sophos;i="5.26,447,1459814400"; d="scan'208";a="283696970"
Received: from alln-core-12.cisco.com ([173.36.13.134]) by alln-iport-8.cisco.com with ESMTP/TLS/DHE-RSA-AES256-SHA; 09 Jun 2016 22:29:20 +0000
Received: from XCH-RTP-002.cisco.com (xch-rtp-002.cisco.com [64.101.220.142]) by alln-core-12.cisco.com (8.14.5/8.14.5) with ESMTP id u59MTKJB013145 (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=FAIL); Thu, 9 Jun 2016 22:29:20 GMT
Received: from xch-rtp-001.cisco.com (64.101.220.141) by XCH-RTP-002.cisco.com (64.101.220.142) with Microsoft SMTP Server (TLS) id 15.0.1104.5; Thu, 9 Jun 2016 18:29:19 -0400
Received: from xch-rtp-001.cisco.com ([64.101.220.141]) by XCH-RTP-001.cisco.com ([64.101.220.141]) with mapi id 15.00.1104.009; Thu, 9 Jun 2016 18:29:19 -0400
From: "Alexander Clemm (alex)" <alex@cisco.com>
To: "i2rs@ietf.org" <i2rs@ietf.org>
Thread-Topic: [i2rs] I-D Action: draft-ietf-i2rs-yang-network-topo-03.txt
Thread-Index: AQHRwpuFde0VWvUaM068QB66t9nflZ/hs6nA
Date: Thu, 9 Jun 2016 22:29:19 +0000
Message-ID: <4e559df6bc604bb1be7503796ed36c1f@XCH-RTP-001.cisco.com>
References: <20160609220849.16883.18144.idtracker@ietfa.amsl.com>
In-Reply-To: <20160609220849.16883.18144.idtracker@ietfa.amsl.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-ms-exchange-transport-fromentityheader: Hosted
x-originating-ip: [10.24.122.34]
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/39GFDkmcE762EVbmGUwmelgocC0>
Cc: "nitin_bahadur@yahoo.com" <nitin_bahadur@yahoo.com>, "Tony Tkacik -X \(ttkacik - PANTHEON TECHNOLOGIES at Cisco\)" <ttkacik@cisco.com>, "Hariharan Ananthakrishnan \(hari@packetdesign.com\)" <hari@packetdesign.com>, "Robert Varga -X \(rovarga - PANTHEON TECHNOLOGIES at Cisco\)" <rovarga@cisco.com>, Ladislav Lhotka <lhotka@nic.cz>, Xufeng Liu <xliu@kuatrotech.com>, "Jan Medved \(jmedved\)" <jmedved@cisco.com>, "Susan Hares \(shares@ndzh.com\)" <shares@ndzh.com>
Subject: Re: [i2rs] I-D Action: draft-ietf-i2rs-yang-network-topo-03.txt
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 09 Jun 2016 22:29:23 -0000

Hi,

we have just refreshed the topology draft, draft-ietf-i2rs-yang-network-top=
o-03.txt. =20

The YANG model has not changed over prior versions.  However, one suggestio=
n has been brought up for an alternative solution regarding distinguishing =
between topology information that is configured (e.g. by a controller), vs =
populated (e.g. by an embedded application on a server itself).  We added a=
 brief discussion of this in a discussion of design alternatives.  This alt=
ernative would involve making use of YANG Metadata (per Lada's metadata dra=
ft) to tag topology items that are populated by a server as "server-provide=
d.  A new metadata tag would be introduced for that purpose, which could be=
 a boolean or a type "empty".   The  semantics of the tag would be that it =
is applied to any topology data that comes into being (respectively is conf=
igured) by an embedded  application on the network, as opposed to e.g. a co=
ntroller application.  The metadata will be set automatically by the server=
 as applicable.  This solution provides a conceptually more elegant solutio=
n than the current one; however, as a caveat, it is currently not implement=
ed; Open Daylight (which is implementing the current topology model) has no=
 support for metadata planned at this time. =20

Regards
--- Alex (on behalf of the coauthors)

-----Original Message-----
From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of internet-drafts@ietf=
.org
Sent: Thursday, June 09, 2016 3:09 PM
To: i-d-announce@ietf.org
Cc: i2rs@ietf.org
Subject: [i2rs] I-D Action: draft-ietf-i2rs-yang-network-topo-03.txt


A New Internet-Draft is available from the on-line Internet-Drafts director=
ies.
This draft is a work item of the Interface to the Routing System of the IET=
F.

        Title           : A Data Model for Network Topologies
        Authors         : Alexander Clemm
                          Jan Medved
                          Robert Varga
                          Tony Tkacik
                          Nitin Bahadur
                          Hariharan Ananthakrishnan
                          Xufeng Liu
	Filename        : draft-ietf-i2rs-yang-network-topo-03.txt
	Pages           : 31
	Date            : 2016-06-09

Abstract:
   This document defines an abstract (generic) YANG data model for
   network/service topologies and inventories.  The model serves as a
   base model which is augmented with technology-specific details in
   other, more specific topology and inventory models.


The IETF datatracker status page for this draft is:
https://datatracker.ietf.org/doc/draft-ietf-i2rs-yang-network-topo/

There's also a htmlized version available at:
https://tools.ietf.org/html/draft-ietf-i2rs-yang-network-topo-03

A diff from the previous version is available at:
https://www.ietf.org/rfcdiff?url2=3Ddraft-ietf-i2rs-yang-network-topo-03


Please note that it may take a couple of minutes from the time of submissio=
n 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/

_______________________________________________
i2rs mailing list
i2rs@ietf.org
https://www.ietf.org/mailman/listinfo/i2rs


From nobody Sun Jun 12 16:06:09 2016
Return-Path: <internet-drafts@ietf.org>
X-Original-To: i2rs@ietf.org
Delivered-To: i2rs@ietfa.amsl.com
Received: from ietfa.amsl.com (localhost [IPv6:::1]) by ietfa.amsl.com (Postfix) with ESMTP id 288E612D73F; Sun, 12 Jun 2016 16:06:08 -0700 (PDT)
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
From: internet-drafts@ietf.org
To: <i-d-announce@ietf.org>
X-Test-IDTracker: no
X-IETF-IDTracker: 6.21.1
Auto-Submitted: auto-generated
Precedence: bulk
Message-ID: <20160612230608.5562.79892.idtracker@ietfa.amsl.com>
Date: Sun, 12 Jun 2016 16:06:08 -0700
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/ELyvuzfyD47UxKWgSyBvdL3jjGk>
Cc: i2rs@ietf.org
Subject: [i2rs] I-D Action: draft-ietf-i2rs-yang-l3-topology-02.txt
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Sun, 12 Jun 2016 23:06:08 -0000

A New Internet-Draft is available from the on-line Internet-Drafts directories.
This draft is a work item of the Interface to the Routing System of the IETF.

        Title           : A YANG Data Model for Layer 3 Topologies
        Authors         : Alexander Clemm
                          Jan Medved
                          Robert Varga
                          Tony Tkacik
                          Xufeng Liu
                          Igor Bryskin
                          Aihua Guo
                          Hariharan Ananthakrishnan
                          Nitin Bahadur
                          Vishnu Pavan Beeram
	Filename        : draft-ietf-i2rs-yang-l3-topology-02.txt
	Pages           : 34
	Date            : 2016-06-12

Abstract:
   This document defines a YANG data model for layer 3 network
   topologies.


The IETF datatracker status page for this draft is:
https://datatracker.ietf.org/doc/draft-ietf-i2rs-yang-l3-topology/

There's also a htmlized version available at:
https://tools.ietf.org/html/draft-ietf-i2rs-yang-l3-topology-02

A diff from the previous version is available at:
https://www.ietf.org/rfcdiff?url2=draft-ietf-i2rs-yang-l3-topology-02


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/


From nobody Mon Jun 13 14:24:59 2016
Return-Path: <linda.dunbar@huawei.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 B99ED12D7C3 for <i2rs@ietfa.amsl.com>; Mon, 13 Jun 2016 14:24:55 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.636
X-Spam-Level: 
X-Spam-Status: No, score=-5.636 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-1.426, SPF_PASS=-0.001, T_KAM_HTML_FONT_INVALID=0.01] autolearn=ham autolearn_force=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 UQFC_a3_IfvD for <i2rs@ietfa.amsl.com>; Mon, 13 Jun 2016 14:24:51 -0700 (PDT)
Received: from lhrrgout.huawei.com (lhrrgout.huawei.com [194.213.3.17]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 0563B12D144 for <i2rs@ietf.org>; Mon, 13 Jun 2016 14:24:46 -0700 (PDT)
Received: from 172.18.7.190 (EHLO lhreml706-cah.china.huawei.com) ([172.18.7.190]) by lhrrg01-dlp.huawei.com (MOS 4.3.7-GA FastPath queued) with ESMTP id CQT05667; Mon, 13 Jun 2016 21:24:43 +0000 (GMT)
Received: from DFWEML701-CAH.china.huawei.com (10.193.5.175) by lhreml706-cah.china.huawei.com (10.201.5.182) with Microsoft SMTP Server (TLS) id 14.3.235.1; Mon, 13 Jun 2016 22:24:42 +0100
Received: from DFWEML501-MBB.china.huawei.com ([10.193.5.179]) by dfweml701-cah.china.huawei.com ([10.193.5.175]) with mapi id 14.03.0235.001; Mon, 13 Jun 2016 14:24:38 -0700
From: Linda Dunbar <linda.dunbar@huawei.com>
To: "christian.jacquenet@orange.com" <christian.jacquenet@orange.com>, BOUCADAIR Mohamed IMT/OLN <mohamed.boucadair@orange.com>
Thread-Topic: Any feedback on the Protocol Independent Flow Security Policies exchanged over I2NSF service layer interface?
Thread-Index: AdHBttspF0pOVdD6ST+kJ/stBROvZgAAPeIQAAFZtWAAelRdMAB46/+QAABawNAACg79QA==
Date: Mon, 13 Jun 2016 21:24:38 +0000
Message-ID: <4A95BA014132FF49AE685FAB4B9F17F657EB4070@dfweml501-mbb>
References: <4A95BA014132FF49AE685FAB4B9F17F657EB3E57@dfweml501-mbb> <24433_1465835003_575EDDFB_24433_268_1_6911025c-9cc8-4262-9a77-72f04f4438e6@OPEXCLILM33.corporate.adroot.infra.ftgroup>
In-Reply-To: <24433_1465835003_575EDDFB_24433_268_1_6911025c-9cc8-4262-9a77-72f04f4438e6@OPEXCLILM33.corporate.adroot.infra.ftgroup>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: yes
X-MS-TNEF-Correlator: 
x-originating-ip: [10.220.135.134]
Content-Type: multipart/related; boundary="_004_4A95BA014132FF49AE685FAB4B9F17F657EB4070dfweml501mbb_"; type="multipart/alternative"
MIME-Version: 1.0
X-CFilter-Loop: Reflected
X-Mirapoint-Virus-RAPID-Raw: score=unknown(0), refid=str=0001.0A090201.575F249C.00AC, ss=1, re=0.000, recu=0.000, reip=0.000,  cl=1, cld=1, fgs=0, ip=0.0.0.0, so=2013-06-18 04:22:30, dmn=2013-03-21 17:37:32
X-Mirapoint-Loop-Id: 61691bfd74583276044e2b00ac642526
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/ZpAGIIkx6WSbM6HzwM5k_cyGlBE>
Cc: "i2rs@ietf.org" <i2rs@ietf.org>
Subject: Re: [i2rs] Any feedback on the Protocol Independent Flow Security Policies exchanged over I2NSF service layer interface?
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Mon, 13 Jun 2016 21:24:56 -0000

--_004_4A95BA014132FF49AE685FAB4B9F17F657EB4070dfweml501mbb_
Content-Type: multipart/alternative;
	boundary="_000_4A95BA014132FF49AE685FAB4B9F17F657EB4070dfweml501mbb_"

--_000_4A95BA014132FF49AE685FAB4B9F17F657EB4070dfweml501mbb_
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

Christian,

Thank you very much for the feedback.

Agree 100% of what you said:
Using BGP FS to exchange flow-based security policy information between dom=
ains is probably one of the most attractive approaches, but I assume this i=
nformation will have to comply with BGP FS encoding schemes, whether the co=
rresponding policy is described in a NETCONF/YANG data model or not. So, I =
think it's fair to state that, whatever the semantics of the (flow-based) s=
ecurity policy data model, corresponding information may be exchanged betwe=
en domains and formatted according to the protocol used to carry such infor=
mation between domains. It seems to me that both considerations are orthogo=
nal.

The reason that BGP FlowSpec is mentioned here is:

-        To emphasize the different aspects that I2NSF is to tackle:  the c=
omprehensive Flow Security Policies data model (that are not constrained to=
 the BGP encoding scheme). For example, if used between "domains", one doma=
in inquiry of "flow security policies" capability of other domain is a very=
 important part. The actual flow polices from one domain to another is only=
 part of the game.

It is really good that you brought this up: "inter-domain QoS policy enforc=
ement remains very hard to achieve"

The Inter-Domain Flow Security Policy are different in the following aspect=
s:

-         the I2NSF Flow Security Policy, (i.e. over the I2NSF Service Laye=
r Interface), are inquired and set by each domain's management system (or d=
omain's controllers). There have be authentication, authorization and billi=
ng process involved for one domain management system to grant the requests =
from other domain's management systems.

-        Whereas the QoS mechanism (as being carried by encoding in data pa=
ckets), It is difficult for forwarding devices from one domain to take acti=
ons (that requires its own $$$ resources) based on bits set by other domain=
s.

Thanks,

Linda
From: christian.jacquenet@orange.com [mailto:christian.jacquenet@orange.com=
]
Sent: Monday, June 13, 2016 11:23 AM
To: Linda Dunbar; BOUCADAIR Mohamed IMT/OLN
Subject: RE: Any feedback on the Protocol Independent Flow Security Policie=
s exchanged over I2NSF service layer interface?

Hello Linda,

A few preliminary comments from my side, based upon the enclosed text below=
 (I didn't read the draft yet).

[snip]

As BGP Flow Specification [exchanged among BGP peers] can been deployed to =
achieve DDoS mitigation, the Flow Security Policy setting from one domain t=
o another domain is protocol independent.
[CJ] I don't understand the above causality effect, since BGP FS is explici=
tly mentioned. As a matter of fact, I think policies (whatever their nature=
) are protocol-independent by nature, as implicitly indicated in the defini=
tion reminded in the supa WG charter<https://datatracker.ietf.org/wg/supa/c=
harter/>, for example.
 I2NSF focuses on the information/data models, allowing domains using NETCO=
NF or RESTCONF to exchange capability and set up the flow security policies=
.
[CJ] Right, but again, information and data models can rely upon various se=
mantics - YANG, but also SMI, SPPI, etc. Using BGP FS to exchange flow-base=
d security policy information between domains is probably one of the most a=
ttractive approaches, but I assume this information will have to comply wit=
h BGP FS encoding schemes, whether the corresponding policy is described in=
 a NETCONF/YANG data model or not. So, I think it's fair to state that, wha=
tever the semantics of the (flow-based) security policy data model, corresp=
onding information may be exchanged between domains and formatted according=
 to the protocol used to carry such information between domains. It seems t=
o me that both considerations are orthogonal.

"Protocol Independent Flow Security Policies" is for one domain (A) to requ=
est another domain (B) to enforce the desired policies for flows destined t=
owards the Domain A. This can be an effective way for Domain A to prevent t=
he unwanted attacks (e.g. DDoS)  from even occupying its links/ports connec=
ted to the Domain B.

BGP flow specification is configured in the BGP peers, whereas the I2NSF Pr=
otocol Independent Flow Security Policies"  are exchanged between domains,
[CJ] Why not simply state "flow-based security policy information"? Besides=
, the above wording suggests the whole security policy information is suppo=
sed to be exchanged between domains, which I think is debatable. Also, exch=
anging policy information between domains raises consistency and security i=
ssues: this is why inter-domain QoS policy enforcement remains very hard to=
 achieve for example.
which can be
Enterprise domain <-> Provider domain, Overlay <-> Underlay, Cloud provider=
 <-> Underlay.

Enterprise can have its own DDoS mitigation tools, but those internal DDoS =
mitigation tools can't effectively prevent the DoS attacks that saturate th=
e access ports and links between Enterprise and the providers.
[CJ] Right, but one would argue this is the responsibility of the service p=
rovider to prevent any attack that may saturate access resources that conne=
ct the enterprise customer to the network operated by the service provider.=
 That is, why would internal mitigation tools be considered anyway?

Same goes for Overlay networks.

Very often, the paths (or links) among nodes of a overlay network are provi=
ded by other network operators (a.k.a. "underlay network").  Very much like=
 traditional networks placing FW (Firewall) or IPS (Intrusion Prevention Sy=
stem) on the wire to enforce the flow security rules, I2NSF Protocol Indepe=
ndent Flow Security Policies can be used by overlay networks to request cer=
tain flow based security rules to be enforced by its underlay networks, to =
prevent the unwanted attacks traffic from occupying the physical links and =
ports to the overlay network nodes, and to avoid the overlay nodes' CPU/Sto=
rage/Port utilization being consumed down by the various attacks.  Here is =
one example of "Overlay Video Communication network" exchange Flow Policies=
 to the Underlay network.


[cid:image001.png@01D1B516.7F74E410]

[CJ] The above example clearly shows the necessary interaction between the =
two PDPs/controllers, to make sure that decisions made by the network contr=
oller accommodate the needs of the video customer as possibly expressed tow=
ards the video controller: for example, customer demands that the confident=
iality of the videoconference needs to be preserved, thereby suggesting the=
 use of the IPsec protocol suite. The video controller may enforce an IPsec=
 design based upon the transport mode, whereas the network controller is so=
licited to allocate IPsec resources (read for example no AH, ESP in NULL mo=
de) accordingly. This may possibly raise conflicting configuration tasks (t=
he video controller uses AH, the network controller doesn't), thereby leadi=
ng to inconsistency that may jeopardize the service. Whether BGP FS is used=
 to carry security policy information between the two controllers is hardly=
 the point, imho: what matters is the consistency of the (flow-based securi=
ty policies enforced by both parties, and which should be derived from the =
customer's requirements (if any).
The goal of I2NSF is to specify the common information model and data model=
 for the  Protocol Independent Flow Security Policies which can be queried =
and set between domains.
[CJ] OK.

https://datatracker.ietf.org/doc/draft-fang-i2nsf-inter-cloud-ddos-mitigati=
on-api/ is just the starting point. (needs more work to improve the clarity=
). We are asking if people to express their opinion on this work to the I2N=
SF@ietf.org<mailto:I2NSF@ietf.org> list.
[CJ] I need to read this draft and will get back to you accordingly, but th=
is may take a couple of weeks as I'm pretty busy for the time being.

I'll let Med further comment as appropriate.

Cheers,

Christian.

Thanks, Linda


___________________________________________________________________________=
______________________________________________



Ce message et ses pieces jointes peuvent contenir des informations confiden=
tielles ou privilegiees et ne doivent donc

pas etre diffuses, exploites ou copies sans autorisation. Si vous avez recu=
 ce message par erreur, veuillez le signaler

a l'expediteur et le detruire ainsi que les pieces jointes. Les messages el=
ectroniques etant susceptibles d'alteration,

Orange decline toute responsabilite si ce message a ete altere, deforme ou =
falsifie. Merci.



This message and its attachments may contain confidential or privileged inf=
ormation that may be protected by law;

they should not be distributed, used or copied without authorisation.

If you have received this email in error, please notify the sender and dele=
te this message and its attachments.

As emails may be altered, Orange is not liable for messages that have been =
modified, changed or falsified.

Thank you.

--_000_4A95BA014132FF49AE685FAB4B9F17F657EB4070dfweml501mbb_
Content-Type: text/html; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" xmlns:o=3D"urn:schemas-micr=
osoft-com:office:office" xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" xmlns=3D"http:=
//www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3Dus-ascii"=
>
<meta name=3D"Generator" content=3D"Microsoft Word 12 (filtered medium)">
<!--[if !mso]><style>v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style><![endif]--><style><!--
/* Font Definitions */
@font-face
	{font-family:Wingdings;
	panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
	{font-family:SimSun;
	panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
	{font-family:Tahoma;
	panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
	{font-family:"\@SimSun";
	panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
	{font-family:Consolas;
	panose-1:2 11 6 9 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0in;
	margin-bottom:.0001pt;
	font-size:11.0pt;
	font-family:"Calibri","sans-serif";}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:blue;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:purple;
	text-decoration:underline;}
pre
	{mso-style-priority:99;
	mso-style-link:"HTML Preformatted Char";
	margin:0in;
	margin-bottom:.0001pt;
	font-size:10.0pt;
	font-family:"Courier New";}
p.MsoAcetate, li.MsoAcetate, div.MsoAcetate
	{mso-style-priority:99;
	mso-style-link:"Balloon Text Char";
	margin:0in;
	margin-bottom:.0001pt;
	font-size:11.0pt;
	font-family:"Calibri","sans-serif";}
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
	{mso-style-priority:34;
	margin-top:0in;
	margin-right:0in;
	margin-bottom:0in;
	margin-left:.5in;
	margin-bottom:.0001pt;
	font-size:11.0pt;
	font-family:"Calibri","sans-serif";}
span.BalloonTextChar
	{mso-style-name:"Balloon Text Char";
	mso-style-priority:99;
	mso-style-link:"Balloon Text";
	font-family:"Tahoma","sans-serif";}
p.Textedebulles, li.Textedebulles, div.Textedebulles
	{mso-style-name:"Texte de bulles";
	mso-style-link:"Texte de bulles Car";
	margin:0in;
	margin-bottom:.0001pt;
	font-size:11.0pt;
	font-family:"Calibri","sans-serif";}
span.TextedebullesCar
	{mso-style-name:"Texte de bulles Car";
	mso-style-priority:99;
	mso-style-link:"Texte de bulles";
	font-family:"Tahoma","sans-serif";}
span.EmailStyle22
	{mso-style-type:personal;
	font-family:"Calibri","sans-serif";
	color:windowtext;}
span.EmailStyle23
	{mso-style-type:personal;
	font-family:"Calibri","sans-serif";
	color:#1F497D;}
span.EmailStyle24
	{mso-style-type:personal;
	font-family:"Calibri","sans-serif";
	color:#1F497D;}
span.EmailStyle25
	{mso-style-type:personal;
	font-family:"Calibri","sans-serif";
	color:#1F497D;}
span.EmailStyle26
	{mso-style-type:personal;
	font-family:"Calibri","sans-serif";
	color:#1F497D;}
span.EmailStyle27
	{mso-style-type:personal;
	font-family:"Courier New";
	color:#7030A0;
	font-weight:normal;
	font-style:normal;}
span.HTMLPreformattedChar
	{mso-style-name:"HTML Preformatted Char";
	mso-style-priority:99;
	mso-style-link:"HTML Preformatted";
	font-family:Consolas;}
span.EmailStyle30
	{mso-style-type:personal-reply;
	font-family:"Calibri","sans-serif";
	color:#1F497D;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-size:10.0pt;}
@page WordSection1
	{size:8.5in 11.0in;
	margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
	{page:WordSection1;}
/* List Definitions */
@list l0
	{mso-list-id:57823437;
	mso-list-type:hybrid;
	mso-list-template-ids:1401177562 1859023510 67698691 67698693 67698689 676=
98691 67698693 67698689 67698691 67698693;}
@list l0:level1
	{mso-level-start-at:0;
	mso-level-number-format:bullet;
	mso-level-text:-;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	margin-left:.25in;
	text-indent:-.25in;
	font-family:"Calibri","sans-serif";
	mso-fareast-font-family:SimSun;
	mso-bidi-font-family:"Times New Roman";}
@list l1
	{mso-list-id:1839341046;
	mso-list-type:hybrid;
	mso-list-template-ids:-261748442 1608158064 67698691 67698693 67698689 676=
98691 67698693 67698689 67698691 67698693;}
@list l1:level1
	{mso-level-start-at:0;
	mso-level-number-format:bullet;
	mso-level-text:-;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;
	font-family:"Calibri","sans-serif";
	mso-fareast-font-family:SimSun;
	mso-bidi-font-family:"Times New Roman";}
ol
	{margin-bottom:0in;}
ul
	{margin-bottom:0in;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang=3D"EN-US" link=3D"blue" vlink=3D"purple">
<div class=3D"WordSection1">
<p class=3D"MsoNormal"><span style=3D"color:#1F497D">Christian, <o:p></o:p>=
</span></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D"><o:p>&nbsp;</o:p></spa=
n></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D">Thank you very much fo=
r the feedback.
<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D"><o:p>&nbsp;</o:p></spa=
n></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D">Agree 100% of what you=
 said:<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-left:.5in"><span style=3D"font-size:=
10.0pt;font-family:&quot;Courier New&quot;;color:#7030A0">Using BGP FS to e=
xchange flow-based security policy information between domains is probably =
one of the most attractive approaches, but I assume
 this information will have to comply with BGP FS encoding schemes, whether=
 the corresponding policy is described in a NETCONF/YANG data model or not.=
 So, I think it&#8217;s fair to state that, whatever the semantics of the (=
flow-based) security policy data model,
 corresponding information may be exchanged between domains and formatted a=
ccording to the protocol used to carry such information between domains. It=
 seems to me that both considerations are orthogonal.</span><span style=3D"=
color:#1F497D"><o:p></o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D"><o:p>&nbsp;</o:p></spa=
n></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D">The reason that BGP Fl=
owSpec is mentioned here is:<o:p></o:p></span></p>
<p class=3D"MsoListParagraph" style=3D"text-indent:-.25in;mso-list:l1 level=
1 lfo2"><![if !supportLists]><span style=3D"color:#1F497D"><span style=3D"m=
so-list:Ignore">-<span style=3D"font:7.0pt &quot;Times New Roman&quot;">&nb=
sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></span><![endif]><span style=3D"color:#1F497D">To emphasize t=
he different aspects that I2NSF is to tackle: &nbsp;the comprehensive Flow =
Security Policies data model (that are not constrained to the BGP encoding =
scheme). For example, if used between &#8220;domains&#8221;,
 one domain inquiry of &#8220;flow security policies&#8221; capability of o=
ther domain is a very important part. The actual flow polices from one doma=
in to another is only part of the game.
<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-left:.25in"><span style=3D"color:#1F=
497D"><o:p>&nbsp;</o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D">It is really good that=
 you brought this up: &#8220;</span><span style=3D"font-size:10.0pt;font-fa=
mily:&quot;Courier New&quot;;color:#7030A0">inter-domain QoS policy enforce=
ment remains very hard to achieve&#8221;</span><span style=3D"color:#1F497D=
"><o:p></o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D"><o:p>&nbsp;</o:p></spa=
n></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D">The Inter-Domain Flow =
Security Policy are different in the following aspects:<o:p></o:p></span></=
p>
<p class=3D"MsoListParagraph" style=3D"text-indent:-.25in;mso-list:l1 level=
1 lfo2"><![if !supportLists]><span style=3D"color:#1F497D"><span style=3D"m=
so-list:Ignore">-<span style=3D"font:7.0pt &quot;Times New Roman&quot;">&nb=
sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></span><![endif]><span style=3D"color:#1F497D">&nbsp;the I2NS=
F Flow Security Policy, (i.e. over the I2NSF Service Layer Interface), are =
inquired and set by each domain&#8217;s management system (or domain&#8217;=
s controllers). There have be authentication, authorization
 and billing process involved for one domain management system to grant the=
 requests from other domain&#8217;s management systems.
<o:p></o:p></span></p>
<p class=3D"MsoListParagraph" style=3D"text-indent:-.25in;mso-list:l1 level=
1 lfo2"><![if !supportLists]><span style=3D"color:#1F497D"><span style=3D"m=
so-list:Ignore">-<span style=3D"font:7.0pt &quot;Times New Roman&quot;">&nb=
sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></span><![endif]><span style=3D"color:#1F497D">Whereas the Qo=
S mechanism (as being carried by encoding in data packets), It is difficult=
 for forwarding devices from one domain to take actions (that requires its =
own $$$ resources) based on bits set
 by other domains.&nbsp; <o:p></o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D"><o:p>&nbsp;</o:p></spa=
n></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D">Thanks, <o:p></o:p></s=
pan></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D"><o:p>&nbsp;</o:p></spa=
n></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D">Linda &nbsp;<o:p></o:p=
></span></p>
<div>
<div style=3D"border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in =
0in 0in">
<p class=3D"MsoNormal"><b><span style=3D"font-size:10.0pt;font-family:&quot=
;Tahoma&quot;,&quot;sans-serif&quot;">From:</span></b><span style=3D"font-s=
ize:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;"> christia=
n.jacquenet@orange.com [mailto:christian.jacquenet@orange.com]
<br>
<b>Sent:</b> Monday, June 13, 2016 11:23 AM<br>
<b>To:</b> Linda Dunbar; BOUCADAIR Mohamed IMT/OLN<br>
<b>Subject:</b> RE: Any feedback on the Protocol Independent Flow Security =
Policies exchanged over I2NSF service layer interface?<o:p></o:p></span></p=
>
</div>
</div>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal"><span style=3D"font-size:10.0pt;font-family:&quot;Co=
urier New&quot;;color:#7030A0">Hello Linda,<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:10.0pt;font-family:&quot;Co=
urier New&quot;;color:#7030A0"><o:p>&nbsp;</o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:10.0pt;font-family:&quot;Co=
urier New&quot;;color:#7030A0">A few preliminary comments from my side, bas=
ed upon the enclosed text below (I didn&#8217;t read the draft yet).<o:p></=
o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:10.0pt;font-family:&quot;Co=
urier New&quot;;color:#7030A0"><o:p>&nbsp;</o:p></span></p>
<p class=3D"MsoNormal"><b><span lang=3D"FR" style=3D"font-size:10.0pt;font-=
family:&quot;Courier New&quot;;color:#7030A0">[snip]</span></b><span style=
=3D"font-size:12.0pt;font-family:&quot;Courier New&quot;"><o:p></o:p></span=
></p>
<p class=3D"MsoNormal"><span style=3D"font-size:12.0pt"><o:p>&nbsp;</o:p></=
span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:12.0pt">As BGP Flow Specifi=
cation [exchanged among BGP peers] can been deployed to achieve DDoS mitiga=
tion, the Flow Security Policy setting from one domain to another domain is=
 protocol independent.<span style=3D"color:#7030A0"><o:p></o:p></span></spa=
n></p>
<p class=3D"MsoNormal"><span style=3D"font-size:10.0pt;font-family:&quot;Co=
urier New&quot;;color:#7030A0">[CJ] I don&#8217;t understand the above caus=
ality effect, since BGP FS is explicitly mentioned. As a matter of fact, I =
think policies (whatever their nature) are protocol-independent
 by nature, as implicitly indicated in the definition reminded in the supa =
WG <a href=3D"https://datatracker.ietf.org/wg/supa/charter/">
charter</a>, for example. <o:p></o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:12.0pt">&nbsp;I2NSF focuses=
 on the information/data models, allowing domains using NETCONF or RESTCONF=
 to exchange capability and set up the flow security policies.
<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:10.0pt;font-family:&quot;Co=
urier New&quot;;color:#7030A0">[CJ] Right, but again, information and data =
models can rely upon various semantics &#8211; YANG, but also SMI, SPPI, et=
c. Using BGP FS to exchange flow-based security policy
 information between domains is probably one of the most attractive approac=
hes, but I assume this information will have to comply with BGP FS encoding=
 schemes, whether the corresponding policy is described in a NETCONF/YANG d=
ata model or not. So, I think it&#8217;s
 fair to state that, whatever the semantics of the (flow-based) security po=
licy data model, corresponding information may be exchanged between domains=
 and formatted according to the protocol used to carry such information bet=
ween domains. It seems to me that
 both considerations are orthogonal.<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:12.0pt"><o:p>&nbsp;</o:p></=
span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:12.0pt">&#8220;<b><u>Protoc=
ol Independent Flow Security Policies</u></b>&#8221; is for one domain (A) =
to request another domain (B) to enforce the desired policies for flows des=
tined towards the Domain A. This can be an effective
 way for Domain A to prevent the unwanted attacks (e.g. DDoS)&nbsp; from ev=
en occupying its links/ports connected to the Domain B.
<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:12.0pt"><o:p>&nbsp;</o:p></=
span></p>
<p class=3D"MsoNormal"><b><span style=3D"color:red">BGP flow specification =
is configured in the BGP peers,
</span></b><span style=3D"font-size:12.0pt">whereas the I2NSF Protocol Inde=
pendent Flow Security Policies&#8221; &nbsp;are exchanged between domains,
<span style=3D"color:#7030A0"><o:p></o:p></span></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:10.0pt;font-family:&quot;Co=
urier New&quot;;color:#7030A0">[CJ] Why not simply state &#8220;flow-based =
security policy information&#8221;? Besides, the above wording suggests the=
 whole security policy information is supposed to be exchanged
 between domains, which I think is debatable. Also, exchanging policy infor=
mation between domains raises consistency and security issues: this is why =
inter-domain QoS policy enforcement remains very hard to achieve for exampl=
e.<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:12.0pt">which can be<o:p></=
o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:12.0pt">Enterprise domain &=
lt;-&gt; Provider domain, Overlay &lt;-&gt; Underlay, Cloud provider &lt;-&=
gt; Underlay.
<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:12.0pt"><o:p>&nbsp;</o:p></=
span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:12.0pt">Enterprise can have=
 its own DDoS mitigation tools, but those internal DDoS mitigation tools ca=
n&#8217;t effectively prevent the DoS attacks that saturate the access port=
s and links between Enterprise and the providers.
<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:10.0pt;font-family:&quot;Co=
urier New&quot;;color:#7030A0">[CJ] Right, but one would argue this is the =
responsibility of the service provider to prevent any attack that may satur=
ate access resources that connect the enterprise
 customer to the network operated by the service provider. That is, why wou=
ld internal mitigation tools be considered anyway?<o:p></o:p></span></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal"><span style=3D"font-size:12.0pt">Same goes for Overl=
ay networks.
<o:p></o:p></span></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal"><span style=3D"font-size:12.0pt">Very often, the pat=
hs (or links) among nodes of a overlay network are provided by other networ=
k operators (a.k.a. &#8220;underlay network&#8221;). &nbsp;Very much like t=
raditional networks placing FW (Firewall) or IPS (Intrusion
 Prevention System) on the wire to enforce the <span style=3D"color:#1F497D=
">flow security</span> rules, I2NSF
<b><u>Protocol Independent Flow Security Policies</u></b> can be used by ov=
erlay networks to request certain flow based security rules to be enforced =
by its underlay networks, to prevent the unwanted attacks traffic from occu=
pying the physical links and ports
 to the overlay network nodes, and to avoid the overlay nodes&#8217; CPU/St=
orage/Port utilization being consumed down by the various attacks.&nbsp; He=
re is one example of &#8220;Overlay Video Communication network&#8221; exch=
ange Flow Policies to the Underlay network.
<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:12.0pt"><o:p>&nbsp;</o:p></=
span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:12.0pt"><o:p>&nbsp;</o:p></=
span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:12.0pt"><img border=3D"0" w=
idth=3D"626" height=3D"241" id=3D"Object_x0020_2" src=3D"cid:image001.png@0=
1D1C58B.9CB6B280" alt=3D"cid:image001.png@01D1B516.7F74E410"><o:p></o:p></s=
pan></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal"><b><i><span style=3D"font-size:12.0pt;color:#7030A0"=
>[CJ] </span>
</i></b><span style=3D"font-size:12.0pt;color:#7030A0">The above example cl=
early shows the necessary interaction between the two PDPs/controllers, to =
make sure that decisions made by the network controller accommodate the nee=
ds of the video customer as possibly
 expressed towards the video controller: for example, customer demands that=
 the confidentiality of the videoconference needs to be preserved, thereby =
suggesting the use of the IPsec protocol suite. The video controller may en=
force an IPsec design based upon
 the transport mode, whereas the network controller is solicited to allocat=
e IPsec resources (read for example no AH, ESP in NULL mode) accordingly. T=
his may possibly raise conflicting configuration tasks (the video controlle=
r uses AH, the network controller
 doesn&#8217;t), thereby leading to inconsistency that may jeopardize the s=
ervice. Whether BGP FS is used to carry security policy information between=
 the two controllers is hardly the point, imho: what matters is the consist=
ency of the (flow-based security policies
 enforced by both parties, and which should be derived from the customer&#8=
217;s requirements (if any).</span><span style=3D"font-size:12.0pt"><o:p></=
o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:12.0pt">The goal of I2NSF i=
s to specify the common information model and data model for the</span>
<b><u><span style=3D"font-size:12.0pt">&nbsp;Protocol Independent Flow Secu=
rity Policies
</span></u></b><span style=3D"font-size:12.0pt">which can be queried and se=
t between domains.
<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:10.0pt;font-family:&quot;Co=
urier New&quot;;color:#7030A0">[CJ] OK.<o:p></o:p></span></p>
<p class=3D"MsoNormal"><b><span style=3D"font-size:10.0pt;font-family:&quot=
;Tahoma&quot;,&quot;sans-serif&quot;;color:#1F497D"><o:p>&nbsp;</o:p></span=
></b></p>
<p class=3D"MsoNormal"><span style=3D"font-size:12.0pt"><a href=3D"https://=
datatracker.ietf.org/doc/draft-fang-i2nsf-inter-cloud-ddos-mitigation-api/"=
><span style=3D"color:windowtext;text-decoration:none">https://datatracker.=
ietf.org/doc/draft-fang-i2nsf-inter-cloud-ddos-mitigation-api/</span></a>
 is just the starting point. (needs more work to improve the clarity). We a=
re asking if people to express their opinion on this work to the
<a href=3D"mailto:I2NSF@ietf.org"><span style=3D"color:windowtext;text-deco=
ration:none">I2NSF@ietf.org</span></a> list.
<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:10.0pt;font-family:&quot;Co=
urier New&quot;;color:#7030A0">[CJ] I need to read this draft and will get =
back to you accordingly, but this may take a couple of weeks as I&#8217;m p=
retty busy for the time being.<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:10.0pt;font-family:&quot;Co=
urier New&quot;;color:#7030A0"><o:p>&nbsp;</o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:10.0pt;font-family:&quot;Co=
urier New&quot;;color:#7030A0">I&#8217;ll let Med further comment as approp=
riate.<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:10.0pt;font-family:&quot;Co=
urier New&quot;;color:#7030A0"><o:p>&nbsp;</o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:10.0pt;font-family:&quot;Co=
urier New&quot;;color:#7030A0">Cheers,<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:10.0pt;font-family:&quot;Co=
urier New&quot;;color:#7030A0"><o:p>&nbsp;</o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:10.0pt;font-family:&quot;Co=
urier New&quot;;color:#7030A0">Christian.<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:12.0pt"><o:p>&nbsp;</o:p></=
span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:12.0pt">Thanks, Linda <o:p>=
</o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:12.0pt"><o:p>&nbsp;</o:p></=
span></p>
<pre>______________________________________________________________________=
___________________________________________________<o:p></o:p></pre>
<pre><o:p>&nbsp;</o:p></pre>
<pre>Ce message et ses pieces jointes peuvent contenir des informations con=
fidentielles ou privilegiees et ne doivent donc<o:p></o:p></pre>
<pre>pas etre diffuses, exploites ou copies sans autorisation. Si vous avez=
 recu ce message par erreur, veuillez le signaler<o:p></o:p></pre>
<pre>a l'expediteur et le detruire ainsi que les pieces jointes. Les messag=
es electroniques etant susceptibles d'alteration,<o:p></o:p></pre>
<pre>Orange decline toute responsabilite si ce message a ete altere, deform=
e ou falsifie. Merci.<o:p></o:p></pre>
<pre><o:p>&nbsp;</o:p></pre>
<pre>This message and its attachments may contain confidential or privilege=
d information that may be protected by law;<o:p></o:p></pre>
<pre>they should not be distributed, used or copied without authorisation.<=
o:p></o:p></pre>
<pre>If you have received this email in error, please notify the sender and=
 delete this message and its attachments.<o:p></o:p></pre>
<pre>As emails may be altered, Orange is not liable for messages that have =
been modified, changed or falsified.<o:p></o:p></pre>
<pre>Thank you.<o:p></o:p></pre>
</div>
</body>
</html>

--_000_4A95BA014132FF49AE685FAB4B9F17F657EB4070dfweml501mbb_--

--_004_4A95BA014132FF49AE685FAB4B9F17F657EB4070dfweml501mbb_
Content-Type: image/png; name="image001.png"
Content-Description: image001.png
Content-Disposition: inline; filename="image001.png"; size=118970;
	creation-date="Mon, 13 Jun 2016 21:24:30 GMT";
	modification-date="Mon, 13 Jun 2016 21:24:30 GMT"
Content-ID: <image001.png@01D1C58B.9CB6B280>
Content-Transfer-Encoding: base64

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
AAAASUVORK5CYII=

--_004_4A95BA014132FF49AE685FAB4B9F17F657EB4070dfweml501mbb_--



From nobody Wed Jun 15 17:40:07 2016
Return-Path: <shares@ndzh.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 C965E12DC4A for <i2rs@ietfa.amsl.com>; Wed, 15 Jun 2016 17:38:51 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 4.439
X-Spam-Level: ****
X-Spam-Status: No, score=4.439 tagged_above=-999 required=5 tests=[BAYES_50=0.8, DOS_OUTLOOK_TO_MX=2.845, HTML_MESSAGE=0.001, RDNS_NONE=0.793] autolearn=no autolearn_force=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 TJqF_Y1wdENE for <i2rs@ietfa.amsl.com>; Wed, 15 Jun 2016 17:38:50 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 0990A12DC48 for <i2rs@ietf.org>; Wed, 15 Jun 2016 17:38:49 -0700 (PDT)
X-Default-Received-SPF: pass (skip=forwardok (res=PASS)) x-ip-name=118.21.137.13; 
From: "Susan Hares" <shares@ndzh.com>
To: <i2rs@ietf.org>, "'Charles Eckel \(eckelcu\)'" <eckelcu@cisco.com>
Date: Wed, 15 Jun 2016 20:38:27 -0400
Message-ID: <00b301d1c767$68257820$38706860$@ndzh.com>
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="----=_NextPart_000_00B4_01D1C745.E1142640"
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AdHHZve3HHcm6MapSp+A+IPldjkGrA==
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/_6VjkKQMqHpgI14I-_pdGjgMz9o>
X-Mailman-Approved-At: Wed, 15 Jun 2016 17:40:05 -0700
Cc: "'Eric Voit \(evoit\)'" <evoit@cisco.com>, hari@packetdesign.com, "'Alexander Clemm \(alex\)'" <alex@cisco.com>, "'Fedyk, Don'" <don.fedyk@hpe.com>, 'Russ White' <russ@riw.us>, 'Alia Atlas' <akatlas@juniper.net>, "'Miaofuyou \(Miao Fuyou\)'" <fuyou.miao@huawei.com>, 'Jeffrey Haas' <jhaas@pfrc.org>
Subject: [i2rs] I2RS Hackathon Project announcement
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 16 Jun 2016 00:38:52 -0000

This is a multipart message in MIME format.

------=_NextPart_000_00B4_01D1C745.E1142640
Content-Type: multipart/alternative;
	boundary="----=_NextPart_001_00B5_01D1C745.E1142640"


------=_NextPart_001_00B5_01D1C745.E1142640
Content-Type: text/plain;
	charset="us-ascii"
Content-Transfer-Encoding: 7bit

I've attached the announcement for an I2RS project at IETF 96 Hackathon.
I'd love feedback and feedback on this outline.  There will be code
available prior to IETF 96.  

 

Sue Hares 


------=_NextPart_001_00B5_01D1C745.E1142640
Content-Type: text/html;
	charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" =
xmlns:o=3D"urn:schemas-microsoft-com:office:office" =
xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" =
xmlns=3D"http://www.w3.org/TR/REC-html40"><head><META =
HTTP-EQUIV=3D"Content-Type" CONTENT=3D"text/html; =
charset=3Dus-ascii"><meta name=3DGenerator content=3D"Microsoft Word 14 =
(filtered medium)"><style><!--
/* Font Definitions */
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0in;
	margin-bottom:.0001pt;
	font-size:11.0pt;
	font-family:"Calibri","sans-serif";}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:blue;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:purple;
	text-decoration:underline;}
span.EmailStyle17
	{mso-style-type:personal-compose;
	font-family:"Calibri","sans-serif";
	color:windowtext;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-family:"Calibri","sans-serif";}
@page WordSection1
	{size:8.5in 11.0in;
	margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
	{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]--></head><body lang=3DEN-US link=3Dblue =
vlink=3Dpurple><div class=3DWordSection1><p class=3DMsoNormal>I&#8217;ve =
attached the announcement for an I2RS project at IETF 96 Hackathon. =
&nbsp;I&#8217;d love feedback and feedback on this outline. &nbsp;There =
will be code available prior to IETF 96.&nbsp; <o:p></o:p></p><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p><p class=3DMsoNormal>Sue Hares =
<o:p></o:p></p></div></body></html>
------=_NextPart_001_00B5_01D1C745.E1142640--

------=_NextPart_000_00B4_01D1C745.E1142640
Content-Type: application/pdf;
	name="I2RS Project at Hackathon IETF 96.pdf"
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
	filename="I2RS Project at Hackathon IETF 96.pdf"

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
G0lekZl9QtkzW5NaP5XQ+UWbEM5Z1IO1KVFGbSMKTSroKD8oz9RIT5poz6ijJDlIz/RHaiL2sg2n
tDYO7APTvKzCB7T0xWgJrEQ4mUazPEb9bwVOBWfVNxNauFlrcjq3WW9dUic2zz5szGLKJMme38zE
lFkigabUYAbNhKM9V1JBR3lBARX1GEZJXDMNAKszo14s2JmNldrLkWUhNe55YsPc2mWbbRQdDQuL
0xOXHU6jSWIbYE6lYtL/VkFaFpa+NCXLwjK62Lsmz/8CcwjccAplbmRzdHJlYW0KZW5kb2JqCjEz
IDAgb2JqCjM0ODQKZW5kb2JqCjE4IDAgb2JqCjw8Ci9GaWx0ZXIgL0ZsYXRlRGVjb2RlCi9MZW5n
dGggMTkgMCBSIAovTGVuZ3RoMSA2MjUzNyAKPj4Kc3RyZWFtDQp42tS7B1xTzdY3OrtmZ+8NBEIP
JSH0mtBBwEhHBGkqYAEEFBQFEXtDxIYdsTdEEbvBir333ttjwd57L/DNToKij+ec59x73/v+vsDK
nlnT1qzynzUhAAQAoA2KAQbSQxOjIoYcfpIOOc8AEA9sm+jmrty0MxoASRbkpWf2yih4MFg+EtYP
AGBgldm/SHy5Q6AHAN4PAEBjuxV07xXezf8tAH6eALBJ3fMGddu7bcAWAMLGAWDSKSc7I8ttVUM3
ALrcg/N550CGvf5mCoA0U1i3zulVNLDb9NVTYT0IAK+AvPzMDMNg2AIqBsO6olfGwIIsdIUAgKPb
IFPcO6NXdlFb/0xYvwaHexTk9y0CcCMAvNDi2gsKswsWYGE5sO4CAGkGeYjqh3sCMbcnfaB6iTvJ
SsTJJN9xTOSYj1oID60sEUdBVhiKIHJGxicJJ20MNSWALIOknUgER0p8UASvTJTFy5ybccyqLIrN
QIDqpy3oCvqCfJAHskERpCDuRyZpNhmuv3HEzPramKTAitsWFfd5j0E/admKyhKRpawE3y8rwVZV
YiiCokKoYTBg7ApyxJDTMj+VwANkWj+kRQgo1wCVmFg7nBSi7RLlQpkuV6GEdIeMvjm5vbsX5feW
C2TaHJMn5CVkZ/XK750lt5CZcRxaaBCTm1mY3ze/W5E4JL+wIL8woygXjpDILLl2TGj8sz0pt1e2
S2JRRq8CcVxIK5mFkZbcS+Yt85T7eMo8fVNh1Vvm96MqG7nhf0QyLRnDtTNCPKZtXILcTmajrlr0
DsktyMkuFIcmhonDEmP9/XzDQ11CvOVhLmHennK5jUyq3pHZH3eUmF3YPzczW1aCWDXXMEIArATR
AZBPoyUIAurM9SZ7+Rh0WCgdPdGiaKIgYMepPExUU8yzTGgfOf806prBPH+Uf3F+/sjPqIH4huHD
+x9PZTv0L5U/OVJzfRbPu4P+X3tSDLxF/W97JmwoHngufo24cdnJmEODdVw7O5UFneq+clWroKgM
Q3xwmof7lOtTZf7Fu9e8/J44D+cP6J2ctiOon66D/+AT9Tf68ffaJOH9Zue372HlcrvsgbfRrLqk
BS/ufnuwOSHedryosVSZ5FiyDh3FPLKasLe/aMDV1vMnxD940mJnpzCLaVPYu5/TC683Opf5DJmi
/SR3YLF+zw/hX2NX2hglpxntfEVP3w/O6m2Wu1d+9dlk2uX9nPshnz5PcDLTQjEYR0tKED7UCCEz
hyo118YNcf0HvG+On/LuOmkfXra936PZtbqXh+9U+ZC5FDeWGRbrSz0/XU0IL6CfK772/7rBSbnf
a4OOLInrYInHyKJlUZURlWFjQnKKigr83dwyC/NcezXZyTUzv5dbQc9cjutWUJif1S+zqK/bDzNy
VlQZEXqlK+wiSyYpGJgEwUMQvI2stSyyqS5DxwRoFhgwYMCfFsgu/DczF8mEnLw2OCujm6bEqN8C
EuO8JONb6rX5fTLu/NUmTB/s2JvaonxW5GJm+oqn4xInLvjQfrrH8YDxGXrz9lyOWIIWXVjusmrl
54P7um3qvWLC6UNuiUzWMO837Jhp3a5WuCVdSl8Ve2Ffz2X4qbF9dwmeVvMGrd+Nry7eFPJN61Ds
hVLzQ0sFLYu/5uw5WdShRw+H7IqxL2/WDUs90bLd9d1aJYkHXG9MPDav17SxW3yF/Wdfwr7dbbXT
dKHzqCsVhh5Z6UOPZHoFHNTRDUlyuGIV5xo+fqb3Rx3hts8+myKLH5aOxcuPzDjW0z0xZvuKjKyu
SwzPYWW7HfsNnB78va9d5FPfhL8EiXP3GBx9ei19Kf9tzrNGvLJoavaixncfn0EYg4Rd+AljCO08
aO3lQUOWreYgGKF/h7FB/yNgIZVJ1EFv2rw9K1ucmNu9N5z1b0Dm7unVHMi4qmzkqP8/gEzTHfsX
3f8jMJV/y/feXo9ttb8UfrYqY1t1+NdMwyDXzxHnDj97fnhOrW18v53XTuiQ+rpL80wW7kmLSRp/
LybuyqSTizOqBwjnmtU81yr6WNN+0CP7j4nnagdn3n5fMWvLs6sRn/IC39qM27CDPojXTB46OrK/
WUb4SpMDg7tO2LvPa+XX5PyDmcz0KNlI0ZBbI4a23RjRK22g2brNH2cKE15uPRvjd7/vzcjYAP2V
s7T8TkyIr+90tsWryd2fyNJXxKQuCNl5Xbptj87laMGC+TGv4qtKV96bXxN4aclL2jhy+Zfa2OrZ
2tG7X+m/BUeUkZc6NvheHq/rQmwLQdtagZk2a4Z59S7NWSU29rVvMKsS1FY3AVM61EinPwUq1gyt
xjfQ8ie2Jx/0Ojxt2taKiVXGGfDQiueadXGIF0vDZaG/28dDJueqhNDRQ+7l5+Uk85T5+Hl4yVzk
3t0yXDwzvWUuXb27dnPxy3LvKs/Mknn5+Xr+AoDHdR8dO7fRMBk56uPqYWi4tc1c2lLWXg2AbWUQ
AishBI4J+68AEPoy9GToxGkyXxcPuYu7TC5TQWBqMwiMlUEQbAaBQf8MAv/F3EV/wrtlyxOn3WqB
NGR0JlOfdnvFXvl4tfQ8iNcWnF161sj+4UQPX6crIYewCf2eepS/W3Gn+3f0erV5bEhYZ1HU3dtt
DV8Nn/JqnO6xkjVLvy5bkfZ+VvqRIQd2D52X+9yyZO/rk5MHRnd9f1nL7HKi3qWZCS+9dppMrlRM
X0xXuxjO3xdeRD29/u5KdZR3kp5uO2zDEMOvEQ1fc77tCet0p6XeII+qlyUHbypMeC8MDtLzUohW
K87MWjhyIdbxW+u7pq7E6rgIt4lfBl2xEH8ivjr0NNb/UohvYWrmZj3T7dw2LGqSg6nL1zOb+Ylp
nhW3DQ9sfdLX61GHl/VPDfcbHyY3tDidUXpnc+j4iiVjZCXEHIh3I9V4Jxi0xnBx68rqNW36Jr/j
CV2zfwe7NBWG0Pxy2/HT3zhnISaGGFS/3ERm9AuT/8M6cheZkxodrH+iQ0J+PoQIaK7cbrmZGUXZ
4lb9inLyC3OLBnGQBq3lJfNz95D7ubtDSHPXVN195R6p//MClKB/RyuUQysUohWKgLedvxR3v5Ba
s4J1nio+40UF9Cs9uYU3fv74azdP7U//Mi0ndWFFHwfj/kP33T5i079CO/kL7un94Na6j8XbHicz
TtPvLyDuDrCa9tEzK8BqmnmXev7UHfoN3/olm9QP2sIrX7J2XAp1ZRHvGJb8Lcehl/vlc8uPR3+r
ZyLd2z54Wrem7b1O+cKKOddnXOx3fbnploppGwd0fB/JTukxaJh+AT6s17qp768VXInYsnueW95D
Yku9bvrqQdP0hx68tOxe/fCL+4ffLz8XADZ5l9wcVN/r7abenxZ5HD2eMKzvbO/rExb3rJoxa96S
m/tibBvJmd1tyCMPV997oecxQz7niBcV63lsUOLFTbsy3VMU3nuqY/GYwOsdeR73kne/bJmYdSU4
xavDd52wodZ4zMJLvkW6s6ymnsoJLSrPvxidrxxz97B3cOWZb3v3pH5ekrFVFtFnJm2onLYneMZL
wQj7HncdLWvvncRaDuiDHxZ/i9IxDxu39PLx4ePWTHZ5Fnb9QDx+1PHbszEL5+rO6njzVOK4B3e2
fF89Y5+94vpLfOqtkR5+V9eHVUvHktXtxsu3ky7p2q2Mh1m6bpp1XPepwUXr6oqXBvrjv0f3/eLe
8dtZD/A5pWsBz/2J6yqFy5BjNyTdRbI5UwxXSpe3OqvsrTvP+8BNRdH8+uTsvekWgzv6HpmyHbcd
esFQcX9zz7yVY76D3af2eqnROl7WVgWy5jo4DiPnkEyHqwgRpBEnZBh8NINs7dUl6Yr2drPu2wi/
OdbTiTNS7i2VCUi+5gpmgHAzgL+BE+Qd1I3B/NNvdE7QHTBl/XbvI+uJ3Ru3LL8iXtBJiG02s/pC
Cr02H8m8MDci37bDuXav8VrbtEsr4nIqd5yr631i/+PVt0xODlydUrS6m6f3AVFQnm8bD22ZntYS
24b4RNC4LjW2VEvH8l4vwjV2dPSkPI/8pHNZq3bHrRs22K/S53kmpvNNSJ4y9L6Q1GKGKL6r//0Y
owuEX/lcu+UdV+58tn3XXfH49D557TdUC8/00pYOn4E9zwl8cyWzrmfM5keyTfXHKqI/Vq3sPEe2
PrBmX3yevRixtnOKBlsW6PYs2LVeULKDnZdzZlIL67Er59gXLvBIS5m68/3N6Qv9u6Z6+t0Z1858
K6ncO76ny+Xc/SZ63qVnjlZea3TLHbj+/uBrTy+zez7uzDSq8xP6Vnl3HPJmdPse5lld9/reWbk7
vltVxXu9+d2sBD3fbJGVu7xxeBXYQj8kp+r1fAef46d8xTa9hnZ/O9xazxqjRkY8q144673x5dPb
L77sP/Pl91PX2y+YURn8eVZy/WW51fm0lAdBva3Ak5DSzTbXr76l2ufsyeppPvTZ5ulVXTv0dr3y
MHnKAXmU7Y2bDl5j38v6FHTUD8jdOV5v2FPXJQ1XRiwsSU2gnfaGOF2VjVt0RPB1/KQHi0f38xie
t/B6X2FW19xqt2HHZvZa9AleIcoDe0v0JUcDb+//XtZzQevvZxcvmBMyoKXyGgTnHRCcl6rBmc7w
sDVVXaXl/xuwLJfJfD3k7u5yPw8VLGuq7lz1fzMJ/k/p5frClE4msqzd5nPTxeLgOf0T84JEl/JP
HH/9pGfDLEPB7Vv+RaNMt7hVuj9rvLkvOFZ6sRBc9+pAjz+2Vhz17lXO6pjoSdU7B0X3mRfBu/bd
5taCfuNOr+wbOuLyyOtvd77xXnq0U9hf69YE3rbPmWVaU13Yt/1ro4p7370qCisv9U+zGBA2arSv
4Zm+HYlt3RMmVa/PdbtmwjSUFznc6e+WdENflvLp3KSu348fTQuXx221E95TyE4XOgjsrQ77xAZW
ugdOPbnYlxzdKbZ9ib0j4b4l+nLbzIfnXLq+Dgt8uJoCH8IXLzzbcaJt4qPBK1u/CT/tE+C7cOOA
TtVGCycd153SPmDvan4adr4pvewCNZL673Dqj2leM5AbI9NrDlqEamKZ9CcP5Wb5flYee962bEb9
7PQWy+X5ywJ2XHGRmfzopI/irAUNEkE/0BWEgFa/JJp/RMo4daIZJYuQhVWGVLYa0/KfJ5o/mguh
a3P5oSrFTGqWYkbKYMbcLMX0/W9u2VzAhKhnLfoTfqf4BY2wDV/3NF9R676px1Ntt97Loz4+Tev3
vE0Ll8sha5iG449d5EukJ4bGzS6WdF4d6NZmW9Xy9vPvFmyv2/hp0Kaowo9BT1qNOFbPGuUer54v
dvnCxB1of9LlbutzOwoeLteqwqrb364ri+7wZkbw/NdvX764O8bSM6Cu/dxXidLRjktLzKbfqeCZ
v7kT+2ni4mOPhNXTYo+Izk0pnOHYp9c8009mrxIvdT9h1djJ/GTVxJ126wdltg+tij/5+fGS5PY3
5qFhoW5p766tvVDi3vvb0hnCe09zH66oct51xEmgnT15zvX3VV/0bPnZvhWvB1u23n62vv2jMwNn
Gnc66mWYdmO6edRkl11rPEPNXggMTEHnG14dJadmH+a/GK09sW0vbWFs4FCHyPmFZ9/mHdv7rGBJ
h/IOwyomVYoisdSPp5d0p4uqvZ+7uBkdeVDoo/cuvzage8nnhPWTPAyzLbTLbghuZr3LPxV+4bzR
40EH8I3nvzrfsixbuJr+KrRTrLn3uX7FiPDtvPSI7HRFrDL4WezzDf0HXaE9+b3MiuWWd7STbtxf
/PV+hGBN1uzGOEPXobsJyeA7M1rZ5e6fPmXG0UlX5knWanWa/6pq7ZicUWwPl+39ewLzmWveGA75
YDjKeuu40z2WR8jd5v51t0/gZTC8a8TZU+OO1hl/0S6ctHdJ4DpU0aMxd97MO4Llgo0+cdSl/YGy
EpIH8ftlE34b5niq8NvsfyWt9oEXP4jYXh4yP3VazVU9ZFz1f++z2P+E3osW59Xeuh5Z7ji0p6tJ
/c47dw/OiZfGrTl1wzjWWufF2ZqzbdYUycS6T3kXk2YYRFWIgsvXzu4ks70Gej4asvPZeJ7OR218
9qvxJyyPe1iPXfDmXXcz529DHo4zf/IwdsnivdLEY5O+hJ3mn+my7owyGK/6vCxvevfL9n+FJyrH
nLlvH+5qt3pM23YJ7D3M+WuPqVNlvce+TZEt+DL80qwNjySzhn86J3xLbUnslbAxbOqiSNA6opuu
nUO35bPunSdHtq76XFqjG6HPL1lU+rzdwAZkrnkcNRoIZOHPt9yUhm8/4JK0aJ3FwFbyASfm3Wox
avriDHSTuVbtt4/z1iOnrKKTGj8T+/eJmSb0XgU1UvPv0PuPn1L+gt5/TzlHzlaD78ipspGT/gy/
izOXZvyPu2fJ3++d/7eg/j/6XBXqWjCrbH8nLNT7xuONawZcPzUoPgapdS3q07EXK1x1ateQKXWu
F/SqJvbqWtcBPR4rFsbNuTFYcafD9nXJc83qzZExq7cPfDPhzLMWyIs7u6bQxJFJkXdeJRrcaLuq
/N7DST0uFu99UPGGdBuNPZ7maG1V8PXDt3sD57hqfeTdKdhhHLtgck+6cEbdYr/53V0Oxms/6dqp
peHsCeKWd3im7p9PyFv3lwc6FTJHnhQENo6mhbf20RmTX12uM3oaO2HEQS+nLkt2P90xjAkeciGx
UPJCdmz7wOxOHREjWl/73DX92e8DtnZL3uDi9vDz6DEn4ts/WlBQkbfar82FD4N2rzQe3NXhZdU8
B09ygGnXo4EWvSxLXjGHnbefDtlw//OzYZvuLl1e5FUXe7CPVM+2PxOQMLFPaniI/o4NG5Qx3Y8s
Cm4sHiQpXmgg6/YoWK+L6ZGFVpIzIY+dHm9/F3nC+cIV9+I2to6R1mmpT9q/XHZzzoJj/vk7R9oV
kbov+kt2zyvZa5e0ubZH4PjF/TM29l4sXLZ7ZcQrvfzvZe556xtuxR+ZKD3abecC87F6WWigy7qU
KXX3JPc3KY9lbhyYRFxo5Rq3ukJZPXDVhsqZ/Uyvlo8V9rNyc19O9a7sONFmd+XL0mOSS08t2h6d
+yLq9kckO388M+xI7pEHvZ/UzDold2jUPtix05UY0eIrX9wWtnRtZ9jzqHDJd3kJDkMYr0ERRAbD
7X8vX/7zZ9o//8JXOfIAl65p/JePydnmfz6EAvysMXJtWfNWAy4ZbBqIyyEo4Zv9+pU+Ot4g7+W/
+dhA5InPibDJsqxmQ1h5e1lSpWOxPYgBuSATFIJ81V8gu4EiIAZJYBAogLXukJ8BSzlg0GLbYut/
GaxFgwryuxdmFOQMcvvtUMFLEDD4VOq7Ojfdlmi28/OZsrc933UIYvdOeLwyTlZztGFl1dS3R6pN
xWGOxzoOcQq9TDzxTnL6K6XbOD3To1unfUYPpItqb1iNv/l4+EIdX6Hv0Ut98t67nFfETag2isqx
Wjh4kJ55205TalbE+JjGf3424p38leONw4OX97HBbAYfSr5vG380dOfkLnb1L95XmOmn360NyTtZ
Re8+ETvXNHitQNYuZP+k2DGNT7uQySc7Xo0uL966YHM3/3knZh/pNKHv5aGut5zHZfrEr5qY991H
+WmdSexCQdfd1a0ulvZ/nTXG6pRZekXv1AyjHktjxmE1Xi5dz46z7bOznTxv0/fCxWlfZOYfegdd
V36OW1yC2stKUOufNiLlJagBZOmqvHLy/1oW8Oc/Fzfzyc4y4+Yuyfz8szcCF//RQsh1VH8R8ZPL
5L7u7h4+qX/zSP2Pfluk0dfahp5UburmeDp88+jtN37Da85X9Gaautt02BCd3W6qzVX3gTMPfbz6
Mdl24qoBAAvcsGq8Y8SG7LzKvsZ79+ueXn5ndpXFlofjKc+vHVbMVkSNLMvNjh4sCvNqYxPb9qCv
y4b4YT5nCsL++mpS+ciSNyqasZ23vgx/tWHBm6ttnLEhNxdXVOwtVPjVn6WSFMVrp9ck+6WvnHc+
dduIC+Idaxo8jj216NPV5FCoAbLOcHqg601vz+N+M3ocOdRl/NwivTZxQSde6q5TTP0cUCVZeCrN
ofA1e7dbw8lR8b67wg7U6lQtMSlfn4+eDLfqk7RAvne5k/G+7qPcvmm3+XZ78wHHD3GjTty9c8sg
csquc4MDxTtd9A16pPis7f3ELA5g+Al0ByAARcwlOOPMVz+Rj6Ab0oDqoDiFETiJofhtgDYqAJ4G
NK+YRLEYhi74ipN+DX5IBm8uclgMkEVcG3abaMd9dUH1hQdU9a0G7vsMGFdCxYBEWaD+ogMCfn0h
sA+qKmHg37/UIzHkEeaNJWKh2HJkNeaFMiiLGmErkXrkAXIPBVgh1hcrwvph/bEB2EBsEDYYG4Lc
Re5gG7FabBPyFPMBONw7CXiAAnxAAwawQAtoAx0gALpADwih1AbAEBgBY2ACTIEImAFzVAfzQAWY
DPNE1oJRoBSMBmPAWDAOjAdlYAKYCCaByWAKmAqmgXIwHVSAGWAmmAVmgzlgLpgH5qNCeEvQx+RQ
fitgA1yBO7wmp0D4WwgWgEVgMagES8EaUAuUYD3YCPaA3WAv2A/Og8vgErgCroGr4CV4AV6BN6gx
thULx6JQU5RCReAx5o/5YS2Q9ch+bD2wB52x7dhqbDO2BYvF9mI7sP3YPjQW24nFYfHYHlADbiLP
kMdYHbaL+IRtwHYj35DvyH2oeQsgAckgDdxGURRH3iBvkRfIS2wddgA0gqHYUkyBfEI+I0uRlagJ
ykc+IB+xFdDWHsASeAE5aAWCQShQgPagA9xhO5AHeoGe4DCyGdmNHEaOI5eR08h15DxyA+G+KYML
OXvvAMXQCgGwxIf6H47lQ5sNx8qwidhi7BQhJGy0W5ofs5hnsdDis6WBpbllmGWMZQfLFMuOlp0t
h1lutDxged7yuuVLy3eWDWIrsa1YJvYU+4uDxKHiNHEf8WRxhXiTeJt4l/iGhJAIJUYSK4mtxFXi
LomVdJGUSmZIlluhVqSVjpWelYGVqZWllYOVk1WkVYZVthSVCqQS677W72yADWrD2ghs9G2MbU7Y
jXDOcx7garQspsa0RvIVb2xU+SMnvRhUQp8bjJVC6SdjS7AzhDWUHpg3QOkrLYGlsaXYMtIyTiN9
mmWx5WbLQ5aXLG9YvrH8AEPKVuwmdhf7iQOg9F3EBeIi8VRxpbhOvEMjveEP6WMkiZJRkqk/pNeF
0ptYWWikT7fKUkkvtk63fmLd2Ez6Y3b9ndOdi6D0bWqMasRfAZQeafzS+IHbQqMJ996wRh1mlFFD
Cvd8sbR58D26D3/u/D0o63cD8Cyae7+bruY8PaN5fn5acacGgDsmd+be0b63C3IiIRk9Jeq31W+t
3wDHzuP6PRlTX17fE9YSHq97XPV4+qNajvtw48NVD5c/rH5YBcB9Jce5Cftkh2QHgZ8YshkpBICn
zTOE72JeOG8+x6QtmPUAsE+05msd0jqjbaptre6s7aydo31G+5kOqSPQ8dTx1YHS6JRxLTrjuJLO
RJ3J8LlH54nOC/UInWdNu9R5oKYf9Zsc6dzW1P5q1nJB51GzGuyhc0fnC3xvUNW//V+PYBjED4g/
WCBEGHfUFOKOHxaHfMPqkAeYP3IYotNqGMcjkPXYXlQEseI6NgyLR75j1dgyrAZ5BpHGEsaLRIWD
9hAJ5RALPSCKKDQoMhIiYzsVkiSDFGwN6AyRhMOTfDAYlIDHEC8XQsSshJi5FOLZGoiYtSrM3A1R
E2ImgkPUvARx8wrEzGvYOnAT4uZLDjnBd5gsNgIpqALWYAmwA8uAI1gBnMBK4AJWA2ewCriBtUAG
1gFvsAn4gM3AF2wBfqAOeIINwB9sBS3ANohY20EgRK8gsBO0BLtACNgHwsABEA4OgkhwCESAwyAK
HAGtwVEQDY6B46ANOAFiwSmYBp8EceAMaAtOg3hwFqbAF0ACOAcugmIEA6ngOugI/gKdwA0Oh0E6
qAddwV2YHN+ByfM9kAXuw9T5IcgGD/AivB9MmJ+CHuA56A1ew/T5LegD3sFU+j1MsT/ABPsjGAC+
gCGgAQwFw2C4jEBQMBxBwBPiDdGCCCDeEoHEOyKIaEm8JxREKyKY+EB8JEKIUCKMCCc+ERFEJPGF
iCJaE9HEN+I70UC0IWKIRiIWJ3FPoi0JiDh4I44nEkiUSCSjSYxIInGiHa6NBxDtiQ5EMkkQKSRJ
pBIdSR5JkW2ITiSfjCG+krFkWzKOjCc6E11Imkgj0kmGyCC6kiyRSWoRWaQ2kU3qEN1IAdGd1CVy
SD0ilxQSPUh90oDoSRoSeaQR0Ys0JnqTJkQ+aUoUkCKiD2lGFJLmRF/SgrQkioh+pJjoT0qIAcQg
YjBpBWxBNXAAy0EXcIsYQkqJoaQ1MYy0IYaTtsQI0o4oJu2JkaQDUUI6EqNIJ6KUdCZGky7EGNIV
XlAewevLM2Is6UaMI2XEeFJOlJHuxATSg5hIehKTSC9iMulNTCF9iKmkLzGN9CPKSX+yBRlABpJB
ZEtSQUwnKshWxAxiJhlMhhCzyFBiNjEHZl3zyDBiPhlOLCAjiYVkFLGIbE0PpofQQ3m9efn0MF4B
rw89nNeXHsEroovpkXQJPYrXjy6lR/MG0GPosfQ4ejxvIG8wXcYbQk+gJ9KTeEPpyfQU3jB6Kj2N
N5wup6fTFfQMeiY9i57NG0HPoefyiul59HzeSHoBvYiupKt4o3ilvNG8Mbyx9BJ6KV1NL6NreOPo
5fQKeiW9il5Nr6HX0utoJV1Lr6c30BvpTfQWuo7eSm+jt9M76J30bnoPvZfeR++nD9AH6UPMWGYc
M54pYyYwE5lJzGRmCjOVmcaUM9OZCmYGM5OZxcxm5jBzmXnMfJgfbGMWIIeZhcwippJZzFQxS5il
TDWzjKlhljMrmJXMKk32cANmEueZ1cwaZi2zjlEytcx6ZgOzkdnEbGa2sKFsGBvORrCRbBTbmo1m
27AxbCzblo1j49kENpFNYtux7dkObDKbgiiRjUgdshc5is9DTiJXkYPYJeQschHZgS/AF+GL8SV4
NV6Dr8BXIbvwNfhafB2uxGux8/gGfCO+Cd+Mb8Hr8K3YI3wbvh25hfyF3MR34DvxXfhufA++F9+H
78cP4AfxQ/hh/Ch+HD+Jn8bP4ufw8/gF/CJ+Gb+KX8dv8Mp5S9FxvPX4Lbwev4Pfxe/hD/BH+BP8
Kf4Mf46/xF/jb/F3+Hv8A/4R/4x/xb/h3/FGAhAogRMEwSP4BE2whDYhIPQIfcKQMCZMCTPCghAT
VvyVvOO8E7yT6ER0NDoW9UTHo16oN+qD+qMBaBfUDDVHLVBLVIxKUCtUilqjNqgtaofaow6oI+qE
OqMuqCvqhspQOeqOeqC+aAs0BU1FO6Kd0K5oIBqEKtBWaDAagoaiYWgEGolGoa3RaLQNGoPGom3R
eDQOTUAT0SS0PdoBTUY7oxloGpqOZvL28Q7y6nhbedt4p3iHeZd5O3hneHt4F3jbead5O3lnebt5
59nt7D52B7uf3ckeYHexB9nd7CF2D3uY3cse4R3iHeEd413kbeDt5x3g7eVd4m3k7eKd4x3lbeJt
5m1BN6Kb0Fp0Hboe3YBuRregdeh2dAe6E92GbkV3obvRKehUdBpajk5HK9AZ6Ex0FjobnYPOReeh
89EF6EJ0EVqJLkar0CXoUrQaXYbWoMvRFehKdBW6Gl2DrkX3owfQg+gh9DB6BD2KHkOPoyfQk+gp
9DR6Bj2LnkPPoxfQi+gl9DJ6Bb2KXkOvo3+hN9Cb6C30NlqP3kEfoY/R++hd9AH6EH2CPkWfoS/R
V+hr9AX6HH2DvmWvso/QPeg79hr7mL3OPmH/Yp+yN9hn7E32OXuLfcHeZl+ie9H36D70A1vPvmLv
sPA+yL5h77Pv2Afse/Yh+4G9yB5lj7Mn2dPsefYye4W/lv+Gv47/lq/kv0OV6D1+Lf89fz3/A38D
/yN/I/8TfxP/M38z/wt/C/8rv47/jb+V/52/jd/A385v5O+gAX8njfB30Sh/N43x99A4fy9N8PfR
JH8/zeMfoCn+QZrPP0TT/MM0wz/CP0qz/GO0Fv84rc0/QevwT9IC/ilal3+a1qOF/DO0Pv8sbcA/
Rxvyz9NG/Au0Mf8ibcK/RJvyL9Mi/hXajH+VNudfoy3412lL/l+0mH+DlvBv0lb8W7SUf5u25tfT
Nvw7tC3/Lm3Hv0fb8+/TDvwHtCP/Ie3Ef0Q78x/TLvwntCv/Ke3Gf0bL+M9pOf8F7c5/SXvwX9Ge
/Ne0F32YPkIfpY/Rx+kT9En6FH2aPkOfpc/R5+kL9EX6En2ZvkJfpa/R1+m/6Bv0TfoWfZuup+/Q
d+l79H36Af2QfkQ/pp/QT+ln9HP6Bf2SfkW/pt/Qb+l39Hv6A/2R/kR/pr/QX+lv9He6gW5kAIMw
KIMxOEMwJMNjKIbP0AzDsIwWo83oMAJGl9FjhIw+Y8AYMkaMMWPCmDIixowxZywYS0bMSBgrRspY
MzaMLWPH2DMOjCPjxDgzLowr48bIGDnjzngwnowX4834ML6MH+PPtGACmEAmiGnJKJhWTDATwoQy
YUw4E8FEMlFMayaaacPEMLFMWyaOiWcSmEQmiWnHtGc6MMlMCpPKdGQ6MZ2ZLkwak85kMF2ZTCaL
yWa6Md2ZHCaX6cH0ZPKYXkxvJp8pYPowhUxfpojpx/RnBjADmUHMYGYIM5QZxgxnRjDFzEimhBnF
lDKjmTGENWFL2BMOhBPhQrgRcsKD8CJ8CF/Cn6gkE4jFZCJRRSYRS8h2xFKyPVFNdiCWkclEDZlC
LCdTiRVkR2Il2YlYRXYmVpNdiDVkGrGWTCfWkRmEkswkasksYj2ZTWwguxEbye7EJjKH2EzmElvI
nkQdmUdsJXsR28jexHYyn9hBFhA7yT7ELrKQ2E32JfaQRcResh+xj+xP7CcHEAfIgcRBchBxiBxM
HCaHEEfIocRRchhxjBxOHCdHECfIYuIkOZI4RZYQp8lRxBmylDhLjibOkWOI8+RY4gI5jrhIjicu
kWXEZXICcYWcSFwlJxHXyMnEdXIK8Rc5lbhBTiNukuXELXI66Ac+gf7gMxgIvhK3yQqinpxB3CFn
EnfJWcQ9cjZxn5xDPCDnEg/JeeR8cgG5kFxEVpKLsce4EfYEN8ae4ibYM9wUe46LsBe4GfYSN8de
4RbYa9wSe4OLsbe4BHuHW2HvcSn2AbfGPuI22CfcFvuM22FfcHvsK+6AfcMdse+4E9aAO2ONuAsO
cFccwd1wFJfhGC7HcdwdJ3APnId74RTujfNxH5zGfXEG98NZ3B/XwlvgOnggLsCDcF28Ja6HK3Ah
3goMAt9wfTwYN8BDcEM8lOpKdaOyqBwqk+pOZVO5vIe8p7zHvOe8R7xnvCe8F9QQajg1jCqmhlIj
KIKiKB5FUyTFp0ZRY6nR1HiqlBpHjaHKKC1Kl9KhhJQ2pUcJKH1qLrWQmk9VUvOoRdQCajHlQLlQ
TpQb5Ui5Us6UjFpJraFWU+uoVdRayovypXwof8qb8qM2UnXUZmobtYnaSm2htlOtqAPUEeoQdYw6
SB2lDlPHqXCqNRVJtaEiqGgqioqhelI9qBJqJDWRmkAto6qpWkpJ7aF2UyepE1QBVUQVUv2pPlQ/
qi81gPeO94n3gfeF9573mfeR95WaQk2nplEzqKlUBVVOzaSMKTPKlLKgTChzSkRZUmeoC9Q56hJ1
lrpInacuU/FUOyqR6kAlUO2pJCqZ6k31ogZR+dRAKo8azHvDe817xXvJe8uv4a/iz+Ev4C+jZlOT
qVnUJGoOxVIMZUgZUEb8RfyF/EpqBbWcWkJVUTXUUsqT8qDcKTm/ir+Yv4TaT+2jdlI7qPXUBmov
tYsKo0KpECqYCuRX85fy51NXqdPUFeoUdY0KoFpQbalYKo4/jz+XzWa7sd3ZHDaX7cH2ZPPYXmxv
Np8tYPuwhWxftgjeah+wA7jPlVCSHcQO5j5ZQj6wQ1SfMn1kh6LGqAlKsf2wFWwxdpAdyY5i+2ND
kUlYMTYSK8FGYaXYaGwMNhYbh43HypBybAI2EZuETcamYFOxaVg5Nh2rwGZgM7FZ2GxsDlvKjmbH
sGPZcex4toydwE5kJ7GT8b6Ygp3CTmWnseXsdLaCncHOZGdpxWgptMK12mi11orFErCz7FxyFfGS
XIntx1Zha7Fd2HZ2LbaeVWrZaMm05FruWh5anlpeWt5aPlq+Wn5a/uwm7AA+AB9IPCKXEI+JJ8RT
cilZTTwjlxHPyRriBbmcXEG8JleTa9h77FtkMff5GVKNrCLK4G0dEO3gfd1J9Q5wd+5d/cJuq8uN
rxoXcO/qMgANCeryry9yGBBggY2vUDiqsRL20AX/4EVpCOcqw+Ad+YiKXQGK4b0SwFv/BHjHTYd3
yn/3eg/+6xcShHgjLgh3/x6PyBAJYgwmavjuiD28fTe9hkM0PANv+vPBNHijzYE32DfwTlwCW7rC
G2/Ti5MvGHD/k5eq2o56DW3EFd6FAZrwBwEuwLs4QPRg+xl4GxwI7+Uz4Vp/Ae6TrXTwBNxuJqvz
j/cyKEclfE7iPnNSNXaF9TEqnhLezFPhcyW8fbf+zTa7AIUWQfuMhHa5DS5BVj/QDgT9WMEfcUQs
4L20At7vL4CZKA7+Qr6APXCNV4g25GyGO76N3ASpGAmlnAlewfPhDPir4UrDjcZXeBS8gdfwohWp
2VlpXTp36piaktwuKSGmTXTrqMiI8NCQ4FaKlkGBAS38/Xx9vL08PdzlMjdXF2cnRwd7O1sba6mV
RGxpYW4mMjUxNjI00Bfq6Qp0tLVYhuZTPJJQfY3AGTFWGockh/VQmoSkK1lpqFQgVrKxr2LclEBP
JJHqij3cUlw0vZSEkxIIo5X6ccm1QOGboiSdfu8Sq8RsBG8kcHCMSBymxG3gr7R1RpbSPiFZIhVc
Ev1oT4FjlKYhyRKJSInawN8o2AR/W2eIs5SCOMiXiNScKCWIS+aorvGOL2QCX0kKfE9IVlo0VVNS
/iTkVhhXe34TMxYpE9SyJiGhSqBfC9g7SmDAdXvlC+0coLR3goIIYEk1G3BTIvpvlIhQiRjEQJF/
XYIbdtv3DzoIy+ohDcvKhRrNSv+p01dqjUrEZeKyhGRdD1hUCR2tPBKfXMvQIdKQbBoygIoBamkG
chiOAacoqEXYIERVQNkw/1oUUFpQfXqcuGEc9VAqJqTDgjQU6g22CH+21DXumdi8CcBhTSWhuqQW
QkmGKHlqIcS5SkWGEkwQ1zrvKZtYJwBd053YLGlWRqdkJZYBO9QCzCYsJ0lpFh2XCllwKUjpOWLO
3KGqN8544rAccRmsc33T4bs0lDP6L/ysnOx0zk2QdGkobOOHJI+V7BEp9eAzTKnrpNSC3bQG3xNh
ZWHGuWKuWlY2VqyshOI2a5Vw79AJjKHoZWFSuBqcLKxHMGcStx9mU3ljVJbKOIoJGWJlcdceat/L
mNjk/5IygZL9IIHWgfaBI1UDNarMSu/Bidwjg9tmWA9x2YRs1VYnqrYG/VUc1iOUI24g9H7QDo5O
TQ7LkYb9XBBuHBYwm9/HSiRKEyduYFlZGCdiRhaUXi0ybPgpPxcTIicEyhOiVCSpHiBJZQO4oiIj
NEXD0nRI5YZxLemhKSkStd1hVyXPZizhKhWXcTPybJT6TgLJAdi2x8U5OiE5LFSk2r0SDUkOfG4s
eg7L0XE/2Igx7FPm9lyk1lF0ojQ6Xu0FOU1v6UnqAEZ/WB521fRXzXrSWHRSXe6UHC4NTy8rC5eK
w8vSyzLqGou7SsUCaVkty5YVhKWLVeGPQP62CSJl+MQUpSA9B/FXWYibTsz5XnhCtFIY35EzVbg4
J0MNHC2lEl+RRPdHn7h/1ayJOej9MAa4mCsTPIOysRCdROJwDmrqIEKIlAJfLmShQO2SYUxkqvxX
9QZjJRFOLuKiBkuxCctN1CgLeqbGeTgMjNdw4SQSCRdPE+oUoCusKIvjk9V1MegqWg8Ubk7Qjulc
y56mFoN2XEtxU8uP4elSaDfj6MT/4N/NfbtMV6on9nNT6V8FvVnKPUlwj598lZSvxvTCkGRMhGpK
qAjjSrQThLIApZGTaiCnE4iYZQKp+IxUKXBSEiHJe0QBKWKBLoQ6BPaJdOIiCCLqGelRhMNRoC9Q
IgFKxJDjA4irKnjHjHxh4w9HEoeVpWs8rfm2NIdBVs6f9wb7CKRweyJ1f109KbfDEyp406C2TTgX
VyKJukfrFKU2h81K7WeqNyivKCRZDJEIRm68qiAOE+dwxlaK00NVkJAias6ua7ydHspBIBSZ6yLS
uDh8V6v2V19zcf6njl4MHX3kxJQcfziLwhHuQOwFl1VFS1KyRku+Ik1EcWtFcVv5tf2HFpv6QOPD
wJMoZaZHjaGjmho/T/mTyqOTfqk1W0zV5vsDGZKSleFOTZOr6xFOoubVyN+ao5qaIXwMEw3mjhEU
BNdKkXHxtQpkXGJq8laYGIvHJSWvRxE0JD04pdYatiVvFQOgUHFRjssxuYqYq4BoBM62HqVU/UVb
FQAUq1pxFUNVz6xDgIpHNfEQkFmHqnmCJh4Kebiap1Dx1FlFmHEOVEGyFBo9S6mISx6aklOWnsIp
GxiqHRB6tjQIKFFpUC0Cb0BKWpodrGSkwRy/JcdvqeaTHJ8nDYbuD4NDzIV6WboUhj8E4GQgQlI4
F+bcBbUR1zU2QgQ9CZFXoiRtOkGCAMt3ShFDL24N+0VwlA7ZEcrizAxODs5NMQ7LozJTlNSPCWGX
KCUfzsDXzAB7hKvGcKcAHJQJnTVDqipCNgyO4hRlihO3aHIuN4FYDPOhSKm/krRVz0nYcgu5pZTp
Sd1Vxwlpo6RtxnIPPpSNA0IVRwSrcLEUtZJ4LJQ8UwqbMtPFUNs4yEyEzojbcr+0SM3Jhqc6bput
IlqkaQTqCGK0aCXflTureKoy4wonhL+8lBS18KraWE0HuLZAyUCJbJupUjMAagc2RXGywN+xUFSu
615umvg6kCAdCGOQE1o1Ew82w/thVAYEHPV4BnKkvk2D4VyUisXNcUDN5XE7Z1UJbVJdY410kKTZ
y8VZCk/nZM4xgQjmkAqQUvY7Q9kRAif1O1dLxS4ro7T+PECtL0rrx5NjisNyoa8CMTxToBpJ26iM
Cb56ni5Q27vg7XAMkQTsgTOQAU8QpDC3A8DB2Zxxd3FmXFwYZ8zbzVOobezmCZwdXdyB241LNw6p
3hC3k3pGfm5uboKT3I+H20mZHPHyDEJ9gjAvT1uplTbKk3p5e3u4W6AG+rCijRkYGBlIvRBdiS5H
qA9p6GhtZCvSaRUkllmb8NMDxoeEZwaZ6VgHOIttDXh6U5Fv30ks45sv8tDQ0MbRy87EzcNPGp2g
b+1uUWLhau4R7mAbFBjuInG2szcjey9e3HAPn/u1G/7xy2q4JwTe9QDeGt69XREWRl9IO3gZ0Grc
o2jDZyO1KIECPgQCA8oAMyhXUK4SqlwmAyjCx1BXVx7GK3dVuLosC3XFLCQSQ8ywXKKQWC0LlWgJ
dHQMUcRCYWkpowyH28Hcst5dz8/N9OSlk/BxEqrICZgaC547AWPBgZbNyvD6Bp9upqraITcnwSEn
uUykFing/41IcNL/ZskURFfqikqluh7u3t4+Hj8qQbiPBybxgtbT9XRF7bxwxXiJqyLmWqmzu0Sn
Tx9tKze30qtSma1UZKE3XvjNwcbJgCQMnGyJdg370kLsGsQm/oENPfwDTb8/4RvaOke2bJgeTBs5
tJRhXdwU9iZ0sMYidtAiTgiptogiAXBfZZEqpbjUQsfW0tbNdrctzsdsbZ0snDCLcoWTkzkFjOOM
040LjCHf2MDAHDMvN1AY6C8LNcBIPsVfFkpJbW1sgLHCyMjFAgzX/mmSJoPoAg/j3/Siy3XQ6AVW
BYc6Q2MoQv+/kIazxz9cMcVG3wIzMmimdckfjIMipMDIQfr9QZPKscMq0+wtdvOQMH36sFbursVf
vXysDHSJ4GC+sYNChnVW61xtGsw8NKihTcswM6C2AZENbeALFmtsIHPUwrSmKRylho7TZDJ9Ho4Z
GRotCyUN9WxkHpiVXCqFbibFwHAnhvF31B5u1qRhj3rQktuqrhHcrQcsGXlo/I1Tpu0/nNb4X84B
1WNoqFIP6gUR42+6MtBGDSDf09ZWVcEM8K9a9l7fP/hbaTcE4KyRvfn3t006Q7W87ATIAS07b5R2
ttclvsb42WoFB+tY+LRDpjXkSwNsTYW84F89NljHukVMw3oktk0LG53gYFbk6Omt1iDaC2rQDCRp
NGhgpP+rCwzX1rYw19VD/KCmfjggfOf0ovN7Z+NfOvzBJ7itocjfNuRgp099/VXwNFmQgzEUnDGx
9vflvqPJRdxCKKsFcARTNNLamYkxcbnCzEyfp++IOZbrK/SFy0L1MYLiUctCecbDra2dLcFwrSYz
1/8WQrp6wO+HlS3+/WS/B0OzsdxG0V836m5ooE+SUis7L87/4TECzxEeitDwtvHT+9Gw79/6316e
EdQ+q7+fX+/24bZfgn0khtRvxtu0Y/SBbLyP39DcnCGeqEYXRCzUhRwEgoMaXfiITJ09PJwxj3IF
cEZEmLOzNqLtjrmXayu0tZaFamNyK9QaQdBloYjI1MVvuKG1tKWHy3CeSjeCi+4X6vX8/NT60fX4
fZswzE3VZT9OVY7/fC2N2v7DlPAy/4vyjLijliR5BjBqjFSRY2tnp4ITLo4wDuRR1dmM9mrmRxH9
q4M8I+3C+nVtnWHX0jHRr2GEf1Ss1N3Lx1/b3jsvMy4n0Kh4ePtftSuxMmvXJ7rrxM4OtLhnwriO
HenguIWr2iiMG3ZFB1hr4/O/X3CKyQkaNw7GS1LjK+w8kQ31flWt9Y2MjY2LEbw7KgK0DSKNgEmc
SboJxsdM9PU5PFXo4zIBbJDpyBGoFBcXDMPKXYQmxsYOkmKBQOZQzON5AIUM2kCF8fUc6UKsBy1/
oK2fU0vTZhU9P10u9n4u7PyPF1a4CCFEmf77mVOEhoZNLmvnChMgLvExNFLhtxVJGnD6VxtHamVr
p3vDpF+fFl38XLt1jB2eIh/8cHZKVc54YYvkEL9UT5ce2UMmhRRem9LtRgYSP6CffUpIUMcEV7uk
7IHRQ1anCI0bbrbt7Gzf1te/XbynYsi09CGbMowMEU8O24NhtF+HHm4FyjT+basHoJNh2joKU54O
l0ModDAJApBloUBPV6Sl0BYNJ0lrqQaqLpmeFFw62RTunKMBD+h8J+FO3TkPNv3Xs/0I9N9Hpah9
VJ0Q6nLnG8E5JIdxyBBHuTEZH6Bws2LG43PGCw1FFlYeDpGq4y6YZ+TYSobdNwvIdkHSGhaHKlws
9PjfRJpzDsZzQOMrXIC9gtmrB3il2W8M44A5LFQomDgGLWAQhsF1DCwNRhhgNGYgEgkwwWyFSGBv
WxNqDxAPzA24CdxQfRx3w9xm4oYAYexxcamHhxelrzBwHk1xUX7B9CR3dNcbeajcizvJ4VEFU67m
TgE7dO6jQcTA/+ciKKAM6mn/0zIpNnYqX7L18rS2UQMlDHwpVDX0O0MDzVmJqVxP5ZhotU7CvA7t
R7RCJIitY7Cra4i31s5Ogwd0cRs0LZLU0je3b5hoPG9GaIBrgmwUERfZsiBq+grDtM7ZDuKUtpvh
lYBVTB3RMDg4UmqgRQcjV/C8nKBW8gRX6HUdYXwvgHawAIUaK1gImGJGiAlnKxgBwHEzzGwGbihQ
6AAEERuPUoEnlz5Ad2sKWdUmodOc4DRo8PfhPzXza+cUxEilh6aIM5Daqu4eXMTBfWNxMV235F29
N+zJrPjFwYd0AnxtQjwsnLvG+XdHQOf0xMa3S18OMdJ/3aW9Tcc5/fot7uAO/Yrbz2e4HxMgBrs1
O/IXCzHxbEWBENERWgrbCtOEuCEmFNIYDYFjtoIWABOEwUwwDCbmMxSYoQnQKzU1tRILS8mmY/T1
IXfQzJYtTZthemeN77j9l8v84h1/mDHFprl2DI24H4lKMz6Yymd42K1uR0oePx10c3rH8V3FtkJ9
5PsYZERJm8ERO/HIuJiO/M15qY1fq54Ocoz2ahmf2H/TKr9IJHrOzPnToeX9Id6MJWaDFj/wxt5O
VxtzdHCsCRU4GLSwEGHwBwoq8PWpCfUF/ghVamAQ2EJcKvuZXLRsqXFyCBs/ckBOGeb/di4ub/zT
uBREvVeDH/kiqjohVTgMebiKh3M8zM7LxkMXOdNxSnTvgT4Ya2ArahC5SbW0LOX2tok+GMnoWZk1
GFpYCbVxjNa3dUQMhmGd4kPiZw9qmO4c42quDxMvxrF1GkJk5QdauMW7Ngz1DZSYGupBPk9oYhem
wNj28T4SfSpY+/tBLgfRbghDThD5AANGoE6jsxYYimGZCh20LYo2oogOuhu9BQs4H6ACFBVgqNFK
AwP9mlADHT50hFkKvhmCozReqq1tYqwB7kMHBAc0zsVpRXCfc4EunfsUavxK/l8v0eRZf5guBYEa
RLg7vZ1Gt5wekQMNLxBTh4y17WUhQWZ8EycrRDiMyH///svt/kuGdjbuJ/Lt0AZrJQ+wFvJg0qvx
njPQewJ+aMLbwb4m1AFeD4GzM4z/hQpnH1PnhTKZn7ePd02ojw5BGWMinqmpqCbUFOh7+tFkkLN+
qaQpGTsAHUqTixlp8mnNXUJ1MrVUqcLpv1nD+N/PloIg6hSWO/jVqZZB05WlmYdxl2svTy6RhxiN
mSCon7e9RYORi9QjxlRsaSZjbTx+8TLDoRKpvVOqq6AD8s4uvTs6oKGknUIEfYpvaxoRXWQn1TuR
Fumk9Xcf+7ZJ2zK+pZthGKtQkAHpUMdRUMczIJb5gRkaHTsZoX6YqYlpTShiYmC30sbGuibURsde
V9sFHuwzFC4Cj1KSbGFhbycsteAUq+uhqw7TH5Gm8ohmcSr+TzM2D9NfB6syWJUP4Zr4/Hnh0/gV
zygIVX2IpIpnfEaDyNVai9QyMrM2s03wZW3cGsxlNlqE0E6G6A3XYYO6dPdLyAsxV0VzMOMUlYYw
ER397UxYt0S3hhFprZ2Y4GAtx8g0ZF7rCCcRHUpNxXxa2rillrRvKFfHNFCfAbgH1JsOPNU6aDRn
DFRnEjDkQyCareAL2FHGxmLBKFxzntU3RaAm6AS/9/8RU+owIlTHN7c71bUH4U5qTYJOkmiL6RcH
ti7d0vPNh8F3GjampXtFOOmldQ5NsBV0v7tuzIHiwMYPa58WojoXznt3m5Jy+WL71UBtb4yzty3Y
o5HaVxdhACWgUD5G4QqU0WOsGEwXxxmMgaeqwHaltbW0JtRax9DE2KQm1JhS8Hj2tvD0MldFlfqD
lJ8XQM54mvxEk+LBOwq3Wdf/bplm98J/MSU82Tkghzm06kTH/uQbyHGtqLmpgSGbdH1cDb1chKS2
o3uD8Kc7YPFY+zZaDc/8g0RyD0/Phr1pbZz4v5mf05oNPPFR/Bq80VdotOYs5NeE8oQ6OgiL6Qgj
FAIdMwUriDQzM8bgD3f06ukBfYG+NqWvPuEPwTAXHPBzazriD7lx9wT1blTeIPmPM/44zH8b23SI
63LpnY+HgcRAoqtOb+ApjiZPjZsxfVggTFCIl4h5w10DdxszZ7loYHTg4iWoWxhtH5IX/2VYQ2Cf
PA/a1JjbbR7EBCN4H7MDEzW7dYA3Rh0eriAsx+voONjxdAwtDVEdzFAk0sP0FkHowe14dpjdXAXv
58eJzRIPxM2Dy28uqTPlk6qbwn85BbdL1UdeGARTb5+mMOAyWlR1mnP3Wu5qi75ppbBh+xp9y3Nc
VJjXx7dru7hc442Dy8a2nb4tscW01TFjxO+Fbm4Nc4PT74wZsbQ8tvewPoOfye30245NbTtubVX0
HCcaxndvGN/pUAfGwAHUaLQgJ0woE8xkvoKijAVaiDnignCmQTBkvsKYJ7DCrBYpBCYIYslOsLNz
wi0n6P9IYnR/GP5H9q7n13RWcPqw+UdzNweIv00Cj10S8Iw02Y1+U/qvZ+2DcOHxAz2wuusNr1zo
2IVd+lYnFTxeMe9W/4NIj/sN3+Ttg43obrkB8e6GaYQ4iGj4+hb3ds+uGzz6eOHQN2ueIIMfCL6n
msst/aO21Lkm9ouYMh1qqjPUVFuoKQvg9lNTKKKHWHE7YCy1LTHL+QptbQtDQ3jvWaQw5FmodmUB
NaVHm06wtZW7TtBrgkjOUZpp6sfHQXCHKi+AmvpHczfX1N8mSbHxgoc550U+P25JTWpDcZ5QdRyr
rwkCJLyV3L+7nUxhw6djZuT0r04Y9qRy8Y1eKxu2Pzhgo/CTC5jc7BbxHoZOkQjDetm5DZoai3vJ
sjcNGn22YHTDxq8Ns4/potXa5g6m7k4Hzrom9QtvuKH+70Xy0fsh+0zmpekEvAeM+qtrWx/MDuSe
5wwOZ320/D6f/kpxpzRf89/UkHhzG/wAYGjYOp3++vt/Umu1JUK5v9rArvvVRPg0fiK8QTo+E3Qn
lsDnIki5IJ1whvVDIB09AWkbkBJFkJ8D0smDoDPMPzsTU0EP/DHsB59ENGwTgSTCHAQTuaANIQQG
vFogwt8CA/wS0MXHgTjVOv+AeEzjG444eX4nTj5iNXBQyfgfSCV/c4J7Ic6o9hOg2tMJ4ASJhBSo
IUsNP50Y8+uef1AhMCDSYHu+Rgf5P3XxT4i3UK2rJuJ09jupdNhEnC7/AXG6bk4qnTcnqP8mUsnL
6fAVXD8SBODbgSu2B3TED8N6S9ARnQ+CcAdgjR8C/mgpiEJ7Am18BywPAP48SxCFX4A0WdWfG5uO
1YIobDWIR58BG8hTwDmEZCaUwRMIuDJ2EQSr1vkHRHZUEyfP70RAuzTJ+B+Jk785wb1AsoX7kan2
VAoM0NLGO/AphWQPidDwo/CXqj3zuD3jR2EZ7hsbqt4/uhMIsAmQf0GjBw0Rb0CgSif/gMjrcD+c
zpoI6u53InqAIHQaCMK+ARtOrxgGZCrd/gPidN+cOBs0J84eTYSfgPJPB8mcD+CzG7/g+2CZD3VN
wKcDSMY+wOc0WPcByWgVpHI432PIvw+SSQDa4dch3YD7mgT7cc+dsO0SSMHLgB+cMxAfAnTJ/XBM
AcSBFLg+gGty6/wDIn0aP3LEyfM7cfIR2sCbk/E/EpS/OXF7IUJU+wlS7akKWKNVja/h0x2SDyR9
DT+Z8Px1zz/oGfDE/4JzX9fo4HozXfwDIhepddVEnM5+J5UOm4jT5T8gTtfNSaXz5sTpv4mgvCod
Qvtj7tDXSoAneh4kQf/ugDmDJJQHWmJmwAUrA4HIBxCB3AcmMA4CkecgkHAFEVgFpExVf25sB/Qo
iEAPghi0JcSTCaAV5g/jbiuww6zhOFhG74BgXgcQxH8LgghfEMTrCssNsCyG5R3wyYPPJZCSIf8d
rAtheR18PgUJEHPj0AjgDUkXgO+1kFbDci6krgA02MH6dzSi8QOkx7BcDqlUU3/0sw4Gwvp+jmC9
C0eQh8P6F1iuhDQD1vmaepW63vgQEjyOv5dAguOhf0CC5XMcwbb7kJ7D8hxI42DbXI6gTN6QvGDZ
C/LhHADK0OACy6/hMxe5DozRQNAS0mxY7k66ggfoepCnorVgA6QVHGELQCqkcI6QepACKbDpiblB
P3H7+YTzyDEHIIe4kdKccJdmZA2JgTg2FTyCPpDKEaUhUkPYRDAD9QJjOcJCwUpITlgAqILkhL4G
eyH9eELbtoX087kIhOJWIFtFIfC82QixrCm/gOcnIQVy1fnMnUPcebwU9FCdt/CcJXwbPzXlFv+n
vS+Bj6rI+j19t+4kkERMIGyhMbIGggKCgSj7GpCwyRKVdPp2koZOd+zuJCIKLqCA+NAZFXVw4Jth
dNRxCKOfDxfQmVHEDUQddx1FHZfBbR4CinDf/9St2+mEKHzzZt7v9/2+duZ/q251LadOnTp1zqmr
gSwvEmfmRtSFjaE9Sn3EeTjZ+oexGHOAXWE8hPeDNFn0/4h1wNhvHVD/bh3gs9wYjHeUifox64B2
EHPdS7/StlCVtsp6BXrgIvUbyP3dVKM9b70oyl+D276Z1mt/oalaMXXS3kP9S6m7uh7nMvS2bsCO
3Uq3ax+DR6+gv3pS0I4MD/jWE+/TrOdB2yjDRB7jcf/cN/cJaMpma7M4A9DGgagr9a7Utb2EzsL+
FHrKoIWsh1j/CJ3o6NyJtr4FP+cL3TuTBgg98QfrS/1mGsn6Vj9CA3GOTBX9o8+EDoeeE3oIdUV9
1FGm0uOQy67KVGs90Q9HWCYdsJyqQ+gIQ/C6D9aK15PtoDrK5/V0X0dZWhn0yVsoY5jAg5Qu1nOX
tBF/K9eS7TispfYP6mtcCN5iLfU/0wLIQJnHSxWekXSJUQpdsR7tzkD9m2mi+znRZy6PqY2EDboU
7dfC/mSbSdp70nY7T9htkgb3q3Sa+yDq32OPx7QY48Fbpuce6iHsjjXgRRzn8DM4C3fTQLYfjEmU
Ax18rp5BFzIgj1O0v1KOvhnpQWn/7MU6PGPbKloh+ICzVT+OMrZ7PkOdXTTY7aIp7q6wD7yUb4RR
NhPj/IPONWYjfyt15THVLcj/jHqjvJzPfseGkfZIAdtfDg3GFsoxtou+e4vzfC/6LsDYTM/DeF9N
88R6b4FMsEx9hPQw6MH6G69QjpaHfXcBZIGRASzCGkGmWDaEPBVKeeJzluWpktL197GPWZ5GoT7R
ZHeI5ruXIX815oSzEPOYr3lotltF+hJl8ZiwLebDxizmfsRZJs9iR/74THVocE+jdHd/5PfL8UCD
fj3yTM806qrUWfsY0J1+YAbOyzuBYqHDMmikchj7VqUrVR9d6V5kw9hDYYa+lHobu8nUHqRb9HzY
R+totEh3APPpMrz/DGkj3pvEOkZpFMpKRbqDlmjPWHfoPWk6yoqRFvO46kU0C+fgJZ5K6KlvoDfW
UUwdSn01HTaaBv22DrZBZ8jkOshnZ+y/dbQIWMj1gLuAS4ErRL110Cdcz3636+2gS9XZsMdG0XBt
gqBjqDaXKrUmCmvT6AK8VyBfxvWAXwIhYIWotwP970C9HbRc1NtBF6srYKOvAH9WiPxiYCKwArgE
CALzgVlAAKhmwNZdBQz+/9GWjhz3u1dj3fYAq+Ej7aGKjHRB+2XAMpn+QllI18j3nwNrJIrl78mI
qAbWcBX1Mg5SLc6OMrWaigwvnYW90ld/Gnx9gzYZ28ivv0ldtMtA0zbo61Okl/0jli2tivoSWXOB
acDF0J8dgCGQ0bXAYujRDQCf+Rfb78euBq4D7pb2gpP+RqY3ADex7XCqvrKDE/1f6w/J7wm/tqU/
ekbyO3RSm3B8TOPattHCz2zhz1nfnNTnO9F3o+T3hE/W0ofqnPyu17YNxx/SN7WNFn7RKfokCZzg
Z8A2SHp3/IdWdv+Y5Hf9ybbh2PL6822jhT0Pf5jPUuF7s77eQ7dhPqYeRvmVwGKsP/spfwdeB03M
T/YrN1rfqY/ReHUYbPgvkY4HugH/QZO0XBqv5AC9UO9llGXBpmuCv/gi8C7q34wyTh8Sv02AfTQA
fQ1SV1F7fQblqpfDR67COVBAvBdKbBxnO70C+Q8kumFvHEJaLfeGsK/tOgKQhONTgB5AnjLp2EfA
V6izF4DGP/aCjeMeuX8YfEY8jX6/Q3kR8ptsO53HPvYAsAj4ufQHeLw66QfwPjxPQpeoBRrR1yYb
xyI2fmD/4mz0OUb2yXO4ENgNwNc43l/qADnvY6/Y9Y5zn8dlmwdsOo+9L+cxT2KBTPmciwMdge12
3O54OpABZANZUqdU2OMe7we0Q559jnNtWJinxfM8APRJ4vtvwEeHX08n4RYJ5zfm8/MSr9tw+j72
nMQfJA5J7JTYKpFvQ9AMHLMknpXzZj9sl3zf2ZweH27rwWP3AaOBwE+kZwAzm1MxVj8bx4bBNs8X
9urZNFHbANuMbc/fUT+jXpSXavdCt3EcswznbtCKijhhF8pV3qcLoS/z2S/xdKR5esRqFPG766EP
H0N5B+yrYpzBtl/ST/gmmyik34L+6mW8rRbj1aLfK2hKuocq0i6DParB/nwFffaji91vwTaG7sY4
/YUObiu2lxQT1SfKOGa8WY/zGE7f/Jsb9rXnAeSXMs12/8nng/KCtVHMy9H7TixSjidseLbXb0D9
HyjoxG1FPLVVLJP1vfiNY7NRnKts03dF+9HgR5C6sT8nxnwUtuNdaDMHNpJsw/6Dg0RctxXajOsm
xaVbA/PS2f4X/JFoEbuVsWsHJ4vhCl/ls+ZY7SnHbH8sbns6+CDj4onYeFJ8PIEr4J9dYT0Nf6Wf
GPMD4K+2zyxkmH/HmuOM6CLids9RgfZ7Gb+F/a9stK5hGD/QCO0RnLGP00TlCcoUPu0L8CEeQN3t
dK66E7bMIeqlHKVe+jwZF/yG+qofo01fGuBh33s/jXCPwvmLsxpnRxcZ9z0x7jidZifHcHEeHhBx
V46hynNafQd2/xK4y9wv//aq3W+yHaCstDZxLDbRZhsN4xipM45qwb7eRSPgb1doy4WfMTbRvnWs
lWOd+1D3HPhYuzFP+FHG55ABQH2VLhCx1lcw5wb4T+fREOUecjNETHsvfCW0V45YT7EdjjOvWBlI
96uP0/3Kw5Sn+GmlEzt3kIiht0Yb8Wm2IZPj7K0BPnxqA2vLPJQQMehGOg3oCbTneLyD1jHpE/jB
8Xr2V5Njzz8Sf2Z7Ihltrrm0nRJxZvZ7k2L+iRgzzwd9JGLRLEs32/FtIZcXgaZ86y341yP0dBoh
2sywPsOanQdbZLi6iC7hGIu+CnbfTtgxv6FZ8CtnizhwJg3Td6N8C9oUQ5+zbdWLFqmHrGXazdC9
PvBqA12gPEl5HENxL4R987Z1p4jB/g3ty9D2HvSZhb1lx1BsO+od7LOv4Xu9I2Om8JuBRdo5VJam
0/w06CejET7199Dp0MEeF3xB2IUcSxY0tBWfTYprYw52PPqzJBsxr7lv/s19N833nIn8BzRTxHxa
2Z7Kr6yHMV63RHsnnuyMx77+cGn7rcTvTuy93wl2abmwJfk39tcPglfggfo66r+E/JuUIX4bgjGb
KFtXUP8FlKONMpy2qh/SVuVVyleK6ebEHYIDJ1bfCm3F6ZPvGlrDic8Lfkm0iMfL+wgHJ43L3yjj
HDta4qRx+B+LxS+DDpd3HYn7juQ7DwmxHugjEZsHvwS/F+J9I9IdtAA6fz7ORREDFHLuoQL1Jrxv
p41iT7BOeRXgMwF6F/yfpT0s31lnPUk5AptoqDrT+sp9Ovbqq9Y1Up9O0e7E/l5uRZQ1APalrkLX
bQBPfsl7GvSwnl7J3wEdh41lwa48zjbcQWAG3lXYVR8i/xLS82379NifpB0dAi7Cb2xnrwb+t7SN
OZY+FOUcu58hcb60M69tHkfY4ZfYZcemy7Qm6X2zxEobx+eIc5rtD2nbcSpivo9YX3Aq7AWu05cm
GWuwR2+iQVoD9vGb4NUWqlLfAE/ewJ59DX4nLHXjS/hxt9FybSsp6n/it4dpoJNyjFf9jm4XfHya
SnCW34H+C9StZIo70q1459jxu4l7qtmJVMZaGULOn4WeXUbD9UM0V72LeqtPYI9fyLJuHTDmW3uM
Z6w9+q3WRt1vfWtcbe03wGGjB8qGY163yTv7ZvxkG/cfYT/+0Trg2W/tSZtp7fH0sDa6v7C+Tcuw
9qdNI/Lci3aw7o2v0Mf3yP8HkbsT2sOi1+GhQL+SAavd0xFte6K/ydZGA16B53xrv6c76l6BMje3
R12Or56krqcM9uoaovTN1p70+0HTy9bGtLl4323tT78HqWHt0eAt6d1ASx/kL7A24hwnfby1Xy/A
Ol2DsvZE6rdE8i6/hwHPzL0M4x3AHOD1uLdY+92fgCZ4ccYjaPslUkiR+1uUw4NzD0W9J1D2GH6D
nAiZeRzlz4K+c9GPDrr/ivdvQDck170e9R9FCuXCdw4nq+tZTpPTJmIuszHHP2GO6zHHIN6XYY7w
cNI7Yw4H7XuCfyfEHcdPQNx9/Jsg7z26KJutJ4GdyF+F9HNgO3AbsE1is6w7QebTkH5y0rt0voth
JN2n/DPgO5h/F/7LcaVThHvAyXGye/G2ztn/F7ifPzlkXGwqzvOvgS/lexfkPwV2AR9IvOTE0GRe
3Muf9G7dOdeT9O2pgu/B/pVwHz85hP4utL4w+kO/XAV9Vw79PdQ6ZEyB/r0CuuZt6Jfnob+fsL7w
7IQeycH7V9Dfu61Dnnehv7OhWyNox3p3D3TP36B7SlCnE3TS3/CbDp10Lso3oHwh9G4ldM/l0Ekv
oa/7oZMux/sd0EkvIC1EP6zbfo/6u1Af+tc4jH524f1j9JOHtBHlq6HbxqL+QvTThH5uQD8L8b4U
/fwOaYa1R5lEm4Hrga3ANGWS9UukeUh3Ahv5Xh54GLgF2CrxK9kuzb53p4eUtbRKxK5vodnsA+tn
UD/4zHz32E8vge39gbx3fAS/PQTUUj/jRthZ8JndxVQBmiuMHraNIOITMk6tL4AffinqrYSNvBzw
o94a6w0Gj8f3mfo96G87pes7kD4v4gllxnPNMRXxjVpSXMS5A+WYTOIeNDmecDNN5DtIB9wf32fy
Pae2yIpq74l4QHvMcaK7iiYan9IY+CZlOK/SPQrfj1O1MQJzKIMvtBl08Z1gOfXU9sJ/2kc9tEb4
9lfb95baFzQFvtEU7Q/UW19H+bDZpxi9gMdB3377eyrnzlJgHmUby/C+Dzb2ywB8Nj3bOsTgu1Dt
dfv+U3tf3n/uosF8F6pcCr802e9n/5ZjAYBzh8r2ZOIeNUl/8z1oixg8+uT7UL4nVfdZq7XzhT+Z
wfauAftWPwI/+3QqMmDbGuzfXgdfYTTlC/v3JcrRK7HvN8F/24Cz7Usaxn6dcVDeeRZBRy0BRsFf
/A78gI0N/Tzf3Rtlg6S9xra9E1e/lXKNp6hYz6XJuocmsw+lP2cdZbBO4rtUndvWYh0GIS2170aN
nGY/Tfh5Sb6Wc/+afAfbQnd5wLdKSnfA/fFdKt+xqh9Zq7QK4VNkg7Yhxi00GPyeqM2BrFxA6e6z
0dcd4MetmAP8X30e+phK54CnFUAJeFSujadS4yy6RNxr7wPvl1O5E++A/1GuPQhf+DH4AH+mcUjH
Ye/NUDXrgFJFRZjrCNg+o92dwPd9wG2wp6diTlUA28VbqJvAXSItUcvoPHUufJo7aZqIJ9xtXavc
ZV2rTqeuyu2WX/k1cMD63PCTi30OrUB+J7iYxkJeBqmzSVfHUrq6GOv7JgWM3jSN7+ghN7Pge5ZD
BicpKyy/1mQdUB+lGdrTtv/jtHPzvloOHBTffPbSPgK+ol5Ge+rlnkHn60HId5aIjxVgzPuw17sy
tEus7/X3rINGBZXCH8tXP8NYe9D/fuQPgx8f0ljlBvFNYGfttzRcfQqytA11b4OM3AuZ/gTr+yvY
8r/DejxKmVi72ViHuQm5n4a+tlAHbT34fg70wAoaqn1OVxnnod1BWot9kG5UghewazF2mboTfd9E
XvFtAmgT3xygD/0/qTfvR77HgW/3rbjLOQwanbucWTTiJHc55yXuczbRVHGnw/c58i5H3OPwN2GD
aaS6luZpd9vfhznfhqlDaLryNA1V/oiybjTQdYgm8Ldh4ruwG+zvwpTXQAN/Hya/EUt8F9YJ8t/b
/j4M/WSh/2vUS7HWi7C2EdSdTOn8vRl/T+Z8R9ZWHeNlyOpe69fQ5xXKbutJ9yTrfe0HYJ91n/qU
9aR6BXDYOqQOt95Xj4G/C6kLfLmpWgfq7N5IvZTfUpbytmXp7a1j2j3Wd5AHl4jlQd9wbE7/UOyd
lt+9OvEzjpPdaEWE3hpK2Yk45C7pm0MPsl4Se+10ms3+NPvuKlnfiDjmt5Cd1XQef2+nfIb5VKDO
ezSKv7lTPFjXa8HntTRGyac88GKsQnSB0hfn5xSciwNoCH+DB/5fAD5O0nuBR3swzw/Ar0uplPmt
XY49J77Fsw4pU8D3B8G7KoxTjbF9gqcd+Hs8tRHIQf9vgJ5a7OO1oHEtTeBv/cT3fH+mvqoHKMfZ
xt/y8Xd88luL5O/RFBeVAhOVC0lX5kL3OHfxD4pvL0zXJrpMGUYDgcEifxHlKMOgS4fBd74EGEZl
ynkUBhbhvSAZrg+PH0df+Ty2nPd0/qZQWYQ5zSazNbSclkBZb6SdgU5Ansx3RrkHqQ5oSammzrYs
LQcykWMdl/gBOIryozLfAuiH+2sHZLVCazo6J/3WHsjkPMoVpKe3Qgd7PEFvC8j6hLGt5Day/8w2
aPkpOhK0nEiH6J9OQkeH1rTL/rPboOVkdAhaJJ+PnshnsS5HW63NMbmOLdaQ8yjvhbSLBK99rlz7
lnQMoG0MZR8NFN+wDIKMIQ89n65Mh98x3f7mE/tusPpb4AHI5R+JXBshr2tg466hK50UOnKwGgYe
Qv2HsR8+Aa6kwcoHsKmCdA1D6NUBUi/yt7HQpVrSf2mZU+V+En/uzjUXZWGkW+w8RZ1/j8N6B+hl
p8dnuu7E78+g7g7x/dBCbRx9yt9F8d7k70OVszDPR8nUx2Ov/Z7uU2FcKLuoQbmANutVsJV2UDUw
Q6ZLhL7bQXnph2FD42x1z4V9uYPG8/czSM9Onw9bcQf1Afh9lrbD+j/y+6MG4BzY3ZPc+6zv3Ifo
SuDipHQxMFG+r5DpYpkPGg9RDGfYRCd1X4L0K5rI0K+n5/RldJv+Pd3qfox2Cv3yF9cn2l+sm/Ri
6129WBlpw8lb73qGU0jPgS08Ezp5BQ3XvoZN1wO+QD51whm/UNuN83QjbcJ6ZalHaCBs63LY1JD6
Y2cBI4DBwGQZAy22Y5X8bcEPXwPwsH54HXhbnU9ZRIefAOBtHe7h3kvnGPthe0yDnwC7xJ1pfZL2
OGgogQ3G363eQz3SroNf8AIt9tQDa2g9t4HdV2HEaZn+Mfh/E2zIz0H7UcjEDJwf22HzLaZR/J2f
Z4P43q8cNqwNtFGbqNx9BuqUwPZ4w/rePR62Y7H1uech2I/HwD/+HnQadU3Lgp3YGXXLJdBG/ZjK
034BGfmQZig/hw6swRm0mArUt6i/WkfF6ks0SjWhg99HupeKuO5/B+h/Bs//AX9sFHiyBPtjHXTM
EloH2XkIPuM0PY9KdLeQ+SnwDzmdBlsvyHsI56qJtNSYTHP0Tlizr8V/2Vv8kbmfhlIHrXnQhj4M
2P/jML604akiSnsJ3vPOFP47od1EG+072sgc3YysqI3s5USn7W/G6V2Al5uR65E4lEIKKaSQQgop
pJBCCin8u9Hx+5bIO7MZnS9KIYUUUkghhRRSSCGFFFJIIYUUUkghhRRSSCGFFFJIIYUUUkghhRRS
SCGFFFJIIYX/8XDxX6Ci1eShNWSQQtk0iKqI1JddPUkVf6tqkDLC+VNVyu2JP1uVSSHxpoo3U9Vk
3kWZao3MK+RRG2RepSJ1ucxrlKf+TuZ15J+SeQP5d2TeTQ38b2uJvIf6a4tlPo0marfIfLo7XXtL
5jPowoyPZL4d9W03QuZBc7tKmQfNmd8n/v7W4KwqmXeRO+t2mVdIy9ok8yp1yvq1zGvULutRmdeR
3yXzBvIvy7ybRma9J/Meys3uLPNpVJBdJPPp6qrsmTKfQYWnvybz7SgnxyXz7V3TcnJlPpOG5fp4
JbQ05nPuBpkHn3OPyjz43DFN5sHnjqfJPPjccZTMg88d58k8+NwxIvPgc8frZR587nhM5sHnTn1k
HnzuVCvz4HN+o8yDz/kvyjz4nP+tzIPPPW+kBRShevJSLfloKdJ6ilEAaZxqKIi8F3IWoTDevajB
73X4PYr6QZTFkTdRVinachtuO4Hm0jQaI9tGk36pw1sELerJL3oMomcvNYqx/Hi2Pa79znX9FEJb
U44aRw0vcvx7HX6xZ+BDPVOOFZQ9+GVfAfEsQknrefPvIZHri1b9kAbwW2VipLaoCp/Q86nzqLl3
U/RUjbIo3mOoERXciOPJfbc9d3v0E+kamcQBnok9l7gYr06shk/0b8/VREmjmHkE5T82U5vPvhY8
DYh1jcinPSs7X4+3OvH0CmobxGwCiX64Zgg1fnqFagTn6mgENN0g0Mj/KxIc9QsZigFVoia3rEWd
OGbEM6wWc6xDD0uFlrT7jSHP1FTht3qMzy19Qm4uo3sx/mA6i86mc5CbfsIYXhonZurwz1kZlqMx
6Csk1i6IkWvESM5KMkcaxHoVoQefWHGu56OxaB9C+YljjRCjJdf1Jmr/WPmFYqSYpMpLwzBeMWbT
sv7AH+3HXm+fWKGokIOA2BdRWiJWtCpJbtviTrV4rxdrate216ROSGJQ8KLov8DX6eIZkSvKo04R
9FQndooj4XNQEhVSNUfWbRR9LcEYrWdZI/cm77qA4JMpKON1C8tdVZWQ6DD4FRP0OrU550varQ4N
tlTzDooIflWLnCn1mt02ed+Yoi3PPiZmZcsP03G55BTPN55EcYNY36VCazTIHmOCu/4TqLE1rM3R
Zg3CfY4XfKgWJT4xptPG7j8u1sf+hUdmzoZE/wEpH3ZtW66D4JVdGhUrFBW72l7DBpFfKurGBT1M
44CEpg+JFjWCRp61vUN9kg9t9Z7MKYeOYEJfNK+CreVsvtn8bKZhidS74cQa2jvVl6S94qJtWLZy
RopIbWbXqxU0hsQsbc7OSehMZ515XerkPO1faoXccy+2ZNs60QdpdGqFk3ZZUPKDa8USkhRNnMwB
KXGNotQv5hsQ+65G8Mwnzg9bKyRzsR7j8embfIbExD4LJWnoSpH3Jc05KLhTKc8n55QLiFa1UmfH
Ervf3oMmdlBQ7luHU/MSO6JtHWRbH8k70S90efJZ6OwdZ7/wqA1y/ViLe4X029IxIIlf3qSTa2Ab
nDpxT8WEjNYLnelwJSZWxdb0toxHBcX1Yj2TKW/mln0a2KdOs8QEWmkgmwdh6iPaLBa8iLeS89Yj
1IvW9g6NyfPcj9LmNRmRNBrTUS3o8In2jWJl7bm0pR8DOBtbjtwoJLNGnhZ2P9WSLwHRiy0BtXJX
JWsNvzgJwtIWiIF3vP58IrXkySSpc5cktR6H2rbVYu+JU9Pm9ZJyW45CYgc6+6BOns7BpHPTpt0n
18KRlXDSyWTrqLjYubWJFsynOqlDYwk9Z9tMQbEWzRrK4ZN9IgXFGkekxWf3HhanWLIG8ond5OzX
WilJwcQJFRQ7xJt0Xibz4l9nS/FOaban2u61+Xent5SHkfIw/od7GPd6B5919jne6UF/NBKLVMW9
4yLRukjUFw9GwkXeMaGQNxqsronHvNFALBBtCJhF43y1ldGgb2wkZCZajfDKUi8XJ+cvDERj6Mo7
rKj4bFk+MLlOMOb1eeNRnxmo9UWXeCNV3nhNIImc6mikvo6L/ZHaOl84GIgVtUnr9Eg4El9aF/BO
qfVVB8PVXl/Y9M4JRiPeOShtjESXxJwha3wxb2UgEPaagViwOhwwvVWRqDcSHhjzR7k4GvCZTg/x
iDcUiSzxVkciprexBr/WRYPhONr44t5YrQ/8iQUvB1HeKXHRcUMgutQbaEDFWJ3P73RTF42AUKYT
NccHfdWRsC8kfkH9eNCPlxpfMBoKhgMxUQxeB6uQjQZATggzbAiElnpj8WgkXD0AhARDAW9NJBq8
PBKOo3FSdZso7oPptKcQqK0DbaBT9LAk4EU5SMOi+sDtKFjuA71xbhSpj/MK1MYCoQae1pwarBDP
2R+sw5h4qY3E4l4wO+gP+Cq5KCyWLAg6gv4YMwlUcEko0hiI+n2xgNdf44v6/HGIgk1ifaVZH2AC
MehSdAESKwPMUTQLRpHHCOBlIBSoDYQhe1h+rKA5MIi1ZaLm8UIkSVB9TC6i31cnmCxWh9fFGwGD
IeLeugjYMUDQJRgTHZggKrFSsZpIfchkUmIhFnpwPBow6/2yc0EWtkF9KC4YE5ACBArCfeLexfX4
2ea506A+xgsa85oRf72YyQjRLBqorg/5ot7GAI/SLI+By2TjxmC8BtsCdapBSyDODKj1cRmLhj8Y
CPtRvrS2MhKSlEyC5C4RP49bGg2GsBJtiHk9OgePQpEYr0EdtnNQ7E30jvUXXAmLzQSJigd8tfxD
4DLUi8dY5iJeX7A2IASKacJGCsbikEGW3nCg0RYgX1Ssay2YFOQNFazDqvK+tKkoqonH60YMGtTY
2FhU6+zjIuztQagUqY766mqWDvLHqyDWsaSq4p2rLYjUgxNLecWxllh6/oVlBVTWBuO8MSuXilWe
MHfaGLEK/IL9h3Xk5eG9469JaosUwh2qN+2ZmcFYXQgD2LsWPIHi4TWNF3mdsSNhCEbfYD9sq0pu
1NxV2KncJkWiutAsEKI4+GaLamJ0sZFkXyMFAX2DGCWO3Qslh1VdCkFqDIcivuRBQbNPKiUoMfxf
7Ghs4zrsZDPQgG3KdWoCobpWEzqVpRCMH2QGqnxY0CJfrC4VkkqFpFIhqVRIKhWSSoWkUiGpVEgq
FZJKhaRSIalUSOpfeemt0k/+8wh5XfkPpeW5pnq3u7o7mW5OppOT6ehkOjiZ05xMlpNp72TSnUya
k/E4GcPJ6E5GG/2ZyB0Vz+/F83Px/Eg8PxTPD8TzPfF8QzxfEc8XxfMF8XxWPHeL5y7xfEo8/ySe
T4rnDvHcJp5bxXOdeN4gnmvFc414Xieeq8RzpXheK57XiOfV4nmVeK4Qz+XieaV4zhTPMvGcIp6T
+TlozCBXbxoFzAAWARFgBbAe2ARsBZ4A9gIZ1MN1Jg0CRgEzgEVABFgBrAc2AVuBJ4AMLGTB6Mtc
f32/Y6dur/4Fj2VXdOy67IrO+15GvqERj9o6PEIRPJaEO3ZdEl4R7RKvz8ntVr0Yj6ogHoGanK6B
mlWXdukc63j5uM49lwLuZzo9o3zyqasw/qCr005Xn9cqdtbtvGqndsedSuHoO12Lfu66+WdK4Xbr
69HZf+/avTjNn+d/xq96/e2zirlwwKQevYqz7wssL/7l7QU98jb07l+84XZX4eTbXbfdqhRm3zpq
dPGbt7oymro2rWxSx7R3uV06xLLQZchUk6k+espaKrwBWAOsXWUUXr3CVXjlcr1w+cozeqxe5Sq8
Hli5Si+8Fug6PDdvWG7uObkdhuZmDcltNzg37exc46xcdVAuFeVud3lHXzXu/J69+2T27ZOV1d/V
94hVeOS7rEOHMw9+m3nWobOOKF8fcfUvzBxQmHVGQeaZBVn5PTK9PbKysk9rl5ae0c5we9qpmt6O
XEo7QzV7ZGSVZikZUE/j1aq0uHp92v10d9rbWWkZlKFmZI2kkWkL1PK0BjWe9Qv6RdodWY+kvUWZ
j7h6us4Y3SGrq6t7+zx3l/a52Z3ad9By2vcYk+nqyd+b4ZkNDAJGAZuAJ1w9R/c2BpT0L+lb0rvk
zJIzSrwl+SVdS/JKcks6lGSVpJUYJWoJlZQNmeNq6lBKpXPGNp3uQjp7bNOQwtLtqndW0+DC0qa0
svL521yu/7UApU3K6u0umtOkrd6uIOkwbmH5/O2uzvzzqq6PkMtFTaUVq25cUFjYvcksnT2/6aru
C5oGc+am7guotGnwzKauBWMLW/8Ti8ukvkVp08EJTUcmBH1NRwrGNx2aEMRLRdOhgvEx+9f+E5oG
TPA19UVh74LxLTp0teqfMIA9BiexGIaKca4pr2kU5tuanm1pPPGyWWOblHEXlTaZs0qbupaVVzR1
KRhb2rQbb8PKypvaFYyNxWLbSBk3Z5vCDwOP8vL5Y7q78sl0dQe6AZ2AjkAH4DQgC2gPpANpgAcw
AB3QRk83j5rfm5+bH5kfmh+Y75lvmK+YL5ovmM+au81d5lPmn8wnzR3mNnOruc68wVxrrjGvM1eZ
K81rzWvMq82rzBXmcvNKc6ZZZk4xJ5uF/8w/C/6pVv8XcQBJLgplbmRzdHJlYW0KZW5kb2JqCjE5
IDAgb2JqCjI2Nzg5CmVuZG9iagoyNSAwIG9iago8PAovRmlsdGVyIC9GbGF0ZURlY29kZQovTGVu
Z3RoIDI2IDAgUiAKL0xlbmd0aDEgMTY0NzQgCj4+CnN0cmVhbQ0KeNrlewdcFNf28J2yhSYdqTKw
gtJnAaWKIE1FkKaClWVZYBXYDbuAqDGAsWFUEmOPgr1GFxXFjr1EExMjSdSoedYYe41R2P+ZuwuC
MS/v937f+973/30z3LnnnnPPPeWee2buzIIIhJAJqkAUSo5JGxA/dUDgUMBcRsghY3Can3/Kg03Q
dgwE3FBpqZqpe3lkIbSrEeLRucq8wjHXI98g5DIH2rV5BeW5hxc6FiHUwwf6b8uXSXIujApphfZV
aPfOB8QUqrYLQj2tod09v1A9Pi47wQXaIQiRbwoUUkm4bTiQvHohRFQVSsYrgwR20PbeBRemSFIo
E/S3BF7vHxAyfaRUqNQIFEco/ARHVxbLlOpVW4Ah/DbgVYAj8MnVyCEGaiuED4dwtsohmG/gOa3/
tJcmhICsq3LwAJQbSRBiI9aAz/PqQpH2PMRK+IZefIImqoJIgq5LY1NY7w4Yx5XdKhxROD4Ho2yk
QgpUgGRIDSWCO1mXDoPRVqfi+3lnD+rdfE97oTmw4vm25T2/GltXZX2VraKOQvGpo0iCJM3iD9rN
vzo7NS765aXC/ibi1axJu6oED5SqnIWVpIbQfEtyeJTYmrXkGkJL42EylVpWXMRES5QysRVrwaEF
lkYxJcXZkqJSeUGBTGwKowHW0JKfni8pU8vETqwDhzCytNIhmGhZsVqeK5dK1HJFkdiZdeLIlKWN
npwuLwQpkkKlvCiPiY5iu3U1YQPE/mwgi4/hXU3EXDPAP6BXSK+Q4WxaB2WHpIm7stY6+V2Gyorl
afK8Im9mQJHUV+zFeugEubYRsCgmrU1Wmqy4VC6VqTihVYRrR68QPERVEaYI8IZkFUGgDae3rT5z
ltlq+OHMzdNLHu1Ienz1kOnBPMn+VTmOF/e+Oh2w6WN2ZsbkTy6N+7n3ctOD394b/6Rs7WRF+MF5
W0325D8r+Pz0/lSfTf37PN95YdQYB7L2D79x3Va/XLVkrf1J8pePBqVe75J1L9Jx8m6TK31P7Lg6
ff+YCWPFvtTiSsv18czXYpXJMJ+z4wMD5lsstth9Jd9v463rh6s/8Twyy2V67v4pGcMUJQfDN7pP
H3XazDq89uO76YcMi462Hhv4826B+ULXSZcienzbbfy9WvGpx7dc7S4d3R4fvcR+TF23mhujnz+Y
9PjDTdnE3OeJRlfOuQ5dP//slhmlWx7sMXl6I/Gnutf5dVuswrZPP7SXpCDwV1VeYit/ZAP5QohY
Hk9AEHRP1p3t3tZmiWm2+Wq1MtTPTyFVKX1Lwe8q8LuvVFGIY8fJkiC0tJDlQ0USiI3icM50KBvM
9q4LrPOfxurZpcUFnbj9dLHSMVSio3yhF45UJzfamDVs04ISsl04pCkni4YVwAcNoW1OQ2SutmO7
tsU3ZWmcnhYFgRbsI/bpFfDOqqAqK9HAca/uZhyOcRTPLF/steBg1Wai2XHQWU11RtFVoceq0SdP
z7O8TaeaPIzv4YeCNTdOzUta8r1rtvXLvkEug5Xiisezgqdvv3NnIWr9ZsiCpO7fbeiRNGHLLknU
U8+vb5/6afTPe72mRjQsa/jpl2HaAzuOTX7+jfHyRwtbvc6HpTo4BPd42XcgrGEtW0Xe1q9jk1+9
Hn3/o8cMW3+eweglpTPeXcf/kZXx5+XIBndcjsP+RaF+rI9OqPvfCeVosuK/XZLbknv2//l8/oSP
bWNyS0ZNPtpYK3XX9on+YpJ5sJnbENVPJT3kLUm7mZHnDV/VOXjeHzLURfJjt0s39gWMO/Hw51VB
sjkO84x3pnUbOSm31xhedWxradLVtIqVlcyyLTNGrhS+vMm+euAaNKif4ddXjzsfbR7ya2XfhtRV
3huJCU9Wbpzdq7X21qixvNo+464fXNDUeibrVeRtQV3Mb5UpRWs8n+ysNut5f+5lft205CUTBwpN
WKfTZsvHvfw1Ywu9IXLxtp535tpsDr+epkg432tZgyLHafsC7719bpf/Vjjhlc0t9y+3PlyctivS
e35j+cbW71M3eagn97sX0m3lWJtbmXu75/+IKqLNpleM0y/J02zliX9zSRq3L0mSRWyAbjF6s55s
zzr3uu7TXP9qMapVKh+pBC8/G7z8uCH+yQrkN/1LKzDw3RXIzfL08cqLSakEM+Ja+akq9mjLbrsF
+z9FR/afPXv8WZcfta8SmwKyWfNjz9UO3392ZcwXjGX9pNgDyWen3K7oOmVdj3l5lnGvTzcuiqLO
LE0ZwZv10XrFU4dkh+6+T+SzC1xf7j1tM/++sbopv+yn3xZnTz+kqvl9pnqCaNOqRRMX1r+c6/FB
om+JQ/+oi48aTJj05rK6hVVSeYvBN9WPSvYaLP3plfkQ9yUS/wMTSM3EaQdWHpnl6j3+216l+z5T
jXy1+9Yga0PRmRvffR/oOyDSOtw0a0L342tyHy74RvlbxO1nJpMvfztpVekH8kNfDI5ne7nUr9xq
nx3u9dOcjZ6CiT/abh858R/L1ihaw2d+yVbRFpAC/tClAFN0CM0KD59h/m3EC+m9q5EdPUZDBlC2
rW0jS9dohbK8WJ6Xr2Z6Sj0YcUhIEJMolxYrVIpcNROtKFb6iruxjrrO1p0pimLdvdqFddZNk+1b
eqpCoWaiStT5imK5upxLDyFBrFjMskH69ODPiv0DxPrmf0Gjv72Vk/sPKW+FPUly6Fm7cPxo9u7K
DbPdxvzeOn/Qql2ty1YyEZNSVi5dOTfLf9y3/XLKH2wuPZV+8clvX0xznFv7ce72Y+MmZIuancKv
mBKf3Vlw9KBP7pIl+e6Lz4V6HzRuyHA/FHfbMCJ4gfeGniHr7w2Y0u/6x6Z7lxQMkWyumrQiy6ds
0K+Ld+SELUl2FAu7W9VuuP2pl+2tPoukVlkZPFmtU1Dq9JfrHn5OHnc4f3BI7PaZFQdD76V/nrSl
Zd2EQnXSVtszCwx6uqBhNVnyoL0JFoLwodoRr1fnGgrXflc5dNjDnWGjbSrL6IsvDmypmN+qOftR
8zr74pHhp/c9Eq5yZbfzp57azpRZTr2qzxvr2co1bOVKbl0SdOUStnJhhdmIc8qH8uLlopTJVtsS
52i/WlH8f3/+qv4mxnFWmH/HqGn204W2ve43Et1/LDN/OjLLv3a50VcRvE9nzD0VesvlyaNh87wb
6uJPZj9888OZsLDhG3qny1u7F/Y9dWbjFd6kn8Wz+9SaKcfubbUYbCtvenMu+rr5cGbw3eyJWzfa
nfQKcvM5IFthUe1mKl31Mt3xlcupZuunqZuLov0FLVVdf7+ZV2CS8mL/49QT+28fZd8wYoMZTvM9
7BMvOJFrHldco3aMeFb/88lhD2QDTqSm79xB9bTQ1jQ/Es6d3Ljw2KYg7xsTbqwvu15ah86N7Xvo
u97V16Is1vca6zD2Uq9fvnekb6yPpU8ODwguSnQ0yd5luPKT8xfS+8addRyyVnnJInT6vJLadd/V
QVY4Ag8HW/UPBmONFg9uQk6bzC8eJVfk9tjTtklw+m+lBLY3PC8EioMCA8WB3AM8pHj/3m0poXJt
50cGS9Zct90wHCZR5cOjgBrkmOFbCGw2BKmynEJFUU6bZoZ/pdlfmekPQv9kpoh10Zlh35GSI8MP
H9zTSDLeFDB/ziQmXCYR4kxy5Awze99VbUTygwmHv+/u9qL0axftWc+hSae/2FW1rVe5Dzq6XnhB
emrXmhe/HjrUXP/JgpWCP0x3VqUu+a3q+H6zY+ubHoz7eE6aw97kP3KImYdsvq/KR5HjY55bBCe9
lqZc+6PP7ptB9VelAlHYB5GB8c/GbYl73kPVzfWrfnbdUnamLjm/6pzlcbu+H/ALn8x3iRnT737T
qcU5TOOhwDcrY25N3Obk17j2yrMVV5e6mLZmiKOGBE/emnH7xr3McrdNLz39zPsGj4/o99G6/BuT
XfO73hr42dHxManxKwZ/PHPe0qa8iXcNXk+jPnyx+INwr3W5i85c9fmHF2lvGthf9jzcYuvj6Y5O
7qmKMxB71KoqwhP84f6+53Dqf0d6seAb6Dfg1pBfSIpCNN6iOnWhbWgrt9+9EkadLE7/8uaLOs+u
Nq8PvUqrZO3aWaxI2ribIUpDJbBdj0ZRrBF+8MH7jjjWtP0Bi8dSUHVYlziNSa9fe8pr1Nw1Mgr8
tkocMTM79oJw3SuJ7KQv9Udw/6hvGp70mHL++rGhaesb7L4+c+tx3auhO/t/Ht/95gbnyxO+f2Ez
weLS0xqHe8JR26fW7P4kY6/jmfnn538e8OzTK9oZS0cnDEgOcQ9lHNKD3nw40nrekcuOcx5JUsNv
Cu7nPiy/N/frYVLZfNsBdROuynZddd/SetJi5/GVZ46PmaV8evrSpqoiwWWZ3e71L6YdNui36LH7
ZvmE+kNe6zS5zmu2TheOW2jZqOm9uBtvlWXwqqbNbMQelx/YtaezLRy3Dpt98/EE8z2jw42DHs87
9NmMJHo4b+SJb5o3/PTLh5+O7/F6R9GaufyAjPrRnuambBUvAFKZgy6NGUriln+FaISQ7E9vKP63
pIy3uS8kMCCwN7dbCoJnI2j24pqs+j9ih55O/QX9bx+JzlYuCN4ycuWTQ1evnNs0f3Zz+DLnWUdG
TfMd9ai++PmmzTPGNlysd51odPLkmoRPR7ta/vrquWhZw7Oi0i0PH6wOP3G0KXNk303bVQHua7Mr
JeUrsp8VzZh/rujnE7XfrU4xL5XsUVbLViywmbluVOW5mNybl4Yujzz95nJpd98YFt1s/nDifPML
GU6r7gw2OjXj8srmtMUFp6WnF49d8tnoQYnmd/zOjxgxekzqKpXPmr0fx5p8Ymdd+pXw4pK1Sus7
iffkLaO2jZt73yMlKHjW8bgB1p8nL9I8y1/9wxWDD/LUy8s+cZo6buHd22Niz1y79YHJt1I0b6J4
0RyjHZb7t5978Piqy4MNWZIHQdF9jugeiaqIz8Ajc/60d3mbDB78NG5DSdrZwQ8ckuz43VZ9semb
z1v+IvNt4LAiunIFW7m84r1ZZIV69X8j//35YSFBt/GLYfuxkXURdeHTQjts/ArbxsE7P+U4OYf1
UxYrckqkapUftwC4+IfY98cbwsEddqLRbBTbt30nSk4L0I9bVlb2vnFlxX8eUP2+PWHwTw/nBy8d
uchqVHqR/Cp58vb21+cPJ37pt+mjdJOL/jt/H3vL5LWLfVnEmvwJO+ZPrh75JProlKWyD2ckp0yq
sno+RfXDygMjT5PKr90Luu5LtVozs2nXjRVnVpQs+/SDPg5NQ9HQht8/dr84OuB1s9uE0Usurn39
7EmU/eYhcV/2v/xpsGWGwYDHT8XTnffRc0ZYyKhfjVLOrTCuXrz/p0Przwmt3Vwadg6b6fjtiGm9
1pxu2Tj93oagvruix11nHsfum7zl18dDtq3ov092IC3wp1N3+FKaP74oWdt/79K70cOnX/rSsOJ5
5jHvGzc/GjHwpn/5A9epnxn7bE8ecfxwZEbGpu/OXvc7dPZeYW1QubiK/grS5gmSINjKhv81ybFT
gn/7Gruu8g5r1X5D7UmIBRQPv4XnbrP6qTegxMYd35yD6m9bRuIubEeqNSt6y0iLYd26X+mWdvaP
DOITj+/7+wXFSE9rdw9iizuwGItz2Oy64IreKBHJkRQVIwV++Z6L1IhBcQAVYWgokgFNBX04DIN6
IV/EInaFe0X3v4xtdblSkVcsUeaXv/s0SVcR6LTZ0+KuW756U96wWOOa4LVs0ZkZS78knn2Ub7/R
NKDB5cLYHnMP901aeGuzTfnZwIbZRk1UyJP53Z9QfpmVH+fXpE4PVaRcX7T2yJ7AEX2kx1/7pgWP
jwzfkvTHNcHGr347tHXlN8/jk5fPsAivXejy8bmlafcygiOdiPmiMHPL1nsDlhl/v+/gr4tPO0zZ
9fUs5Zgnk14MNjQ6aFNwycU154JXUErc5nvxlz8LbjKr36Q8++mSmbucvxs4gz298+nBEb8ZGOYM
mIIeGN484nBstvODRX0/CvP62ivxt5IhF7/ufcPAiamNeDJyFDVTaDdRKT+d0mdD5ZXMJk21XePY
wSetWmYtWrCr8AJvXyC9ogoei6qI129njC+uIu4B6g4X3nn/kZea73mVaswX6hQgIcvUZbK2HWPP
6O2nHQJCr53CE5ty93u4wfv7B/iL2cDhkH87hJ4FbZa02HVXwxXPascs9sar1gXN7wmBcWkx/a+d
843+qmVUUeKFJff7Hf0ibNdQ9/GDsnI2JvSY2jBk0AXr6I+X/aGMmhAff/T6rPPH9mjvH/7uhHYY
MWV8/a+XXD6SB+6J8lsXMWFHr2W8L442JlkFoem/hs3ZWJLrZVGaOqRqkd8JqXDbwdTDVw48MlzR
cph8+qz7xfpoyUU+pWhNWLT88ZSt+4K2MdG1O29dP3j0dhB7dEDLJI8nrqqrbO2XnrcvTLMV72KO
zTycHN3nriwgdGw6iojfWO25OM2BXXM3R6JYO2TXWi8X080JV37QTuGvcS6rS/zieaJ9A9X121dl
XU/WmE3tW5/39cx1qVJR6+uQ4ctGVbDfpPd5oNn1dMqlyzWIoM8SNYiHhLwlvACECDddTdWhXNLC
mOLxCJIQ8EmeAL1zpCdGMyjyEfOolfdJaxwRIDQiDlfoabxRSMwbhJyhOFKfIweEtL/oy43WTO19
3jgkah2rvdzDFDrv0BfdIUFuaDTyQAPRYfQIHSA8UTJq0p6DvJBBliEfwM9Fu1ATuoJiUA4ikT0x
CTHaL9AnyB1NQXUohLbXNqBB6I7QFNmg7iiUUCA+skZ5aDlxGQ1ACTBGGIpHMyGXxKMUwL8kgoFC
IEM0CqR/jpaiA+hrdBXZwYi+qBnC7qV2L+wv0kCHiWg3usLrx5uFLNGnaB3aABuam4QvsZq4Sz3Q
NmjPaH8DLg8kRr3RCNiVZKPP0Arotw59RYqoVVp77UTteu1J5AjabwKrD6FjIOsFwRBDCSm5lipv
/UNbpN0EfjAGnUF7OKPAmiTIgGugZzN6TRjAWUUyZF9S2mqu7YoEyBmyoRfoNwQVosloBpoNVixB
tWgrukP0JfKJs8QD0oSsIA/ykgVJgiSDgy0XtPHaFyDDGLmAtsPQODQeOD9D89AC4FwBso7C+Qi1
EL2JMCKCGECkEnOJacQa4nfSi7xEvqa6UKaUN5VJZVGTqH9Qr4S8lsGtC1vPaZO14/F3Wj740w28
FoPS0UikhLxdhiahCtBuDpw14L1NcGrAnwfhPIJ+RtfhvIXuoHsQcTyw0ZDwhJOFM4yIJAYSQ4gx
RB6hIhYSO4lG4gBxjLhLPCMDyd5kCDmYTCXzSCWpJmtIDVlPHiRvkE9By1AqllJRH1GbqMPUSeo7
6iKN6IG0hJbTJfTntIa+QD+in9GtPMQTwenLk/DqWla2JrSO0Lprw7TZ2tnaGjjvgI+7gTXuqAfY
kwyzKoW7Ux5YpUQfwFkOvpsKFi1Ay8F3nPd2oka0D6L0MMzvcXQOXQT7fkb/QC/RK3AOZ5814UL4
EGLwbx8iHs7hME+lxCSigphDLAE/1xMNcDYRl8HKVrBwKJlJjiZLyUnkbHIhuZTcTTaRzTATWooP
M2FLxVMJ1DBqBDWaUlMLqEXUYmo5VUs1Uk3UcZqkQ+lkupieQtfQK+mt9An6PH2Zx/LCeNVwangN
vP28W3wLvgM/kJ/GbxTwheXC28JWtB2dQPWo4d2VT8wgzIh69CVxm6KpCvIMmUEakc1EFf0N0QNm
IJxAvDlwh34CGjoR35FBxDBKSgwH/1URucQItIxypFZSA9EZXhGRRiUTOSiNXoje8I4gCa+a3EaR
vGqqhXhFbkL5aA45rmWDNpPogtKI1eRaiJgPUTjyoO1RMxlC7ybcSA/yoGAL0YgiBHwqhAoVmkJr
NXUd1EwTmhJ3kYT6B6yfX2BtpZJrISfcIi4LBoN2LdRW6PMhiiBWt5qjDbxMMotwJFcTg1qmtPxI
LdXWEnbkPxBqMW+JIqMh4oZoN5IH0EO0sPUVfQ0dIC+hIZA1pHjlPIG1VwaZZih6Q5rAekqDPKKM
jEzvG9EnPCw0JDioVyB3h/Lz9fH28vTo2cPdrbvI1YVx7ubk6GBvZ9vVxtrK0sLczLSLibGRoYFQ
wOdxrzCQd6woLovRuGdpaHdR//4+XFskAYSkAyJLwwAqrnMfDZOFuzGde0ZCz9x3ekbqeka29yTM
mHAU7uPNxIoYzdkYEdNIDE/JAHh2jCiT0dzHcCKGaXfcMIGGiwtwMLG2+TGMhshiYjVxpfnVsVkx
MF69kWG0KFpm6OON6g2NADQCSNNVpKwnukYQGCC7xobWk0hoAlpp7EUxsRo7UQyngoZyi5XkaJJT
MmJjHFxcMn28NUS0VJStQaJ+GlMv3AVFYzEafrRGgMUwcs4cNIup926q/qTRDGVneRnniHIkIzM0
lCSTk2HuBXJjNF0n3LB924TBLaIzpnekOlDVsbZyhmtWV09nNHUpGR2pLtw1MxPGAF7SLS6rOg5E
fwJeTEhjQBo5NTNDQ0wFkQxnCWeVzj6ZKJbDZI1lNAaifqL86rFZMDf21RqUWu6yzd4+crf2GrKP
ZarTM0Qumr4OokxJjGO9FapOLd9uF8nYdab4eNebmescW9/FVA8Ym3QEZO00DOHuHJSQ2u5ZgtNI
NAAiQsNIGdAkQwQ2BXMXWTCqlgZDNzgyCeDS5MCMyDUG0VnVZqEcnuPX8NzMREz1cwQRILp/rzNG
osfw3cyeIw7k4qQ91oDeBmu8vDSenlyICKJhTkHHCNzu5eNd2khGiZRmDFTgPpQMvpVkhvqB+11c
uAme1RiJsqGhqUjJ0LUZlO2wDUX6eWVqyCyO0tRGsR7CUSraKO3sWSKI5B34h0bWGqF7+5+pmY1l
bH6ohrD5J2SZjp6QJkpIGZ7BxFZn6X2bkN6ppaMHt9P0kMYyOoNyIPUQ6UBhKgTlyPbOXCPDWEO7
wR8fB3VOo0AIUYkxBBOnMcvqr7tmGrq4/ItMjdpHHBeu3rLp1dSEenVuh3Vqd1LPuJoChWl3MiF9
eHW1YScaLPB+9SJiRkp9JDEjbXjGbjOEmBnpGdtIgozO6pdZ3x1oGbsZhCIxlmzHci2Ga6EEAgJ2
GynEJIfdkQhVYCqNEbgtbSQQxgnbcASSNpI6nBnGweEDj455CNF5PO5XZwIUFtmNL5BC0uXRUgoZ
8nlSCjbIBgJaSiA7oUewrVeS2bPwxJbwJLMX4YlmLeGob3hLOFfEbIC5i7mbi7lLHo3eMFTTm0ge
eo0Yugn/VA2dJy9RW5ARctmNKGJHZBcDAbI34dsZmzx04Yb1Srphdgv1TbwvZgkrvsjVvVdg7wB/
G/JS88JFzc2LFjaTUbq6GY8G6nrPdRg4xjT8udBJiG/Hq/rvC+PqQ/EhPK22NQJu3UbQNML9sQ5C
o9YIuA5t3fTGV3hbj397HKDPcr6A4w8EboGyEd3g7UASGiE3Ogel8DeieH4I6k9NQaFAS4fiA7RP
geYG/Yv09adkiFYL+IFQHkHxhpIGhYGSDSUTyiAok6CkkCFoM5RZwBvO8XM1NRtlcDDvBLLiDUWu
UFvQN5E9fR314Dug/vR5JAKcO8gP4BmjJIDdeB8iK4ETx6O9A+1BfDfo8wB0UCF3eh8KBt4w3lRk
A7rHAy2Y54H68UeCvOvIBsZZx79NjIV6IC8GcEj7kEbURRg7HfQohxJHPUOxwDuA9kLx1ECw7zzy
IVeiaKhjgW4NRUx/ATZ5oZ4Ac/oHAZwJtRz6JAGvF9DjwZ9RoGsy9QSNgNoPxh1B/YDOE0vQaqib
oX8g/QJZEn9gueEEzBbw9Obe2PD5aDefT7BQv4TyQjgUeQhuogQYf1RbTQWgXM538GAl1/u0HPhz
QU4UxN9YvY+50p2TBbFziz5PhgiRdjbYzvAXwJx/iHzAN6MFN4kq8FUSLguQBOpErsB4wVCCoITp
SyhvB2EIxQjoadAeyE9FUq4InJE/8PqCrHQuNoDGgp646PUfpNcf16CnH/g1qo2fPxB5Ao8XZYHS
OhTUXp7BY94z2F7imlgNPCXAH0GKYZF8SK7VFRRNWWjnURbkKF2NRABX4hp4idWwEUPI//+zM/P/
sZPLR02QgXg4B5HIDPnBVhahB7xafYYKJEvbs9ZIXU7DVz60CD2XALZlOpiCR3C5Hqahz2d6mAfb
3UV6mI+EaLUeFsJmfrMeNoAN8UE9bEgw6JoeNkL+ZJtcYxRA+uthE2IhKdPDXZAv9YZ7e0pToI8x
7YlhHmcR3RvDfIyPw7AA41MxLMRwNoYNYKRGulgPE8iY56mHSdSF11sPUygVVq0OpqHPAj3MQ7a8
lXqYj8x4e/SwELnzTuthA9SP90gPG5KRfH89bIRyhG1yjVGusFkPm5A3DML1cBc00pjBsCFni/Ek
DBtx+hvPwLAxxi/CcBcMr8awGae/sQbDlgBbGB/AsBXucw7D1nicyxi2wfh7GLbDvL9j2IHrY8LH
sBPXx8QGw84YdsVwd66/iS+GfTCM9RdinU0GYhiPbzKUg411eOx/Y6y/SVF6uVKWK5HKmA1Mer6M
SVQUKdSA6viWnlEWSH2ZGIla8s86RRUUMKncC3wVkypTyYpLZTlp5YXZioJUWV5JgaS4jSlUh2VC
S2XFKo5R7BvEMj3bX+l76OhD9dReviyrwySmt8tNb3/d3RElY2KKJWXca9jBublyMEkcEhySni9X
MbmKIjUjhYtEXqTS/RicSZKVMamKQkkRE18sk41jpBKlXC0pUDGSohymQFEmK5ZKVDJvJleeV1Is
06GzJSq5lFGWFEnVJTqr1Yo8mTpfVsyUydX5sEOVKgoKZFJMUuQyhRKgwUUulRQw3E8bdcPkyYpk
xYBRloD7VDImWc5I8yXFEqkajPZlmCGAy1UUMyqZWs2Z02kYbgCVVC4rwr93Z8oUxeMwTqLC4guV
BWAemKtWMMDFqLDvOBeUQCd5EaNSQ29JcQ52isq34ycFvS/xF4V8dWGBX6Ga+/8Fv0LVGN0wvhz2
X+QokxUAVoZZkganD4gbEB2VPmBwEjM4jhk0IDo2KS2WiYpPjY1NjE1KNzE0MfyXOmUqSsAd5UwJ
uEjdPrVgu1JWXChXq2UwSeXY8Nghg6KwF7mG/lsiZ39Zvlya34EXanmRtKAkB1jBZzlylbIABHAu
VRbL9XEDDoV5aROuKCooZ3rKPRhZYTbH9Xasorbe71UJd8/hZhQCSl0sx3HSQTywt48VhjXoKQcp
alkht8qK5SA1R1FWVKCQdBQKSkt0qkIYgr0KHI+KErWyRM3kyLjvEVyffFmB8h2L/ulMci2/AmAu
UukmESUhBSpGhUiCCgDKRuWECZKhsagI/QrlLS0NqaEuQjlwLUY51BKqntpPHYSym9pDbUbpqBwp
gTMX6FKoGbQBSjrKx3Ai/uylgDF0vRgUjcdW4qsE8G0fxpQgS4p8AYrBeMm/PVIUjFQAdSpg8oBb
jVS4JYOa+xhXCtccsKscLMzG/y/D0fJQCUCcje9KCu3Ul4F26Tsf9cSgdxBiAer5ns+BHp34/+KD
YKc+iWD1n+3VeVoBmnL2KsGy8r/sJcN+5PqVgaQi4GHQYNAmF2snwzqHoGAonH/l2EO57R8tpXpI
gnlVeFQ5aCfDcBLUZdijChwjnBXxIEsG5zjMzWknx/wFmEMXPwyOtDJsP9eHmw1vLFeOvV+sH7+t
dzbuw+nLRUcJYKUwZkmnuVZjf3D/75SPx2WwvVyLwREkxf7k/iNK2oGLmxcG667jK9SPKcUaM1hq
nt7yNm04KUVYhq6PEmusxPPM+TMZeDh5+TiGJFiebqa5mGbg2VDXLxfHK4NbaixVNzt/rU2bBirA
yLEWHDVX75kyPN64Dv0ker111hfilaWbPd3scj5j9LK4Ud/GXVsUlOhHkmNvqTpngA6RwtmWj61Q
wqrwg7MMn74wYue49NXr4of7F4IsP7iqoY8Ea8a1VGhMJ2182/v+n5XBRWCBvq+sg5QkWCHpaACK
gxINWYSDBwOWWzlxcB2E8bGASYMrl2fiYQ3EwpmIsenIBBnikol9qJvTcqhL9HOvfs9a082WEsdK
IY5dNc5PXPyXd5inWIigQSDzbQS1UZQ42+SAFCkeUTdrZViWFK+E98nVteV4VRUAb45eqi46cjBd
iTNieYfY4mTJ38kSurjSRfm7lnM9CjDUE/g8oJbh+W2T9T69iv409r/upbej57SvLF1eUWPN32aB
91sv12eVd/UK6+ADzhKdLWosr+0OxI2vszUH57kinO8kf2mpztOSTl7V5TCF/vo2q3FeVeOco8bj
y+Ae1JbJdePk46hW/s0c/fsrqY3mh7OJFI+oemf9vH1qeAtLcP/30X55h0fW6VlDl2veP2YB9Cnv
2Ka70WI6gY6n+8A1pJMELmf/1ShJcC3FM8RZHwX4Ypz7OC3+muf9MIX+6VGfbhFlRfaA0510RwrC
BjbJY/B1ML72xVc/7kr6bfNzdm4kfbfVcZX3NicPqLpHGv1i7yzuYeEc3oNrd40MK/BwvrbRzvkX
KJt6+DvPCPd3ngLFD0optLl+PTZ6OCt6KAoV0xTT6SBkYwOqWJgLIxuJ6zuHWBlYGQTVNBIHI0ME
NfsFNdsFNXmCmhxBzTBBTZygpregxldQ4yWocRPUdBdYCS2EZsIuQmOhoVAo5AtpISlEQqtG7bVI
L+4dgxXfDL/coLkrjWEz/PKB1L36IAkhiQYijSWVQCak9SMSNE1SlJDNaF6kiRoJw5ThGp6oH6Gx
SEAJ6f1sNcFeCY0CbaomyCtBI0gekVFPEHMyAashZzQSKD2jkdByqKkO3Nev3YggtFNnO+jrzExk
U9rXtq9FhHlIXMx7Lln6q9fbw9ar45GQXL4PORMl3M8UCPV2gfM8AYdNA2wNxtZw2BqMtXXSLEhI
y9BsdMrU+HOA1imT2B7VEDmR+2CWJYqVQcnSzCrNt9VUZDNMfWSD/kuae1Y2bF6glsg0DSJZjCZS
FMPUR018D3kiR44SxdSjibHpGfUTI2Ux26Iio2JFkpjM3SiJyK73nNNJ3Mw2cbuRJ5H95xEbiWxu
SE9OYtKc90icw5GTOIlzOIlzOIlJkUlYYqycm8DkjHoh6pcZPVJXbyeNDGEushxcMvvZmCkj8MSE
udhOdthDI2I9MvLK1BiL+mlMoHAknyifKI4EAcORunDfRvUk28lhLg57iPV6khmgzUX9kFeJ1zuH
ijuQbaw8hiugyW5tE1mxzcLZ3yvT638A2PhJ1gplbmRzdHJlYW0KZW5kb2JqCjI2IDAgb2JqCjk5
MDcKZW5kb2JqCjIyIDAgb2JqCjw8Ci9MZW5ndGggMjcgMCBSCi9GaWx0ZXIgL0ZsYXRlRGVjb2Rl
Cj4+CnN0cmVhbQ0KeNqNUE1rxCAQvfsrBrxs6cHE7WZbCLnsNjSFfrDZU2+umaRCo2LMIf++asMW
euqgAzPznr557NAcG608sHdnZIseeqU7h5OZnUS44KA0yTl0Svq1SlmOwhIWyO0yeRwb3RsgZUnY
KUwn7xbYnJ/aU/t8S3dbun+gxZEWnBY1LQ70rk5nR4tHWmxvgLA316FTeoDNBxqdx1Y7W/uFI2oP
Gakq6LAPH74I+ypGBPbf139558Ui8FTnP6tI0+FkhUQn9ICkzEJUUNYhKoK6+zNfWZdefgoX0fv7
gOYZ5wm99iMvmnOVKmfnwhbJwSQkSlAaryZbYyMr3W8YlHkOCmVuZHN0cmVhbQplbmRvYmoKMjcg
MCBvYmoKMjUyCmVuZG9iagozMCAwIG9iago8PAovRmlsdGVyIC9GbGF0ZURlY29kZQovTGVuZ3Ro
IDMxIDAgUiAKL0xlbmd0aDEgNzk0ODcgCj4+CnN0cmVhbQ0KeNrUvQdYFEnXNlwdpmemwwSGPIQZ
hihhhgxKGMlBMiIIKFFBSSIGjIgZc86K2TUOmDDnNbvquurqmt1d16zrrmuCr7pnUNZnn+d9v+v6
3/+9PmC6q06dOl111zl3nWpwFyAAABGoAxjIi0iLjb4cMWIulDwFQDE0KU3tdWP3jTcAKIugLK+w
PL+qsH73Zlg/DoCxVeHgGsXdo0uFAPjeBYBn1aeqb7kq+lU9AJ0/AsCY9S2r7WO+9UUIADEyALz9
Sorzi0bmZ5IADI+F9vxKoKDAeDMF66Nh3b6kvGaorOyuBtZXA6AdUVZZmN98AraA/bawXleeP7TK
39FOAcDHFVCoqMgvL7aw3zkK1g8BYDKqqnJgDYATAYhRMNteVV1cdd9kvSms50LzdlCGcN/sHSjY
ORkD7kuRo6lXZBLCThNiJrxlED7aWK+IhaJIFEE8KY2Q4LmKMNSSBzT5BOlKIDhS748ieGOaJkXj
1kFitcqmzgoEcd9JoAAMBJWgDBSDGvgJYb81yg7GcOM+prqytS4x/auv/B7yeM35gO9KZiY11stt
NfX4MU09tqkRQxEUlXnDIQ4+eqHgN1Hu+BBuwIM1zOfRIjw4riHcMLHuOCFDu6d5yjRStiKQkT3y
B5aUVvStqazwlGhErJAv46cWF5VXVhR52misWAkpM0koLayuHFjZp0YRXlldVVmdX1MKeyg1tmw7
JjP/0p5eWl7snlaTX16lSA7vqrExYzx9NX4aH09/H41PQE9Y9dMEfq5qxmz/HxkZo6HYdkqGJyQl
p3o6aRz0VZuK8NKqkuJqRURapCIyLbGzf9eoru6RPp7h7pGePl6eDhqVfkZW/zijtOLqwaWFxZp6
xK4jwggPYPWIGEA5idYjCNisNvkUZ54WVC6Kd6yUj+zuVVPQVLls/J2MdynN/W+XIdnG90qjrK/d
Wl/0rG/kauNeshp5a15h6ercxA0L+cdLF8XcXDfgUsPJ8cqhO2Sus859fyRb1018wn9w/NbtY1vn
UZlzkn5uPBW0Cj/1dHHq/CeTv11xpPHP9UkZ5PHSKffy7q/Y+0cf6/jwIrXd7pc7XowYe0IqSf52
5cSB5/MOfJwwX/4GD0kJ3X+hybb6046zkVLQfezWMRv65pSKgyf/fmh+fqh5i8vSml9PpGVmUJ/q
tw8dNiDNYlIjT54zZM2yn87jUy1OvU3a++O1fvYl5/Mtx54X9ijVbtxyPdPe/NSZKQtq/7r6TP3E
F8VgHK2uR4QQEZ7GGkJqLcJNceP53Xm5JRdylvZr88RTNnWXtzX4p3E+ZK3CzTWmdcYqn79+TI2q
Ip9pPwz+sN1Vd8x3u1iTzirY4gmaeE1sY3Rj5ITwkpqaqs5qdWF1mUd5+zp5FFaWq6v6l7JSdVV1
ZdGgwpqB6s/LyK4it4jQKz2giiaTEMDA5PH4CIJ308RpYtrrGnRCkOEBQ4YM+acHFFf/B8s1Ghk7
Xgec1pDtJjHBVwGJsV4S1u/goeXj8q1Lv0+/G2ByX7XINsQy8qC4oWWZWeqyUft6pL4u7vZmy/yf
ijWLVz5x+CB/WtS3t2lhTYVFTeiI83/+HJJq5trr1EmLvRGqFbnlbd8+d/PW0Ysr5sxw+ilLVBLM
dF5/ALdruL1fKRv9qeux349/G/psd0v0ASZ28VhtzwMDVxx7+9G529Asenp8Mznd77dnua1ZZ8TG
xDz1rSXfHylv3jP1jvXkrRf3Wc88Unl9TMHDP192P5e4zHpM+fHzd8OSqTfE705z44ad1Ca+XZh4
f+7W82cDSuetuV3/l0ePVLvFP81LqhEcW20/fVjBrqKfCOspMXPUQ8asqn2yLPaXZTrLradHDFy7
BNLYU0hjV77QGEK61W69Vjt83WaWghHyaxqr/R8hC5VGqQ96y47tRcWKtNK+FdDqvxCZl49vRyJj
q5oxY///IDKDOvZv1P9LYpr9sdJv3z1sj/PVqEur8veujfpQaBri8S768smnz04uanJMGXTgxjkx
YSxdU2ax/HDvhPTJDxOSr087vzJ/7RDZYqv1z5iat+szah85v0273DSs8O4fcxfsfvpj9F9lwb87
TNq+nzyBr58+YnzMYKv8qI0Wx4cVTDly1Hfjh8zKE4XUnFjNGPnwO6NHJO2ILu891GrbrrfzZakv
9lxKCPx54O2YxCDjjQuYwHNTUu7lXOrycnrfx5q8bxJ6Lgs/cFO197D4Wrxk2dKElymrxm18uHR9
8NXVL0jzmA3vmxLXLhTFH3pp/Ds4pYu5mt0acG2y1J23NxxNsgPzHbaM9K0YV7JJYR7g3Gq1StK0
tp2Y8iAiOf8UqFgHtprcSno+djz/S/nJWbP2zJ26yjwfblopbLMUh3yxJkoT8fX6eGs82SpP1snb
0zfQ11Xjo/EP9PbVuHv69cl39yn007gX+BX0cQ8s8irwLCzS+AYG+PyNAM9KH525vMM0Eznt7+Ft
arqn22LSVpOhJ8AkDaTARkiBEyL/rwgQ+jL0ZOjEvTUB7t6e7l4aTw1HgT07UGCiBpJgBwoM+e9R
4L+xXfNPfLduQ9qsO12Q1vxcoueTPi/p629/HPc9SBFJLq25ZOb861TvANfr4d9iUwY98Z795pv7
fT+hN9daJ4ZH5spjH9xNMn05asbLSdIz9VvWfFj3Te8/FuSdGn780Iglpc9s64+8Oj99aHzBH9cY
q2tpRlfnp77wPWAxvVE7ZyW51t106dGoGsGTm2+ur431SzeSdse2Dzf9EN36oeTj4cic+6FGtd6r
XtSfuK214D83OUEuyeJ1/ebiguVjlmPZH+MeWHrwNidHq6e+r71uo/iL98Glv7nx+2p8N7V+cdFT
aW5SZOw0F0v3Dxd3CdN6+8y9a3p8z+OBvo96vLj3xPSY+Ulie5fv8sfd3xUxee7qCZp63iLId2P0
fCep3WK6Mq5x7ZZuAzPf8GUexV+TXW+OQ0jhbMfJc167FSEWphiE39NCY/Y3ofDz6ni6a1z17GD/
hR1SKyshRcDlKu1TWphfU6zoOqimpLK6tKaWpTS4Wr6aQC9vz0AvL0hpXoaqV4Cnd8//+QHUo//K
VijLVihkKxQBv+e+r+t7pef6b2i3mYqLvoKgQePO7+ZPXjr5xu0Lx/LezyrpuXzuABfzwSOO3j3l
MHiuKPM97uP3y51tb+v2/pZJuc75eRnvwRC7WW99ioLsZln3uiecud+49eOgTIt7tbv5s1dvnZQl
uL6CfwbL/FjiUu517fKGs/Ef71ExXkm/PGnZkvQwp1I2d9HNeT8MurnBcvfcWTuGZP8RQ8/oVzvS
uAofWb5t5h83qq5H7z60RF32K2/3PWne5tpZxiNOXF338N6oH46N+nn25SCw06/+du298t93Vvy1
wvv02dSRAxf63Zyysv+qeQuWrL59NMGxjZjf14E49evmh8+NvOd5LjrlK0j0OVOb9sPOg4VeWVq/
w2sT8YTgm9l874eZh16EphVdD8vy7fFJHDnCHk9YfjWgRrrAbuaFkoia2ZU/xFfqJjw46RfWePHj
kcM9363O36OJHjCfNNXNOhw274VktHO/B51smx6ex0KHDMBPKj7Giq0jJ625dnbUpC3T3Z9G3jye
gp/u9PHphOWLpQuyb19Im/TL/d2fNs876qy9+QKfeWeMd+CPzZFrVROJtd0ne+4j3PNEXc1H2nrs
XHBW+sTkB/u1c1+YGE/+FD/wvVf2x0ve4F1WQRXf67HHJq378DO3lH3lmkUzTDeqNnS9pKuQLvE7
fltbs/ReZvGRPJth2QGnZuzDHUdcMdX+vKt/2cYJn8ChC0cMaWSKJokjWWsxjsPI+VYjZisyBGnD
eRoM3jpQtmhzfZ42w2nBzw6yj53ukWnzsh6u0UgIoeEIZoKwFsC/kBOUnZAmYJ3zbuWmSofMaN7n
d6qZd2jH7g3XFctyZNguK7v3hMx316nCK4ujKx17XO7+Cm9y7H31m+SSxv2XWyrOHftt8x2L80M3
Z9Vs7uPjd1weUhbQzVukMWJWO7ampIG2bT0TxzFi24flPI/E8fHTyrwr0y8XbTqUvG3ksMBG/2eF
mPijjLhg6nclvcs8eUpB558TzK7wAmcvdtqQvfHA030HHygm5w0oy9i+VnaxXKQaNQ97VhL8+nph
S/+EXY80O++dmRv/dtXG3EWa5uD1R1PKnBWIvZNrPNi9TNq/6mCzpH4/vaTk4rQu9hM3LnKuXubd
O2vmgT9uz1neuaCnT+D9Sd2t9xC6I5P7u18rPWZh5Dfu4unGG23q0qHNPw+78eQaffjtgUKzlkBZ
wCq/7OGvx2f0sy4qOBJwf+OhlD6r5v5htLSPnaT/692a2e6vXV4GdzEOL1n1aqmL/9kLAQqH8hF9
fx9lb2SPCcZEP127fMEf5te+2/fDi8HzX3y6cDNj2bzGsHcLMu9d87T7vnfWLyEVduBx+LhdDjd/
/F2QUXK4qL/1iKe75qwq6FHhcf3XzBnHPWMdb9128Z34h2ZAVbZxUOmByUYjn3isbr0+enl9z1TS
9Ui464+aSStOST5MnvbLyvGDvEeVLb85UFZUULpWPfLM/PIVf8EjxOzgCqWx8nTw3WOfGvovi/t0
aeWyReFDQnU3IDnvh+S8Rk/OZL63oyV3lPb836BlT40mwNvTy8sz0JujZUPVi63+bybB/1V62Vyd
lWOhKTpkvThPoQhbNDitLER+tfLc2VeP+7cuMJXcvdO5ZqzlbnWj19O220fDElU/VIObvj3IyWe2
KmLfvCzZnBA/be2B2vgBS6L5Nz453Fk2aNJ3GwdGjL425ubvB177rTmdE/nTti3Bd51LFliuX1s9
MOOV2dyHn3znVjdeHdzbZkjk2PEBphcHZvP29k2dtra5VH3DgmqdXeNyf7A6/ZaxJuuvy9MKPp09
3TvKM3mPk+yhVvNdtYvE2e6kf2Jwo1fwzPMrA4jxOYkZ9c6deF67468lFf562b3gVWTwr5sF4M+o
lcsvZU91THs0bGPc66jv/IMClu8YkrPWbPm0s9IZGUFHNgt7Y9+3p5e9ICI9/xNP/WOa14HkJmiM
OpIWjzOsUX2RoayVT5c8E793bJh3b2Felw2eleuC9l9311h8VjJGcdqGBGlgECgA4aDr3xLNf2TK
ZH2iGauJ1kQ2hjd2nRD63080PzdXQ9dm80MuxUzvkGLGaGDG3CHFDPi/OWWzAROut1rzT/ydFRgy
2jFq25NKbZPXzn5PROqKDbFvn/Qe9KxbF/dr4Vuo1rO/uXuuVp0bkbywTpm7OVjdbe+qDRlLH1Tt
a9nxV+3O2Oq3IY+7jj5zjzYrPbt2qcL9PZV8POO8+4O4y/urft3ArMLWZtxtaYjv8Xpe2NJXv794
/mCCrU9QS8bil2mq8Z3W1FvNuT+Xb/36fuJfU1eeeSRbOyvxlPzyjOp5nQaUL7H8y+pl2tW+5+za
cqzPr5p6wKm5tjAjYlXK+Xe/rc7MuLUEjYxQ935zY+uVeq+Kj2vmyR4+Kf31m1VuB0+5SkTF0xfd
/GPVeyNHYXHA3FfDbOP2XbqX8eji0PnmOad9TXvfmmMdO9394BafCKvnEhNLkHvLN1t5YeFJ4fPx
oqlJ5SJZYvAIl5il1Zd+Lztz5GnV6h6ze4ycO61RHoP1fPvd6r5kzVq/Z+5qs1O/VPsbvalsCupb
/y61eZq3abGNqOGW5HbRm8oLUVe+N/ut9ji+4/sPbndsG5ZvJj/InLRbHr67983oqH38vOjiPG2i
Luxp4rPtg2uvkz7Ccqs6T9v7ovRbP6/88HO0ZEvRwrZkU48Rh3jKYffndXUqPTZnxrzT064vUW5l
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
LkNhzC1rblzR4Z93+Ocd/nmHf97hn3f45x3++f9b/rk563rGf54g3XVA27AvKIGNg3GBMtYr43xl
rFPGeco4VxlrlbFGGauVsUoZK5WxQhnLlbFMGa3KaFFGszKWKqNRGQ3KqFdGnTJqlbFEGYuVUaOM
RcpYqIxqZVQpo1IZFcooV0aZMhYoY74y5iljrjLmKGO2MmYpY6YyZihjujKmKcOtjKnKmKKMycqY
pIxSZUxUxgRljFdGiTKKlTFOGUXKGKuMMcoYrYxRyhipjBHKGK6MYcooVMZQZQxRxjnKGKyMQcoY
qIwByihQRn9l5CujnzL6KqOPMnoro5cyeiojTxm5yuihjO7KyFFGN2VkKyNLGZnKyFBGV2WkK6OL
MtKU0VkZLmU4lZGqjBRldFJGsjKSlJGojARlxCsjThmxyohRRrQyopQRqYwIZYQrI0wZocoIUUaw
MhzKCFKGXRk2ZViVYVGGoQxdGZoymDLINJhPGV5lnFDGcWUcU8avyvhFGT8r41/K+EkZPyrjB2V8
r4zvlPGtMo4q4xtlfK2MI8o4rIyvlPGlMr5QxufK+EwZnyrjE2X8UxkfK+MjZXyojA+U8b4y3lPG
P5Txd2W8q4y/KeMdZbytjLeUcUgZB5XxpjL+qow3lPEXZbyujNeU8aoyXlHGy8p4SRkvKuMFZTyv
jOeU8awynlHG08r4szKeUsaTynhCGY8r4zFlPKqMR5TxsDIeUsaflHFAGQ8qY78yHlDGPmXcrwyP
MvYqY48y7lPGvcq4Rxm7lbFLGXcr4y5l3KmMO5RxuzJuU8atyrhFGTcrY6cydihjuzL+qIxtyrhJ
GTcq4wZlbFXG9cq4ThnXKuMaZWxRxtXKuEoZVyrjCmVcrozLlLFZGZcq4xJlXKyMTcq4SBl/UMZG
ZVyoDOX2MOX2MOX2MOX2MOX2MOX2MOX2MOX2MOX2MOX2MOX2MOX2MOX2MOX2MOX2MOX2MOX2MOX2
sCZlKP+HKf+HKf+HKf+HKf+HKf+HKf+HKf+HKf+HKf+HKf+HKf+HKf+HKf+HKf+HKf+HKf+HKf+H
Kf+HKf+HKf+HKf+HKf+HKf+HKf+HKf+HKf+HKf+HKf+HKf+HKf+HKf+HKbeHKbeHKbeHKW+HKW+H
KW+HKW+HKW+HKW+HKW+HKW+HKW+HjbifG/CaPalDnPCZPamxkPXy6HxP6kDIOnl0npRzPakhkLXy
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
jw5Gb1xvU1kL8u59rEnXYVmCJk4TszpqdefJEX8fy9qLq5Br8xAkoFh2BxSL1yBQ7oBiQf+TQI5f
MFG6Xv+KXxgEecHh4xxjtz+u0O7w+azvY85r4KaEF48LhjQld/K4FrWNbvnqoYf3OvWZ0emLx6vy
t4Z5Je9bu6nL8ruV+xt3/Tnis4SqF+GPOo87fZsxK/9q/XKlxys6/ViXsx53Ey8dqLy/iV2Lr+/y
Q2NtUtfnCyKX//Lr05/vTlb4hTZ2WfosSz3J9eMa63l35ottnt9J/XPGmtMPjNbPST1pdWlW1QLX
QQOWWf5p/Szrap8zdq09bM6unXHQaeeIki7RazPOvny4LrfLrWVYTLRXwW83Pr1S4zPwzccLjO49
Lr//yVr3Qyfd5FzpzCU3f1/7ytBRWho0/5eRisT9F293eXBh+ELzHqf8TQtuzbNJmOlxaJtftPXP
chNLkH/Lv7vq3OIT0p8ncTPSBnBGqWGjXeKXV138tf/po08q13Wd23XM/LrVVvF4txfn1/WhqtcH
NHl4mZ38qSrQ8LeKHaF9al5m7qzzNS215Wpvyb/r9VvFudgrl80ejjhG7Lr82v17Re3KrdRrIyft
tnsvb38yLna/uDCutFCbWh/5JLWpYeiI65SfdID1eG/FHS771o9rXv8YJ9/Wa3Fruqnn6MMi1cg7
Czo7lX8xb9aCU3XXl6k+ZXssf7b208llHzF9PfYP7QdsFm57bjrqD9OP7PdOPd93U5y319Jv7w4K
uwbGFsddPDf1VKP5K66q7ui6sO2Ytm9r+bKFd+Sb5LsC0yVXvwjT1JBihN9P2/DbtMxPwG/r/wZ+
awJRbIEQ299XE8zjt7fA+mp49r933P9X6L1qTf8d39+Mn+s6up+nxe2Dd+4eX5KhTt927pZ5qr3s
54sbLyZvq9YoDR6Lv85eYJIw3ypy7qeLe2gcb4B+D0YdfDJNLHvBEYufTTuj+MrXfsqK57/1sXZ/
M+r+VJtH91PXrTmqzjpd9yrmvPRCz+0X6iOJtS839J/X55rzt7FZ9ZMv/Ogc6+m0dXJaTiZzD3d/
3Xf2bM3AKb/maVa8Gnt1UcMD1aKxf14y+lWyJ2tA5q6Y2aviQWJcbwMnl96bFt27TE5IXPty4kaD
OGNpzaqJTTnDW+BSm3TJJCDXxDbt+U4du/+YR/aq7bbDO3sPO7Ps+04fzVtThH1mw+5482LZTnjO
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
Y/GXxn/VS663ot76etvrmbHSoUeX1FhcQyuJXxyvtYlPi38j/pN4g+I3xGuxK2LXx26P1UfETo89
GWvFGttjbdtjnok5EKOPiJkeUxyjx8aIaz0uLSalbXps9eTqaQNTq+s9Uqv3rj6iur6iui2tekq7
9LTqjZul944eET09Wl8fbUuLbtoi/WSUFaWlReHGyUgrUrMibaTbnDYb2eIgegTqZpetVnK6/rRN
HFgzyWa7jca2zNjtsEZn7IgYOXmHbemOJmPE32mjJu2wL91BrkmTJ+y02W6duNOm9Ru7IyFj1CS+
vmn5ckrsm7EjccyEgL5hQ2LfiRk7Fgt3Wpp0W8JNCDKx5TSv3+v1tfS2xF9gmhc+Pj/+L8WGv6F+
n7jj8xKCtLzEHxHCK8QvA3n90/2IAzfg7ZXe4mqaDNLyf8Mf7/9k4raW4T//Q3/qTp/2fwDfsH9o
CmVuZHN0cmVhbQplbmRvYmoKMzQgMCBvYmoKMjg1NTMKZW5kb2JqCjM1IDAgb2JqCjw8L0xlbmd0
aCAyNzIwL0ZpbHRlci9GbGF0ZURlY29kZS9UeXBlL09ialN0bS9GaXJzdCAxNDEvTiAxOT4+c3Ry
ZWFtDQp42u1a224bORJ93v4KAnqYBANDvJO9CAI4toVkdy5BnJ08BPOgsbWOgMQOLHmQ/P2eU+wL
JctO5MnuyyZIudm8FIvFw0OyWkZpZYyKKSgTVfZBRWW0TsokZY1uFR6utcpq5QIqZuVSjihSPueg
WhWMd6iigtNBWa9CwIvRKqQWTbOKOXtlvErGaWVblS36MQFdZaOcVW3IVjnV5uibJ0+a6dH1Yr6+
ulZPZiezmdb+WOvYQhyMsngiL7nyjBFprzWydUhdGet0efa4PD3aOyQCxXX19agvHkJC10fXNpox
7XN5Z3l8NpbF3LU/Gfvx0BNQ5mPJc+yb6ZNil9RnP/lpM315fXV+c7YYB4tKKXSdnXQdhtFgXyn2
vUNCZVB42jlweXV5PF8v1KPjv1ttImpg8M6FeKD9D1r/8LiZ/nx1/qUqhzfrd+NUiNs7V/Q9J4ce
Xy/X7xf/DxP29KlA9PXnjws1fTm/WGAK59eLyzUArNUr+HRxvpw/u/r0VuM9GqtSa39vpq8Wq6ub
67PFiq0x6Weni7V6O315PFPT14tPa1SZXV2uWTrDWqQuNZ2hdZdyWHYl5bHiSipwkSH5VMyaHqE9
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
of37qGInYwZM5wGnxljP27KN+1NmG2rKxCLfffbUdSDfbpw9k7919pSs8ezp9P5nz7RJo7/9eniH
b/4LX0y7xeTyyKpkDf4+hDd2Y0VGVi2LyfKu7fQerMpvZinuYlXgncszGkFddLpi1STMaiXsjnKf
BN45YX2E8mG0CQ4LJFMBcE/887uYfOA1IJQon1iFjhl8IXzRgeuIU1iV4Q5PbufnPH41djSZY4e5
qeSTD+C5EhlCOhtX6jnGEyQBEwNpC7znyzutST4Urk+M26MOgxIplOdtVs2lV36lM2Z0FPY8o0kO
0MiWdIBwXtpg1TI/bC1Ss6oEkHRnHhTI19QkJtE5X2RVz18BkVVhXugJdGBVBuh8R7WuY1bYzCkJ
bdlOuTeT/Lx8hWzlc23EFCWsawECQbBLUgoCjFusGtOGNPKpvEPFtgirZiPAqEW+iPPrP6auIQh2
CS0QYGi3IQKKSgYgEBXbIg71Xo11epD44XmbVZ3di1X3YI7dJGu64JKx0W4Gl/b5XnoHy27E6rdo
1sUNms3mFs0yq6JZt/unMyv+eOUGHcOGfy7PV28bI7G5xsgvdRqJAP0HwYuX3wplbmRzdHJlYW0K
ZW5kb2JqCjIgMCBvYmoKPDwKL1R5cGUgL0NhdGFsb2cKL1BhZ2VzIDMgMCBSCi9QYWdlTW9kZSAv
VXNlTm9uZQo+PgplbmRvYmoKMzYgMCBvYmoKPDwvU2l6ZSAzNy9Sb290IDIgMCBSL0lEWzxhZWFi
NTA2NDYzZmI4ZDc4NWY4ODVlNTlmNGFjY2Q3ND48YWVhYjUwNjQ2M2ZiOGQ3ODVmODg1ZTU5ZjRh
Y2NkNzQ+XS9MZW5ndGggMTI5L0ZpbHRlci9GbGF0ZURlY29kZS9XWzEgMyAxXS9UeXBlL1hSZWYv
SW5mbyAxIDAgUgo+PnN0cmVhbQ0KeNodzr0RglAQBOA9EERRRAIbMLcIZ6zBkSrowKEJQkL8oQcY
K6EIC4DdS765fbvBA4A5AM4w+4zQVRiQw5DcPIYiEmuxETthnDy4O119l4lcBGLF4s72WXobi8TQ
NR63ImVbcdLV5DV5sRcHxj8/dOn97cjrx9i+xUC+IRaXyBPOCmVuZHN0cmVhbQplbmRvYmoKc3Rh
cnR4cmVmCjEwOTA1OQolJUVPRgo=

------=_NextPart_000_00B4_01D1C745.E1142640--


From nobody Wed Jun 15 21:59:51 2016
Return-Path: <zaccantte@gmail.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 E0E3F12D0D1 for <i2rs@ietfa.amsl.com>; Wed, 15 Jun 2016 21:59:49 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.699
X-Spam-Level: 
X-Spam-Status: No, score=-2.699 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
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 zoSJ6HKlJDn2 for <i2rs@ietfa.amsl.com>; Wed, 15 Jun 2016 21:59:48 -0700 (PDT)
Received: from mail-lf0-x230.google.com (mail-lf0-x230.google.com [IPv6:2a00:1450:4010:c07::230]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 2045212D094 for <i2rs@ietf.org>; Wed, 15 Jun 2016 21:59:48 -0700 (PDT)
Received: by mail-lf0-x230.google.com with SMTP id l188so30509682lfe.2 for <i2rs@ietf.org>; Wed, 15 Jun 2016 21:59:47 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;  h=mime-version:from:date:message-id:subject:to; bh=9wOA7SMs3tKIBBW76IIP6Y2QSTgtmAI8o31mT4Tnf6o=; b=E5+ZnKQsl/jpaSO4RDrJ/GNgyG3DzuvRm91Ve0/jUS02mnNpVfdf2ONXWA5PNJAElG 5cFX13nklu0bKql4mZoZCyurLUsoq+Gg+Ux6qI3Dwrn6wtm0FgJClsbnFZSBsyp4dE0o cze8YLtFNQ5FhPKiYc+F4BuTFK6gGfbG4r7+oAUb0yxkcQPbgK94HVPh1ImVHpUzVNVT ZZeknHNVFlJRMjOlZLy98o6ItotZ4OFYUTuVfdKCIcDoIWMlEvxYVmkO/zr/DX58BUQU uoOgOLzhiqwUp8szIJktwUKTPURKEOfLQ1PUjrkCMYK/YYoTacVhEN1w889DpREqdCH2 hwqQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=9wOA7SMs3tKIBBW76IIP6Y2QSTgtmAI8o31mT4Tnf6o=; b=T+VYqte02WOeG+qqNrQuqhffThMvfezN7f0a2ECjcSQpZnJ0lB/0DpWfWRBnrSRPJQ oOfry49mR4lUm/LoOcf0KeRW+yHr+PHMsUgz1tAnwZDk6QdpmmjYZDNJMj7fmlr0FTdG wQn/hKhjoYNBGGI1toyPijfS1k9PTqrTd/9zXemXwr3dzQ2E8ZpUd6Q9OZZs9qScsXIa yOKhiGqacs8ZnVTZG8iRG5OYJg2ocsBBRMtAuH+1d/5yZwLr/hfZW9vurBGUQ912CHPL ZKKo+w8uc3wKCwsnJuBs3tJqBEnHuAG5KnnF5uCcoy1y68imBQF6eD0+p+FxLPKXk6Jh XkEA==
X-Gm-Message-State: ALyK8tJF0Ij4okGH1w4HzBPvZvBDtESEF1OIylTFxvUPWixz5Pp1gFL1KNcEy/N6AzpuNFo1Mm5jcFoFpa7VAQ==
X-Received: by 10.25.131.141 with SMTP id f135mr513604lfd.42.1466053186248; Wed, 15 Jun 2016 21:59:46 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.25.83.69 with HTTP; Wed, 15 Jun 2016 21:59:45 -0700 (PDT)
From: FABIO ZACCANTTE <zaccantte@gmail.com>
Date: Thu, 16 Jun 2016 01:59:45 -0300
Message-ID: <CANJVEs7rTwF5RGHLf+OMQx1VqVY5yoB27Sar0QBjtW+tmL+2PA@mail.gmail.com>
To: "i2rs@ietf.org" <i2rs@ietf.org>
Content-Type: multipart/alternative; boundary=001a113e563463689305355e1b7b
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/os68iMFHuqFF0pxWYiGCtlmNr-U>
Subject: [i2rs] Volunteers to Implementation of I2RS
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 16 Jun 2016 04:59:50 -0000

--001a113e563463689305355e1b7b
Content-Type: text/plain; charset=UTF-8

Hi good evening,


I would like to participated as volunteer to Implementation of I2RS.


Regards,

Fabio.

--001a113e563463689305355e1b7b
Content-Type: text/html; charset=UTF-8

<div dir="ltr">Hi good evening,<div><br></div><div><br></div><div>I would like to participated as volunteer to Implementation of I2RS.</div><div><br></div><div><br></div><div>Regards,<br></div><div><br></div><div>Fabio.</div></div>

--001a113e563463689305355e1b7b--


From nobody Thu Jun 16 02:06:36 2016
Return-Path: <edwinsc@gmail.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 2EAB212B042 for <i2rs@ietfa.amsl.com>; Thu, 16 Jun 2016 02:06:35 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.699
X-Spam-Level: 
X-Spam-Status: No, score=-2.699 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
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 iwtHD7ALjY2G for <i2rs@ietfa.amsl.com>; Thu, 16 Jun 2016 02:06:34 -0700 (PDT)
Received: from mail-wm0-x22c.google.com (mail-wm0-x22c.google.com [IPv6:2a00:1450:400c:c09::22c]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 8A09112B018 for <i2rs@ietf.org>; Thu, 16 Jun 2016 02:06:33 -0700 (PDT)
Received: by mail-wm0-x22c.google.com with SMTP id a66so47791886wme.0 for <i2rs@ietf.org>; Thu, 16 Jun 2016 02:06:33 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;  h=mime-version:from:date:message-id:subject:to; bh=buUBZ/T5GXy+DNf6a4mroHJLh8QZF3pPZuJHmKkvpsw=; b=kbepiclWKQVwW4QQPfRIe5n2/trN6HoE71EABnVV2Y8O7ugW6ImB9Fj2z4Yd0wShT1 QRI9mfnXNTBzJby+TN1SWV42jFRXtDprrzsf0AzbHEIt1ClUFiA3nBi/qvgxCX2Ue5Gg fEWnjhRg+xd5pxg3mH7xb79RtCnC1fjNVn1I4o3yR7l5AHc4YoOGbHP0zf03oNMYDePl Ct/vBAA+pNbGRFNC8H3bMEp/t0lXuHGppG5IBoSo7Z8G5UW0NGX9ItBNudV0LAMuxV+M 7auk5R2wCgBXLDp/tnJNaJN+cEMj72cE4tA0hGY56lkyqsi8nbzRF3wX0A+Gks7/9yfG gcQw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=buUBZ/T5GXy+DNf6a4mroHJLh8QZF3pPZuJHmKkvpsw=; b=G2otOHKh2hZWKgjU3PKkac7JPvyql9Ja3gCL5FwGuisF0YvVQ0AMOKm7QZ2rfn9Lzo iqm0nZHWdYYWGYzfhYv1lBLItbauRTkaIY6245dDqTSeXWk5B5xbHU8dyN74PfjHWe7t 2qmI8G3NczfL09wTTk0O5kggVuCarEfPk1Jzz/oUxcEvqE8oPblsrdhXBtW2lJB8kRho Wd47TR2WayDHFSRZYlHcJgVFwI1N7aUPkNKXAnvLr3KtipKhqotvIV4RkstM0frxg5rH QfF3V+YxKjlz9L96b7fD9Y4QCXbyP0F3p69VMsxZbQn0lZufY3lnusBKQCEmPEAyRSWX AR4A==
X-Gm-Message-State: ALyK8tJnZVocZESzYEDauPdfAK4ZtokchjCNrksIlT7oGKkUMSpP2FqYKmQ5UHyj/dO6lwq3PEQ293PbD9ayVw==
X-Received: by 10.194.134.230 with SMTP id pn6mr257770wjb.165.1466066614264; Thu, 16 Jun 2016 01:43:34 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.28.113.74 with HTTP; Thu, 16 Jun 2016 01:43:04 -0700 (PDT)
From: Edwin Cordeiro <edwinsc@gmail.com>
Date: Thu, 16 Jun 2016 10:43:04 +0200
Message-ID: <CAERpkxACrSpxSvT6ds6Mm5jcBSzMsvZUdaUspnt78xbfqvJu9A@mail.gmail.com>
To: i2rs <i2rs@ietf.org>
Content-Type: multipart/alternative; boundary=089e01175e81c2aaab0535613be4
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/qwrX5PrBAqcOOIv56kwSmxMvqP4>
Subject: [i2rs] Type mismatch in ietf-i2rs-rib@2016-03-17.yang
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 16 Jun 2016 09:06:35 -0000

--089e01175e81c2aaab0535613be4
Content-Type: text/plain; charset=UTF-8

Hello all,

We believe that we found a type mismatch in ietf-i2rs-rib@2016-03-17.yang:

Location: grouping route-prefix
leaf route-index
type uint64
and: grouping route-operation-state
container failure-detail
leaf route-index
type uint32

Description: The types of the different route-index are different but
should probably be the same since route-operation-state is used to
identify the failed routes.

Example: In the route-add rpc we have as input a list of routes.
The list of routes uses "route-prefix" and has "route-index" as key.
In the grouping "route-prefix" the leaf "route-index" has type uint64
The output of the route-add rpc uses "route-operation-state".
In the grouping "route-operation-state" the container "failure-detail"
is defined. It contains a list "failed-routes" which contains the
"route-index" of the failed routes as well as an error code.
But in this case the route-index has the type uint32.
So the type of input route-index and output route-index does not match.

Is our understanding correct, or are we missing something?

Best Regards,

Edwin Cordeiro

--089e01175e81c2aaab0535613be4
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div class=3D"gmail_default" style=3D"font-family:verdana,=
sans-serif;font-size:small">Hello all,</div><div class=3D"gmail_default" st=
yle=3D"font-family:verdana,sans-serif;font-size:small"><br></div><div class=
=3D"gmail_default" style=3D"font-family:verdana,sans-serif;font-size:small"=
>We believe that we found a type mismatch in=C2=A0ietf-i2rs-rib@2016-03-17.=
yang:</div><div class=3D"gmail_default"><div class=3D"gmail_default"><font =
face=3D"verdana, sans-serif"><br></font></div><div class=3D"gmail_default">=
<font face=3D"verdana, sans-serif">Location:<span class=3D"" style=3D"white=
-space:pre">	</span>grouping route-prefix</font></div><div class=3D"gmail_d=
efault"><font face=3D"verdana, sans-serif"><span class=3D"" style=3D"white-=
space:pre">			</span>leaf route-index</font></div><div class=3D"gmail_defau=
lt"><font face=3D"verdana, sans-serif"><span class=3D"" style=3D"white-spac=
e:pre">				</span>type uint64</font></div><div class=3D"gmail_default"><fon=
t face=3D"verdana, sans-serif">and:<span class=3D"" style=3D"white-space:pr=
e">		</span>grouping route-operation-state</font></div><div class=3D"gmail_=
default"><font face=3D"verdana, sans-serif"><span class=3D"" style=3D"white=
-space:pre">			</span>container failure-detail</font></div><div class=3D"gm=
ail_default"><font face=3D"verdana, sans-serif"><span class=3D"" style=3D"w=
hite-space:pre">				</span>leaf route-index</font></div><div class=3D"gmail=
_default"><font face=3D"verdana, sans-serif"><span class=3D"" style=3D"whit=
e-space:pre">					</span>type uint32</font></div><div class=3D"gmail_defaul=
t"><font face=3D"verdana, sans-serif"><br></font></div><div class=3D"gmail_=
default"><font face=3D"verdana, sans-serif">Description: The types of the d=
ifferent route-index are different but=C2=A0</font></div><div class=3D"gmai=
l_default"><font face=3D"verdana, sans-serif">should=C2=A0</font><font face=
=3D"verdana, sans-serif">probably be the same since route-operation-state=
=C2=A0</font><span style=3D"font-family:verdana,sans-serif">is used to=C2=
=A0</span></div><div class=3D"gmail_default"><span style=3D"font-family:ver=
dana,sans-serif">identify the failed routes.</span></div><div style=3D"font=
-family:verdana,sans-serif;font-size:small"><br></div><div><div><font face=
=3D"verdana, sans-serif">Example: In the route-add rpc we have as input a l=
ist of routes.</font></div><div><font face=3D"verdana, sans-serif">The list=
 of routes uses &quot;route-prefix&quot; and has &quot;route-index&quot; as=
 key.</font></div><div><font face=3D"verdana, sans-serif">In the grouping &=
quot;route-prefix&quot; the leaf &quot;route-index&quot; has type uint64</f=
ont></div><div><span style=3D"font-family:verdana,sans-serif">The output of=
 the route-add rpc uses &quot;route-operation-state&quot;.</span><br></div>=
<div><font face=3D"verdana, sans-serif">In the grouping &quot;route-operati=
on-state&quot; the container &quot;failure-detail&quot;</font></div><div><f=
ont face=3D"verdana, sans-serif">is defined. It contains a list &quot;faile=
d-routes&quot; which contains the</font></div><div><font face=3D"verdana, s=
ans-serif">&quot;route-index&quot; of the failed routes as well as an error=
 code.</font></div><div><font face=3D"verdana, sans-serif">But in this case=
 the route-index has the type uint32.</font></div><div><span style=3D"font-=
family:verdana,sans-serif">So the type of input route-index and output rout=
e-index does not match.</span><br></div></div></div><div class=3D"gmail_def=
ault" style=3D"font-family:verdana,sans-serif;font-size:small"><br></div><d=
iv class=3D"gmail_default" style=3D"font-family:verdana,sans-serif;font-siz=
e:small">Is our understanding correct, or are we missing something?</div><d=
iv class=3D"gmail_default" style=3D"font-family:verdana,sans-serif;font-siz=
e:small"><br></div><div class=3D"gmail_default" style=3D"font-family:verdan=
a,sans-serif;font-size:small">Best Regards,</div><br clear=3D"all"><div><di=
v class=3D"gmail_signature" data-smartmail=3D"gmail_signature"><div dir=3D"=
ltr"><div><font face=3D"verdana, sans-serif">Edwin Cordeiro</font></div></d=
iv></div></div>
</div>

--089e01175e81c2aaab0535613be4--


From nobody Thu Jun 16 02:11:55 2016
Return-Path: <edwinsc@gmail.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 2B94A12D0BA for <i2rs@ietfa.amsl.com>; Thu, 16 Jun 2016 02:11:46 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.699
X-Spam-Level: 
X-Spam-Status: No, score=-2.699 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
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 W7pU_uCVfIr8 for <i2rs@ietfa.amsl.com>; Thu, 16 Jun 2016 02:11:42 -0700 (PDT)
Received: from mail-wm0-x22c.google.com (mail-wm0-x22c.google.com [IPv6:2a00:1450:400c:c09::22c]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id B630D12D0B1 for <i2rs@ietf.org>; Thu, 16 Jun 2016 02:11:41 -0700 (PDT)
Received: by mail-wm0-x22c.google.com with SMTP id v199so183454209wmv.0 for <i2rs@ietf.org>; Thu, 16 Jun 2016 02:11:41 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;  h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=WCPqKWiILVasQ6Osul0klMpNiins9r2Fy06eh1gE/TU=; b=g2GNokG99uYDvJRZEiicu5qavdlkOufOCuRQL7fmi1MKRR2+fr3cqu+XNAGm+t+/3d W6AqQ2qlVGC9lRG/M9c6FlD1l4kk6QFOR5rpfwwyGqX/0Rrdy/5NgSyioaBSPBjIhZ+v /Tp79uE7BqPqqH5g1dsKXIMBH/EN6Kq9KD/FBcq9MH8OJWZVBdGjtVlOHlzl644B/tvj NS/gZeu9YldMwqi4JgjiA8TVbcdiWOjshl2k7y8KGOOE8I4ctDZakMgMOOWecAPIXrYj 7d/iM3T025B9+qy5XaMy5E5psjFiJ9+GUaoq682ruKP9LCkmK/jnNekf2x0mWv6mKZdy OFqA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=WCPqKWiILVasQ6Osul0klMpNiins9r2Fy06eh1gE/TU=; b=DjpiDssb8le1ghucDwspfn0B8POL0rK+FeK8XtcbFdJ8x2aaYC3IEAArBu+4GwVvo3 7TkB52V5ieS7d4uwMj3YAI4btpuapQJuiF628Dfp7BSlorX8Y+xUJzETbBDwoED89/AS umzBKuitr/1TMaoay+sgzfVrmlntXL4hDcNWJy/5zy8NROY4gIHWng/b5E6DNfzPX94o kDZRhOsiDcaejHNJz7gXUEijWvDpaUNNfVSW+yPzF8/pl7oOznIHSuc00k9zTpK5vJh0 ReYMZUj9rkgIiwl9NqMxRsS0xN+gzgl2F5tMhPLofXKic/Ya8nzV2RbIm94UWpCyU0Bs +Gfg==
X-Gm-Message-State: ALyK8tKQaHHmCusxKMiHXVqZnCnkxuw/PIaBLjWDbo8tSu8aUU1XIlsITud/IqNFDKLtKSfymB7FJK00DP/bYQ==
X-Received: by 10.194.134.230 with SMTP id pn6mr271835wjb.165.1466066774246; Thu, 16 Jun 2016 01:46:14 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.28.113.74 with HTTP; Thu, 16 Jun 2016 01:45:44 -0700 (PDT)
In-Reply-To: <00b301d1c767$68257820$38706860$@ndzh.com>
References: <00b301d1c767$68257820$38706860$@ndzh.com>
From: Edwin Cordeiro <edwinsc@gmail.com>
Date: Thu, 16 Jun 2016 10:45:44 +0200
Message-ID: <CAERpkxAe+oc0_w4j=5nVO=Y6AwU=dBjD0GrcFLpMRocVxStwiQ@mail.gmail.com>
To: Susan Hares <shares@ndzh.com>
Content-Type: multipart/alternative; boundary=089e01175e814bce7a0535614509
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/Gt7R71XRaiemJzGvc_FdDTCYgD4>
Cc: i2rs <i2rs@ietf.org>
Subject: Re: [i2rs] I2RS Hackathon Project announcement
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 16 Jun 2016 09:11:46 -0000

--089e01175e814bce7a0535614509
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

Hi Susan,

The proposal seems good. I'll be there, count on me as volunteer.

I was working on the VM to be used at the Hackathon with the suggestions
from the last time. As you are saying that code will be available before
the meeting, I can test it and try to integrate it into this VM.

Questions:
- When will the code be available?
- Should I continue with this VM creation?

Best Regards,
Edwin Cordeiro

On Thu, Jun 16, 2016 at 2:38 AM, Susan Hares <shares@ndzh.com> wrote:

> I=E2=80=99ve attached the announcement for an I2RS project at IETF 96 Hac=
kathon.
> I=E2=80=99d love feedback and feedback on this outline.  There will be co=
de
> available prior to IETF 96.
>
>
>
> Sue Hares
>
> _______________________________________________
> i2rs mailing list
> i2rs@ietf.org
> https://www.ietf.org/mailman/listinfo/i2rs
>
>

--089e01175e814bce7a0535614509
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div class=3D"gmail_default"><div class=3D"gmail_default">=
<font face=3D"verdana, sans-serif">Hi Susan,</font></div><div class=3D"gmai=
l_default"><font face=3D"verdana, sans-serif"><br></font></div><div class=
=3D"gmail_default"><font face=3D"verdana, sans-serif">The proposal seems go=
od. I&#39;ll be there, count on me as volunteer.</font></div><div class=3D"=
gmail_default"><font face=3D"verdana, sans-serif"><br></font></div><div cla=
ss=3D"gmail_default"><font face=3D"verdana, sans-serif">I was working on th=
e VM to be used at the Hackathon with the suggestions from the last time. A=
s you are saying that code will be available before the meeting, I can test=
 it and try to integrate it into this VM.</font></div><div class=3D"gmail_d=
efault"><font face=3D"verdana, sans-serif"><br></font></div><div class=3D"g=
mail_default"><font face=3D"verdana, sans-serif">Questions:</font></div><di=
v class=3D"gmail_default"><font face=3D"verdana, sans-serif">- When will th=
e code be available?</font></div><div class=3D"gmail_default"><font face=3D=
"verdana, sans-serif">- Should I continue with this VM creation?</font></di=
v><div class=3D"gmail_default"><font face=3D"verdana, sans-serif"><br></fon=
t></div><div class=3D"gmail_default"><font face=3D"verdana, sans-serif">Bes=
t Regards,<br clear=3D"all"><div><div class=3D"gmail_signature" data-smartm=
ail=3D"gmail_signature"><div dir=3D"ltr"><div><font face=3D"verdana, sans-s=
erif">Edwin Cordeiro</font></div></div></div></div>
</font></div></div><div class=3D"gmail_extra">
<br><div class=3D"gmail_quote">On Thu, Jun 16, 2016 at 2:38 AM, Susan Hares=
 <span dir=3D"ltr">&lt;<a href=3D"mailto:shares@ndzh.com" target=3D"_blank"=
>shares@ndzh.com</a>&gt;</span> wrote:<br><blockquote class=3D"gmail_quote"=
 style=3D"margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:=
solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div lang=3D"EN-=
US" link=3D"blue" vlink=3D"purple"><div><p class=3D"MsoNormal">I=E2=80=99ve=
 attached the announcement for an I2RS project at IETF 96 Hackathon.=C2=A0 =
I=E2=80=99d love feedback and feedback on this outline.=C2=A0 There will be=
 code available prior to IETF 96.=C2=A0 <u></u><u></u></p><p class=3D"MsoNo=
rmal"><u></u>=C2=A0<u></u></p><p class=3D"MsoNormal">Sue Hares <u></u><u></=
u></p></div></div><br>_______________________________________________<br>
i2rs mailing list<br>
<a href=3D"mailto:i2rs@ietf.org">i2rs@ietf.org</a><br>
<a href=3D"https://www.ietf.org/mailman/listinfo/i2rs" rel=3D"noreferrer" t=
arget=3D"_blank">https://www.ietf.org/mailman/listinfo/i2rs</a><br>
<br></blockquote></div><br></div></div>

--089e01175e814bce7a0535614509--


From nobody Thu Jun 16 11:43:23 2016
Return-Path: <shares@ndzh.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 DF4C612DA86 for <i2rs@ietfa.amsl.com>; Thu, 16 Jun 2016 11:43:20 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 3.638
X-Spam-Level: ***
X-Spam-Status: No, score=3.638 tagged_above=-999 required=5 tests=[BAYES_40=-0.001, DOS_OUTLOOK_TO_MX=2.845, HTML_MESSAGE=0.001, RDNS_NONE=0.793] autolearn=no autolearn_force=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 PZ6j7oHkmSUg for <i2rs@ietfa.amsl.com>; Thu, 16 Jun 2016 11:43:20 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id D40B212D947 for <i2rs@ietf.org>; Thu, 16 Jun 2016 11:43:19 -0700 (PDT)
X-Default-Received-SPF: pass (skip=forwardok (res=PASS)) x-ip-name=210.255.219.250; 
From: "Susan Hares" <shares@ndzh.com>
To: "'FABIO ZACCANTTE'" <zaccantte@gmail.com>, <i2rs@ietf.org>
References: <CANJVEs7rTwF5RGHLf+OMQx1VqVY5yoB27Sar0QBjtW+tmL+2PA@mail.gmail.com>
In-Reply-To: <CANJVEs7rTwF5RGHLf+OMQx1VqVY5yoB27Sar0QBjtW+tmL+2PA@mail.gmail.com>
Date: Thu, 16 Jun 2016 14:43:01 -0400
Message-ID: <01c801d1c7fe$ea2d1a20$be874e60$@ndzh.com>
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="----=_NextPart_000_01C9_01D1C7DD.631B7A20"
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQJfIrGZLXFgF02p3oGee/eYO4g4up7Rqylw
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/n41nk2vAqxUtgVJYyaA64YnVcrI>
Subject: Re: [i2rs] Volunteers to Implementation of I2RS
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 16 Jun 2016 18:43:21 -0000

This is a multipart message in MIME format.

------=_NextPart_000_01C9_01D1C7DD.631B7A20
Content-Type: text/plain;
	charset="utf-8"
Content-Transfer-Encoding: quoted-printable

Fabio:=20

=20

Welcome to the I2RS volunteers.   What would you like to help with =
debugging I2RS work or writing an application?  Code will be available =
in July.

=20

Sue=20

=20

From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of FABIO ZACCANTTE
Sent: Thursday, June 16, 2016 1:00 AM
To: i2rs@ietf.org
Subject: [i2rs] Volunteers to Implementation of I2RS

=20

Hi good evening,

=20

=20

I would like to participated as volunteer to Implementation of I2RS.

=20

=20

Regards,

=20

Fabio.


------=_NextPart_000_01C9_01D1C7DD.631B7A20
Content-Type: text/html;
	charset="utf-8"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" =
xmlns:o=3D"urn:schemas-microsoft-com:office:office" =
xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" =
xmlns=3D"http://www.w3.org/TR/REC-html40"><head><meta =
http-equiv=3DContent-Type content=3D"text/html; charset=3Dutf-8"><meta =
name=3DGenerator content=3D"Microsoft Word 14 (filtered =
medium)"><style><!--
/* Font Definitions */
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
	{font-family:Tahoma;
	panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0in;
	margin-bottom:.0001pt;
	font-size:12.0pt;
	font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:blue;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:purple;
	text-decoration:underline;}
span.EmailStyle17
	{mso-style-type:personal-reply;
	font-family:"Calibri","sans-serif";
	color:#1F497D;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-family:"Calibri","sans-serif";}
@page WordSection1
	{size:8.5in 11.0in;
	margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
	{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]--></head><body lang=3DEN-US link=3Dblue =
vlink=3Dpurple><div class=3DWordSection1><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Fabio: <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Welcome to the I2RS volunteers.=C2=A0=C2=A0 What would you like to =
help with debugging I2RS work or writing an application?=C2=A0 Code will =
be available in July.<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Sue <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><b><span =
style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span>=
</b><span style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif"'> =
i2rs [mailto:i2rs-bounces@ietf.org] <b>On Behalf Of </b>FABIO =
ZACCANTTE<br><b>Sent:</b> Thursday, June 16, 2016 1:00 AM<br><b>To:</b> =
i2rs@ietf.org<br><b>Subject:</b> [i2rs] Volunteers to Implementation of =
I2RS<o:p></o:p></span></p><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p><div><p class=3DMsoNormal>Hi good =
evening,<o:p></o:p></p><div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div><div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div><div><p class=3DMsoNormal>I =
would like to participated as volunteer to Implementation of =
I2RS.<o:p></o:p></p></div><div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div><div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div><div><p =
class=3DMsoNormal>Regards,<o:p></o:p></p></div><div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div><div><p =
class=3DMsoNormal>Fabio.<o:p></o:p></p></div></div></div></body></html>
------=_NextPart_000_01C9_01D1C7DD.631B7A20--


From nobody Thu Jun 16 12:24:04 2016
Return-Path: <shares@ndzh.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 6905512DAF0 for <i2rs@ietfa.amsl.com>; Thu, 16 Jun 2016 12:24:03 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.739
X-Spam-Level: *
X-Spam-Status: No, score=1.739 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, HTML_MESSAGE=0.001, RDNS_NONE=0.793] autolearn=no autolearn_force=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 Dh-6Z5gZS9Uy for <i2rs@ietfa.amsl.com>; Thu, 16 Jun 2016 12:24:01 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id B618A12DACF for <i2rs@ietf.org>; Thu, 16 Jun 2016 12:24:01 -0700 (PDT)
X-Default-Received-SPF: pass (skip=forwardok (res=PASS)) x-ip-name=210.255.219.250; 
From: "Susan Hares" <shares@ndzh.com>
To: "'Edwin Cordeiro'" <edwinsc@gmail.com>
References: <00b301d1c767$68257820$38706860$@ndzh.com> <CAERpkxAe+oc0_w4j=5nVO=Y6AwU=dBjD0GrcFLpMRocVxStwiQ@mail.gmail.com>
In-Reply-To: <CAERpkxAe+oc0_w4j=5nVO=Y6AwU=dBjD0GrcFLpMRocVxStwiQ@mail.gmail.com>
Date: Thu, 16 Jun 2016 15:23:44 -0400
Message-ID: <023201d1c804$9a331b40$ce9951c0$@ndzh.com>
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="----=_NextPart_000_0233_01D1C7E3.13221780"
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQIbVWcBkSKNJHHWuesREkCX9lUHOQIvPeLZn0fZh+A=
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/bg7_lE_FUGRw0njaoxNgD91_-Yw>
Cc: 'i2rs' <i2rs@ietf.org>, "'Fedyk, Don'" <don.fedyk@hpe.com>
Subject: Re: [i2rs] I2RS Hackathon Project announcement
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 16 Jun 2016 19:24:03 -0000

This is a multipart message in MIME format.

------=_NextPart_000_0233_01D1C7E3.13221780
Content-Type: text/plain;
	charset="utf-8"
Content-Transfer-Encoding: quoted-printable

Edwin:=20

=20

Continuing with the VM creation is great.  You might want to talk to Don =
Fedyk about his work on VMs.  =20

=20

Sue=20

=20

From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Edwin Cordeiro
Sent: Thursday, June 16, 2016 4:46 AM
To: Susan Hares
Cc: i2rs
Subject: Re: [i2rs] I2RS Hackathon Project announcement

=20

Hi Susan,

=20

The proposal seems good. I'll be there, count on me as volunteer.

=20

I was working on the VM to be used at the Hackathon with the suggestions =
from the last time. As you are saying that code will be available before =
the meeting, I can test it and try to integrate it into this VM.

=20

Questions:

- When will the code be available?

- Should I continue with this VM creation?

=20

Best Regards,


Edwin Cordeiro

=20

On Thu, Jun 16, 2016 at 2:38 AM, Susan Hares <shares@ndzh.com> wrote:

I=E2=80=99ve attached the announcement for an I2RS project at IETF 96 =
Hackathon.  I=E2=80=99d love feedback and feedback on this outline.  =
There will be code available prior to IETF 96. =20

=20

Sue Hares=20


_______________________________________________
i2rs mailing list
i2rs@ietf.org
https://www.ietf.org/mailman/listinfo/i2rs

=20


------=_NextPart_000_0233_01D1C7E3.13221780
Content-Type: text/html;
	charset="utf-8"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" =
xmlns:o=3D"urn:schemas-microsoft-com:office:office" =
xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" =
xmlns=3D"http://www.w3.org/TR/REC-html40"><head><meta =
http-equiv=3DContent-Type content=3D"text/html; charset=3Dutf-8"><meta =
name=3DGenerator content=3D"Microsoft Word 14 (filtered =
medium)"><style><!--
/* Font Definitions */
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
	{font-family:Tahoma;
	panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
	{font-family:Verdana;
	panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0in;
	margin-bottom:.0001pt;
	font-size:12.0pt;
	font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:blue;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:purple;
	text-decoration:underline;}
span.EmailStyle17
	{mso-style-type:personal-reply;
	font-family:"Calibri","sans-serif";
	color:#1F497D;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-family:"Calibri","sans-serif";}
@page WordSection1
	{size:8.5in 11.0in;
	margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
	{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]--></head><body lang=3DEN-US link=3Dblue =
vlink=3Dpurple><div class=3DWordSection1><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Edwin: <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Continuing with the VM creation is great.=C2=A0 You might want to =
talk to Don Fedyk about his work on VMs.=C2=A0 =
=C2=A0<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Sue <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><b><span =
style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span>=
</b><span style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif"'> =
i2rs [mailto:i2rs-bounces@ietf.org] <b>On Behalf Of </b>Edwin =
Cordeiro<br><b>Sent:</b> Thursday, June 16, 2016 4:46 AM<br><b>To:</b> =
Susan Hares<br><b>Cc:</b> i2rs<br><b>Subject:</b> Re: [i2rs] I2RS =
Hackathon Project announcement<o:p></o:p></span></p><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p><div><div><div><p =
class=3DMsoNormal><span style=3D'font-family:"Verdana","sans-serif"'>Hi =
Susan,</span><o:p></o:p></p></div><div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div><div><p =
class=3DMsoNormal><span style=3D'font-family:"Verdana","sans-serif"'>The =
proposal seems good. I'll be there, count on me as =
volunteer.</span><o:p></o:p></p></div><div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div><div><p =
class=3DMsoNormal><span style=3D'font-family:"Verdana","sans-serif"'>I =
was working on the VM to be used at the Hackathon with the suggestions =
from the last time. As you are saying that code will be available before =
the meeting, I can test it and try to integrate it into this =
VM.</span><o:p></o:p></p></div><div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div><div><p =
class=3DMsoNormal><span =
style=3D'font-family:"Verdana","sans-serif"'>Questions:</span><o:p></o:p>=
</p></div><div><p class=3DMsoNormal><span =
style=3D'font-family:"Verdana","sans-serif"'>- When will the code be =
available?</span><o:p></o:p></p></div><div><p class=3DMsoNormal><span =
style=3D'font-family:"Verdana","sans-serif"'>- Should I continue with =
this VM creation?</span><o:p></o:p></p></div><div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div><div><p =
class=3DMsoNormal><span =
style=3D'font-family:"Verdana","sans-serif"'>Best Regards,<br =
clear=3Dall><o:p></o:p></span></p><div><div><div><div><p =
class=3DMsoNormal><span =
style=3D'font-family:"Verdana","sans-serif"'>Edwin =
Cordeiro<o:p></o:p></span></p></div></div></div></div></div></div><div><p=
 class=3DMsoNormal><o:p>&nbsp;</o:p></p><div><p class=3DMsoNormal>On =
Thu, Jun 16, 2016 at 2:38 AM, Susan Hares &lt;<a =
href=3D"mailto:shares@ndzh.com" =
target=3D"_blank">shares@ndzh.com</a>&gt; =
wrote:<o:p></o:p></p><div><div><p class=3DMsoNormal =
style=3D'mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>I=E2=80=99ve=
 attached the announcement for an I2RS project at IETF 96 =
Hackathon.&nbsp; I=E2=80=99d love feedback and feedback on this =
outline.&nbsp; There will be code available prior to IETF 96.&nbsp; =
<o:p></o:p></p><p class=3DMsoNormal =
style=3D'mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp;<o:p><=
/o:p></p><p class=3DMsoNormal =
style=3D'mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>Sue Hares =
<o:p></o:p></p></div></div><p class=3DMsoNormal =
style=3D'margin-bottom:12.0pt'><br>______________________________________=
_________<br>i2rs mailing list<br><a =
href=3D"mailto:i2rs@ietf.org">i2rs@ietf.org</a><br><a =
href=3D"https://www.ietf.org/mailman/listinfo/i2rs" =
target=3D"_blank">https://www.ietf.org/mailman/listinfo/i2rs</a><o:p></o:=
p></p></div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div></div></div></body></html>
------=_NextPart_000_0233_01D1C7E3.13221780--


From nobody Thu Jun 16 13:22:05 2016
Return-Path: <7riw77@gmail.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 6EDEE12DB15 for <i2rs@ietfa.amsl.com>; Thu, 16 Jun 2016 13:22:04 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.45
X-Spam-Level: 
X-Spam-Status: No, score=-2.45 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
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 6JBwOGlJHZdN for <i2rs@ietfa.amsl.com>; Thu, 16 Jun 2016 13:22:03 -0700 (PDT)
Received: from mail-yw0-x22d.google.com (mail-yw0-x22d.google.com [IPv6:2607:f8b0:4002:c05::22d]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 12E8F12D862 for <i2rs@ietf.org>; Thu, 16 Jun 2016 13:22:02 -0700 (PDT)
Received: by mail-yw0-x22d.google.com with SMTP id v137so53652997ywa.3 for <i2rs@ietf.org>; Thu, 16 Jun 2016 13:22:02 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;  h=from:to:subject:date:message-id:mime-version :content-transfer-encoding:thread-index:content-language; bh=/dFQP07xW1zIR0kbdbp0Hade9p419YsPJfM107cs31w=; b=dPubsp8j6uQh+I/wWsCaUQwTK+I7hmcBCOCPjiQkUTPfMEE7tDsCcWhbUX74rX+9py duDVb1ehxu9HM68w/TjFfwXzhhxQI9HBfSdOeGKKh66bV6qQHuEiYfrxHLtASfXHMTaW Jb2gcoVM8GlWXZlwYV6ShuUxes+RFGhG7zIdmlMzkC1bf/dKbmE5wXp5KfydKKkm9JZE jfedzdtp89r2WzxuYEdkBUhJNrfUuHITjHvI4jcMGLLvwMXOpqlYknOl/8OYjFpzuW+Q lGXXvMYUuIY/lO81nufW7k8knh4XGWgVzgNTBs/3ve00U+V0lyN27B34LK8gEzGuSK1p 7gUQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:subject:date:message-id:mime-version :content-transfer-encoding:thread-index:content-language; bh=/dFQP07xW1zIR0kbdbp0Hade9p419YsPJfM107cs31w=; b=ZSXNbcnioDcjwU5TnzlSl0oKtp4ReBixbNjYMAHO2ZgLWQ6Xb/SEdIRE4KoBXo56KD xZKTBSTed/Mssjes10HF8G7utGXW4bFYndEjIZ+8l2pYeeEPxNgTVmB2xW9UxZFb0DI2 LJq6EzMJt1C9SHsGKvE3fWf4YWsdqtfiqRX3yTRAecx/o5m+NIodC4GU8b34c0UkXgsR A4xOr9LnfyLPCckT2JNqub+qutdXWBZyE9gF1UmKxon5UGgUBMXjwszrVDviKmtp7SSe SdV82xs4G5OFOrDR66yVv308nSRnAcGM/1WXtK/kOBidxzKmZtb9GY4woYEvj2T0QAl2 C0sA==
X-Gm-Message-State: ALyK8tKjnj7n+gG7KkxSKQTU2iNTZvu0pqO4SAnIG9+xnvZJnrRC1rIgCZgNxPObf4Uxbg==
X-Received: by 10.37.208.2 with SMTP id h2mr2402189ybg.90.1466108522189; Thu, 16 Jun 2016 13:22:02 -0700 (PDT)
Received: from Russ (162-229-180-77.lightspeed.rlghnc.sbcglobal.net. [162.229.180.77]) by smtp.gmail.com with ESMTPSA id c8sm9770189ywb.2.2016.06.16.13.22.01 for <i2rs@ietf.org> (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 16 Jun 2016 13:22:01 -0700 (PDT)
From: "Russ White" <7riw77@gmail.com>
To: <i2rs@ietf.org>
Date: Thu, 16 Jun 2016 16:22:00 -0400
Message-ID: <022501d1c80c$bd1c5b50$375511f0$@gmail.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Mailer: Microsoft Outlook 16.0
Thread-Index: AdHIDHt7cLSlUG+1SIKH7uJ5K2+TWw==
Content-Language: en-us
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/XE0liWre7W6tydYhtvuCiYorObY>
Subject: [i2rs] WG adoption of RIB models
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 16 Jun 2016 20:22:04 -0000

Y'all --

Based on the last call started here --

https://www.ietf.org/mail-archive/web/i2rs/current/msg03528.html

it looks like the WG has consensus on adopting:

draft-kini-i2rs-fb-rib-info-model-03
draft-hares-i2rs-fb-rib-data-model-03
draft-hares-i2rs-pkt-eca-data-model-02

as WG docs. Can the authors please update the drafts with WG named versions
as official WG docs?

Thanks!

:-)

Russ


From nobody Thu Jun 16 14:06:48 2016
Return-Path: <jclarke@cisco.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 A638E12D563 for <i2rs@ietfa.amsl.com>; Thu, 16 Jun 2016 06:37:01 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -15.947
X-Spam-Level: 
X-Spam-Status: No, score=-15.947 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-1.426, SPF_PASS=-0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.com
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 pVqRZoia_sy6 for <i2rs@ietfa.amsl.com>; Thu, 16 Jun 2016 06:37:00 -0700 (PDT)
Received: from alln-iport-8.cisco.com (alln-iport-8.cisco.com [173.37.142.95]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 00E2412D542 for <i2rs@ietf.org>; Thu, 16 Jun 2016 06:36:58 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=491; q=dns/txt; s=iport; t=1466084219; x=1467293819; h=subject:to:references:cc:from:message-id:date: mime-version:in-reply-to:content-transfer-encoding; bh=fyIIrSoXCCncNZbv7h4j8/D7sknRTCkMe5C1tLweayk=; b=YTiiapRuhF1SIipNHEk5CTRkLI29wfKL8ZMQdChCDAoYKcH2xdM9lpD9 2WkpoXjqRbTCMsJNf/VX+SW7E5olTLzQ3LSmwo34h4dT/R1QG+/Qdzcjx OWHm3OBrqV9OeL5EMOAMhZTPM/OzQqbQ5T4oQIgPy+if1kZEzr5RnwTBC I=;
X-IronPort-AV: E=Sophos;i="5.26,480,1459814400"; d="scan'208";a="286250864"
Received: from alln-core-9.cisco.com ([173.36.13.129]) by alln-iport-8.cisco.com with ESMTP/TLS/DHE-RSA-AES256-SHA; 16 Jun 2016 13:36:58 +0000
Received: from [10.82.237.28] (rtp-vpn5-1303.cisco.com [10.82.237.28]) by alln-core-9.cisco.com (8.14.5/8.14.5) with ESMTP id u5GDasHV024896; Thu, 16 Jun 2016 13:36:55 GMT
To: Susan Hares <shares@ndzh.com>, i2rs@ietf.org, "'Charles Eckel (eckelcu)'" <eckelcu@cisco.com>
References: <00b301d1c767$68257820$38706860$@ndzh.com>
From: Joe Clarke <jclarke@cisco.com>
Organization: Cisco Systems, Inc.
Message-ID: <8e18b587-13ce-51a3-ba43-ac226339581f@cisco.com>
Date: Thu, 16 Jun 2016 09:36:54 -0400
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:45.0) Gecko/20100101 Thunderbird/45.1.1
MIME-Version: 1.0
In-Reply-To: <00b301d1c767$68257820$38706860$@ndzh.com>
Content-Type: text/plain; charset=windows-1252; format=flowed
Content-Transfer-Encoding: 8bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/d3P5eUHCMrrIEtXkrtN0fJkcYgI>
X-Mailman-Approved-At: Thu, 16 Jun 2016 14:06:46 -0700
Cc: "'Eric Voit \(evoit\)'" <evoit@cisco.com>, hari@packetdesign.com, "'Alexander Clemm \(alex\)'" <alex@cisco.com>, "'Fedyk, Don'" <don.fedyk@hpe.com>, 'Russ White' <russ@riw.us>, 'Alia Atlas' <akatlas@juniper.net>, "'Miaofuyou \(Miao Fuyou\)'" <fuyou.miao@huawei.com>, 'Jeffrey Haas' <jhaas@pfrc.org>
Subject: Re: [i2rs] I2RS Hackathon Project announcement
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 16 Jun 2016 13:37:02 -0000

On 6/15/16 20:38, Susan Hares wrote:
> I’ve attached the announcement for an I2RS project at IETF 96 Hackathon.
>  I’d love feedback and feedback on this outline.  There will be code
> available prior to IETF 96.

Not sure what is meant by:

Port Ubuntu package to ONS and ODL, and may sure application programs

What do you mean to say in that last part?

It would be nice to have the traceability bits as part of this using 
pub-sub or at least dumped to a local file.

Joe


From nobody Thu Jun 16 14:06:52 2016
Return-Path: <shares@ndzh.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 2FD1512DA9C for <i2rs@ietfa.amsl.com>; Thu, 16 Jun 2016 11:23:43 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.739
X-Spam-Level: *
X-Spam-Status: No, score=1.739 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, HTML_MESSAGE=0.001, RDNS_NONE=0.793] autolearn=no autolearn_force=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 1OuNqbhkCjeV for <i2rs@ietfa.amsl.com>; Thu, 16 Jun 2016 11:23:41 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 7A42C12DA8A for <i2rs@ietf.org>; Thu, 16 Jun 2016 11:23:41 -0700 (PDT)
X-Default-Received-SPF: pass (skip=forwardok (res=PASS)) x-ip-name=210.255.219.250; 
From: "Susan Hares" <shares@ndzh.com>
To: "'Edwin Cordeiro'" <edwin@scordeiro.net>
References: <00b301d1c767$68257820$38706860$@ndzh.com> <CAERpkxC9_Q9NuBp22pq7ANJeR5EkBCVyZAhKK3py2rKihp=WCw@mail.gmail.com>
In-Reply-To: <CAERpkxC9_Q9NuBp22pq7ANJeR5EkBCVyZAhKK3py2rKihp=WCw@mail.gmail.com>
Date: Thu, 16 Jun 2016 14:23:18 -0400
Message-ID: <019c01d1c7fc$2a15e8e0$7e41baa0$@ndzh.com>
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="----=_NextPart_000_019D_01D1C7DA.A3075620"
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQIbVWcBkSKNJHHWuesREkCX9lUHOQF8OsF/n01mXGA=
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/X8XmBJihdWMHBnPYH0kGvWUKAsw>
X-Mailman-Approved-At: Thu, 16 Jun 2016 14:06:46 -0700
Cc: i2rs@ietf.org, "'Eric Voit \(evoit\)'" <evoit@cisco.com>, hari@packetdesign.com, "'Alexander Clemm \(alex\)'" <alex@cisco.com>, "'Charles Eckel \(eckelcu\)'" <eckelcu@cisco.com>, "'Fedyk, Don'" <don.fedyk@hpe.com>, 'Russ White' <russ@riw.us>, 'Alia Atlas' <akatlas@juniper.net>, "'Miaofuyou \(Miao Fuyou\)'" <fuyou.miao@huawei.com>, 'Jeffrey Haas' <jhaas@pfrc.org>
Subject: Re: [i2rs] I2RS Hackathon Project announcement
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 16 Jun 2016 18:23:43 -0000

This is a multipart message in MIME format.

------=_NextPart_000_019D_01D1C7DA.A3075620
Content-Type: text/plain;
	charset="utf-8"
Content-Transfer-Encoding: quoted-printable

Edwin:=20

=20

The base code will be ready by July 11th.  Hopefully, some code sooner.=20

=20

Sue=20

=20

From: edwinsc@gmail.com [mailto:edwinsc@gmail.com] On Behalf Of Edwin =
Cordeiro
Sent: Thursday, June 16, 2016 4:18 AM
To: Susan Hares
Cc: i2rs@ietf.org; Charles Eckel (eckelcu); Eric Voit (evoit); =
hari@packetdesign.com; Alexander Clemm (alex); Fedyk, Don; Russ White; =
Alia Atlas; Miaofuyou (Miao Fuyou); Jeffrey Haas
Subject: Re: [i2rs] I2RS Hackathon Project announcement

=20

Hi Susan,

=20

The proposal seems good. I'll be there, count on me as volunteer.

=20

I was working on the VM to be used at the Hackathon with the suggestions =
from the last time. As you are saying that code will be available before =
the meeting, I can test it and try to integrate it into this VM.

=20

Questions:

- When will the code be available?

- Should I continue with this VM creation?

=20

Best Regards,




Edwin Cordeiro

=20

On Thu, Jun 16, 2016 at 2:38 AM, Susan Hares <shares@ndzh.com> wrote:

I=E2=80=99ve attached the announcement for an I2RS project at IETF 96 =
Hackathon.  I=E2=80=99d love feedback and feedback on this outline.  =
There will be code available prior to IETF 96. =20

=20

Sue Hares=20


_______________________________________________
i2rs mailing list
i2rs@ietf.org
https://www.ietf.org/mailman/listinfo/i2rs

=20


------=_NextPart_000_019D_01D1C7DA.A3075620
Content-Type: text/html;
	charset="utf-8"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" =
xmlns:o=3D"urn:schemas-microsoft-com:office:office" =
xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" =
xmlns=3D"http://www.w3.org/TR/REC-html40"><head><meta =
http-equiv=3DContent-Type content=3D"text/html; charset=3Dutf-8"><meta =
name=3DGenerator content=3D"Microsoft Word 14 (filtered =
medium)"><style><!--
/* Font Definitions */
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
	{font-family:Tahoma;
	panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
	{font-family:Verdana;
	panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0in;
	margin-bottom:.0001pt;
	font-size:12.0pt;
	font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:blue;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:purple;
	text-decoration:underline;}
p.MsoAcetate, li.MsoAcetate, div.MsoAcetate
	{mso-style-priority:99;
	mso-style-link:"Balloon Text Char";
	margin:0in;
	margin-bottom:.0001pt;
	font-size:8.0pt;
	font-family:"Tahoma","sans-serif";}
span.EmailStyle17
	{mso-style-type:personal-reply;
	font-family:"Calibri","sans-serif";
	color:#1F497D;}
span.BalloonTextChar
	{mso-style-name:"Balloon Text Char";
	mso-style-priority:99;
	mso-style-link:"Balloon Text";
	font-family:"Tahoma","sans-serif";}
.MsoChpDefault
	{mso-style-type:export-only;
	font-family:"Calibri","sans-serif";}
@page WordSection1
	{size:8.5in 11.0in;
	margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
	{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]--></head><body lang=3DEN-US link=3Dblue =
vlink=3Dpurple><div class=3DWordSection1><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Edwin: <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>The base code will be ready by July 11<sup>th</sup>.=C2=A0 Hopefully, =
some code sooner. <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Sue <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>=C2=A0<o:p></o:p></span></p><p class=3DMsoNormal><b><span =
style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span>=
</b><span style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif"'> =
edwinsc@gmail.com [mailto:edwinsc@gmail.com] <b>On Behalf Of </b>Edwin =
Cordeiro<br><b>Sent:</b> Thursday, June 16, 2016 4:18 AM<br><b>To:</b> =
Susan Hares<br><b>Cc:</b> i2rs@ietf.org; Charles Eckel (eckelcu); Eric =
Voit (evoit); hari@packetdesign.com; Alexander Clemm (alex); Fedyk, Don; =
Russ White; Alia Atlas; Miaofuyou (Miao Fuyou); Jeffrey =
Haas<br><b>Subject:</b> Re: [i2rs] I2RS Hackathon Project =
announcement<o:p></o:p></span></p><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p><div><div><p =
class=3DMsoNormal><span style=3D'font-family:"Verdana","sans-serif"'>Hi =
Susan,<o:p></o:p></span></p></div><div><p class=3DMsoNormal><span =
style=3D'font-family:"Verdana","sans-serif"'><o:p>&nbsp;</o:p></span></p>=
</div><div><p class=3DMsoNormal><span =
style=3D'font-family:"Verdana","sans-serif"'>The proposal seems good. =
I'll be there, count on me as =
volunteer.<o:p></o:p></span></p></div><div><p class=3DMsoNormal><span =
style=3D'font-family:"Verdana","sans-serif"'><o:p>&nbsp;</o:p></span></p>=
</div><div><p class=3DMsoNormal><span =
style=3D'font-family:"Verdana","sans-serif"'>I was working on the VM to =
be used at the Hackathon with the suggestions from the last time. As you =
are saying that code will be available before the meeting, I can test it =
and try to integrate it into this VM.<o:p></o:p></span></p></div><div><p =
class=3DMsoNormal><span =
style=3D'font-family:"Verdana","sans-serif"'><o:p>&nbsp;</o:p></span></p>=
</div><div><p class=3DMsoNormal><span =
style=3D'font-family:"Verdana","sans-serif"'>Questions:<o:p></o:p></span>=
</p></div><div><div><p class=3DMsoNormal><span =
style=3D'font-family:"Verdana","sans-serif"'>- When will the code be =
available?<o:p></o:p></span></p></div><div><p class=3DMsoNormal><span =
style=3D'font-family:"Verdana","sans-serif"'>- Should I continue with =
this VM creation?<o:p></o:p></span></p></div><div><p =
class=3DMsoNormal><span =
style=3D'font-family:"Verdana","sans-serif"'><o:p>&nbsp;</o:p></span></p>=
</div><div><p class=3DMsoNormal><span =
style=3D'font-family:"Verdana","sans-serif"'>Best =
Regards,<o:p></o:p></span></p></div></div></div><div><p =
class=3DMsoNormal><br =
clear=3Dall><o:p></o:p></p><div><div><div><div><div><p =
class=3DMsoNormal><span =
style=3D'font-family:"Verdana","sans-serif"'>Edwin =
Cordeiro</span><o:p></o:p></p></div></div></div></div></div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p><div><p class=3DMsoNormal>On Thu, =
Jun 16, 2016 at 2:38 AM, Susan Hares &lt;<a =
href=3D"mailto:shares@ndzh.com" =
target=3D"_blank">shares@ndzh.com</a>&gt; =
wrote:<o:p></o:p></p><div><div><p class=3DMsoNormal =
style=3D'mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>I=E2=80=99ve=
 attached the announcement for an I2RS project at IETF 96 =
Hackathon.&nbsp; I=E2=80=99d love feedback and feedback on this =
outline.&nbsp; There will be code available prior to IETF 96.&nbsp; =
<o:p></o:p></p><p class=3DMsoNormal =
style=3D'mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp;<o:p><=
/o:p></p><p class=3DMsoNormal =
style=3D'mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>Sue Hares =
<o:p></o:p></p></div></div><p class=3DMsoNormal =
style=3D'margin-bottom:12.0pt'><br>______________________________________=
_________<br>i2rs mailing list<br><a =
href=3D"mailto:i2rs@ietf.org">i2rs@ietf.org</a><br><a =
href=3D"https://www.ietf.org/mailman/listinfo/i2rs" =
target=3D"_blank">https://www.ietf.org/mailman/listinfo/i2rs</a><o:p></o:=
p></p></div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div></div></body></html>
------=_NextPart_000_019D_01D1C7DA.A3075620--


From nobody Thu Jun 16 14:06:54 2016
Return-Path: <shares@ndzh.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 ECF8512DACC for <i2rs@ietfa.amsl.com>; Thu, 16 Jun 2016 11:48:32 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.738
X-Spam-Level: *
X-Spam-Status: No, score=1.738 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, RDNS_NONE=0.793] autolearn=no autolearn_force=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 bymvuZPx_3F1 for <i2rs@ietfa.amsl.com>; Thu, 16 Jun 2016 11:48:32 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id CA19412DAB7 for <i2rs@ietf.org>; Thu, 16 Jun 2016 11:48:31 -0700 (PDT)
X-Default-Received-SPF: pass (skip=forwardok (res=PASS)) x-ip-name=210.255.219.250; 
From: "Susan Hares" <shares@ndzh.com>
To: "'Joe Clarke'" <jclarke@cisco.com>, <i2rs@ietf.org>, "'Charles Eckel \(eckelcu\)'" <eckelcu@cisco.com>
References: <00b301d1c767$68257820$38706860$@ndzh.com> <8e18b587-13ce-51a3-ba43-ac226339581f@cisco.com>
In-Reply-To: <8e18b587-13ce-51a3-ba43-ac226339581f@cisco.com>
Date: Thu, 16 Jun 2016 14:48:08 -0400
Message-ID: <01d501d1c7ff$a1e45a20$e5ad0e60$@ndzh.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQIbVWcBkSKNJHHWuesREkCX9lUHOQJZTK+/n0aJgDA=
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/PPWHWn_4GXCp43j5gwwrZbCFowk>
X-Mailman-Approved-At: Thu, 16 Jun 2016 14:06:46 -0700
Cc: "'Eric Voit \(evoit\)'" <evoit@cisco.com>, hari@packetdesign.com, "'Alexander Clemm \(alex\)'" <alex@cisco.com>, "'Fedyk, Don'" <don.fedyk@hpe.com>, 'Russ White' <russ@riw.us>, 'Alia Atlas' <akatlas@juniper.net>, "'Miaofuyou \(Miao Fuyou\)'" <fuyou.miao@huawei.com>, 'Jeffrey Haas' <jhaas@pfrc.org>
Subject: Re: [i2rs] I2RS Hackathon Project announcement
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 16 Jun 2016 18:48:33 -0000

Joe: 

Thanks for pointing out the error.  Here's what it should have said: 

Goals (in order) 
1.	Implementation of I2RS RIB and L3 Topology drafts in Quagga over
Ubuntu 14.04 without notifications,  
2.	Create application programs that query and utilize I2RS
NETCONF/RESTCONF interface on ubuntu 14.04, 
3.	Add notifications to I2RS RIB and topology drafts  
4.	Port Ubuntu package to ONS and ODL.

I'm glad to add work on the traceability.   Do you have any suggestions on
what we could do with the I2RS RIB and L3 Topology drafts. 

Sue 


-----Original Message-----
From: Joe Clarke [mailto:jclarke@cisco.com] 
Sent: Thursday, June 16, 2016 9:37 AM
To: Susan Hares; i2rs@ietf.org; 'Charles Eckel (eckelcu)'
Cc: 'Eric Voit (evoit)'; hari@packetdesign.com; 'Alexander Clemm (alex)';
'Fedyk, Don'; 'Russ White'; 'Alia Atlas'; 'Miaofuyou (Miao Fuyou)'; 'Jeffrey
Haas'
Subject: Re: [i2rs] I2RS Hackathon Project announcement

On 6/15/16 20:38, Susan Hares wrote:
> I've attached the announcement for an I2RS project at IETF 96 Hackathon.
>  I'd love feedback and feedback on this outline.  There will be code 
> available prior to IETF 96.

Not sure what is meant by:

Port Ubuntu package to ONS and ODL, and may sure application programs

What do you mean to say in that last part?

It would be nice to have the traceability bits as part of this using pub-sub
or at least dumped to a local file.

Joe


From nobody Thu Jun 16 14:22:16 2016
Return-Path: <shares@ndzh.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 27D5A12D84C for <i2rs@ietfa.amsl.com>; Thu, 16 Jun 2016 14:22:14 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.738
X-Spam-Level: *
X-Spam-Status: No, score=1.738 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, RDNS_NONE=0.793] autolearn=no autolearn_force=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 whky568aXP2y for <i2rs@ietfa.amsl.com>; Thu, 16 Jun 2016 14:22:13 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 1D79112DACC for <i2rs@ietf.org>; Thu, 16 Jun 2016 14:22:13 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=210.255.219.250; 
From: "Susan Hares" <shares@ndzh.com>
To: "'Joe Clarke'" <jclarke@cisco.com>, <i2rs@ietf.org>, "'Charles Eckel \(eckelcu\)'" <eckelcu@cisco.com>
References: <00b301d1c767$68257820$38706860$@ndzh.com> <8e18b587-13ce-51a3-ba43-ac226339581f@cisco.com>
In-Reply-To: <8e18b587-13ce-51a3-ba43-ac226339581f@cisco.com>
Date: Thu, 16 Jun 2016 17:21:40 -0400
Message-ID: <04cf01d1c815$1aabcc30$50036490$@ndzh.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQIbVWcBkSKNJHHWuesREkCX9lUHOQJZTK+/n0azWlA=
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/QUrgwO80USgAlE67Tu0I6NISofQ>
Cc: 'Russ White' <russ@riw.us>
Subject: Re: [i2rs] I2RS Hackathon Project announcement
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 16 Jun 2016 21:22:15 -0000

Joe:

I'll add the traceability information to what gets dumped in the local
syslog for the quagga code.  The merge with ODL's pub/sub code would be
nice, but the project would need someone familiar with quagga code and the
pub/sub work. 

The last sentence had too much
OLD/Port Ubuntu package to ONS and ODL, and may sure application programs/
NEW/Port I2RS package to ONS and ODL/

I've put up details on the IETF hackathon page, and the git hub repository.
I'm a novice for git hub, so we are looking for a git-hub expert to help us.


Sue 

-----Original Message-----
From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Joe Clarke
Sent: Thursday, June 16, 2016 9:37 AM
To: Susan Hares; i2rs@ietf.org; 'Charles Eckel (eckelcu)'
Cc: 'Eric Voit (evoit)'; hari@packetdesign.com; 'Alexander Clemm (alex)';
'Fedyk, Don'; 'Russ White'; 'Alia Atlas'; 'Miaofuyou (Miao Fuyou)'; 'Jeffrey
Haas'
Subject: Re: [i2rs] I2RS Hackathon Project announcement

On 6/15/16 20:38, Susan Hares wrote:
> I've attached the announcement for an I2RS project at IETF 96 Hackathon.
>  I'd love feedback and feedback on this outline.  There will be code 
> available prior to IETF 96.

Not sure what is meant by:

Port Ubuntu package to ONS and ODL, and may sure application programs

What do you mean to say in that last part?

It would be nice to have the traceability bits as part of this using pub-sub
or at least dumped to a local file.

Joe

_______________________________________________
i2rs mailing list
i2rs@ietf.org
https://www.ietf.org/mailman/listinfo/i2rs


From nobody Thu Jun 16 14:41:04 2016
Return-Path: <jclarke@cisco.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 E094412D842 for <i2rs@ietfa.amsl.com>; Thu, 16 Jun 2016 14:41:01 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -15.947
X-Spam-Level: 
X-Spam-Status: No, score=-15.947 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-1.426, SPF_PASS=-0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.com
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 bDeUZH4JBq85 for <i2rs@ietfa.amsl.com>; Thu, 16 Jun 2016 14:41:00 -0700 (PDT)
Received: from alln-iport-1.cisco.com (alln-iport-1.cisco.com [173.37.142.88]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 13D3E12D84C for <i2rs@ietf.org>; Thu, 16 Jun 2016 14:41:00 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=1982; q=dns/txt; s=iport; t=1466113260; x=1467322860; h=subject:to:references:cc:from:message-id:date: mime-version:in-reply-to:content-transfer-encoding; bh=fjA8t+RjQoFSi0V963hRlhYQNRn99z1HAZIP2+yxilE=; b=WwA1KciJPoSFrauiFufHItFOxWoQ0PzhghkuEEiZxpWMiWy5VGMG23s2 u2RtfmnEw1CFLDg0pr3O+3NU7SULxRu/pA0J1pdqMiFSjfnnH52awWLm5 8bTf2TRlZqoQv76Fn2k+AINwHA5y+Skj/jeSrf5z8crfvAamaCToo8j46 g=;
X-IronPort-AV: E=Sophos;i="5.26,481,1459814400"; d="scan'208";a="286664324"
Received: from rcdn-core-2.cisco.com ([173.37.93.153]) by alln-iport-1.cisco.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 16 Jun 2016 21:40:58 +0000
Received: from [10.82.237.28] (rtp-vpn5-1303.cisco.com [10.82.237.28]) by rcdn-core-2.cisco.com (8.14.5/8.14.5) with ESMTP id u5GLeuvA025537; Thu, 16 Jun 2016 21:40:57 GMT
To: Susan Hares <shares@ndzh.com>, i2rs@ietf.org, "'Charles Eckel (eckelcu)'" <eckelcu@cisco.com>
References: <00b301d1c767$68257820$38706860$@ndzh.com> <8e18b587-13ce-51a3-ba43-ac226339581f@cisco.com> <04cf01d1c815$1aabcc30$50036490$@ndzh.com>
From: Joe Clarke <jclarke@cisco.com>
Organization: Cisco Systems, Inc.
Message-ID: <c1ae7271-357e-7f1c-d9a5-9c0042773603@cisco.com>
Date: Thu, 16 Jun 2016 17:40:56 -0400
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:45.0) Gecko/20100101 Thunderbird/45.1.1
MIME-Version: 1.0
In-Reply-To: <04cf01d1c815$1aabcc30$50036490$@ndzh.com>
Content-Type: text/plain; charset=windows-1252; format=flowed
Content-Transfer-Encoding: 7bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/09XEcMB2sQaslwmdAi6D_h6gum8>
Cc: 'Russ White' <russ@riw.us>
Subject: Re: [i2rs] I2RS Hackathon Project announcement
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 16 Jun 2016 21:41:02 -0000

On 6/16/16 17:21, Susan Hares wrote:
> Joe:
>
> I'll add the traceability information to what gets dumped in the local
> syslog for the quagga code.  The merge with ODL's pub/sub code would be
> nice, but the project would need someone familiar with quagga code and the
> pub/sub work.

This would be great!  Having each I2RS operation log the details per the 
traceability draft would make sure that we have good diagnostics from 
day 1.  I can imagine that providing such logs will help with the 
development, too.

>
> The last sentence had too much
> OLD/Port Ubuntu package to ONS and ODL, and may sure application programs/
> NEW/Port I2RS package to ONS and ODL/

Thanks.  Much clearer.

Joe

>
> I've put up details on the IETF hackathon page, and the git hub repository.
> I'm a novice for git hub, so we are looking for a git-hub expert to help us.
>
>
> Sue
>
> -----Original Message-----
> From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Joe Clarke
> Sent: Thursday, June 16, 2016 9:37 AM
> To: Susan Hares; i2rs@ietf.org; 'Charles Eckel (eckelcu)'
> Cc: 'Eric Voit (evoit)'; hari@packetdesign.com; 'Alexander Clemm (alex)';
> 'Fedyk, Don'; 'Russ White'; 'Alia Atlas'; 'Miaofuyou (Miao Fuyou)'; 'Jeffrey
> Haas'
> Subject: Re: [i2rs] I2RS Hackathon Project announcement
>
> On 6/15/16 20:38, Susan Hares wrote:
>> I've attached the announcement for an I2RS project at IETF 96 Hackathon.
>>  I'd love feedback and feedback on this outline.  There will be code
>> available prior to IETF 96.
>
> Not sure what is meant by:
>
> Port Ubuntu package to ONS and ODL, and may sure application programs
>
> What do you mean to say in that last part?
>
> It would be nice to have the traceability bits as part of this using pub-sub
> or at least dumped to a local file.
>
> Joe
>
> _______________________________________________
> i2rs mailing list
> i2rs@ietf.org
> https://www.ietf.org/mailman/listinfo/i2rs
>


From nobody Thu Jun 16 14:44:11 2016
Return-Path: <shares@ndzh.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 1B84E12DC95 for <i2rs@ietfa.amsl.com>; Thu, 16 Jun 2016 14:44:10 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.738
X-Spam-Level: *
X-Spam-Status: No, score=1.738 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, RDNS_NONE=0.793] autolearn=no autolearn_force=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 TbnHpCgVcZWD for <i2rs@ietfa.amsl.com>; Thu, 16 Jun 2016 14:44:09 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id A5F1112DC8D for <i2rs@ietf.org>; Thu, 16 Jun 2016 14:44:08 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=210.255.219.250; 
From: "Susan Hares" <shares@ndzh.com>
To: "'Joe Clarke'" <jclarke@cisco.com>, <i2rs@ietf.org>, "'Charles Eckel \(eckelcu\)'" <eckelcu@cisco.com>
References: <00b301d1c767$68257820$38706860$@ndzh.com> <8e18b587-13ce-51a3-ba43-ac226339581f@cisco.com> <04cf01d1c815$1aabcc30$50036490$@ndzh.com> <c1ae7271-357e-7f1c-d9a5-9c0042773603@cisco.com>
In-Reply-To: <c1ae7271-357e-7f1c-d9a5-9c0042773603@cisco.com>
Date: Thu, 16 Jun 2016 17:43:47 -0400
Message-ID: <04e201d1c818$2aecd730$80c68590$@ndzh.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQIbVWcBkSKNJHHWuesREkCX9lUHOQJZTK+/AZ5Cq30DGsN0SZ8g8tRg
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/-jW2IP_-H1HWrqTCa2Utb4GR2f8>
Cc: 'Russ White' <russ@riw.us>
Subject: Re: [i2rs] I2RS Hackathon Project announcement
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 16 Jun 2016 21:44:10 -0000

Joe: 

Traceability logs will be a great aid to debugging.   

Sue 

-----Original Message-----
From: Joe Clarke [mailto:jclarke@cisco.com] 
Sent: Thursday, June 16, 2016 5:41 PM
To: Susan Hares; i2rs@ietf.org; 'Charles Eckel (eckelcu)'
Cc: 'Russ White'
Subject: Re: [i2rs] I2RS Hackathon Project announcement

On 6/16/16 17:21, Susan Hares wrote:
> Joe:
>
> I'll add the traceability information to what gets dumped in the local 
> syslog for the quagga code.  The merge with ODL's pub/sub code would 
> be nice, but the project would need someone familiar with quagga code 
> and the pub/sub work.

This would be great!  Having each I2RS operation log the details per the
traceability draft would make sure that we have good diagnostics from day 1.
I can imagine that providing such logs will help with the development, too.

>
> The last sentence had too much
> OLD/Port Ubuntu package to ONS and ODL, and may sure application 
> programs/ NEW/Port I2RS package to ONS and ODL/

Thanks.  Much clearer.

Joe

>
> I've put up details on the IETF hackathon page, and the git hub
repository.
> I'm a novice for git hub, so we are looking for a git-hub expert to help
us.
>
>
> Sue
>
> -----Original Message-----
> From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Joe Clarke
> Sent: Thursday, June 16, 2016 9:37 AM
> To: Susan Hares; i2rs@ietf.org; 'Charles Eckel (eckelcu)'
> Cc: 'Eric Voit (evoit)'; hari@packetdesign.com; 'Alexander Clemm 
> (alex)'; 'Fedyk, Don'; 'Russ White'; 'Alia Atlas'; 'Miaofuyou (Miao 
> Fuyou)'; 'Jeffrey Haas'
> Subject: Re: [i2rs] I2RS Hackathon Project announcement
>
> On 6/15/16 20:38, Susan Hares wrote:
>> I've attached the announcement for an I2RS project at IETF 96 Hackathon.
>>  I'd love feedback and feedback on this outline.  There will be code 
>> available prior to IETF 96.
>
> Not sure what is meant by:
>
> Port Ubuntu package to ONS and ODL, and may sure application programs
>
> What do you mean to say in that last part?
>
> It would be nice to have the traceability bits as part of this using 
> pub-sub or at least dumped to a local file.
>
> Joe
>
> _______________________________________________
> i2rs mailing list
> i2rs@ietf.org
> https://www.ietf.org/mailman/listinfo/i2rs
>



From nobody Thu Jun 16 14:48:34 2016
Return-Path: <jclarke@cisco.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 9C9E712DC9C for <i2rs@ietfa.amsl.com>; Thu, 16 Jun 2016 14:45:43 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -15.947
X-Spam-Level: 
X-Spam-Status: No, score=-15.947 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-1.426, SPF_PASS=-0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.com
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 A4bANl1qoLRe for <i2rs@ietfa.amsl.com>; Thu, 16 Jun 2016 14:45:42 -0700 (PDT)
Received: from rcdn-iport-5.cisco.com (rcdn-iport-5.cisco.com [173.37.86.76]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 6486212DC9D for <i2rs@ietf.org>; Thu, 16 Jun 2016 14:45:42 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=1980; q=dns/txt; s=iport; t=1466113542; x=1467323142; h=subject:to:references:cc:from:message-id:date: mime-version:in-reply-to:content-transfer-encoding; bh=tJRQb5iRB/H+/SOI24vMcs7lkr+ziUSCW4sCzM1utKo=; b=Rv+L98d/iiN1OiCI+wMQykL7r6E8utJOCCZa3Ocwp5cCdoteQkoxwQsQ v84BcmECG5GQ++aOF60UUWXKmUTYIRrICFqpcNBMROccjACBjP/pklcfm cKfawGPMKaiBRNY00bnVx/cGMM1b/0Z6iqj7QyjnUzKGzXGsmlQFbhTE1 I=;
X-IronPort-AV: E=Sophos;i="5.26,481,1459814400"; d="scan'208";a="116081510"
Received: from alln-core-3.cisco.com ([173.36.13.136]) by rcdn-iport-5.cisco.com with ESMTP/TLS/DHE-RSA-AES256-SHA; 16 Jun 2016 21:45:41 +0000
Received: from [10.82.237.28] (rtp-vpn5-1303.cisco.com [10.82.237.28]) by alln-core-3.cisco.com (8.14.5/8.14.5) with ESMTP id u5GLjcmP029549; Thu, 16 Jun 2016 21:45:39 GMT
To: Susan Hares <shares@ndzh.com>, i2rs@ietf.org, "'Charles Eckel (eckelcu)'" <eckelcu@cisco.com>
References: <00b301d1c767$68257820$38706860$@ndzh.com> <8e18b587-13ce-51a3-ba43-ac226339581f@cisco.com> <01d501d1c7ff$a1e45a20$e5ad0e60$@ndzh.com>
From: Joe Clarke <jclarke@cisco.com>
Organization: Cisco Systems, Inc.
Message-ID: <b6f86fcd-8577-adca-393e-0030d3352021@cisco.com>
Date: Thu, 16 Jun 2016 17:45:38 -0400
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:45.0) Gecko/20100101 Thunderbird/45.1.1
MIME-Version: 1.0
In-Reply-To: <01d501d1c7ff$a1e45a20$e5ad0e60$@ndzh.com>
Content-Type: text/plain; charset=windows-1252; format=flowed
Content-Transfer-Encoding: 7bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/_No7qlNn5xbwXmFf8nAOA37-OeU>
X-Mailman-Approved-At: Thu, 16 Jun 2016 14:48:33 -0700
Cc: "'Eric Voit \(evoit\)'" <evoit@cisco.com>, hari@packetdesign.com, "'Alexander Clemm \(alex\)'" <alex@cisco.com>, "'Fedyk, Don'" <don.fedyk@hpe.com>, 'Russ White' <russ@riw.us>, 'Alia Atlas' <akatlas@juniper.net>, "'Miaofuyou \(Miao Fuyou\)'" <fuyou.miao@huawei.com>, 'Jeffrey Haas' <jhaas@pfrc.org>
Subject: Re: [i2rs] I2RS Hackathon Project announcement
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 16 Jun 2016 21:45:43 -0000

On 6/16/16 14:48, Susan Hares wrote:
> Joe:
>
> Thanks for pointing out the error.  Here's what it should have said:
>
> Goals (in order)
> 1.	Implementation of I2RS RIB and L3 Topology drafts in Quagga over
> Ubuntu 14.04 without notifications,
> 2.	Create application programs that query and utilize I2RS
> NETCONF/RESTCONF interface on ubuntu 14.04,
> 3.	Add notifications to I2RS RIB and topology drafts
> 4.	Port Ubuntu package to ONS and ODL.
>
> I'm glad to add work on the traceability.   Do you have any suggestions on
> what we could do with the I2RS RIB and L3 Topology drafts.

In terms of traceability?  Any RIB updates should result in logs being 
generated with content per the traceability draft.  I'm sure some level 
of logging would be added to the development if only to aid in 
visibility of what's happening within the I2RS code.  By making sure we 
include all of the fields in the traceability draft, we can point to 
working code to help illustrate useful implementations of the draft.

Joe

>
> Sue
>
>
> -----Original Message-----
> From: Joe Clarke [mailto:jclarke@cisco.com]
> Sent: Thursday, June 16, 2016 9:37 AM
> To: Susan Hares; i2rs@ietf.org; 'Charles Eckel (eckelcu)'
> Cc: 'Eric Voit (evoit)'; hari@packetdesign.com; 'Alexander Clemm (alex)';
> 'Fedyk, Don'; 'Russ White'; 'Alia Atlas'; 'Miaofuyou (Miao Fuyou)'; 'Jeffrey
> Haas'
> Subject: Re: [i2rs] I2RS Hackathon Project announcement
>
> On 6/15/16 20:38, Susan Hares wrote:
>> I've attached the announcement for an I2RS project at IETF 96 Hackathon.
>>  I'd love feedback and feedback on this outline.  There will be code
>> available prior to IETF 96.
>
> Not sure what is meant by:
>
> Port Ubuntu package to ONS and ODL, and may sure application programs
>
> What do you mean to say in that last part?
>
> It would be nice to have the traceability bits as part of this using pub-sub
> or at least dumped to a local file.
>
> Joe
>


From nobody Thu Jun 16 14:49:43 2016
Return-Path: <internet-drafts@ietf.org>
X-Original-To: i2rs@ietf.org
Delivered-To: i2rs@ietfa.amsl.com
Received: from ietfa.amsl.com (localhost [IPv6:::1]) by ietfa.amsl.com (Postfix) with ESMTP id BD90712DC76; Thu, 16 Jun 2016 14:49:41 -0700 (PDT)
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
From: internet-drafts@ietf.org
To: <i-d-announce@ietf.org>
X-Test-IDTracker: no
X-IETF-IDTracker: 6.22.2
Auto-Submitted: auto-generated
Precedence: bulk
Message-ID: <20160616214941.20844.96397.idtracker@ietfa.amsl.com>
Date: Thu, 16 Jun 2016 14:49:41 -0700
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/oxiKj2v1avE9k_qi9X6IcPjOITU>
Cc: i2rs@ietf.org
Subject: [i2rs] I-D Action: draft-ietf-i2rs-fb-rib-info-model-00.txt
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 16 Jun 2016 21:49:42 -0000

A New Internet-Draft is available from the on-line Internet-Drafts directories.
This draft is a work item of the Interface to the Routing System of the IETF.

        Title           : Filter-Based RIB Information Model
        Authors         : Sriganesh Kini
                          Susan Hares
                          Linda Dunbar
                          Anoop Ghanwani
                          Ram Krishnan
                          Dean Bogdanovic
                          Russ White
	Filename        : draft-ietf-i2rs-fb-rib-info-model-00.txt
	Pages           : 21
	Date            : 2016-06-16

Abstract:
   This document defines an information model associated with the I2RS
   ephemeral state for filter-based routing of IP packets via a Filter-
   based Routing Information Base (FB-RIB).  FB-RIBs (ephemeral and non-
   ephemeral) are associated with specific interfaces interfaces on a
   routing device, and process packets received on these interfaces
   according a filtering policy.  A filtering policy is a a minimalistic
   event-match_condition-action (ECA) policy with only one event - the
   reception of a frame/packet of data on an interface.  The match
   conditions in the filter policy are n-tuple matches based on the
   content of the frame/packet or the time of its arrival.  Filter-based
   policy allows actions which modifying the frame/packet, forward the
   frame or packet, or drop the frame/packet.  Filter-Based Policy in
   FB-RIBs engages before any destination based routing so the FB-RIBs
   provide a destination-based default RIB that will be used if none of
   the filters are matched.


The IETF datatracker status page for this draft is:
https://datatracker.ietf.org/doc/draft-ietf-i2rs-fb-rib-info-model/

There's also a htmlized version available at:
https://tools.ietf.org/html/draft-ietf-i2rs-fb-rib-info-model-00


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/


From nobody Thu Jun 16 15:13:53 2016
Return-Path: <internet-drafts@ietf.org>
X-Original-To: i2rs@ietf.org
Delivered-To: i2rs@ietfa.amsl.com
Received: from ietfa.amsl.com (localhost [IPv6:::1]) by ietfa.amsl.com (Postfix) with ESMTP id 6B77E12D9B2; Thu, 16 Jun 2016 15:13:51 -0700 (PDT)
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
From: internet-drafts@ietf.org
To: <i-d-announce@ietf.org>
X-Test-IDTracker: no
X-IETF-IDTracker: 6.22.2
Auto-Submitted: auto-generated
Precedence: bulk
Message-ID: <20160616221351.20835.59254.idtracker@ietfa.amsl.com>
Date: Thu, 16 Jun 2016 15:13:51 -0700
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/LzPJN5IWEmqBAxiGlA_iwEmxJAs>
Cc: i2rs@ietf.org
Subject: [i2rs] I-D Action: draft-ietf-i2rs-pkt-eca-data-model-00.txt
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 16 Jun 2016 22:13:51 -0000

A New Internet-Draft is available from the on-line Internet-Drafts directories.
This draft is a work item of the Interface to the Routing System of the IETF.

        Title           : Filter-Based Packet Forwarding ECA Policy
        Authors         : Susan Hares
                          Qin Wu
                          Russ White
	Filename        : draft-ietf-i2rs-pkt-eca-data-model-00.txt
	Pages           : 37
	Date            : 2016-06-16

Abstract:
   This document describes the yang data model for packet forwarding
   policy that filters received packets and forwards (or drops) the
   packets.  Prior to forwarding the packets out other interfaces, some
   of the fields in the packets may be modified.  If one considers the
   packet reception an event, this packet policy is a minimalistic
   Event-Match Condition-Action policy.  This policy controls forwarding
   of packets received by a routing device on one or more interfaces on
   which this policy is enabled.  The policy is composed of an ordered
   list of policy rules.  Each policy policy rule contains a set of
   match conditions that filters for packets plus a set of actions to
   modify the packet and forward packets.  The match conditions can
   match tuples in multiple layers (L1-L4, application), interface
   received on, and and other conditions regarding the packet (size of
   packet, time of day).  The modify packet actions allow for setting
   things within the packet plus decapsulation and encapsulation packet.
   The forwarding actions include forwarding via interfaces, tunnels, or
   nexthops and dropping the packet.  The policy model can be used with
   the session ephemeral (BGP Flow Specifications), reboot ephemeral
   state (I2RS ephemeral), and non-ephemeral routing/forwarding state
   (e.g. configuration state ).


The IETF datatracker status page for this draft is:
https://datatracker.ietf.org/doc/draft-ietf-i2rs-pkt-eca-data-model/

There's also a htmlized version available at:
https://tools.ietf.org/html/draft-ietf-i2rs-pkt-eca-data-model-00


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/


From nobody Mon Jun 20 08:31:03 2016
Return-Path: <rwilton@cisco.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 3658F12D1A6 for <i2rs@ietfa.amsl.com>; Mon, 20 Jun 2016 08:31:02 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -15.946
X-Spam-Level: 
X-Spam-Status: No, score=-15.946 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H4=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-1.426, SPF_PASS=-0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.com
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 zcdt59qta9pe for <i2rs@ietfa.amsl.com>; Mon, 20 Jun 2016 08:31:00 -0700 (PDT)
Received: from aer-iport-2.cisco.com (aer-iport-2.cisco.com [173.38.203.52]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 1FBAF12D1A3 for <i2rs@ietf.org>; Mon, 20 Jun 2016 08:30:59 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=7115; q=dns/txt; s=iport; t=1466436660; x=1467646260; h=to:from:subject:message-id:date:mime-version; bh=7y9qSUdAPvGTWirOslVanXDirfOi3dTWqZ/NduKpJSU=; b=enNk/FgH+KdO0P3oKnpqnOOu8kGIVkaLEni9/L4OyW5CajzrFipyk6CR o/S4EOaz+osyv3CMHCXdy+pKIT4WTHgkUe/f5XEivXZM7yL91oDEqOYsG GwrjVt/cMGRG+6n4W+50cYdm1b+ay8zN6Nh93Zka8GqLKQUk9lEmHCMhI o=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0A4AgAbC2hX/xbLJq1dgnCBT7Y5hQGBe?= =?us-ascii?q?ogDFAEBAQEBAQFlJ4R1gQMwAksVDAgBAYgssEmQJQELJYYngXeKF4JaBZh2jiq?= =?us-ascii?q?BaYRSgwqFXY93HjaDcTuJNiqBGgEBAQ?=
X-IronPort-AV: E=Sophos;i="5.26,499,1459814400";  d="scan'208,217";a="635272009"
Received: from aer-iport-nat.cisco.com (HELO aer-core-3.cisco.com) ([173.38.203.22]) by aer-iport-2.cisco.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 20 Jun 2016 15:30:58 +0000
Received: from [10.63.23.64] (dhcp-ensft1-uk-vla370-10-63-23-64.cisco.com [10.63.23.64]) by aer-core-3.cisco.com (8.14.5/8.14.5) with ESMTP id u5KFUvIX016625; Mon, 20 Jun 2016 15:30:57 GMT
To: i2rs@ietf.org, jhaas@juniper.net, shares@ndzh.com
From: Robert Wilton <rwilton@cisco.com>
Message-ID: <f5323e38-cbe0-e11f-f370-749c3eaba181@cisco.com>
Date: Mon, 20 Jun 2016 16:30:57 +0100
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.1.1
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="------------29DD25C5F31C237F6F79B6EB"
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/nTIU7SQnzPA0UjTx81i6vBRUKEE>
Subject: [i2rs] Clarifications on draft-ietf-i2rs-ephemeral-state section 3
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Mon, 20 Jun 2016 15:31:02 -0000

This is a multi-part message in MIME format.
--------------29DD25C5F31C237F6F79B6EB
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Jeff, Susan,

In one of the discussions that I had with Juergen regarding datastores 
he indicated the refined datastore architecture that I was proposing 
wasn't in keeping with the current ephemeral datastore ideas on I2RS, 
hence I'm trying to catch up.

I have a few clarifying questions on sections 3.2 of 
draft-ietf-i2rs-ephemeral-state that you might be able to help with me 
please.  I've only just signed up the IR2S, so apologies if these 
questions have already been asked/answered.

Section 3.1. Persistence, paragraph 1 is stated as:

    Ephemeral-REQ-01: I2RS requires ephemeral state; i.e. state that does
    not persist across reboots.  If state must be restored, it should be
    done solely by replay actions from the I2RS client via the I2RS
    agent.  Ephemeral state may consist of ephemeral configuration or
    ephemeral operational state, or both.

This text makes it clear that "Ephemeral state" consists of both 
"ephemeral config" and/or "ephemeral operation state".

Ephemeral-REQ-03 is stated as:

    Ephemeral-REQ-03: Ephemeral state must be able to utilized temporary
    operational state (e.g.  MPLS LSP-ID or a BGP IN-RIB) as a
    constraints.

Q1. Am I right in understanding that both ephemeral config and ephemeral 
operational state independently have the requirement that they have to 
rely on regular operational state as a constraint?

Q2. What is expected to happen if the operational state changes such 
that the constraint no longer hold for a ephemeral node? Should that 
node be removed, or just stop taking effect?  Or expressed differently: 
could ephemeral config be regarded as being conditionally applied on a 
constraint?

Ephemeral-REQ-04 is stated as:

    Ephemeral-REQ-04: Ephemeral state MAY refer to non-ephemeral state
    for purposes of implementing constraints.  The designer of ephemeral
    state modules are advised that such constraints may impact the speed
    of processing ephemeral state commits and should avoid them when
    speed is essential.

Q3. I think that REQ-03 may already answer this, but to avoid any 
confusion: Does this mean that ephemeral config nodes may refer to 
non-ephemeral operational state nodes?

Thanks,
Rob




--------------29DD25C5F31C237F6F79B6EB
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: 8bit

<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=utf-8">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <p>Hi Jeff, Susan,</p>
    <p>In one of the discussions that I had with Juergen regarding
      datastores he indicated the refined datastore architecture that I
      was proposing wasn't in keeping with the current ephemeral
      datastore ideas on I2RS, hence I'm trying to catch up.<br>
    </p>
    <p>I have a few clarifying questions on sections 3.2 of
      draft-ietf-i2rs-ephemeral-state that you might be able to help
      with me please.Â  I've only just signed up the IR2S, so apologies
      if these questions have already been asked/answered.<br>
    </p>
    <p>Section 3.1. Persistence, paragraph 1 is stated as:</p>
    <pre style="box-sizing: border-box; overflow: auto; font-family: 'PT Mono', Monaco, monospace; font-size: 14px; display: block; padding: 10px; margin: 0px 0px 10.5px; line-height: 1.214; color: rgb(0, 0, 0); word-break: break-all; word-wrap: break-word; border: 1px solid rgb(204, 204, 204); border-radius: 4px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; widows: 1; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 253, 245);">   Ephemeral-REQ-01: I2RS requires ephemeral state; i.e. state that does
   not persist across reboots.  If state must be restored, it should be
   done solely by replay actions from the I2RS client via the I2RS
   agent.  Ephemeral state may consist of ephemeral configuration or
   ephemeral operational state, or both.</pre>
    <p>This text makes it clear that "Ephemeral state" consists of both
      "ephemeral config" and/or "ephemeral operation state".</p>
    <p>Ephemeral-REQ-03 is stated as:</p>
    <pre style="box-sizing: border-box; overflow: auto; font-family: 'PT Mono', Monaco, monospace; font-size: 14px; display: block; padding: 10px; margin: 0px 0px 10.5px; line-height: 1.214; color: rgb(0, 0, 0); word-break: break-all; word-wrap: break-word; border: 1px solid rgb(204, 204, 204); border-radius: 4px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; widows: 1; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 253, 245);">   Ephemeral-REQ-03: Ephemeral state must be able to utilized temporary
   operational state (e.g.  MPLS LSP-ID or a BGP IN-RIB) as a
   constraints.</pre>
    <p>Q1. Am I right in understanding that both ephemeral config and
      ephemeral operational state independently have the requirement
      that they have to rely on regular operational state as a
      constraint? <br>
    </p>
    <p>Q2. What is expected to happen if the operational state changes
      such that the constraint no longer hold for a ephemeral node?Â 
      Should that node be removed, or just stop taking effect?Â  Or
      expressed differently: could ephemeral config be regarded as being
      conditionally applied on a constraint?</p>
    <p>Ephemeral-REQ-04 is stated as:<br
        class="Apple-interchange-newline">
    </p>
    <pre style="box-sizing: border-box; overflow: auto; font-family: 'PT Mono', Monaco, monospace; font-size: 14px; display: block; padding: 10px; margin: 0px 0px 10.5px; line-height: 1.214; color: rgb(0, 0, 0); word-break: break-all; word-wrap: break-word; border: 1px solid rgb(204, 204, 204); border-radius: 4px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; widows: 1; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 253, 245);">   Ephemeral-REQ-04: Ephemeral state MAY refer to non-ephemeral state
   for purposes of implementing constraints.  The designer of ephemeral
   state modules are advised that such constraints may impact the speed
   of processing ephemeral state commits and should avoid them when
   speed is essential.</pre>
    <p>Q3. I think that REQ-03 may already answer this, but to avoid any
      confusion: Does this mean that ephemeral config nodes may refer to
      non-ephemeral operational state nodes?<br>
    </p>
    <p>Thanks,<br>
      Rob</p>
    <p><br>
    </p>
    <p><br>
    </p>
  </body>
</html>

--------------29DD25C5F31C237F6F79B6EB--


From nobody Tue Jun 21 11:56:57 2016
Return-Path: <internet-drafts@ietf.org>
X-Original-To: i2rs@ietf.org
Delivered-To: i2rs@ietfa.amsl.com
Received: from ietfa.amsl.com (localhost [IPv6:::1]) by ietfa.amsl.com (Postfix) with ESMTP id DBF5A12DCB3; Tue, 21 Jun 2016 11:56:55 -0700 (PDT)
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
From: internet-drafts@ietf.org
To: <i-d-announce@ietf.org>
X-Test-IDTracker: no
X-IETF-IDTracker: 6.23.0
Auto-Submitted: auto-generated
Precedence: bulk
Message-ID: <20160621185655.17102.77822.idtracker@ietfa.amsl.com>
Date: Tue, 21 Jun 2016 11:56:55 -0700
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/R6j87afyZiIDBYxs9ui6JGsACe0>
Cc: i2rs@ietf.org
Subject: [i2rs] I-D Action: draft-ietf-i2rs-ephemeral-state-10.txt
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Tue, 21 Jun 2016 18:56:56 -0000

A New Internet-Draft is available from the on-line Internet-Drafts directories.
This draft is a work item of the Interface to the Routing System of the IETF.

        Title           : I2RS Ephemeral State Requirements
        Authors         : Jeff Haas
                          Susan Hares
	Filename        : draft-ietf-i2rs-ephemeral-state-10.txt
	Pages           : 11
	Date            : 2016-06-21

Abstract:
   This document covers requests to the NETMOD and NETCONF Working
   Groups for functionality to support the ephemeral state requirements
   to implement the I2RS architecture.


The IETF datatracker status page for this draft is:
https://datatracker.ietf.org/doc/draft-ietf-i2rs-ephemeral-state/

There's also a htmlized version available at:
https://tools.ietf.org/html/draft-ietf-i2rs-ephemeral-state-10

A diff from the previous version is available at:
https://www.ietf.org/rfcdiff?url2=draft-ietf-i2rs-ephemeral-state-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/


From nobody Tue Jun 21 12:17:48 2016
Return-Path: <shares@ndzh.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 9838812DD11 for <i2rs@ietfa.amsl.com>; Tue, 21 Jun 2016 12:17:36 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.738
X-Spam-Level: *
X-Spam-Status: No, score=1.738 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, RDNS_NONE=0.793] autolearn=no autolearn_force=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 ZsI71053XKLZ for <i2rs@ietfa.amsl.com>; Tue, 21 Jun 2016 12:17:35 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 7946612DD1B for <i2rs@ietf.org>; Tue, 21 Jun 2016 12:17:35 -0700 (PDT)
X-Default-Received-SPF: pass (skip=forwardok (res=PASS)) x-ip-name=184.157.84.183; 
From: "Susan Hares" <shares@ndzh.com>
To: <i2rs@ietf.org>
Date: Tue, 21 Jun 2016 15:17:15 -0400
Message-ID: <004901d1cbf1$85b87430$91295c90$@ndzh.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AdHL8TY2HwZzOeimSrWcu3cbB6JCQQ==
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/HMvEUvfKe8tVhNZTiKCJkmjoEUo>
Cc: 'Russ White' <russ@riw.us>
Subject: [i2rs] FW: I-D Action: draft-ietf-i2rs-ephemeral-state-10.txt- 2 week WG LC (6/21 to 7/5/2016)
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Tue, 21 Jun 2016 19:17:36 -0000

This begins a 2 WG LC last call on the text of
draft-ietf-i2rs-ephemeral-state-10.txt.   There are 15 requirement for I2RS
ephemeral state, and 2 requirements for ephemeral state utilized by pub/sub
documents.   

Sue Hares and Russ White 

-----Original Message-----
From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of
internet-drafts@ietf.org
Sent: Tuesday, June 21, 2016 2:57 PM
To: i-d-announce@ietf.org
Cc: i2rs@ietf.org
Subject: [i2rs] I-D Action: draft-ietf-i2rs-ephemeral-state-10.txt


A New Internet-Draft is available from the on-line Internet-Drafts
directories.
This draft is a work item of the Interface to the Routing System of the
IETF.

        Title           : I2RS Ephemeral State Requirements
        Authors         : Jeff Haas
                          Susan Hares
	Filename        : draft-ietf-i2rs-ephemeral-state-10.txt
	Pages           : 11
	Date            : 2016-06-21

Abstract:
   This document covers requests to the NETMOD and NETCONF Working
   Groups for functionality to support the ephemeral state requirements
   to implement the I2RS architecture.


The IETF datatracker status page for this draft is:
https://datatracker.ietf.org/doc/draft-ietf-i2rs-ephemeral-state/

There's also a htmlized version available at:
https://tools.ietf.org/html/draft-ietf-i2rs-ephemeral-state-10

A diff from the previous version is available at:
https://www.ietf.org/rfcdiff?url2=draft-ietf-i2rs-ephemeral-state-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/

_______________________________________________
i2rs mailing list
i2rs@ietf.org
https://www.ietf.org/mailman/listinfo/i2rs


From nobody Tue Jun 21 12:40:41 2016
Return-Path: <shares@ndzh.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 430C612D9F9 for <i2rs@ietfa.amsl.com>; Tue, 21 Jun 2016 12:40:39 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.74
X-Spam-Level: *
X-Spam-Status: No, score=1.74 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, HTML_FONT_LOW_CONTRAST=0.001, HTML_MESSAGE=0.001, RDNS_NONE=0.793] autolearn=no autolearn_force=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 T36vDbhFLwwk for <i2rs@ietfa.amsl.com>; Tue, 21 Jun 2016 12:40:38 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id B829B12D8F8 for <i2rs@ietf.org>; Tue, 21 Jun 2016 12:40:37 -0700 (PDT)
X-Default-Received-SPF: pass (skip=forwardok (res=PASS)) x-ip-name=184.157.84.183; 
From: "Susan Hares" <shares@ndzh.com>
To: <i2rs@ietf.org>
Date: Tue, 21 Jun 2016 15:40:14 -0400
Message-ID: <00f501d1cbf4$bc5cc470$35164d50$@ndzh.com>
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="----=_NextPart_000_00F6_01D1CBD3.354FDF60"
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AdHL8nBVUimNny8eQPOu0Nt0dEwAXw==
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/vNu76GdUpQw1LLh8vgdQcfgotDU>
Cc: 'Russ White' <russ@riw.us>, 'Jeffrey Haas' <jhaas@pfrc.org>, akatlas@gmail.com
Subject: [i2rs] I2RS Interim on Wednesday 6/22/2016 at 10:00am - 11:30am EDT - topic Ephemeral State Requirements
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Tue, 21 Jun 2016 19:40:40 -0000

This is a multipart message in MIME format.

------=_NextPart_000_00F6_01D1CBD3.354FDF60
Content-Type: multipart/alternative;
	boundary="----=_NextPart_001_00F7_01D1CBD3.354FDF60"


------=_NextPart_001_00F7_01D1CBD3.354FDF60
Content-Type: text/plain;
	charset="utf-8"
Content-Transfer-Encoding: quoted-printable

I2RS WG:=20

=20

An I2RS interim is schedule for 10:00am =E2=80=93 11:30am on Wednesday =
June 22, 2016.   The ephemeral state document has 15 requirements for =
Ephemeral state, and 2 requirements for pub/sub support of ephemeral =
state. =20

=20

=20

I2RS interim=20

=20

Wednesday, June 22, 2016=20

10:00 am  |  Eastern Daylight Time (New York, GMT-04:00)  |  1 hr 30 =
mins=20

=20

Webex - =
https://ietf.webex.com/ietf/j.php?MTID=3Dm5869d472f054eead724ef69b55a1271=
c

Meeting number (access code): 640 065 533=20

Meeting password: JFZGgVPm

=20

Join by phone

1-877-668-4493 Call-in toll free number (US/Canada)

1-650-479-3208 Call-in toll number (US/Canada)

=20

=20

Topic:=20

=20

1) Review of Opstate requirements=20

                a) Opstate being decided in netmod=20

                b) Validation for I2RS Data models          =20

                   Option 1: Declare all I2RS Operational State, and

       allow configuration + operational state to be=20

                   validated as I2RS drafts specifies=20

                  =20

                   Option 2: Work through Configuration +=20

                   operational ephemeral state with netconf

               =20

2) Walk through Ephemeral State requirements=20

=20

=20

=20

From: I2RS Working Group [mailto:messenger@webex.com]=20
Sent: Tuesday, June 21, 2016 3:19 PM
To: i2rs-chairs@tools.ietf.org
Subject: (Forward to others) WebEx meeting invitation: I2RS Ephemeral =
State requirements

=20




You can forward this invitation to others.=20

=20


Hello,=20


I2RS Working Group invites you to join this WebEx meeting.=20

=20


=20

=20


I2RS Ephemeral State requirements=20


Wednesday, June 22, 2016=20


10:00 am  |  Eastern Daylight Time (New York, GMT-04:00)  |  1 hr 30 =
mins=20

=20


Meeting number (access code): 640 065 533=20

=20


Meeting password: JFZGgVPm

=20


=20

=20



 =
<https://ietf.webex.com/ietf/j.php?MTID=3Dmb0237e710fb9449283ce534c3e996f=
8b> Add to Calendar=20


When it's time,  =
<https://ietf.webex.com/ietf/j.php?MTID=3Dm5869d472f054eead724ef69b55a127=
1c> join the meeting.

=20


=20

=20


Join by phone


1-877-668-4493 Call-in toll free number (US/Canada)


1-650-479-3208 Call-in toll number (US/Canada)


 <https://www.webex.com/pdf/tollfree_restrictions.pdf> Toll-free calling =
restrictions

=20


=20

=20


 <https://help.webex.com/docs/DOC-5412> Can't join the meeting?=20

=20


=20

=20


IMPORTANT NOTICE: Please note that this WebEx service allows audio and =
other information sent during the session to be recorded, which may be =
discoverable in a legal matter. By joining this session, you =
automatically consent to such recordings. If you do not consent to being =
recorded, discuss your concerns with the host or do not join the =
session.

=20


------=_NextPart_001_00F7_01D1CBD3.354FDF60
Content-Type: text/html;
	charset="utf-8"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" =
xmlns:o=3D"urn:schemas-microsoft-com:office:office" =
xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" =
xmlns=3D"http://www.w3.org/TR/REC-html40"><head><meta =
http-equiv=3DContent-Type content=3D"text/html; charset=3Dutf-8"><meta =
name=3DGenerator content=3D"Microsoft Word 14 (filtered =
medium)"><style><!--
/* Font Definitions */
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
	{font-family:Tahoma;
	panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0in;
	margin-bottom:.0001pt;
	font-size:12.0pt;
	font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	font-family:"Arial","sans-serif";
	color:#666666;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	font-family:"Arial","sans-serif";
	color:#666666;
	text-decoration:underline;}
p
	{mso-style-priority:99;
	mso-margin-top-alt:auto;
	margin-right:0in;
	mso-margin-bottom-alt:auto;
	margin-left:0in;
	font-size:12.0pt;
	font-family:"Times New Roman","serif";}
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
	{mso-style-priority:34;
	margin-top:0in;
	margin-right:0in;
	margin-bottom:0in;
	margin-left:.5in;
	margin-bottom:.0001pt;
	font-size:12.0pt;
	font-family:"Times New Roman","serif";}
span.EmailStyle18
	{mso-style-type:personal-reply;
	font-family:"Calibri","sans-serif";
	color:#1F497D;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-size:10.0pt;}
@page WordSection1
	{size:8.5in 11.0in;
	margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
	{page:WordSection1;}
/* List Definitions */
@list l0
	{mso-list-id:194082973;
	mso-list-type:hybrid;
	mso-list-template-ids:-1131620966 67698705 67698713 67698715 67698703 =
67698713 67698715 67698703 67698713 67698715;}
@list l0:level1
	{mso-level-text:"%1\)";
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l0:level2
	{mso-level-number-format:alpha-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l0:level3
	{mso-level-number-format:roman-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:right;
	text-indent:-9.0pt;}
@list l0:level4
	{mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l0:level5
	{mso-level-number-format:alpha-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l0:level6
	{mso-level-number-format:roman-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:right;
	text-indent:-9.0pt;}
@list l0:level7
	{mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l0:level8
	{mso-level-number-format:alpha-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l0:level9
	{mso-level-number-format:roman-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:right;
	text-indent:-9.0pt;}
@list l1
	{mso-list-id:1783571116;
	mso-list-type:hybrid;
	mso-list-template-ids:507648786 67698705 67698713 67698715 67698703 =
67698713 67698715 67698703 67698713 67698715;}
@list l1:level1
	{mso-level-text:"%1\)";
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l1:level2
	{mso-level-number-format:alpha-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l1:level3
	{mso-level-number-format:roman-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:right;
	text-indent:-9.0pt;}
@list l1:level4
	{mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l1:level5
	{mso-level-number-format:alpha-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l1:level6
	{mso-level-number-format:roman-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:right;
	text-indent:-9.0pt;}
@list l1:level7
	{mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l1:level8
	{mso-level-number-format:alpha-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l1:level9
	{mso-level-number-format:roman-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:right;
	text-indent:-9.0pt;}
ol
	{margin-bottom:0in;}
ul
	{margin-bottom:0in;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]--></head><body lang=3DEN-US =
link=3D"#666666" vlink=3D"#666666"><div class=3DWordSection1><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>I2RS WG: <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>An I2RS interim is schedule for 10:00am =E2=80=93 11:30am on =
Wednesday June 22, 2016.=C2=A0 =C2=A0The ephemeral state document has 15 =
requirements for Ephemeral state, and 2 requirements for pub/sub support =
of ephemeral state. =C2=A0<o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><b><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>I2RS interim <o:p></o:p></span></b></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Wednesday, June 22, 2016 <o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>10:00 am=C2=A0 |=C2=A0 Eastern Daylight Time (New York, =
GMT-04:00)=C2=A0 |=C2=A0 1 hr 30 mins <o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Webex - =
https://ietf.webex.com/ietf/j.php?MTID=3Dm5869d472f054eead724ef69b55a1271=
c<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Meeting number (access code): 640 065 533 <o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Meeting password: JFZGgVPm<o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Join by phone<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>1-877-668-4493 Call-in toll free number =
(US/Canada)<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>1-650-479-3208 Call-in toll number =
(US/Canada)<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Topic: <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>1) Review of Opstate requirements <o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0 a) Opstate being decided in netmod =
<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0 b) Validation for I2RS Data =
models=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =
<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0 Option 1: Declare all I2RS Operational =
State, and<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 allow configuration + =
operational state to be <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0validated as I2RS drafts specifies =
<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0<o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0Option 2: Work through =
Configuration + <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0operational ephemeral state with =
netconf<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0 <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>2) Walk through Ephemeral State requirements <o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><div><div =
style=3D'border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in =
0in 0in'><p class=3DMsoNormal><b><span =
style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span>=
</b><span style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif"'> =
I2RS Working Group [mailto:messenger@webex.com] <br><b>Sent:</b> =
Tuesday, June 21, 2016 3:19 PM<br><b>To:</b> =
i2rs-chairs@tools.ietf.org<br><b>Subject:</b> (Forward to others) WebEx =
meeting invitation: I2RS Ephemeral State =
requirements<o:p></o:p></span></p></div></div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p><table class=3DMsoNormalTable =
border=3D0 cellpadding=3D0 align=3Dleft width=3D"100%" =
style=3D'width:100.0%'><tr><td style=3D'padding:3.75pt 0in 0in =
0in'><table class=3DMsoNormalTable border=3D0 cellpadding=3D0 =
align=3Dleft width=3D525 =
style=3D'width:393.75pt;margin-left:3.75pt'><tr><td valign=3Dtop =
style=3D'padding:0in 0in 0in 0in'><table class=3DMsoNormalTable =
border=3D0 cellpadding=3D0 width=3D"100%" style=3D'width:100.0%'><tr><td =
style=3D'padding:0in 0in 0in 0in'><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666'=
>You can forward this invitation to others. =
<o:p></o:p></span></p></td></tr></table><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666;=
display:none'><o:p>&nbsp;</o:p></span></p><table class=3DMsoNormalTable =
border=3D0 cellpadding=3D0 width=3D525 style=3D'width:393.75pt'><tr><td =
style=3D'padding:0in 0in 0in 0in'><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#4D4D4D'=
>Hello, <o:p></o:p></span></p></td></tr><tr><td style=3D'padding:7.5pt =
0in 0in 0in'><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#4D4D4D'=
>I2RS Working Group invites you to join this WebEx meeting. =
<o:p></o:p></span></p></td></tr></table><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666;=
display:none'><o:p>&nbsp;</o:p></span></p><table class=3DMsoNormalTable =
border=3D0 cellpadding=3D0 width=3D525 style=3D'width:393.75pt'><tr =
style=3D'height:15.0pt'><td style=3D'padding:0in 0in 0in =
0in;height:15.0pt'><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666'=
>&nbsp;<o:p></o:p></span></p></td></tr></table><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666;=
display:none'><o:p>&nbsp;</o:p></span></p><table class=3DMsoNormalTable =
border=3D0 cellpadding=3D0 width=3D"100%" style=3D'width:100.0%'><tr><td =
style=3D'padding:0in 0in 0in 0in'><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><b><span =
style=3D'font-family:"Arial","sans-serif";color:#4D4D4D'>I2RS Ephemeral =
State requirements</span></b><span =
style=3D'font-family:"Arial","sans-serif";color:#4D4D4D'> =
<o:p></o:p></span></p></td></tr><tr><td style=3D'padding:0in 0in 0in =
0in'><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666'=
>Wednesday, June 22, 2016 <o:p></o:p></span></p></td></tr><tr><td =
style=3D'padding:0in 0in 0in 0in'><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666'=
>10:00 am&nbsp;&nbsp;|&nbsp;&nbsp;Eastern Daylight Time (New York, =
GMT-04:00)&nbsp;&nbsp;|&nbsp;&nbsp;1 hr 30 mins =
<o:p></o:p></span></p></td></tr></table><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666;=
display:none'><o:p>&nbsp;</o:p></span></p><table class=3DMsoNormalTable =
border=3D0 cellpadding=3D0 width=3D0 =
style=3D'width:0in;width:auto!important'><tr><td style=3D'padding:0in =
0in 0in 0in'><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666'=
>Meeting number (access code): 640 065 533 =
<o:p></o:p></span></p></td></tr></table><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666;=
display:none'><o:p>&nbsp;</o:p></span></p><table class=3DMsoNormalTable =
border=3D0 cellpadding=3D0 width=3D0 =
style=3D'width:0in;width:auto!important'><tr><td style=3D'padding:0in =
0in 0in 0in'><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666'=
>Meeting password: JFZGgVPm<o:p></o:p></span></p></td></tr></table><p =
class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666;=
display:none'><o:p>&nbsp;</o:p></span></p><table class=3DMsoNormalTable =
border=3D0 cellpadding=3D0 width=3D525 style=3D'width:393.75pt'><tr =
style=3D'height:15.0pt'><td style=3D'padding:0in 0in 0in =
0in;height:15.0pt'><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666'=
>&nbsp;<o:p></o:p></span></p></td></tr></table><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666'=
><o:p>&nbsp;</o:p></span></p><table class=3DMsoNormalTable border=3D0 =
cellpadding=3D0 width=3D0 =
style=3D'width:0in;width:auto!important'><tr><td style=3D'padding:0in =
0in 0in 0in;width:auto!important'><table class=3DMsoNormalTable =
border=3D1 cellspacing=3D0 cellpadding=3D0 width=3D0 =
style=3D'width:0in;background:#43A942;border:solid #43A942 =
1.5pt;width:auto!important'><tr><td style=3D'border:none;padding:10.5pt =
15.0pt 10.5pt 15.0pt;width:auto!important;min-width: 186px!important'><p =
class=3DMsoNormal align=3Dcenter =
style=3D'text-align:center;line-height:15.0pt;mso-element:frame;mso-eleme=
nt-frame-hspace:2.25pt;mso-element-wrap:around;mso-element-anchor-vertica=
l:paragraph;mso-element-anchor-horizontal:column;mso-height-rule:exactly'=
><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666'=
><a =
href=3D"https://ietf.webex.com/ietf/j.php?MTID=3Dmb0237e710fb9449283ce534=
c3e996f8b"><span =
style=3D'font-size:15.0pt;color:white;text-decoration:none'>Add to =
Calendar</span></a> <o:p></o:p></span></p></td></tr></table></td><td =
style=3D'padding:0in 0in 0in 0in;width:auto!important'><table =
class=3DMsoNormalTable border=3D0 cellspacing=3D0 cellpadding=3D0 =
width=3D0 =
style=3D'width:0in;width:auto!important;min-width:186px!important'><tr><t=
d style=3D'padding:0in 0in 0in =
12.0pt;width:auto!important;min-width:186px!important'><p =
class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666'=
>When it's time, <a =
href=3D"https://ietf.webex.com/ietf/j.php?MTID=3Dm5869d472f054eead724ef69=
b55a1271c"><span style=3D'color:#00AFF9;text-decoration:none'>join the =
meeting</span></a>.<o:p></o:p></span></p></td></tr></table></td></tr></ta=
ble><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666;=
display:none'><o:p>&nbsp;</o:p></span></p><table class=3DMsoNormalTable =
border=3D0 cellpadding=3D0 width=3D525 style=3D'width:393.75pt'><tr =
style=3D'height:15.0pt'><td style=3D'padding:0in 0in 0in =
0in;height:15.0pt'><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666'=
>&nbsp;<o:p></o:p></span></p></td></tr></table><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666;=
display:none'><o:p>&nbsp;</o:p></span></p><table class=3DMsoNormalTable =
border=3D0 cellpadding=3D0 width=3D525 style=3D'width:393.75pt'><tr><td =
style=3D'padding:0in 0in 0in 0in'><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><b><span =
style=3D'font-family:"Arial","sans-serif";color:#666666'>Join by =
phone</span></b><span =
style=3D'font-family:"Arial","sans-serif";color:#666666'><o:p></o:p></spa=
n></p></td></tr><tr><td style=3D'padding:0in 0in 0in 0in'><p =
class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><b><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666'=
>1-877-668-4493</span></b><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666'=
>&nbsp;Call-in toll free number =
(US/Canada)<o:p></o:p></span></p></td></tr><tr><td style=3D'padding:0in =
0in 0in 0in'><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><b><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666'=
>1-650-479-3208</span></b><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666'=
>&nbsp;Call-in toll number =
(US/Canada)<o:p></o:p></span></p></td></tr><tr><td style=3D'padding:0in =
0in 0in 0in'><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666'=
><a href=3D"https://www.webex.com/pdf/tollfree_restrictions.pdf"><span =
style=3D'font-size:10.0pt;color:#00AFF9;text-decoration:none'>Toll-free =
calling =
restrictions</span></a><o:p></o:p></span></p></td></tr></table><p =
class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666;=
display:none'><o:p>&nbsp;</o:p></span></p><table class=3DMsoNormalTable =
border=3D0 cellpadding=3D0 width=3D525 style=3D'width:393.75pt'><tr =
style=3D'height:15.0pt'><td style=3D'padding:0in 0in 0in =
0in;height:15.0pt'><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666'=
>&nbsp;<o:p></o:p></span></p></td></tr></table><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666;=
display:none'><o:p>&nbsp;</o:p></span></p><table class=3DMsoNormalTable =
border=3D0 cellpadding=3D0 width=3D525 style=3D'width:393.75pt'><tr><td =
style=3D'padding:0in 0in 0in 0in'><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:10.0pt;font-family:"Arial","sans-serif";color:#666666'=
><a href=3D"https://help.webex.com/docs/DOC-5412"><span =
style=3D'color:#00AFF9;text-decoration:none'>Can't join the meeting? =
</span></a><o:p></o:p></span></p></td></tr></table><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666;=
display:none'><o:p>&nbsp;</o:p></span></p><table class=3DMsoNormalTable =
border=3D0 cellpadding=3D0 width=3D525 style=3D'width:393.75pt'><tr =
style=3D'height:7.5pt'><td style=3D'padding:0in 0in 0in =
0in;height:7.5pt'><p class=3DMsoNormal =
style=3D'mso-line-height-alt:7.5pt;mso-element:frame;mso-element-frame-hs=
pace:2.25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph=
;mso-element-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666'=
>&nbsp;<o:p></o:p></span></p></td></tr></table><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666;=
display:none'><o:p>&nbsp;</o:p></span></p><table class=3DMsoNormalTable =
border=3D0 cellpadding=3D0 width=3D525 style=3D'width:393.75pt'><tr><td =
style=3D'padding:0in 0in 0in 0in'><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:9.0pt;font-family:"Arial","sans-serif";color:#A0A0A0'>=
IMPORTANT NOTICE: Please note that this WebEx service allows audio and =
other information sent during the session to be recorded, which may be =
discoverable in a legal matter. By joining this session, you =
automatically consent to such recordings. If you do not consent to being =
recorded, discuss your concerns with the host or do not join the =
session.<o:p></o:p></span></p></td></tr></table></td></tr></table></td></=
tr></table><p class=3DMsoNormal><o:p>&nbsp;</o:p></p></div></body></html>
------=_NextPart_001_00F7_01D1CBD3.354FDF60--

------=_NextPart_000_00F6_01D1CBD3.354FDF60
Content-Type: application/octet-stream;
	name="WebEx_Meeting.ics"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
	filename="WebEx_Meeting.ics"

BEGIN:VCALENDAR=0A=
PRODID:-//Microsoft Corporation//Outlook 10.0 MIMEDIR//EN=0A=
VERSION:2.0=0A=
METHOD:REQUEST=0A=
BEGIN:VTIMEZONE=0A=
TZID:Eastern Time=0A=
BEGIN:STANDARD=0A=
DTSTART:20141101T020000=0A=
RRULE:FREQ=3DYEARLY;INTERVAL=3D1;BYDAY=3D1SU;BYMONTH=3D11=0A=
TZOFFSETFROM:-0400=0A=
TZOFFSETTO:-0500=0A=
TZNAME:Standard Time=0A=
END:STANDARD=0A=
BEGIN:DAYLIGHT=0A=
DTSTART:20140301T020000=0A=
RRULE:FREQ=3DYEARLY;INTERVAL=3D1;BYDAY=3D2SU;BYMONTH=3D3=0A=
TZOFFSETFROM:-0500=0A=
TZOFFSETTO:-0400=0A=
TZNAME:Daylight Savings Time=0A=
END:DAYLIGHT=0A=
END:VTIMEZONE=0A=
BEGIN:VEVENT=0A=
ATTENDEE;CN=3D"I2RS Working =
Group";ROLE=3DREQ-PARTICIPANT;RSVP=3DTRUE:MAILTO:i2rs-chairs@tools.ietf.o=
rg=0A=
ORGANIZER;CN=3D"I2RS Working Group":MAILTO:i2rs-chairs@tools.ietf.org=0A=
DTSTART;TZID=3D"Eastern Time":20160622T100000=0A=
DTEND;TZID=3D"Eastern Time":20160622T113000=0A=
LOCATION:https://ietf.webex.com/ietf=0A=
TRANSP:OPAQUE=0A=
SEQUENCE:1466536763=0A=
UID:2fa6e8bd-d1af-4e19-b406-1d61390cacc3=0A=
DTSTAMP:20160622T140000Z=0A=
DESCRIPTION:\n\n\nJOIN WEBEX =
MEETING\nhttps://ietf.webex.com/ietf/j.php?MTID=3Dm497c9ea0c422764533c9b8=
5b7b9ee42b\nMeeting number (access code): 640 065 533\nMeeting password: =
JFZGgVPm\n\n\nJOIN BY PHONE\n1-877-668-4493 Call-in toll free number =
(US/Canada) \n1-650-479-3208 Call-in toll number =
(US/Canada)\n\nToll-free dialing restrictions: =
\nhttps://www.webex.com/pdf/tollfree_restrictions.pdf\n\n\n\nCan't join =
the meeting?\nhttps://help.webex.com/docs/DOC-5412\n\n\nIMPORTANT =
NOTICE: Please note that this WebEx service allows audio and other =
information sent during the session to be recorded, which may be =
discoverable in a legal matter. By joining this session, you =
automatically consent to such recordings. If you do not consent to being =
recorded, discuss your concerns with the host or do not join the =
session.\n=0A=
X-ALT-DESC;FMTTYPE=3Dtext/html:	<FONT SIZE=3D"1" =
FACE=3D"ARIAL">&nbsp;<BR>&nbsp;<BR>&nbsp;<BR><FONT SIZE=3D"4" =
FACE=3D"ARIAL">		<a =
href=3D"https://ietf.webex.com/ietf/j.php?MTID=3Dm497c9ea0c422764533c9b85=
b7b9ee42b"><FONT SIZE=3D"3" COLOR=3D"#00AFF9" FACE=3D"Arial">Join WebEx =
meeting</FONT></a>			<table>				<tr>					<td>						<FONT SIZE=3D"2" =
COLOR=3D"#666666" FACE=3D"arial">Meeting number (access code): 640 065 =
533</FONT>					</td>				</tr>			</table>						<table><tr><td><FONT =
SIZE=3D"2" COLOR=3D"#666666" FACE=3D"arial">Meeting =
password:</FONT></td><td><FONT SIZE=3D"2"  COLOR=3D"#666666" =
FACE=3D"arial">JFZGgVPm</FONT></td></tr></table>		</FONT><FONT =
SIZE=3D"1" FACE=3D"ARIAL">&nbsp;<BR>&nbsp;<BR></FONT><FONT SIZE=3D"4" =
FACE=3D"ARIAL"><FONT SIZE=3D"3" COLOR=3D"#666666" FACE=3D"arial">Join by =
phone</FONT>&nbsp; <BR><FONT SIZE=3D"2" COLOR=3D"#666666" =
FACE=3D"arial"><strong>1-877-668-4493</strong>&nbsp;Call-in toll free =
number (US/Canada)</FONT>&nbsp; <BR><FONT SIZE=3D"2" COLOR=3D"#666666" =
FACE=3D"arial"><strong>1-650-479-3208</strong>&nbsp;Call-in toll number =
(US/Canada)</FONT>&nbsp; <BR><a =
href=3D"https://www.webex.com/pdf/tollfree_restrictions.pdf"><FONT =
SIZE=3D"1" COLOR=3D"#00AFF9" FACE=3D"arial">Toll-free calling =
restrictions</FONT></a> &nbsp; <BR></FONT><BR><BR>	&nbsp;<BR>	<a =
href=3D"https://help.webex.com/docs/DOC-5412">	<FONT SIZE=3D"1" =
COLOR=3D"#00AFF9" FACE=3D"Arial">Can't join the meeting?</FONT></a>	=
&nbsp;<BR>&nbsp;<BR><FONT COLOR=3D"#A0A0A0" size=3D"1" =
FACE=3D"arial">IMPORTANT NOTICE: Please note that this WebEx service =
allows audio and other information sent during the session to be =
recorded, which may be discoverable in a legal matter. By joining this =
session, you automatically consent to such recordings. If you do not =
consent to being recorded, discuss your concerns with the host or do not =
join the session.</FONT></FONT>=0A=
SUMMARY:I2RS Ephemeral State requirements=0A=
PRIORITY:5=0A=
CLASS:PUBLIC=0A=
BEGIN:VALARM=0A=
TRIGGER:-PT5M=0A=
ACTION:DISPLAY=0A=
DESCRIPTION:Reminder=0A=
END:VALARM=0A=
END:VEVENT=0A=
END:VCALENDAR=0A=

------=_NextPart_000_00F6_01D1CBD3.354FDF60--


From nobody Tue Jun 21 13:29:43 2016
Return-Path: <shares@ndzh.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 61F8D12D751 for <i2rs@ietfa.amsl.com>; Tue, 21 Jun 2016 13:29:42 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.738
X-Spam-Level: *
X-Spam-Status: No, score=1.738 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, RDNS_NONE=0.793] autolearn=no autolearn_force=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 oJlNU29iAwae for <i2rs@ietfa.amsl.com>; Tue, 21 Jun 2016 13:29:41 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id CFE6212D74B for <i2rs@ietf.org>; Tue, 21 Jun 2016 13:29:40 -0700 (PDT)
X-Default-Received-SPF: pass (skip=forwardok (res=PASS)) x-ip-name=184.157.84.183; 
From: "Susan Hares" <shares@ndzh.com>
To: <i2rs@ietf.org>
References: <004901d1cbf1$85b87430$91295c90$@ndzh.com>
In-Reply-To: <004901d1cbf1$85b87430$91295c90$@ndzh.com>
Date: Tue, 21 Jun 2016 16:29:18 -0400
Message-ID: <013501d1cbfb$964c55f0$c2e501d0$@ndzh.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQEY5e8iHcIwDPPcBwyla1FJlV/FqqFmKujw
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/lfTNDc6uOV8QzDP4KsbIwXwu9yA>
Cc: 'Russ White' <russ@riw.us>
Subject: Re: [i2rs] FW: I-D Action: draft-ietf-i2rs-ephemeral-state-10.txt- 2 week WG LC (6/21 to 7/5/2016)
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Tue, 21 Jun 2016 20:29:42 -0000

WG there is an typo in section 7


   Ephemeral-REQ-11: The data nodes MAY store I2RS client identity and
   not the effective priority at the time the data node is stored.  Per
   SEC-REQ-07 in section 3.1 of
   [I-D.ietf-i2rs-protocol-security-requirements], an identifier must
   have just one priority.  Therefore, the data nodes MAY store I2RS
   client identity and not the effective priority of the I2RS client at
   the time the data node is stored.  The priority MAY be dynamically
   changed by AAA, but the exact actions are part of the protocol
   definition as long as collisions are handled as described in
   Ephemeral-REQ-10, Ephemeral-REQ-11, and Ephemeral-REQ-12.

The last line should be 

    Ephemeral-REQ-12, Ephemeral-REQ-13, and Ephemeral-REQ-14. 


Sue Hares 



-----Original Message-----
From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Susan Hares
Sent: Tuesday, June 21, 2016 3:17 PM
To: i2rs@ietf.org
Cc: 'Russ White'
Subject: [i2rs] FW: I-D Action: draft-ietf-i2rs-ephemeral-state-10.txt- 2
week WG LC (6/21 to 7/5/2016)

This begins a 2 WG LC last call on the text of
draft-ietf-i2rs-ephemeral-state-10.txt.   There are 15 requirement for I2RS
ephemeral state, and 2 requirements for ephemeral state utilized by pub/sub
documents.   

Sue Hares and Russ White 

-----Original Message-----
From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of
internet-drafts@ietf.org
Sent: Tuesday, June 21, 2016 2:57 PM
To: i-d-announce@ietf.org
Cc: i2rs@ietf.org
Subject: [i2rs] I-D Action: draft-ietf-i2rs-ephemeral-state-10.txt


A New Internet-Draft is available from the on-line Internet-Drafts
directories.
This draft is a work item of the Interface to the Routing System of the
IETF.

        Title           : I2RS Ephemeral State Requirements
        Authors         : Jeff Haas
                          Susan Hares
	Filename        : draft-ietf-i2rs-ephemeral-state-10.txt
	Pages           : 11
	Date            : 2016-06-21

Abstract:
   This document covers requests to the NETMOD and NETCONF Working
   Groups for functionality to support the ephemeral state requirements
   to implement the I2RS architecture.


The IETF datatracker status page for this draft is:
https://datatracker.ietf.org/doc/draft-ietf-i2rs-ephemeral-state/

There's also a htmlized version available at:
https://tools.ietf.org/html/draft-ietf-i2rs-ephemeral-state-10

A diff from the previous version is available at:
https://www.ietf.org/rfcdiff?url2=draft-ietf-i2rs-ephemeral-state-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/

_______________________________________________
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


From nobody Tue Jun 21 16:25:38 2016
Return-Path: <nitin_bahadur@yahoo.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 8B30112D908 for <i2rs@ietfa.amsl.com>; Tue, 21 Jun 2016 16:25:36 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.125
X-Spam-Level: 
X-Spam-Status: No, score=-4.125 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, MIME_QP_LONG_LINE=0.001, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, RP_MATCHES_RCVD=-1.426, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=yahoo.com
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 mPIdxqixFgMf for <i2rs@ietfa.amsl.com>; Tue, 21 Jun 2016 16:25:33 -0700 (PDT)
Received: from nm13-vm10.bullet.mail.gq1.yahoo.com (nm13-vm10.bullet.mail.gq1.yahoo.com [98.136.218.155]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 46F1C12D83F for <i2rs@ietf.org>; Tue, 21 Jun 2016 16:25:33 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1466551532; bh=PA0jwrfqBNRvl2B4KTnEMxsY9a8WzpnTS/ShVlVs7BA=; h=Date:Subject:From:To:CC:From:Subject; b=CxS+1BCvfMS+NcqgnYqlH+aroH5ll7K8YAJ28mXrilD25DdQHDyhS8ylzaOrtQt3L0fLUxI1+ZGVg3nE1dVGx6R6mjzfFTGD26HMPEK2u78wmphqY3bsExWKlYSgznyPlyKZmBhXhGBUg0NeHw54A97HhVzVtay4wH0l+5li6xPTh8SdHrMZrICHXK+opjyZCy5U8h36UthsI494g7hsfIGLwkDv1OuuF3mqXrwYM605d9NpDjaZGqIBjVKfOw/kzPNOvCDCzI3NFzgFZ51oCgwYxPFeEz/jw4FbQKMn5pkTJY1lQWa720nmmXE49RUQYQZy52ruCtpKzmrezOM2Gg==
Received: from [98.137.12.63] by nm13.bullet.mail.gq1.yahoo.com with NNFMP; 21 Jun 2016 23:25:32 -0000
Received: from [98.136.164.68] by tm8.bullet.mail.gq1.yahoo.com with NNFMP; 21 Jun 2016 23:25:32 -0000
Received: from [127.0.0.1] by smtp230.mail.gq1.yahoo.com with NNFMP; 21 Jun 2016 23:25:32 -0000
X-Yahoo-Newman-Id: 890575.72004.bm@smtp230.mail.gq1.yahoo.com
X-Yahoo-Newman-Property: ymail-3
X-YMail-OSG: MPAPNKwVM1lcgPJeNZLpviXz0WVawhHuqXz3w2Pklv7nALE k3vaUvCfMHI6sgqpOZlD603tG2w8Cy0LGCGkj1jmYayHYQzJo_WMHWM1TlCp XAKO8L6VK6iAgI2eFxN.g5epKmhSeMOHGJ_Kmf8_42GICcTSJJai3_oJ2r5r K2AJMwosegsHMCFOkmh49Gtf0grINoAvQl85cE4aXvgm2wqJ22LSa8owaB6X vBnvospxlJnDk1_K9StEAQi83uc1Z3anmFWtRuKGl2DYR11fO7hTPnQ1lVH6 k.nbDS6ytRzz7E84EUsTgxSb13di2ZbiP9qy4mgq2JA85N2pfobRZ5v20_Nr 4RyiXNdrc61.MOUslihqychBX9kaZTGxAa1PZF7XJj_3nOBKyylcXkK79piN Z6MdJ6y.OQpKFOY7MWU91ueC.v6eQJf_U.7n4vAFfCfeRGFafdH3p2xnqPCc Nnr_Pu3IM036h1hio7.Z.DfR1Bd4_lNiOda0U9ai88NrbSyBB.cJlmv3M8lw FsiSlzcXTpKcy9veJNY9bJ6oO7Q5CE1a1WAVSXnf7E7R7RJAcnRBEcCrV
X-Yahoo-SMTP: jU6Na92swBBdqSRkLOL9Cp_LhHZgQAQoL10-
User-Agent: Microsoft-MacOutlook/14.5.9.151119
Date: Tue, 21 Jun 2016 16:25:26 -0700
From: Nitin Bahadur <nitin_bahadur@yahoo.com>
To: "Zhangxian (Xian)" <zhang.xian@huawei.com>, Ravi Singh <ravis@juniper.net>
Message-ID: <D38EFA4A.3685E%nitin_bahadur@yahoo.com>
Thread-Topic: [i2rs] FW: Routing directorate QA review of draft-ietf-i2rs-rib-info-model
Mime-version: 1.0
Content-type: multipart/alternative; boundary="B_3549371131_7796566"
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/Wgw-PcFNaK9qt4kwfxijsaz5BgY>
Cc: "i2rs@ietf.org" <i2rs@ietf.org>, "draft-ietf-i2rs-rib-info-model@tools.ietf.org" <draft-ietf-i2rs-rib-info-model@tools.ietf.org>
Subject: Re: [i2rs] FW: Routing directorate QA review of draft-ietf-i2rs-rib-info-model
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Tue, 21 Jun 2016 23:25:36 -0000

> This message is in MIME format. Since your mail reader does not understand
this format, some or all of this message may not be legible.

--B_3549371131_7796566
Content-type: text/plain;
	charset="Big5"
Content-transfer-encoding: quoted-printable


Thanks Ravi for the detailed review.

Please see comments inline below. I will submit the updated draft once all
comments have been satisfactorily resolved.
=20
From: Ravi Singh [mailto:ravis@juniper.net]
Sent: 2016=A6~5=A4=EB18=A4=E9 0:55
To: rtg-dir@ietf.org
Cc: 'Jonathan Hardwick'; 'Jon Hudson'; Susan Hares; Zhangxian (Xian)
Subject: RE: Routing directorate QA review of draft-ietf-i2rs-rib-info-mode=
l
=20
Hi

I had been designated the RTG-DIR QA-reviewer for
https://tools.ietf.org/html/draft-ietf-i2rs-rib-info-model-08

=20

I reviewed this doc.

Overall, the doc is clear and does a decent job of creating a RIB model.

However, I have a minor concern with the tone of the doc at certain places.

The document, at places, reads like a requirements doc specifying what an
implementation of the RIB "SHOULD"/MUST do.

I am not sure if that is correct form for an informational draft documentin=
g
a specific RIB model.

Examples of such instances would be:

A.     Section 8
B.     Section 9

NB> Yes, we added SHOULD & MUST to indicate what the data-model needs to
implement. There is no separate =A1=A7requirements=A1=A8 draft for the RIB.

C.     Wherever in the doc a "SHOULD" or "MUST" shows up stating
desirability of certain behavior of an external entity accessing the RIB.
=20

NB> The desired behavior was specified using SHOULD/MUST so that inter-op i=
s
not an issue. Otherwise people implementing this on the agent and client
side might end up having different semantics.

An aspect that has not been touched-upon in the document, that however migh=
t
be worthy of consideration is about how this RIB model accommodates an
external input about traffic-statistics-monitoring desired for the various
constructs.

=20

NB> The external input would go into a =A1=A7controller=A1=A8. And the controller
would have the =A1=A7smarts=A1=A8 do take that input into account before programmin=
g
any rules. So I=A1=A6m unclear the relationship of that with the RIB model. May=
be
you meant something else.


Specific comments on the various sections in the text:

1.      Introduction:
a.      First 2 paras: some typos and sentences with redundant words.

NB> I fixed a grammar issue=A1K.could not find the typos :(. Please help with
typo identification.
=20
2.      2.1:
a.      "type" is somewhat ambiguous. Suggest reword "type" as
"address-family"

NB> Done
=20
3.      2.2:=20
a.      Some sentences could be made shorter/broken-up to improve
readability of this section.

NB> Updated.

b.     Interface_list and router-id: For a functioning routing-instance,
can't think of a routing-instance without either of those defined. So,
either the optionality aspect needs to be changed to "required" or specify
how a routing-instance would work with either missing.

NB> XXX
c.      Interface-list: per-interface parameters could also be listed (sinc=
e
the interface-list is called out in a RIB model): address, families, MTU,
extensibility-consideration-for-other-interface-attributes

NB> Could be. However it was not deemed necessary.
=20
4.      2.3:
a.      ROUTE_PREFERENCE: The text is mixing-up route-preference with
"route-metric". Administrative-distance (the route metric) is the IGP cost
of a route.

NB> No it=A1=A6s not. At least one vendor (Juniper) uses route preference and
admin distance inter-changeably.  See
 <http://www.juniper.net/documentation/en_US/junos15.1/topics/reference/gen=
e
ral/routing-protocols-default-route-preference-values.html>
<http://www.juniper.net/documentation/en_US/junos15.1/topics/reference/gene=
r
al/routing-protocols-default-route-preference-values.html>
<http://www.juniper.net/documentation/en_US/junos15.1/topics/reference/gene=
r
al/routing-protocols-default-route-preference-values.html>
<http://www.juniper.net/documentation/en_US/junos15.1/topics/reference/gene=
r
al/routing-protocols-default-route-preference-values.html>
http://www.juniper.net/documentation/en_US/junos15.1/topics/reference/gener=
a
l/routing-protocols-default-route-preference-values.html
Both route_preference and route-metric would be attributes of the route.


NB> Note that there is only 1 value that makes sense when the network devic=
e
is being programmed by a controller.
b.     An additional attribute that should be included is "installing
protocol". That would require defining a list of protocols that may install
a route.

NB> "Installing protocol" is something that the controller needs to worry
about. A network device should not care about the N different protocols
running on the controller.
=20
5.      2.4:
a.      Second paragraph could use rewording to enhance clarity.
Specifically:
                                      i.           Need to mention about
"(appearing to be) directly connected IP" to distinguish between:
1.      Nexthops that don't need to be resolved (by other RIB events) to be
installable

NB> As per the draft=A1K"A resolved nexthop has adequate information to send
the outgoing packet to the destination=A1=A8.  So if the controller provides al=
l
the information, no further resolution is necessary.

2.      Nexthops that need to be resolved (by other RIB events/properties)
to be installable:
a.      Those that are currently resolved
b.     Those that are currently not-resolved

NB> Please provide clarifying/re-wording text=A1K
At a macro level, this document is not supposed to be a treatise on the
design of nexthops.

b.     Next-hop property should also include IP of (appearing to be)
locally-connected device for which to ARP

NB> That is already specified in the grammar
<EGRESS_INTERFACE> (<ipv4-address> | <ipv6-address>)
=20

6.      2.4.1:
a.      Last paragraph: "preceded by" would be more accurate than "followed
by"

NB> Hmm=A1K.I still think followed by is correct. If you want I can change it
to =A1=A7encapsulated by=A1=A8.

=20
7.      2.4.3:
a.      Under "tunnel encap": The following text
"

An optional

      egress interface can be chained to the tunnel encap to indicate

      which interface to send the packet out on.  The egress interface

      is useful when the network device contains Ethernet interfaces and

      one needs to perform address resolution for the IP packet."

appears a bit incorrect.

If one wishes to do resolution for the tunnel-remote-dst then specifying an
interface serves no purpose. Either that address does not need resolution
and this specified interface is a p2p interface or there is a need for
resolution (without needing to specify an interface-name). Can't be both.

=20

NB> Probably some confusion here. If you attach an IP encap to a packet,
then before you send it out as an Ethernet frame, you need to fill the
Ethernet header. For that you need the address resolution.

8.      Sections 4 & 5 can be merged. What is the point of having a separat=
e
section 5 when it is not really saying anything new beyond what text exists
in section 4.


NB> Section 4 talks about =A1=A7return codes=A1=A8 on commands sent to a network
device. Section 5 talks about asynchronous messages sent by the network
device (without a corresponding incoming command). That is the difference.

=20

9.      Section 6:
a.      Not repeating remarks made about specific attributes (listed above)
for each item in the BNF. Eg. Route-metric/preference related remark made
above about 2.3.

NB> Didn=A1=A6t understand this comment. Can you rephrase.
=20

b.     In-label is not logically a nexthop attribute. It is infact a route.
This should be fixed.
  <mpls-label-operation> ::=3D (<MPLS_PUSH> <MPLS_LABEL> [<S_BIT>]

                                          [<TOS_VALUE>] [<TTL_VALUE>]) |

                             (<MPLS_SWAP> <IN_LABEL> <OUT_LABEL>

                                         [<TTL_ACTION>])


NB>  The grammar already has content for MPLS style route lookups.


<match> ::=3D <IPV4> <ipv4-route> | <IPV6> <ipv6-route> |

            <MPLS> <MPLS_LABEL> | <IEEE_MAC> <MAC_ADDRESS> |

            <INTERFACE> <INTERFACE_IDENTIFIER>


<mpls-label-operation> is a type of <tunnel-encap>, which in turn is a type
of <nexthop>. The <mpls-label-operation> grammar allows one to perform MPLS
SWAP operations on a given packet. So you would first <match> the MPLS labe=
l
and the nexthop operation for the route would be a SWAP and the grammar
above specifies that.
c.      VXLAN headers needs to have a way to specify src/dst MAC in inner
header, since it is possible to use VXLAN as a general-purpose encapsulatio=
n
without L2-learning semantics.

NB> We discussed this offline a while back. The end discussion was that we
did not want to provide ways to completely specify L2 frames in the context
of RIB info model. Note that the current grammar does not allow you to buil=
d
a complete ethernet header.

10.  Section 6 describes the RIB grammar. The nexthop grammar is a part of
that. However, some of that sub-grammar appears under section 7.

NB> Section 7 are examples of using the RIB grammar. Sure it could be part
of Section 6. It won=A1=A6t make a meaningful difference either ways.

11.  Section 7 "Using the RIB grammar" starts out by explaining how the
complex nexthops maybe used. However, it ends up being a listing of the
nexthop sub-grammar which should really have been listed in section 6 along
with the RIB grammar.
I'd suggest either take the entirety of the next-hop grammar listing to the
section 6, or break section 7 so that the next-hop grammar is listed in
section 7 & the "using the rib" grammar is a purely text only description o=
f
Rib/NH grammar maybe used.


NB> Section 7 is targeted towards how developers would use the grammar to
write network applications. So they should all stay together. For instance,
Section 7.3 has all text, but it refers to a =A1=A7programming example=A1=A8 in
Section 7.2.2. So moving Section 7.3 up would do more harm than good.
=20

12.  Syntax for <nexthop-replicate>  needs to be reconciled beween section
7.2.3 and section 6 where
there is an syntax mismatch,

Doesn=A1=A6t section 6 need to say:

<nexthop-replicate> ::=3D <NEXTHOP_REPLICATE> <nexthop> <nexthop> ...

=20

NB> Version =A1V06 of the draft had what you are asking for. See
 <https://tools.ietf.org/html/draft-ietf-i2rs-rib-info-model-06#section-6>
 <https://tools.ietf.org/html/draft-ietf-i2rs-rib-info-model-06#section-6>
https://tools.ietf.org/html/draft-ietf-i2rs-rib-info-model-06#section-6

We were specifically asked to remove the keyword <NEXTHOP_REPLICATE> becaus=
e
it was not correct use of rBNF. The data-model can have such things, but no=
t
the info model. Folks were ok with keeping the examples (Section 7) as is.

Thanks
Nitin



--B_3549371131_7796566
Content-type: text/html;
	charset="Big5"
Content-transfer-encoding: quoted-printable

<html><head></head><body style=3D"word-wrap: break-word; -webkit-nbsp-mode: s=
pace; -webkit-line-break: after-white-space;"><div style=3D"color: rgb(0, 0, 0=
); font-family: Calibri, sans-serif; font-size: 14px;"><span style=3D"color: r=
gb(31, 73, 125); font-size: 10.5pt;"><br></span></div><div style=3D"color: rgb=
(0, 0, 0); font-family: Calibri, sans-serif; font-size: 14px;"><span style=3D"=
color: rgb(31, 73, 125); font-size: 10.5pt;">Thanks Ravi for the detailed re=
view.</span></div><div style=3D"color: rgb(0, 0, 0); font-family: Calibri, san=
s-serif; font-size: 14px;"><span style=3D"color: rgb(31, 73, 125); font-size: =
10.5pt;"><br></span></div><div><font color=3D"#1f497d" face=3D"Calibri,sans-seri=
f" size=3D"3">Please see comments inline below.&nbsp;</font><font color=3D"#1f49=
7d" face=3D"Calibri,sans-serif">I</font><font color=3D"#1f497d" face=3D"Calibri,sa=
ns-serif" size=3D"3">&nbsp;will submit the updated draft once all&nbsp;comment=
s have been satisfactorily resolved.</font></div><div style=3D"color: rgb(0, 0=
, 0); font-family: Calibri, sans-serif; font-size: 14px;"><span style=3D"color=
: rgb(31, 73, 125); font-size: 10.5pt;">&nbsp;</span></div><span id=3D"OLK_SRC=
_BODY_SECTION" style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif;=
 font-size: 14px;"><div><div lang=3D"ZH-CN" link=3D"#0563C1" vlink=3D"#954F72"><di=
v class=3D"WordSection1"><div><div style=3D"border:none;border-top:solid #B5C4DF=
 1.0pt;padding:3.0pt 0cm 0cm 0cm"><p class=3D"MsoNormal"><b><span lang=3D"EN-US"=
 style=3D"font-size: 10pt; font-family: Tahoma, sans-serif;">From:</span></b><=
span lang=3D"EN-US" style=3D"font-size: 10pt; font-family: Tahoma, sans-serif;">=
 Ravi Singh [<a href=3D"mailto:ravis@juniper.net">mailto:ravis@juniper.net</a>=
]
<br><b>Sent:</b> 2016</span><span style=3D"font-size:10.0pt;font-family:SimSu=
n">=A6~</span><span lang=3D"EN-US" style=3D"font-size: 10pt; font-family: Tahoma, =
sans-serif;">5</span><span style=3D"font-size:10.0pt;font-family:SimSun">=A4=EB</s=
pan><span lang=3D"EN-US" style=3D"font-size: 10pt; font-family: Tahoma, sans-ser=
if;">18</span><span style=3D"font-size:10.0pt;font-family:SimSun">=A4=E9</span><sp=
an lang=3D"EN-US" style=3D"font-size: 10pt; font-family: Tahoma, sans-serif;">
 0:55<br><b>To:</b> <a href=3D"mailto:rtg-dir@ietf.org">rtg-dir@ietf.org</a><=
br><b>Cc:</b> 'Jonathan Hardwick'; 'Jon Hudson'; Susan Hares; Zhangxian (Xia=
n)<br><b>Subject:</b> RE: Routing directorate QA review of draft-ietf-i2rs-r=
ib-info-model<o:p></o:p></span></p></div></div><p class=3D"MsoNormal"><span la=
ng=3D"EN-US"><o:p>&nbsp;</o:p></span></p><p style=3D"margin:0cm;margin-bottom:.0=
001pt"><span lang=3D"EN-US" style=3D"font-size: 11pt; font-family: Calibri, sans=
-serif; color: black;">Hi<o:p></o:p></span></p><p style=3D"margin:0cm;margin-b=
ottom:.0001pt"><span lang=3D"EN-US" style=3D"font-size: 11pt; font-family: Calib=
ri, sans-serif; color: black;">I had been designated the RTG-DIR QA-reviewer=
 for
<a href=3D"https://tools.ietf.org/html/draft-ietf-i2rs-rib-info-model-08">htt=
ps://tools.ietf.org/html/draft-ietf-i2rs-rib-info-model-08</a><o:p></o:p></s=
pan></p><p style=3D"margin:0cm;margin-bottom:.0001pt"><span lang=3D"EN-US" style=
=3D"font-size: 11pt; font-family: Calibri, sans-serif; color: black;">&nbsp;<o=
:p></o:p></span></p><p style=3D"margin:0cm;margin-bottom:.0001pt"><span lang=3D"=
EN-US" style=3D"font-size: 11pt; font-family: Calibri, sans-serif; color: blac=
k;">I reviewed this doc.<o:p></o:p></span></p><p style=3D"margin:0cm;margin-bo=
ttom:.0001pt"><span lang=3D"EN-US" style=3D"font-size: 11pt; font-family: Calibr=
i, sans-serif; color: black;">Overall, the doc is clear and does a decent jo=
b of creating a RIB model.<o:p></o:p></span></p><p style=3D"margin:0cm;margin-=
bottom:.0001pt"><span lang=3D"EN-US" style=3D"font-size: 11pt; font-family: Cali=
bri, sans-serif; color: black;">However, I have a minor concern with the ton=
e of the doc at certain places.
<o:p></o:p></span></p><p style=3D"margin:0cm;margin-bottom:.0001pt"><span lan=
g=3D"EN-US" style=3D"font-size: 11pt; font-family: Calibri, sans-serif; color: b=
lack;">The document, at places, reads like a requirements doc specifying wha=
t an implementation of the RIB "SHOULD"/MUST do.
<o:p></o:p></span></p><p style=3D"margin:0cm;margin-bottom:.0001pt"><span lan=
g=3D"EN-US" style=3D"font-size: 11pt; font-family: Calibri, sans-serif; color: b=
lack;">I am not sure if that is correct form for an informational draft docu=
menting a specific RIB model.
<o:p></o:p></span></p><p style=3D"margin:0cm;margin-bottom:.0001pt"><span lan=
g=3D"EN-US" style=3D"font-size: 11pt; font-family: Calibri, sans-serif; color: b=
lack;">Examples of such instances would be:<o:p></o:p></span></p><p class=3D"M=
soNormal" style=3D"margin-left:27.0pt;text-indent:-18.0pt;vertical-align:middl=
e"><span lang=3D"EN-US" style=3D"color:black">A.</span><span lang=3D"EN-US" style=3D=
"font-size: 7pt; font-family: 'Times New Roman', serif; color: black;">&nbsp=
;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">Section 8<o:p></o:p></span></=
p><p class=3D"MsoNormal" style=3D"margin-left:27.0pt;text-indent:-18.0pt;vertica=
l-align:middle"><span lang=3D"EN-US" style=3D"color:black">B.</span><span lang=3D"=
EN-US" style=3D"font-size: 7pt; font-family: 'Times New Roman', serif; color: =
black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">Section 9</span></p></div></d=
iv></div></span><div style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-=
serif; font-size: 14px;"><br></div><div style=3D"color: rgb(0, 0, 0); font-fam=
ily: Calibri, sans-serif; font-size: 14px;">NB&gt; Yes, we added SHOULD &amp=
; MUST to indicate what the data-model needs to implement. There is no separ=
ate &#8220;requirements&#8221; draft for the RIB.</div><div style=3D"color: rg=
b(0, 0, 0); font-family: Calibri, sans-serif; font-size: 14px;"><br></div><s=
pan id=3D"OLK_SRC_BODY_SECTION" style=3D"color: rgb(0, 0, 0); font-family: Calib=
ri, sans-serif; font-size: 14px;"><div><div lang=3D"ZH-CN" link=3D"#0563C1" vlin=
k=3D"#954F72"><div class=3D"WordSection1"><p class=3D"MsoNormal" style=3D"margin-lef=
t:27.0pt;text-indent:-18.0pt;vertical-align:middle"><span lang=3D"EN-US" style=
=3D"color:black"><o:p></o:p></span></p><p class=3D"MsoNormal" style=3D"margin-left=
:27.0pt;text-indent:-18.0pt;vertical-align:middle"><span lang=3D"EN-US" style=3D=
"color:black">C.</span><span lang=3D"EN-US" style=3D"font-size: 7pt; font-family=
: 'Times New Roman', serif; color: black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">Wherever in the doc a "SHOULD=
" or "MUST" shows up stating desirability of certain behavior of an external=
 entity accessing the RIB.<o:p></o:p></span></p><p style=3D"margin:0cm;margin-=
bottom:.0001pt"><span lang=3D"EN-US" style=3D"font-size: 11pt; font-family: Cali=
bri, sans-serif; color: black;">&nbsp;</span></p></div></div></div></span><d=
iv style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-size: =
14px;">NB&gt; The desired behavior was specified using SHOULD/MUST so that i=
nter-op is not an issue. Otherwise people implementing this on the agent and=
 client side might end up having different semantics.</div><div style=3D"color=
: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-size: 14px;"><br></di=
v><span id=3D"OLK_SRC_BODY_SECTION" style=3D"color: rgb(0, 0, 0); font-family: C=
alibri, sans-serif; font-size: 14px;"><div><div lang=3D"ZH-CN" link=3D"#0563C1" =
vlink=3D"#954F72"><div class=3D"WordSection1"><p style=3D"margin:0cm;margin-bottom=
:.0001pt"><span lang=3D"EN-US" style=3D"font-size: 11pt; font-family: Calibri, s=
ans-serif; color: black;"><o:p></o:p></span></p><p style=3D"margin:0cm;margin-=
bottom:.0001pt"><span lang=3D"EN-US" style=3D"font-size: 11pt; font-family: Cali=
bri, sans-serif; color: black;">An aspect that has not been touched-upon in =
the document, that however might be worthy of consideration is about how thi=
s
 RIB model accommodates an external input about traffic-statistics-monitori=
ng desired for the various constructs.<o:p></o:p></span></p><p style=3D"margin=
:0cm;margin-bottom:.0001pt"><span lang=3D"EN-US" style=3D"font-size: 11pt; font-=
family: Calibri, sans-serif; color: black;"><o:p>&nbsp;</o:p></span></p></di=
v></div></div></span><div style=3D"color: rgb(0, 0, 0); font-family: Calibri, =
sans-serif; font-size: 14px;">NB&gt; The external input would go into a &#82=
20;controller&#8221;. And the controller would have the &#8220;smarts&#8221;=
 do take that input into account before programming any rules. So I&#8217;m =
unclear the relationship of that with the RIB model. Maybe you meant somethi=
ng else.</div><div style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-se=
rif; font-size: 14px;"><br></div><div style=3D"color: rgb(0, 0, 0); font-famil=
y: Calibri, sans-serif; font-size: 14px;"><br></div><span id=3D"OLK_SRC_BODY_S=
ECTION" style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-s=
ize: 14px;"><div><div lang=3D"ZH-CN" link=3D"#0563C1" vlink=3D"#954F72"><div class=
=3D"WordSection1"><p style=3D"margin:0cm;margin-bottom:.0001pt"><span lang=3D"EN-U=
S" style=3D"font-size: 11pt; font-family: Calibri, sans-serif; color: black;">=
Specific comments on the various sections in the text:<o:p></o:p></span></p>=
<p class=3D"MsoNormal" style=3D"margin-left:27.0pt;text-indent:-18.0pt;vertical-=
align:middle"><span lang=3D"EN-US" style=3D"color:black">1.</span><span lang=3D"EN=
-US" style=3D"font-size: 7pt; font-family: 'Times New Roman', serif; color: bl=
ack;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">Introduction:<o:p></o:p></spa=
n></p><p class=3D"MsoNormal" style=3D"margin-left:54.0pt;text-indent:-18.0pt;ver=
tical-align:middle"><span lang=3D"EN-US" style=3D"color:black">a.</span><span la=
ng=3D"EN-US" style=3D"font-size: 7pt; font-family: 'Times New Roman', serif; col=
or: black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">First 2 paras: some typos and=
 sentences with redundant words.</span></p></div></div></div></span><div sty=
le=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-size: 14px;"=
><br></div><div style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif=
; font-size: 14px;">NB&gt; I fixed a grammar issue&#8230;.could not find the=
 typos :(. Please help with typo identification.</div><span id=3D"OLK_SRC_BODY=
_SECTION" style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font=
-size: 14px;"><div><div lang=3D"ZH-CN" link=3D"#0563C1" vlink=3D"#954F72"><div cla=
ss=3D"WordSection1"><p class=3D"MsoNormal" style=3D"margin-left:54.0pt;text-indent=
:-18.0pt;vertical-align:middle"><span lang=3D"EN-US" style=3D"color:black"><o:p>=
</o:p></span></p><p class=3D"MsoNormal" style=3D"margin-left:54.0pt;vertical-ali=
gn:middle"><span lang=3D"EN-US" style=3D"color:black"><o:p>&nbsp;</o:p></span></=
p><p class=3D"MsoNormal" style=3D"margin-left:27.0pt;text-indent:-18.0pt;vertica=
l-align:middle"><span lang=3D"EN-US" style=3D"color:black">2.</span><span lang=3D"=
EN-US" style=3D"font-size: 7pt; font-family: 'Times New Roman', serif; color: =
black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">2.1:<o:p></o:p></span></p><p =
class=3D"MsoNormal" style=3D"margin-left:54.0pt;text-indent:-18.0pt;vertical-ali=
gn:middle"><span lang=3D"EN-US" style=3D"color:black">a.</span><span lang=3D"EN-US=
" style=3D"font-size: 7pt; font-family: 'Times New Roman', serif; color: black=
;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">"type" is somewhat ambiguous.=
 Suggest reword "type" as "address-family"</span></p></div></div></div></spa=
n><div style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-si=
ze: 14px;"><br></div><div style=3D"color: rgb(0, 0, 0); font-family: Calibri, =
sans-serif; font-size: 14px;">NB&gt; Done</div><span id=3D"OLK_SRC_BODY_SECTIO=
N" style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-size: =
14px;"><div><div lang=3D"ZH-CN" link=3D"#0563C1" vlink=3D"#954F72"><div class=3D"Wor=
dSection1"><p class=3D"MsoNormal" style=3D"margin-left:54.0pt;text-indent:-18.0p=
t;vertical-align:middle"><span lang=3D"EN-US" style=3D"color:black"><o:p></o:p><=
/span></p><p class=3D"MsoNormal" style=3D"margin-left:54.0pt;vertical-align:midd=
le"><span lang=3D"EN-US" style=3D"color:black"><o:p>&nbsp;</o:p></span></p><p cl=
ass=3D"MsoNormal" style=3D"margin-left:27.0pt;text-indent:-18.0pt;vertical-align=
:middle"><span lang=3D"EN-US" style=3D"color:black">3.</span><span lang=3D"EN-US" =
style=3D"font-size: 7pt; font-family: 'Times New Roman', serif; color: black;"=
>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">2.2: <o:p></o:p></span></p><p=
 class=3D"MsoNormal" style=3D"margin-left:54.0pt;text-indent:-18.0pt;vertical-al=
ign:middle"><span lang=3D"EN-US" style=3D"color:black">a.</span><span lang=3D"EN-U=
S" style=3D"font-size: 7pt; font-family: 'Times New Roman', serif; color: blac=
k;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">Some sentences could be made =
shorter/broken-up to improve readability of this section.</span></p></div></=
div></div></span><div style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans=
-serif; font-size: 14px;"><br></div><div style=3D"color: rgb(0, 0, 0); font-fa=
mily: Calibri, sans-serif; font-size: 14px;">NB&gt; Updated.</div><div style=
=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-size: 14px;"><=
br></div><span id=3D"OLK_SRC_BODY_SECTION" style=3D"color: rgb(0, 0, 0); font-fa=
mily: Calibri, sans-serif; font-size: 14px;"><div><div lang=3D"ZH-CN" link=3D"#0=
563C1" vlink=3D"#954F72"><div class=3D"WordSection1"><p class=3D"MsoNormal" style=3D=
"margin-left:54.0pt;text-indent:-18.0pt;vertical-align:middle"><span lang=3D"E=
N-US" style=3D"color:black"><o:p></o:p></span></p><p class=3D"MsoNormal" style=3D"=
margin-left:54.0pt;text-indent:-18.0pt;vertical-align:middle"><span lang=3D"EN=
-US" style=3D"color:black">b.</span><span lang=3D"EN-US" style=3D"font-size: 7pt; =
font-family: 'Times New Roman', serif; color: black;">&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">Interface_list and router-id:=
 For a functioning routing-instance, can't think of a routing-instance witho=
ut either of those defined. So, either the optionality aspect needs to be ch=
anged to "required" or specify
 how a routing-instance would work with either missing.</span></p></div></d=
iv></div></span><div style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-=
serif; font-size: 14px;"><br></div><div style=3D"color: rgb(0, 0, 0); font-fam=
ily: Calibri, sans-serif; font-size: 14px;">NB&gt; XXX</div><span id=3D"OLK_SR=
C_BODY_SECTION" style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif=
; font-size: 14px;"><div><div lang=3D"ZH-CN" link=3D"#0563C1" vlink=3D"#954F72"><d=
iv class=3D"WordSection1"><p class=3D"MsoNormal" style=3D"margin-left:54.0pt;text-=
indent:-18.0pt;vertical-align:middle"><span lang=3D"EN-US" style=3D"color:black"=
><o:p></o:p></span></p><p class=3D"MsoNormal" style=3D"margin-left:54.0pt;text-i=
ndent:-18.0pt;vertical-align:middle"><span lang=3D"EN-US" style=3D"color:black">=
c.</span><span lang=3D"EN-US" style=3D"font-size: 7pt; font-family: 'Times New R=
oman', serif; color: black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">Interface-list: per-interface=
 parameters could also be listed (since the interface-list is called out in =
a RIB model): address, families, MTU, extensibility-consideration-for-other-=
interface-attributes</span></p></div></div></div></span><div style=3D"color: r=
gb(0, 0, 0); font-family: Calibri, sans-serif; font-size: 14px;"><br></div><=
div style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-size:=
 14px;">NB&gt; Could be. However it was not deemed necessary.</div><span id=3D=
"OLK_SRC_BODY_SECTION" style=3D"color: rgb(0, 0, 0); font-family: Calibri, san=
s-serif; font-size: 14px;"><div><div lang=3D"ZH-CN" link=3D"#0563C1" vlink=3D"#954=
F72"><div class=3D"WordSection1"><p class=3D"MsoNormal" style=3D"margin-left:54.0p=
t;text-indent:-18.0pt;vertical-align:middle"><span style=3D"font-family: Calib=
ri, sans-serif; font-size: 11pt;">&nbsp;</span></p><p class=3D"MsoNormal" styl=
e=3D"margin-left:27.0pt;text-indent:-18.0pt;vertical-align:middle"><span lang=3D=
"EN-US" style=3D"color:black">4.</span><span lang=3D"EN-US" style=3D"font-size: 7p=
t; font-family: 'Times New Roman', serif; color: black;">&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">2.3:<o:p></o:p></span></p><p =
class=3D"MsoNormal" style=3D"margin-left:54.0pt;text-indent:-18.0pt;vertical-ali=
gn:middle"><span lang=3D"EN-US" style=3D"color:black">a.</span><span lang=3D"EN-US=
" style=3D"font-size: 7pt; font-family: 'Times New Roman', serif; color: black=
;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">ROUTE_PREFERENCE: The text is=
 mixing-up route-preference with "route-metric". Administrative-distance (th=
e route metric) is the IGP cost of a route.</span></p></div></div></div></sp=
an><div style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-s=
ize: 14px;"><br></div><div style=3D"color: rgb(0, 0, 0); font-family: Calibri,=
 sans-serif; font-size: 14px;">NB&gt; No it&#8217;s not. At least one vendor=
 (Juniper) uses route preference and admin distance inter-changeably. &nbsp;=
See</div><div style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif; =
font-size: 14px;"><a href=3D"http://www.juniper.net/documentation/en_US/junos1=
5.1/topics/reference/general/routing-protocols-default-route-preference-valu=
es.html"></a><a href=3D"http://www.juniper.net/documentation/en_US/junos15.1/t=
opics/reference/general/routing-protocols-default-route-preference-values.ht=
ml"></a><a href=3D"http://www.juniper.net/documentation/en_US/junos15.1/topics=
/reference/general/routing-protocols-default-route-preference-values.html"><=
/a><a href=3D"http://www.juniper.net/documentation/en_US/junos15.1/topics/refe=
rence/general/routing-protocols-default-route-preference-values.html"></a>ht=
tp://www.juniper.net/documentation/en_US/junos15.1/topics/reference/general/=
routing-protocols-default-route-preference-values.html</div><span id=3D"OLK_SR=
C_BODY_SECTION" style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif=
; font-size: 14px;"><div><div lang=3D"ZH-CN" link=3D"#0563C1" vlink=3D"#954F72"><d=
iv class=3D"WordSection1"><p class=3D"MsoNormal" style=3D"margin-left:54.0pt;text-=
indent:-18.0pt;vertical-align:middle"><span lang=3D"EN-US" style=3D"color:black"=
><o:p></o:p></span></p><p style=3D"mso-margin-top-alt:0cm;margin-right:0cm;mar=
gin-bottom:0cm;margin-left:54.0pt;margin-bottom:.0001pt"><span lang=3D"EN-US" =
style=3D"font-size: 11pt; font-family: Calibri, sans-serif; color: black;">Bot=
h route_preference and route-metric would be attributes of the route.</span>=
</p></div></div></div></span><div style=3D"color: rgb(0, 0, 0); font-family: C=
alibri, sans-serif; font-size: 14px;"><br></div><div style=3D"color: rgb(0, 0,=
 0); font-family: Calibri, sans-serif; font-size: 14px;">NB&gt; Note that th=
ere is only 1 value that makes sense when the network device is being progra=
mmed by a controller.</div><span id=3D"OLK_SRC_BODY_SECTION" style=3D"color: rgb=
(0, 0, 0); font-family: Calibri, sans-serif; font-size: 14px;"><div><div lan=
g=3D"ZH-CN" link=3D"#0563C1" vlink=3D"#954F72"><div class=3D"WordSection1"><p style=3D=
"mso-margin-top-alt:0cm;margin-right:0cm;margin-bottom:0cm;margin-left:54.0p=
t;margin-bottom:.0001pt"><span lang=3D"EN-US" style=3D"font-size: 11pt; font-fam=
ily: Calibri, sans-serif; color: black;"><o:p></o:p></span></p><p class=3D"Mso=
Normal" style=3D"margin-left:54.0pt;text-indent:-18.0pt;vertical-align:middle"=
><span lang=3D"EN-US" style=3D"color:black">b.</span><span lang=3D"EN-US" style=3D"f=
ont-size: 7pt; font-family: 'Times New Roman', serif; color: black;">&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">An additional attribute that =
should be included is "installing protocol". That would require defining a l=
ist of protocols that may install a route.</span></p></div></div></div></spa=
n><div style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-si=
ze: 14px;"><br></div><div style=3D"color: rgb(0, 0, 0); font-family: Calibri, =
sans-serif; font-size: 14px;">NB&gt; "Installing protocol" is something that=
 the controller needs to worry about. A network device should not care about=
 the N different protocols running on the controller.&nbsp;</div><div style=3D=
"color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-size: 14px;"><s=
pan style=3D"font-size: 11pt;">&nbsp;</span></div><span id=3D"OLK_SRC_BODY_SECTI=
ON" style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-size:=
 14px;"><div><div lang=3D"ZH-CN" link=3D"#0563C1" vlink=3D"#954F72"><div class=3D"Wo=
rdSection1"><p class=3D"MsoNormal" style=3D"margin-left:27.0pt;text-indent:-18.0=
pt;vertical-align:middle"><span lang=3D"EN-US" style=3D"color:black">5.</span><s=
pan lang=3D"EN-US" style=3D"font-size: 7pt; font-family: 'Times New Roman', seri=
f; color: black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">2.4:<o:p></o:p></span></p><p =
class=3D"MsoNormal" style=3D"margin-left:54.0pt;text-indent:-18.0pt;vertical-ali=
gn:middle"><span lang=3D"EN-US" style=3D"color:black">a.</span><span lang=3D"EN-US=
" style=3D"font-size: 7pt; font-family: 'Times New Roman', serif; color: black=
;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">Second paragraph could use re=
wording to enhance clarity. Specifically:<o:p></o:p></span></p><p class=3D"Mso=
Normal" style=3D"margin-left:81.0pt;text-indent:-18.0pt;vertical-align:middle"=
><span lang=3D"EN-US" style=3D"font-size: 7pt; font-family: 'Times New Roman', s=
erif; color: black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
sp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">i.</span><span lang=3D"EN-US" s=
tyle=3D"font-size: 7pt; font-family: 'Times New Roman', serif; color: black;">=
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">Need to mention about "(appea=
ring to be) directly connected IP" to distinguish between:<o:p></o:p></span>=
</p><p class=3D"MsoNormal" style=3D"margin-left:108.0pt;text-indent:-18.0pt;vert=
ical-align:middle"><span lang=3D"EN-US" style=3D"color:black">1.</span><span lan=
g=3D"EN-US" style=3D"font-size: 7pt; font-family: 'Times New Roman', serif; colo=
r: black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">Nexthops that don't need to b=
e resolved (by other RIB events) to be installable</span></p></div></div></d=
iv></span><div style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif;=
 font-size: 14px;"><br></div><div style=3D"color: rgb(0, 0, 0); font-family: C=
alibri, sans-serif; font-size: 14px;">NB&gt; As per the draft&#8230;"A resol=
ved nexthop has adequate information to send the outgoing packet to the dest=
ination&#8221;. &nbsp;So if the controller provides all the information, no =
further resolution is necessary.</div><div style=3D"color: rgb(0, 0, 0); font-=
family: Calibri, sans-serif; font-size: 14px;"><br></div><span id=3D"OLK_SRC_B=
ODY_SECTION" style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif; f=
ont-size: 14px;"><div><div lang=3D"ZH-CN" link=3D"#0563C1" vlink=3D"#954F72"><div =
class=3D"WordSection1"><p class=3D"MsoNormal" style=3D"margin-left:108.0pt;text-in=
dent:-18.0pt;vertical-align:middle"><span lang=3D"EN-US" style=3D"color:black"><=
o:p></o:p></span></p><p class=3D"MsoNormal" style=3D"margin-left:108.0pt;text-in=
dent:-18.0pt;vertical-align:middle"><span lang=3D"EN-US" style=3D"color:black">2=
.</span><span lang=3D"EN-US" style=3D"font-size: 7pt; font-family: 'Times New Ro=
man', serif; color: black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">Nexthops that need to be reso=
lved (by other RIB events/properties) to be installable:<o:p></o:p></span></=
p><p class=3D"MsoNormal" style=3D"margin-left:135.0pt;text-indent:-18.0pt;vertic=
al-align:middle"><span lang=3D"EN-US" style=3D"color:black">a.</span><span lang=3D=
"EN-US" style=3D"font-size: 7pt; font-family: 'Times New Roman', serif; color:=
 black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">Those that are currently reso=
lved<o:p></o:p></span></p><p class=3D"MsoNormal" style=3D"margin-left:135.0pt;te=
xt-indent:-18.0pt;vertical-align:middle"><span lang=3D"EN-US" style=3D"color:bla=
ck">b.</span><span lang=3D"EN-US" style=3D"font-size: 7pt; font-family: 'Times N=
ew Roman', serif; color: black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">Those that are currently not-=
resolved</span></p></div></div></div></span><div style=3D"color: rgb(0, 0, 0);=
 font-family: Calibri, sans-serif; font-size: 14px;"><br></div><div style=3D"c=
olor: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-size: 14px;">NB&g=
t; Please provide clarifying/re-wording text&#8230;</div><div style=3D"color: =
rgb(0, 0, 0); font-family: Calibri, sans-serif; font-size: 14px;">At a macro=
 level, this document is not supposed to be a treatise on the design of next=
hops.</div><div style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif=
; font-size: 14px;"><br></div><span id=3D"OLK_SRC_BODY_SECTION" style=3D"color: =
rgb(0, 0, 0); font-family: Calibri, sans-serif; font-size: 14px;"><div><div =
lang=3D"ZH-CN" link=3D"#0563C1" vlink=3D"#954F72"><div class=3D"WordSection1"><p cla=
ss=3D"MsoNormal" style=3D"margin-left:135.0pt;text-indent:-18.0pt;vertical-align=
:middle"><span lang=3D"EN-US" style=3D"color:black"><o:p></o:p></span></p><p cla=
ss=3D"MsoNormal" style=3D"margin-left:54.0pt;text-indent:-18.0pt;vertical-align:=
middle"><span lang=3D"EN-US" style=3D"color:black">b.</span><span lang=3D"EN-US" s=
tyle=3D"font-size: 7pt; font-family: 'Times New Roman', serif; color: black;">=
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">Next-hop property should also=
 include IP of (appearing to be) locally-connected device for which to ARP</=
span></p></div></div></div></span><div style=3D"color: rgb(0, 0, 0); font-fami=
ly: Calibri, sans-serif; font-size: 14px;"><br></div><div style=3D"color: rgb(=
0, 0, 0); font-family: Calibri, sans-serif; font-size: 14px;">NB&gt; That is=
 already specified in the grammar</div><div style=3D"color: rgb(0, 0, 0); font=
-family: Calibri, sans-serif; font-size: 14px;"><div>&lt;EGRESS_INTERFACE&gt=
; (&lt;ipv4-address&gt; | &lt;ipv6-address&gt;)</div></div><span id=3D"OLK_SRC=
_BODY_SECTION" style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif;=
 font-size: 14px;"><div><div lang=3D"ZH-CN" link=3D"#0563C1" vlink=3D"#954F72"><di=
v class=3D"WordSection1"><p class=3D"MsoNormal" style=3D"margin-left:54.0pt;text-i=
ndent:-18.0pt;vertical-align:middle"><span lang=3D"EN-US" style=3D"color:black">=
<o:p></o:p></span></p><p class=3D"MsoNormal" style=3D"margin-left:54.0pt;vertica=
l-align:middle"><span lang=3D"EN-US" style=3D"color:black"><o:p>&nbsp;</o:p></sp=
an></p></div></div></div></span><div style=3D"color: rgb(0, 0, 0); font-family=
: Calibri, sans-serif; font-size: 14px;"><br></div><span id=3D"OLK_SRC_BODY_SE=
CTION" style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-si=
ze: 14px;"><div><div lang=3D"ZH-CN" link=3D"#0563C1" vlink=3D"#954F72"><div class=3D=
"WordSection1"><p class=3D"MsoNormal" style=3D"margin-left:27.0pt;text-indent:-1=
8.0pt;vertical-align:middle"><span lang=3D"EN-US" style=3D"color:black">6.</span=
><span lang=3D"EN-US" style=3D"font-size: 7pt; font-family: 'Times New Roman', s=
erif; color: black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">2.4.1:<o:p></o:p></span></p><=
p class=3D"MsoNormal" style=3D"margin-left:54.0pt;text-indent:-18.0pt;vertical-a=
lign:middle"><span lang=3D"EN-US" style=3D"color:black">a.</span><span lang=3D"EN-=
US" style=3D"font-size: 7pt; font-family: 'Times New Roman', serif; color: bla=
ck;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">Last paragraph: "preceded by"=
 would be more accurate than "followed by"</span></p></div></div></div></spa=
n><div style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-si=
ze: 14px;"><br></div><div style=3D"color: rgb(0, 0, 0); font-family: Calibri, =
sans-serif; font-size: 14px;">NB&gt; Hmm&#8230;.I still think followed by is=
 correct. If you want I can change it to &#8220;encapsulated by&#8221;.</div=
><div style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-siz=
e: 14px;"><br></div><span id=3D"OLK_SRC_BODY_SECTION" style=3D"color: rgb(0, 0, =
0); font-family: Calibri, sans-serif; font-size: 14px;"><div><div lang=3D"ZH-C=
N" link=3D"#0563C1" vlink=3D"#954F72"><div class=3D"WordSection1"><p class=3D"MsoNor=
mal" style=3D"margin-left:54.0pt;text-indent:-18.0pt;vertical-align:middle"><s=
pan style=3D"font-family: Calibri, sans-serif; font-size: 11pt;">&nbsp;</span>=
</p><p class=3D"MsoNormal" style=3D"margin-left:27.0pt;text-indent:-18.0pt;verti=
cal-align:middle"><span lang=3D"EN-US" style=3D"color:black">7.</span><span lang=
=3D"EN-US" style=3D"font-size: 7pt; font-family: 'Times New Roman', serif; color=
: black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">2.4.3:<o:p></o:p></span></p><=
p class=3D"MsoNormal" style=3D"margin-left:54.0pt;text-indent:-18.0pt;vertical-a=
lign:middle"><span lang=3D"EN-US" style=3D"color:black">a.</span><span lang=3D"EN-=
US" style=3D"font-size: 7pt; font-family: 'Times New Roman', serif; color: bla=
ck;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">Under "tunnel encap": The fol=
lowing text
<o:p></o:p></span></p><p style=3D"mso-margin-top-alt:0cm;margin-right:0cm;mar=
gin-bottom:0cm;margin-left:54.0pt;margin-bottom:.0001pt"><span lang=3D"EN-US" =
style=3D"font-size: 11pt; font-family: Calibri, sans-serif; color: black;">"<o=
:p></o:p></span></p><p style=3D"mso-margin-top-alt:0cm;margin-right:0cm;margin=
-bottom:0cm;margin-left:54.0pt;margin-bottom:.0001pt"><span lang=3D"EN-US" sty=
le=3D"font-size: 11pt; font-family: Calibri, sans-serif; color: black;">An opt=
ional<o:p></o:p></span></p><p style=3D"mso-margin-top-alt:0cm;margin-right:0cm=
;margin-bottom:0cm;margin-left:54.0pt;margin-bottom:.0001pt"><span lang=3D"EN-=
US" style=3D"font-size: 11pt; font-family: Calibri, sans-serif; color: black;"=
>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; egress interface can be chained to the tunne=
l encap to indicate<o:p></o:p></span></p><p style=3D"mso-margin-top-alt:0cm;ma=
rgin-right:0cm;margin-bottom:0cm;margin-left:54.0pt;margin-bottom:.0001pt"><=
span lang=3D"EN-US" style=3D"font-size: 11pt; font-family: Calibri, sans-serif; =
color: black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; which interface to send the pa=
cket out on.&nbsp; The egress interface<o:p></o:p></span></p><p style=3D"mso-m=
argin-top-alt:0cm;margin-right:0cm;margin-bottom:0cm;margin-left:54.0pt;marg=
in-bottom:.0001pt"><span lang=3D"EN-US" style=3D"font-size: 11pt; font-family: C=
alibri, sans-serif; color: black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; is useful =
when the network device contains Ethernet interfaces and<o:p></o:p></span></=
p><p style=3D"mso-margin-top-alt:0cm;margin-right:0cm;margin-bottom:0cm;margin=
-left:54.0pt;margin-bottom:.0001pt"><span lang=3D"EN-US" style=3D"font-size: 11p=
t; font-family: Calibri, sans-serif; color: black;">&nbsp;&nbsp;&nbsp;&nbsp;=
&nbsp; one needs to perform address resolution for the IP packet."
<o:p></o:p></span></p><p style=3D"mso-margin-top-alt:0cm;margin-right:0cm;mar=
gin-bottom:0cm;margin-left:54.0pt;margin-bottom:.0001pt"><span lang=3D"EN-US" =
style=3D"font-size: 11pt; font-family: Calibri, sans-serif; color: black;">app=
ears a bit incorrect.<o:p></o:p></span></p><p style=3D"mso-margin-top-alt:0cm;=
margin-right:0cm;margin-bottom:0cm;margin-left:54.0pt;margin-bottom:.0001pt"=
><span lang=3D"EN-US" style=3D"font-size: 11pt; font-family: Calibri, sans-serif=
; color: black;">If one wishes to do resolution for the tunnel-remote-dst th=
en specifying an interface serves no purpose. Either that address does not n=
eed resolution and this specified
 interface is a p2p interface or there is a need for resolution (without ne=
eding to specify an interface-name). Can't be both.<o:p></o:p></span></p><p =
style=3D"mso-margin-top-alt:0cm;margin-right:0cm;margin-bottom:0cm;margin-left=
:27.0pt;margin-bottom:.0001pt"><span lang=3D"EN-US" style=3D"font-size: 11pt; fo=
nt-family: Calibri, sans-serif; color: black;">&nbsp;</span></p></div></div>=
</div></span><div style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-ser=
if; font-size: 14px;">NB&gt; Probably some confusion here. If you attach an =
IP encap to a packet, then before you send it out as an Ethernet frame, you =
need to fill the Ethernet header. For that you need the address resolution.<=
/div><div style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font=
-size: 14px;"><br></div><span id=3D"OLK_SRC_BODY_SECTION" style=3D"color: rgb(0,=
 0, 0); font-family: Calibri, sans-serif; font-size: 14px;"><div lang=3D"ZH-CN=
" link=3D"#0563C1" vlink=3D"#954F72"><div class=3D"WordSection1"><p style=3D"mso-mar=
gin-top-alt:0cm;margin-right:0cm;margin-bottom:0cm;margin-left:27.0pt;margin=
-bottom:.0001pt"><span lang=3D"EN-US" style=3D"font-size: 11pt; font-family: Cal=
ibri, sans-serif; color: black;"><o:p></o:p></span></p><p class=3D"MsoNormal" =
style=3D"margin-left:27.0pt;text-indent:-18.0pt;vertical-align:middle"><span l=
ang=3D"EN-US" style=3D"color:black">8.</span><span lang=3D"EN-US" style=3D"font-size=
: 7pt; font-family: 'Times New Roman', serif; color: black;">&nbsp;&nbsp;&nb=
sp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">Sections 4 &amp; 5 can be mer=
ged. What is the point of having a separate section 5 when it is not really =
saying anything new beyond what text exists in section 4.</span></p></div></=
div></span><div style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif=
; font-size: 14px;"><br></div><div style=3D"color: rgb(0, 0, 0); font-family: =
Calibri, sans-serif; font-size: 14px;"><br></div><span id=3D"OLK_SRC_BODY_SECT=
ION"><div lang=3D"ZH-CN" link=3D"#0563C1" vlink=3D"#954F72"><div class=3D"WordSectio=
n1"><p class=3D"MsoNormal" style=3D"margin-left: 27pt; text-indent: -18pt; verti=
cal-align: middle;"><font face=3D"Calibri,sans-serif" size=3D"3">NB&gt; Section =
4 talks about&nbsp;</font><font face=3D"Calibri,sans-serif">&#8220;</font><fon=
t face=3D"Calibri,sans-serif" size=3D"3">return codes&#8221; on commands sent to=
 a network device. Section 5 talks about asynchronous messages sent by the n=
etwork device (without a corresponding incoming command). That is the differ=
ence.</font></p></div></div></span><span id=3D"OLK_SRC_BODY_SECTION" style=3D"co=
lor: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-size: 14px;"><div>=
<div lang=3D"ZH-CN" link=3D"#0563C1" vlink=3D"#954F72"><div class=3D"WordSection1"><=
p style=3D"mso-margin-top-alt:0cm;margin-right:0cm;margin-bottom:0cm;margin-le=
ft:27.0pt;margin-bottom:.0001pt"><span lang=3D"EN-US" style=3D"font-size: 11pt; =
font-family: Calibri, sans-serif; color: black;">&nbsp;<o:p></o:p></span></p=
><p class=3D"MsoNormal" style=3D"margin-left:27.0pt;text-indent:-18.0pt;vertical=
-align:middle"><span lang=3D"EN-US" style=3D"color:black">9.</span><span lang=3D"E=
N-US" style=3D"font-size: 7pt; font-family: 'Times New Roman', serif; color: b=
lack;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">Section 6:<o:p></o:p></span><=
/p><p class=3D"MsoNormal" style=3D"margin-left:54.0pt;text-indent:-18.0pt;vertic=
al-align:middle"><span lang=3D"EN-US" style=3D"color:black">a.</span><span lang=3D=
"EN-US" style=3D"font-size: 7pt; font-family: 'Times New Roman', serif; color:=
 black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">Not repeating remarks made ab=
out specific attributes (listed above) for each item in the BNF. Eg. Route-m=
etric/preference related remark made above about 2.3.</span></p></div></div>=
</div></span><div><br></div><div>NB&gt; Didn&#8217;t understand this comment=
. Can you rephrase.</div><span id=3D"OLK_SRC_BODY_SECTION" style=3D"color: rgb(0=
, 0, 0); font-family: Calibri, sans-serif; font-size: 14px;"><div><div lang=3D=
"ZH-CN" link=3D"#0563C1" vlink=3D"#954F72"><div class=3D"WordSection1"><p class=3D"M=
soNormal" style=3D"margin-left:54.0pt;text-indent:-18.0pt;vertical-align:middl=
e"><span lang=3D"EN-US" style=3D"color:black"><o:p></o:p></span></p><p style=3D"ms=
o-margin-top-alt:0cm;margin-right:0cm;margin-bottom:0cm;margin-left:54.0pt;m=
argin-bottom:.0001pt"><span lang=3D"EN-US" style=3D"font-size: 11pt; font-family=
: Calibri, sans-serif; color: black;">&nbsp;<o:p></o:p></span></p><p class=3D"=
MsoNormal" style=3D"margin-left:54.0pt;text-indent:-18.0pt;vertical-align:midd=
le"><span lang=3D"EN-US" style=3D"color:black">b.</span><span lang=3D"EN-US" style=
=3D"font-size: 7pt; font-family: 'Times New Roman', serif; color: black;">&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">In-label is not logically a n=
exthop attribute. It is infact a route. This should be fixed.<o:p></o:p></sp=
an></p><p style=3D"mso-margin-top-alt:0cm;margin-right:0cm;margin-bottom:0cm;m=
argin-left:54.0pt;margin-bottom:.0001pt"><span lang=3D"EN-US" style=3D"font-size=
: 11pt; font-family: Calibri, sans-serif; color: black;">&nbsp; &lt;mpls-lab=
el-operation&gt; ::=3D (&lt;MPLS_PUSH&gt; &lt;MPLS_LABEL&gt; [&lt;S_BIT&gt;]<o=
:p></o:p></span></p><p style=3D"mso-margin-top-alt:0cm;margin-right:0cm;margin=
-bottom:0cm;margin-left:54.0pt;margin-bottom:.0001pt"><span lang=3D"EN-US" sty=
le=3D"font-size: 11pt; font-family: Calibri, sans-serif; color: black;">&nbsp;=
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=
&nbsp;&nbsp; [&lt;TOS_VALUE&gt;] [&lt;TTL_VALUE&gt;]) |<o:p></o:p></span></p=
><p style=3D"mso-margin-top-alt:0cm;margin-right:0cm;margin-bottom:0cm;margin-=
left:54.0pt;margin-bottom:.0001pt"><span lang=3D"EN-US" style=3D"font-size: 11pt=
; font-family: Calibri, sans-serif; color: black;">&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (&lt;MPL=
S_SWAP&gt; &lt;IN_LABEL&gt; &lt;OUT_LABEL&gt;<o:p></o:p></span></p><p style=3D=
"mso-margin-top-alt:0cm;margin-right:0cm;margin-bottom:0cm;margin-left:54.0p=
t;margin-bottom:.0001pt"><span lang=3D"EN-US" style=3D"font-size: 11pt; font-fam=
ily: Calibri, sans-serif; color: black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&lt;TTL_ACTION&gt;])<=
/span></p></div></div></div></span><div><br></div><div>NB&gt; &nbsp;The gram=
mar already has content for MPLS style route lookups.</div><div><br></div><p=
 style=3D"margin: 0px; font-family: Menlo; color: rgb(192, 52, 30); background=
-color: rgb(248, 253, 196);"><font size=3D"3">&lt;match&gt; ::=3D &lt;IPV4&gt; &=
lt;ipv4-route&gt; | &lt;IPV6&gt; &lt;ipv6-route&gt; |</font></p>
<p style=3D"margin: 0px; font-family: Menlo; color: rgb(192, 52, 30); backgro=
und-color: rgb(248, 253, 196);"><font size=3D"3">&nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp; &nbsp; &lt;MPLS&gt; &lt;MPLS_LABEL&gt; | &lt;IEEE_MAC&gt; &lt;MAC_ADDR=
ESS&gt; |</font></p>
<p style=3D"margin: 0px; font-family: Menlo; color: rgb(192, 52, 30); backgro=
und-color: rgb(248, 253, 196);"><font size=3D"3">&nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp; &nbsp; &lt;INTERFACE&gt; &lt;INTERFACE_IDENTIFIER&gt;</font></p><div><=
br></div><div>&lt;mpls-label-operation&gt; is a type of &lt;tunnel-encap&gt;=
, which in turn is a type of &lt;nexthop&gt;. The &lt;mpls-label-operation&g=
t; grammar allows one to perform MPLS SWAP operations on a given packet. So =
you would first &lt;match&gt; the MPLS label and the nexthop operation for t=
he route would be a SWAP and the grammar above specifies that.</div><span id=
=3D"OLK_SRC_BODY_SECTION" style=3D"color: rgb(0, 0, 0); font-family: Calibri, sa=
ns-serif; font-size: 14px;"><div><div lang=3D"ZH-CN" link=3D"#0563C1" vlink=3D"#95=
4F72"><div class=3D"WordSection1"><p style=3D"mso-margin-top-alt:0cm;margin-righ=
t:0cm;margin-bottom:0cm;margin-left:54.0pt;margin-bottom:.0001pt"><span lang=
=3D"EN-US" style=3D"font-size: 11pt; font-family: Calibri, sans-serif; color: bl=
ack;"><o:p></o:p></span></p><p class=3D"MsoNormal" style=3D"margin-left:54.0pt;t=
ext-indent:-18.0pt;vertical-align:middle"><span lang=3D"EN-US" style=3D"color:bl=
ack">c.</span><span lang=3D"EN-US" style=3D"font-size: 7pt; font-family: 'Times =
New Roman', serif; color: black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">VXLAN headers needs to have a=
 way to specify src/dst MAC in inner header, since it is possible to use VXL=
AN as a general-purpose encapsulation without L2-learning semantics.</span><=
/p></div></div></div></span><div><br></div><div>NB&gt; We discussed this off=
line a while back. The end discussion was that we did not want to provide wa=
ys to completely specify L2 frames in the context of RIB info model. Note th=
at the current grammar does not allow you to build a complete ethernet heade=
r.</div><div><br></div><span id=3D"OLK_SRC_BODY_SECTION" style=3D"color: rgb(0, =
0, 0); font-family: Calibri, sans-serif; font-size: 14px;"><div><div lang=3D"Z=
H-CN" link=3D"#0563C1" vlink=3D"#954F72"><div class=3D"WordSection1"><p class=3D"Mso=
Normal" style=3D"margin-left:27.0pt;text-indent:-18.0pt;vertical-align:middle"=
><span lang=3D"EN-US" style=3D"color:black">10.</span><span lang=3D"EN-US" style=3D"=
font-size: 7pt; font-family: 'Times New Roman', serif; color: black;">&nbsp;=
&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">Section 6 describes the RIB g=
rammar. The nexthop grammar is a part of that. However, some of that sub-gra=
mmar appears under section 7.</span></p></div></div></div></span><div><br></=
div><div>NB&gt; Section 7 are examples of using the RIB grammar. Sure it cou=
ld be part of Section 6. It won&#8217;t make a meaningful difference either =
ways.</div><div><br></div><span id=3D"OLK_SRC_BODY_SECTION" style=3D"color: rgb(=
0, 0, 0); font-family: Calibri, sans-serif; font-size: 14px;"><div><div lang=
=3D"ZH-CN" link=3D"#0563C1" vlink=3D"#954F72"><div class=3D"WordSection1"><p class=3D"=
MsoNormal" style=3D"margin-left:27.0pt;text-indent:-18.0pt;vertical-align:midd=
le"><span lang=3D"EN-US" style=3D"color:black">11.</span><span lang=3D"EN-US" styl=
e=3D"font-size: 7pt; font-family: 'Times New Roman', serif; color: black;">&nb=
sp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">Section 7 "Using the RIB gram=
mar" starts out by explaining how the complex nexthops maybe used. However, =
it ends up being a listing of the nexthop sub-grammar which should really ha=
ve been listed in section 6 along
 with the RIB grammar.<o:p></o:p></span></p><p style=3D"mso-margin-top-alt:0c=
m;margin-right:0cm;margin-bottom:0cm;margin-left:27.0pt;margin-bottom:.0001p=
t"><span lang=3D"EN-US" style=3D"font-size: 11pt; font-family: Calibri, sans-ser=
if; color: black;">I'd suggest either take the entirety of the next-hop gram=
mar listing to the section 6, or break section 7 so that the next-hop gramma=
r is listed in section 7 &amp; the "using
 the rib" grammar is a purely text only description of Rib/NH grammar maybe=
 used.</span></p></div></div></div></span><div><br></div><div>NB&gt; Section=
 7 is targeted towards how developers would use the grammar to write network=
 applications. So they should all stay together. For instance, Section 7.3 h=
as all text, but it refers to a &#8220;programming example&#8221; in Section=
 7.2.2. So moving Section 7.3 up would do more harm than good.</div><span id=
=3D"OLK_SRC_BODY_SECTION" style=3D"color: rgb(0, 0, 0); font-family: Calibri, sa=
ns-serif; font-size: 14px;"><div><div lang=3D"ZH-CN" link=3D"#0563C1" vlink=3D"#95=
4F72"><div class=3D"WordSection1"><p style=3D"mso-margin-top-alt:0cm;margin-righ=
t:0cm;margin-bottom:0cm;margin-left:27.0pt;margin-bottom:.0001pt"><span styl=
e=3D"font-family: Calibri, sans-serif; font-size: 11pt;">&nbsp;</span></p><p c=
lass=3D"MsoNormal" style=3D"margin-left:27.0pt;text-indent:-18.0pt;vertical-alig=
n:middle"><span lang=3D"EN-US" style=3D"color:black">12.</span><span lang=3D"EN-US=
" style=3D"font-size: 7pt; font-family: 'Times New Roman', serif; color: black=
;">&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">Syntax for &lt;nexthop-replic=
ate&gt;&nbsp; needs to be reconciled beween section 7.2.3 and section 6 wher=
e
<o:p></o:p></span></p><p style=3D"mso-margin-top-alt:0cm;margin-right:0cm;mar=
gin-bottom:0cm;margin-left:27.0pt;margin-bottom:.0001pt"><span lang=3D"EN-US" =
style=3D"font-size: 11pt; font-family: Calibri, sans-serif; color: black;">the=
re is an syntax mismatch,<o:p></o:p></span></p><p style=3D"mso-margin-top-alt:=
0cm;margin-right:0cm;margin-bottom:0cm;margin-left:27.0pt;margin-bottom:.000=
1pt"><span lang=3D"EN-US" style=3D"font-size: 11pt; font-family: Calibri, sans-s=
erif; color: black;">Doesn&#8217;t section 6 need to say:
<o:p></o:p></span></p><p style=3D"mso-margin-top-alt:0cm;margin-right:0cm;mar=
gin-bottom:0cm;margin-left:27.0pt;margin-bottom:.0001pt"><span lang=3D"EN-US" =
style=3D"font-size: 11pt; font-family: Calibri, sans-serif; color: black;">&lt=
;nexthop-replicate&gt; ::=3D &lt;NEXTHOP_REPLICATE&gt; &lt;nexthop&gt; &lt;nex=
thop&gt; ...<o:p></o:p></span></p><p style=3D"margin:0cm;margin-bottom:.0001pt=
"><span lang=3D"EN-US" style=3D"font-size: 11pt; font-family: Calibri, sans-seri=
f; color: black;">&nbsp;</span></p></div></div></div></span><div>NB&gt; Vers=
ion &#8211;06 of the draft had what you are asking for. See&nbsp;</div><a hr=
ef=3D"https://tools.ietf.org/html/draft-ietf-i2rs-rib-info-model-06#section-6"=
></a><div><a href=3D"https://tools.ietf.org/html/draft-ietf-i2rs-rib-info-mode=
l-06#section-6"></a><a href=3D"https://tools.ietf.org/html/draft-ietf-i2rs-rib=
-info-model-06#section-6">https://tools.ietf.org/html/draft-ietf-i2rs-rib-in=
fo-model-06#section-6</a></div><div><br></div><div>We were specifically aske=
d to remove the keyword &lt;NEXTHOP_REPLICATE&gt; because it was not correct=
 use of rBNF. The data-model can have such things, but not the info model. F=
olks were ok with keeping the examples (Section 7) as is.</div><div><br></di=
v><div>Thanks</div><div>Nitin</div><style><!--
/* Font Definitions */
@font-face
	{font-family:SimSun;
	panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
	{font-family:Tahoma;
	panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
	{font-family:SimSun;
	panose-1:2 1 6 0 3 1 1 1 1 1;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0cm;
	margin-bottom:.0001pt;
	font-size:11.0pt;
	font-family:"Calibri","sans-serif";}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:#0563C1;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:#954F72;
	text-decoration:underline;}
p
	{mso-style-priority:99;
	mso-margin-top-alt:auto;
	margin-right:0cm;
	mso-margin-bottom-alt:auto;
	margin-left:0cm;
	font-size:12.0pt;
	font-family:"Times New Roman","serif";}
span.EmailStyle18
	{mso-style-type:personal;
	font-family:"Calibri","sans-serif";
	color:windowtext;}
span.EmailStyle19
	{mso-style-type:personal-reply;
	font-family:"Calibri","sans-serif";
	color:#1F497D;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-size:10.0pt;}
@page WordSection1
	{size:612.0pt 792.0pt;
	margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
	{page:WordSection1;}
--></style></body></html>

--B_3549371131_7796566--



From nobody Tue Jun 21 16:28:56 2016
Return-Path: <nitin_bahadur@yahoo.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 D573412D83F for <i2rs@ietfa.amsl.com>; Tue, 21 Jun 2016 16:28:52 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.125
X-Spam-Level: 
X-Spam-Status: No, score=-4.125 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, MIME_QP_LONG_LINE=0.001, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, RP_MATCHES_RCVD=-1.426, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=yahoo.com
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 Vc2qlwtSPn-L for <i2rs@ietfa.amsl.com>; Tue, 21 Jun 2016 16:28:50 -0700 (PDT)
Received: from nm13-vm9.bullet.mail.gq1.yahoo.com (nm13-vm9.bullet.mail.gq1.yahoo.com [98.136.218.154]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 4410112D69E for <i2rs@ietf.org>; Tue, 21 Jun 2016 16:28:50 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1466551729; bh=39KdE7c16iow6Oaz58d2Zd6d4P4GcnNiLChpw0nF1/I=; h=Date:Subject:From:To:CC:References:In-Reply-To:From:Subject; b=FFJXZhGa4se67l8R268aF7yw1qD0gWPADPwUi5B85PcrLIuJWK7xFhgk6NcZNiBgoHCWCfy75VAeJJ4wpO+bmV2lZnBz4mBwwGIcQ5Dhn7RpAtLEfUHUrud9rTe0R3jFdrmyr95V5mLkeWygnM2tscdBcLXYZgJjFhkLnl3RaTPHDO/gdfk895TOFO6XkP3tw0IXDwe/FptoGblPG+M0PP+h1os914NWUf+Qu63YGgDpiaUqrOoE8kuVUMO6P8PU2dJCG8YN3hLoiJPRndsaO4uKQWUscOfcWg1Gn/MKJTYc4s5XrX1IapM+RT9zGLTCyRnDY2KJk6pUASmzz5Shdw==
Received: from [98.137.12.174] by nm13.bullet.mail.gq1.yahoo.com with NNFMP; 21 Jun 2016 23:28:49 -0000
Received: from [208.71.42.193] by tm13.bullet.mail.gq1.yahoo.com with NNFMP; 21 Jun 2016 23:28:49 -0000
Received: from [127.0.0.1] by smtp204.mail.gq1.yahoo.com with NNFMP; 21 Jun 2016 23:28:49 -0000
X-Yahoo-Newman-Id: 930417.98216.bm@smtp204.mail.gq1.yahoo.com
X-Yahoo-Newman-Property: ymail-3
X-YMail-OSG: ZFcvs8kVM1mg9E_7v3UoU5ciCL5S_pbdSCfbP8gZCcX8fGl kVuEqoAdTWjV4IFDOsKMWMVQG4S8l5doi80Q0RcyTO6wjyhTh1s.qF.xO44K h773yp0YuPp9cKwEuHQ1FuPl8WHGksSGUrEm6TBB0bpUb6cLo1tPxirpD_ly LULLsOFOa5W7ejUH7cqr7yXchnLPhtZIUgPNklUc2cyxHW..wYrG7CDqIoW4 3dmtnLEq2cEO34xhp.lpuM.TZ3PGC3bCfxLOcnWTuzRsdt4TE_N178rWoe96 YMv2hp6YJxCZV7pIUtqn3mPrH.sKcxz3XQ.295v_f0zM.CCT5BDGGxoYrCc. L7oHUTtuVzLiZWDbWWBnOQfSmq6p2N.IDZEfFHASmcGU63_hy4I8phmlGMuA yhWOWW91x8SfmFGNY.TtnI6BF0ruRMiKAC5Fw_xzdLXCZM_PMzgmhFWKvCPG 6yn0c4HglBToKKr.vv81YbbT1h0xQBAfysrB15nXfE2zp0pUc6H3cQ0YoUT9 ZsqHr_HIIqtSfNLkcGMfSbZy0B1NexgDP486FdUffk8k0UiksMhxgKyc8
X-Yahoo-SMTP: jU6Na92swBBdqSRkLOL9Cp_LhHZgQAQoL10-
User-Agent: Microsoft-MacOutlook/14.5.9.151119
Date: Tue, 21 Jun 2016 16:28:43 -0700
From: Nitin Bahadur <nitin_bahadur@yahoo.com>
To: "Zhangxian (Xian)" <zhang.xian@huawei.com>, Ravi Singh <ravis@juniper.net>
Message-ID: <D38F1B0E.36924%nitin_bahadur@yahoo.com>
Thread-Topic: [i2rs] FW: Routing directorate QA review of draft-ietf-i2rs-rib-info-model
References: <D38EFA4A.3685E%nitin_bahadur@yahoo.com>
In-Reply-To: <D38EFA4A.3685E%nitin_bahadur@yahoo.com>
Mime-version: 1.0
Content-type: multipart/alternative; boundary="B_3549371328_7852828"
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/JchCNSz_gcgsEXDZEoCbdeGpGvE>
Cc: "i2rs@ietf.org" <i2rs@ietf.org>, "draft-ietf-i2rs-rib-info-model@tools.ietf.org" <draft-ietf-i2rs-rib-info-model@tools.ietf.org>
Subject: Re: [i2rs] FW: Routing directorate QA review of draft-ietf-i2rs-rib-info-model
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Tue, 21 Jun 2016 23:28:53 -0000

> This message is in MIME format. Since your mail reader does not understand
this format, some or all of this message may not be legible.

--B_3549371328_7852828
Content-type: text/plain;
	charset="Big5"
Content-transfer-encoding: quoted-printable


Thanks Ravi for the detailed review.

Please see comments inline below. I will submit the updated draft once all
comments have been satisfactorily resolved.
=20
From: Ravi Singh [mailto:ravis@juniper.net]
Sent: 2016=A6~5=A4=EB18=A4=E9 0:55
To: rtg-dir@ietf.org
Cc: 'Jonathan Hardwick'; 'Jon Hudson'; Susan Hares; Zhangxian (Xian)
Subject: RE: Routing directorate QA review of draft-ietf-i2rs-rib-info-mode=
l
=20
Hi

I had been designated the RTG-DIR QA-reviewer for
https://tools.ietf.org/html/draft-ietf-i2rs-rib-info-model-08

=20

I reviewed this doc.

Overall, the doc is clear and does a decent job of creating a RIB model.

However, I have a minor concern with the tone of the doc at certain places.

The document, at places, reads like a requirements doc specifying what an
implementation of the RIB "SHOULD"/MUST do.

I am not sure if that is correct form for an informational draft documentin=
g
a specific RIB model.

Examples of such instances would be:

A.     Section 8
B.     Section 9

NB> Yes, we added SHOULD & MUST to indicate what the data-model needs to
implement. There is no separate =A1=A7requirements=A1=A8 draft for the RIB.

C.     Wherever in the doc a "SHOULD" or "MUST" shows up stating
desirability of certain behavior of an external entity accessing the RIB.
=20

NB> The desired behavior was specified using SHOULD/MUST so that inter-op i=
s
not an issue. Otherwise people implementing this on the agent and client
side might end up having different semantics.

An aspect that has not been touched-upon in the document, that however migh=
t
be worthy of consideration is about how this RIB model accommodates an
external input about traffic-statistics-monitoring desired for the various
constructs.

=20

NB> The external input would go into a =A1=A7controller=A1=A8. And the controller
would have the =A1=A7smarts=A1=A8 do take that input into account before programmin=
g
any rules. So I=A1=A6m unclear the relationship of that with the RIB model. May=
be
you meant something else.


Specific comments on the various sections in the text:

1.      Introduction:
a.      First 2 paras: some typos and sentences with redundant words.

NB> I fixed a grammar issue=A1K.could not find the typos :(. Please help with
typo identification.
=20
2.      2.1:
a.      "type" is somewhat ambiguous. Suggest reword "type" as
"address-family"

NB> Done
=20
3.      2.2:=20
a.      Some sentences could be made shorter/broken-up to improve
readability of this section.

NB> Updated.

b.     Interface_list and router-id: For a functioning routing-instance,
can't think of a routing-instance without either of those defined. So,
either the optionality aspect needs to be changed to "required" or specify
how a routing-instance would work with either missing.

NB> A routing instance can contain a RIB that has next-hops to other RIBs.
That is the reason interface-list and router-id are optional. I can add tha=
t
clarification in.

c.      Interface-list: per-interface parameters could also be listed (sinc=
e
the interface-list is called out in a RIB model): address, families, MTU,
extensibility-consideration-for-other-interface-attributes

NB> Could be. However it was not deemed necessary.
=20
4.      2.3:
a.      ROUTE_PREFERENCE: The text is mixing-up route-preference with
"route-metric". Administrative-distance (the route metric) is the IGP cost
of a route.

NB> No it=A1=A6s not. At least one vendor (Juniper) uses route preference and
admin distance inter-changeably.  See
 <http://www.juniper.net/documentation/en_US/junos15.1/topics/reference/gen=
e
ral/routing-protocols-default-route-preference-values.html>
<http://www.juniper.net/documentation/en_US/junos15.1/topics/reference/gene=
r
al/routing-protocols-default-route-preference-values.html>
<http://www.juniper.net/documentation/en_US/junos15.1/topics/reference/gene=
r
al/routing-protocols-default-route-preference-values.html>
<http://www.juniper.net/documentation/en_US/junos15.1/topics/reference/gene=
r
al/routing-protocols-default-route-preference-values.html>
http://www.juniper.net/documentation/en_US/junos15.1/topics/reference/gener=
a
l/routing-protocols-default-route-preference-values.html
Both route_preference and route-metric would be attributes of the route.


NB> Note that there is only 1 value that makes sense when the network devic=
e
is being programmed by a controller.
b.     An additional attribute that should be included is "installing
protocol". That would require defining a list of protocols that may install
a route.

NB> "Installing protocol" is something that the controller needs to worry
about. A network device should not care about the N different protocols
running on the controller.
=20
5.      2.4:
a.      Second paragraph could use rewording to enhance clarity.
Specifically:
                                      i.           Need to mention about
"(appearing to be) directly connected IP" to distinguish between:
1.      Nexthops that don't need to be resolved (by other RIB events) to be
installable

NB> As per the draft=A1K"A resolved nexthop has adequate information to send
the outgoing packet to the destination=A1=A8.  So if the controller provides al=
l
the information, no further resolution is necessary.

2.      Nexthops that need to be resolved (by other RIB events/properties)
to be installable:
a.      Those that are currently resolved
b.     Those that are currently not-resolved

NB> Please provide clarifying/re-wording text=A1K
At a macro level, this document is not supposed to be a treatise on the
design of nexthops.

b.     Next-hop property should also include IP of (appearing to be)
locally-connected device for which to ARP

NB> That is already specified in the grammar
<EGRESS_INTERFACE> (<ipv4-address> | <ipv6-address>)
=20

6.      2.4.1:
a.      Last paragraph: "preceded by" would be more accurate than "followed
by"

NB> Hmm=A1K.I still think followed by is correct. If you want I can change it
to =A1=A7encapsulated by=A1=A8.

=20
7.      2.4.3:
a.      Under "tunnel encap": The following text
"

An optional

      egress interface can be chained to the tunnel encap to indicate

      which interface to send the packet out on.  The egress interface

      is useful when the network device contains Ethernet interfaces and

      one needs to perform address resolution for the IP packet."

appears a bit incorrect.

If one wishes to do resolution for the tunnel-remote-dst then specifying an
interface serves no purpose. Either that address does not need resolution
and this specified interface is a p2p interface or there is a need for
resolution (without needing to specify an interface-name). Can't be both.

=20

NB> Probably some confusion here. If you attach an IP encap to a packet,
then before you send it out as an Ethernet frame, you need to fill the
Ethernet header. For that you need the address resolution.

8.      Sections 4 & 5 can be merged. What is the point of having a separat=
e
section 5 when it is not really saying anything new beyond what text exists
in section 4.


NB> Section 4 talks about =A1=A7return codes=A1=A8 on commands sent to a network
device. Section 5 talks about asynchronous messages sent by the network
device (without a corresponding incoming command). That is the difference.

=20

9.      Section 6:
a.      Not repeating remarks made about specific attributes (listed above)
for each item in the BNF. Eg. Route-metric/preference related remark made
above about 2.3.

NB> Didn=A1=A6t understand this comment. Can you rephrase.
=20

b.     In-label is not logically a nexthop attribute. It is infact a route.
This should be fixed.
  <mpls-label-operation> ::=3D (<MPLS_PUSH> <MPLS_LABEL> [<S_BIT>]

                                          [<TOS_VALUE>] [<TTL_VALUE>]) |

                             (<MPLS_SWAP> <IN_LABEL> <OUT_LABEL>

                                         [<TTL_ACTION>])


NB>  The grammar already has content for MPLS style route lookups.


<match> ::=3D <IPV4> <ipv4-route> | <IPV6> <ipv6-route> |

            <MPLS> <MPLS_LABEL> | <IEEE_MAC> <MAC_ADDRESS> |

            <INTERFACE> <INTERFACE_IDENTIFIER>


<mpls-label-operation> is a type of <tunnel-encap>, which in turn is a type
of <nexthop>. The <mpls-label-operation> grammar allows one to perform MPLS
SWAP operations on a given packet. So you would first <match> the MPLS labe=
l
and the nexthop operation for the route would be a SWAP and the grammar
above specifies that.
c.      VXLAN headers needs to have a way to specify src/dst MAC in inner
header, since it is possible to use VXLAN as a general-purpose encapsulatio=
n
without L2-learning semantics.

NB> We discussed this offline a while back. The end discussion was that we
did not want to provide ways to completely specify L2 frames in the context
of RIB info model. Note that the current grammar does not allow you to buil=
d
a complete ethernet header.

10.  Section 6 describes the RIB grammar. The nexthop grammar is a part of
that. However, some of that sub-grammar appears under section 7.

NB> Section 7 are examples of using the RIB grammar. Sure it could be part
of Section 6. It won=A1=A6t make a meaningful difference either ways.

11.  Section 7 "Using the RIB grammar" starts out by explaining how the
complex nexthops maybe used. However, it ends up being a listing of the
nexthop sub-grammar which should really have been listed in section 6 along
with the RIB grammar.
I'd suggest either take the entirety of the next-hop grammar listing to the
section 6, or break section 7 so that the next-hop grammar is listed in
section 7 & the "using the rib" grammar is a purely text only description o=
f
Rib/NH grammar maybe used.


NB> Section 7 is targeted towards how developers would use the grammar to
write network applications. So they should all stay together. For instance,
Section 7.3 has all text, but it refers to a =A1=A7programming example=A1=A8 in
Section 7.2.2. So moving Section 7.3 up would do more harm than good.
=20

12.  Syntax for <nexthop-replicate>  needs to be reconciled beween section
7.2.3 and section 6 where
there is an syntax mismatch,

Doesn=A1=A6t section 6 need to say:

<nexthop-replicate> ::=3D <NEXTHOP_REPLICATE> <nexthop> <nexthop> ...

=20

NB> Version =A1V06 of the draft had what you are asking for. See
 <https://tools.ietf.org/html/draft-ietf-i2rs-rib-info-model-06#section-6>
 <https://tools.ietf.org/html/draft-ietf-i2rs-rib-info-model-06#section-6>
https://tools.ietf.org/html/draft-ietf-i2rs-rib-info-model-06#section-6

We were specifically asked to remove the keyword <NEXTHOP_REPLICATE> becaus=
e
it was not correct use of rBNF. The data-model can have such things, but no=
t
the info model. Folks were ok with keeping the examples (Section 7) as is.

Thanks
Nitin



--B_3549371328_7852828
Content-type: text/html;
	charset="Big5"
Content-transfer-encoding: quoted-printable

<html><head></head><body style=3D"word-wrap: break-word; -webkit-nbsp-mode: s=
pace; -webkit-line-break: after-white-space; color: rgb(0, 0, 0); font-size:=
 14px; font-family: Calibri, sans-serif;"><div><br></div><span id=3D"OLK_SRC_B=
ODY_SECTION"><div><div style=3D"word-wrap: break-word; -webkit-nbsp-mode: spac=
e; -webkit-line-break: after-white-space;"><div style=3D"color: rgb(0, 0, 0); =
font-family: Calibri, sans-serif; font-size: 14px;"><span style=3D"color: rgb(=
31, 73, 125); font-size: 10.5pt;">Thanks Ravi for the detailed review.</span=
></div><div style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif; fo=
nt-size: 14px;"><span style=3D"color: rgb(31, 73, 125); font-size: 10.5pt;"><b=
r></span></div><div><font color=3D"#1f497d" face=3D"Calibri,sans-serif" size=3D"3"=
>Please see comments inline below.&nbsp;</font><font color=3D"#1f497d" face=3D"C=
alibri,sans-serif">I</font><font color=3D"#1f497d" face=3D"Calibri,sans-serif" s=
ize=3D"3">&nbsp;will submit the updated draft once all&nbsp;comments have been=
 satisfactorily resolved.</font></div><div style=3D"color: rgb(0, 0, 0); font-=
family: Calibri, sans-serif; font-size: 14px;"><span style=3D"color: rgb(31, 7=
3, 125); font-size: 10.5pt;">&nbsp;</span></div><span id=3D"OLK_SRC_BODY_SECTI=
ON" style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-size:=
 14px;"><div><div lang=3D"ZH-CN" link=3D"#0563C1" vlink=3D"#954F72"><div class=3D"Wo=
rdSection1"><div><div style=3D"border:none;border-top:solid #B5C4DF 1.0pt;padd=
ing:3.0pt 0cm 0cm 0cm"><p class=3D"MsoNormal"><b><span lang=3D"EN-US" style=3D"fon=
t-size: 10pt; font-family: Tahoma, sans-serif;">From:</span></b><span lang=3D"=
EN-US" style=3D"font-size: 10pt; font-family: Tahoma, sans-serif;"> Ravi Singh=
 [<a href=3D"mailto:ravis@juniper.net">mailto:ravis@juniper.net</a>]
<br><b>Sent:</b> 2016</span><span style=3D"font-size:10.0pt;font-family:SimSu=
n">=A6~</span><span lang=3D"EN-US" style=3D"font-size: 10pt; font-family: Tahoma, =
sans-serif;">5</span><span style=3D"font-size:10.0pt;font-family:SimSun">=A4=EB</s=
pan><span lang=3D"EN-US" style=3D"font-size: 10pt; font-family: Tahoma, sans-ser=
if;">18</span><span style=3D"font-size:10.0pt;font-family:SimSun">=A4=E9</span><sp=
an lang=3D"EN-US" style=3D"font-size: 10pt; font-family: Tahoma, sans-serif;">
 0:55<br><b>To:</b> <a href=3D"mailto:rtg-dir@ietf.org">rtg-dir@ietf.org</a><=
br><b>Cc:</b> 'Jonathan Hardwick'; 'Jon Hudson'; Susan Hares; Zhangxian (Xia=
n)<br><b>Subject:</b> RE: Routing directorate QA review of draft-ietf-i2rs-r=
ib-info-model<o:p></o:p></span></p></div></div><p class=3D"MsoNormal"><span la=
ng=3D"EN-US"><o:p>&nbsp;</o:p></span></p><p style=3D"margin:0cm;margin-bottom:.0=
001pt"><span lang=3D"EN-US" style=3D"font-size: 11pt; font-family: Calibri, sans=
-serif; color: black;">Hi<o:p></o:p></span></p><p style=3D"margin:0cm;margin-b=
ottom:.0001pt"><span lang=3D"EN-US" style=3D"font-size: 11pt; font-family: Calib=
ri, sans-serif; color: black;">I had been designated the RTG-DIR QA-reviewer=
 for
<a href=3D"https://tools.ietf.org/html/draft-ietf-i2rs-rib-info-model-08">htt=
ps://tools.ietf.org/html/draft-ietf-i2rs-rib-info-model-08</a><o:p></o:p></s=
pan></p><p style=3D"margin:0cm;margin-bottom:.0001pt"><span lang=3D"EN-US" style=
=3D"font-size: 11pt; font-family: Calibri, sans-serif; color: black;">&nbsp;<o=
:p></o:p></span></p><p style=3D"margin:0cm;margin-bottom:.0001pt"><span lang=3D"=
EN-US" style=3D"font-size: 11pt; font-family: Calibri, sans-serif; color: blac=
k;">I reviewed this doc.<o:p></o:p></span></p><p style=3D"margin:0cm;margin-bo=
ttom:.0001pt"><span lang=3D"EN-US" style=3D"font-size: 11pt; font-family: Calibr=
i, sans-serif; color: black;">Overall, the doc is clear and does a decent jo=
b of creating a RIB model.<o:p></o:p></span></p><p style=3D"margin:0cm;margin-=
bottom:.0001pt"><span lang=3D"EN-US" style=3D"font-size: 11pt; font-family: Cali=
bri, sans-serif; color: black;">However, I have a minor concern with the ton=
e of the doc at certain places.
<o:p></o:p></span></p><p style=3D"margin:0cm;margin-bottom:.0001pt"><span lan=
g=3D"EN-US" style=3D"font-size: 11pt; font-family: Calibri, sans-serif; color: b=
lack;">The document, at places, reads like a requirements doc specifying wha=
t an implementation of the RIB "SHOULD"/MUST do.
<o:p></o:p></span></p><p style=3D"margin:0cm;margin-bottom:.0001pt"><span lan=
g=3D"EN-US" style=3D"font-size: 11pt; font-family: Calibri, sans-serif; color: b=
lack;">I am not sure if that is correct form for an informational draft docu=
menting a specific RIB model.
<o:p></o:p></span></p><p style=3D"margin:0cm;margin-bottom:.0001pt"><span lan=
g=3D"EN-US" style=3D"font-size: 11pt; font-family: Calibri, sans-serif; color: b=
lack;">Examples of such instances would be:<o:p></o:p></span></p><p class=3D"M=
soNormal" style=3D"margin-left:27.0pt;text-indent:-18.0pt;vertical-align:middl=
e"><span lang=3D"EN-US" style=3D"color:black">A.</span><span lang=3D"EN-US" style=3D=
"font-size: 7pt; font-family: 'Times New Roman', serif; color: black;">&nbsp=
;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">Section 8<o:p></o:p></span></=
p><p class=3D"MsoNormal" style=3D"margin-left:27.0pt;text-indent:-18.0pt;vertica=
l-align:middle"><span lang=3D"EN-US" style=3D"color:black">B.</span><span lang=3D"=
EN-US" style=3D"font-size: 7pt; font-family: 'Times New Roman', serif; color: =
black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">Section 9</span></p></div></d=
iv></div></span><div style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-=
serif; font-size: 14px;"><br></div><div style=3D"color: rgb(0, 0, 0); font-fam=
ily: Calibri, sans-serif; font-size: 14px;">NB&gt; Yes, we added SHOULD &amp=
; MUST to indicate what the data-model needs to implement. There is no separ=
ate &#8220;requirements&#8221; draft for the RIB.</div><div style=3D"color: rg=
b(0, 0, 0); font-family: Calibri, sans-serif; font-size: 14px;"><br></div><s=
pan id=3D"OLK_SRC_BODY_SECTION" style=3D"color: rgb(0, 0, 0); font-family: Calib=
ri, sans-serif; font-size: 14px;"><div><div lang=3D"ZH-CN" link=3D"#0563C1" vlin=
k=3D"#954F72"><div class=3D"WordSection1"><p class=3D"MsoNormal" style=3D"margin-lef=
t:27.0pt;text-indent:-18.0pt;vertical-align:middle"><span lang=3D"EN-US" style=
=3D"color:black"><o:p></o:p></span></p><p class=3D"MsoNormal" style=3D"margin-left=
:27.0pt;text-indent:-18.0pt;vertical-align:middle"><span lang=3D"EN-US" style=3D=
"color:black">C.</span><span lang=3D"EN-US" style=3D"font-size: 7pt; font-family=
: 'Times New Roman', serif; color: black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">Wherever in the doc a "SHOULD=
" or "MUST" shows up stating desirability of certain behavior of an external=
 entity accessing the RIB.<o:p></o:p></span></p><p style=3D"margin:0cm;margin-=
bottom:.0001pt"><span lang=3D"EN-US" style=3D"font-size: 11pt; font-family: Cali=
bri, sans-serif; color: black;">&nbsp;</span></p></div></div></div></span><d=
iv style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-size: =
14px;">NB&gt; The desired behavior was specified using SHOULD/MUST so that i=
nter-op is not an issue. Otherwise people implementing this on the agent and=
 client side might end up having different semantics.</div><div style=3D"color=
: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-size: 14px;"><br></di=
v><span id=3D"OLK_SRC_BODY_SECTION" style=3D"color: rgb(0, 0, 0); font-family: C=
alibri, sans-serif; font-size: 14px;"><div><div lang=3D"ZH-CN" link=3D"#0563C1" =
vlink=3D"#954F72"><div class=3D"WordSection1"><p style=3D"margin:0cm;margin-bottom=
:.0001pt"><span lang=3D"EN-US" style=3D"font-size: 11pt; font-family: Calibri, s=
ans-serif; color: black;"><o:p></o:p></span></p><p style=3D"margin:0cm;margin-=
bottom:.0001pt"><span lang=3D"EN-US" style=3D"font-size: 11pt; font-family: Cali=
bri, sans-serif; color: black;">An aspect that has not been touched-upon in =
the document, that however might be worthy of consideration is about how thi=
s
 RIB model accommodates an external input about traffic-statistics-monitori=
ng desired for the various constructs.<o:p></o:p></span></p><p style=3D"margin=
:0cm;margin-bottom:.0001pt"><span lang=3D"EN-US" style=3D"font-size: 11pt; font-=
family: Calibri, sans-serif; color: black;"><o:p>&nbsp;</o:p></span></p></di=
v></div></div></span><div style=3D"color: rgb(0, 0, 0); font-family: Calibri, =
sans-serif; font-size: 14px;">NB&gt; The external input would go into a &#82=
20;controller&#8221;. And the controller would have the &#8220;smarts&#8221;=
 do take that input into account before programming any rules. So I&#8217;m =
unclear the relationship of that with the RIB model. Maybe you meant somethi=
ng else.</div><div style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-se=
rif; font-size: 14px;"><br></div><div style=3D"color: rgb(0, 0, 0); font-famil=
y: Calibri, sans-serif; font-size: 14px;"><br></div><span id=3D"OLK_SRC_BODY_S=
ECTION" style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-s=
ize: 14px;"><div><div lang=3D"ZH-CN" link=3D"#0563C1" vlink=3D"#954F72"><div class=
=3D"WordSection1"><p style=3D"margin:0cm;margin-bottom:.0001pt"><span lang=3D"EN-U=
S" style=3D"font-size: 11pt; font-family: Calibri, sans-serif; color: black;">=
Specific comments on the various sections in the text:<o:p></o:p></span></p>=
<p class=3D"MsoNormal" style=3D"margin-left:27.0pt;text-indent:-18.0pt;vertical-=
align:middle"><span lang=3D"EN-US" style=3D"color:black">1.</span><span lang=3D"EN=
-US" style=3D"font-size: 7pt; font-family: 'Times New Roman', serif; color: bl=
ack;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">Introduction:<o:p></o:p></spa=
n></p><p class=3D"MsoNormal" style=3D"margin-left:54.0pt;text-indent:-18.0pt;ver=
tical-align:middle"><span lang=3D"EN-US" style=3D"color:black">a.</span><span la=
ng=3D"EN-US" style=3D"font-size: 7pt; font-family: 'Times New Roman', serif; col=
or: black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">First 2 paras: some typos and=
 sentences with redundant words.</span></p></div></div></div></span><div sty=
le=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-size: 14px;"=
><br></div><div style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif=
; font-size: 14px;">NB&gt; I fixed a grammar issue&#8230;.could not find the=
 typos :(. Please help with typo identification.</div><span id=3D"OLK_SRC_BODY=
_SECTION" style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font=
-size: 14px;"><div><div lang=3D"ZH-CN" link=3D"#0563C1" vlink=3D"#954F72"><div cla=
ss=3D"WordSection1"><p class=3D"MsoNormal" style=3D"margin-left:54.0pt;text-indent=
:-18.0pt;vertical-align:middle"><span lang=3D"EN-US" style=3D"color:black"><o:p>=
</o:p></span></p><p class=3D"MsoNormal" style=3D"margin-left:54.0pt;vertical-ali=
gn:middle"><span lang=3D"EN-US" style=3D"color:black"><o:p>&nbsp;</o:p></span></=
p><p class=3D"MsoNormal" style=3D"margin-left:27.0pt;text-indent:-18.0pt;vertica=
l-align:middle"><span lang=3D"EN-US" style=3D"color:black">2.</span><span lang=3D"=
EN-US" style=3D"font-size: 7pt; font-family: 'Times New Roman', serif; color: =
black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">2.1:<o:p></o:p></span></p><p =
class=3D"MsoNormal" style=3D"margin-left:54.0pt;text-indent:-18.0pt;vertical-ali=
gn:middle"><span lang=3D"EN-US" style=3D"color:black">a.</span><span lang=3D"EN-US=
" style=3D"font-size: 7pt; font-family: 'Times New Roman', serif; color: black=
;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">"type" is somewhat ambiguous.=
 Suggest reword "type" as "address-family"</span></p></div></div></div></spa=
n><div style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-si=
ze: 14px;"><br></div><div style=3D"color: rgb(0, 0, 0); font-family: Calibri, =
sans-serif; font-size: 14px;">NB&gt; Done</div><span id=3D"OLK_SRC_BODY_SECTIO=
N" style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-size: =
14px;"><div><div lang=3D"ZH-CN" link=3D"#0563C1" vlink=3D"#954F72"><div class=3D"Wor=
dSection1"><p class=3D"MsoNormal" style=3D"margin-left:54.0pt;text-indent:-18.0p=
t;vertical-align:middle"><span lang=3D"EN-US" style=3D"color:black"><o:p></o:p><=
/span></p><p class=3D"MsoNormal" style=3D"margin-left:54.0pt;vertical-align:midd=
le"><span lang=3D"EN-US" style=3D"color:black"><o:p>&nbsp;</o:p></span></p><p cl=
ass=3D"MsoNormal" style=3D"margin-left:27.0pt;text-indent:-18.0pt;vertical-align=
:middle"><span lang=3D"EN-US" style=3D"color:black">3.</span><span lang=3D"EN-US" =
style=3D"font-size: 7pt; font-family: 'Times New Roman', serif; color: black;"=
>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">2.2: <o:p></o:p></span></p><p=
 class=3D"MsoNormal" style=3D"margin-left:54.0pt;text-indent:-18.0pt;vertical-al=
ign:middle"><span lang=3D"EN-US" style=3D"color:black">a.</span><span lang=3D"EN-U=
S" style=3D"font-size: 7pt; font-family: 'Times New Roman', serif; color: blac=
k;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">Some sentences could be made =
shorter/broken-up to improve readability of this section.</span></p></div></=
div></div></span><div style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans=
-serif; font-size: 14px;"><br></div><div style=3D"color: rgb(0, 0, 0); font-fa=
mily: Calibri, sans-serif; font-size: 14px;">NB&gt; Updated.</div><div style=
=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-size: 14px;"><=
br></div><span id=3D"OLK_SRC_BODY_SECTION" style=3D"color: rgb(0, 0, 0); font-fa=
mily: Calibri, sans-serif; font-size: 14px;"><div><div lang=3D"ZH-CN" link=3D"#0=
563C1" vlink=3D"#954F72"><div class=3D"WordSection1"><p class=3D"MsoNormal" style=3D=
"margin-left:54.0pt;text-indent:-18.0pt;vertical-align:middle"><span lang=3D"E=
N-US" style=3D"color:black"><o:p></o:p></span></p><p class=3D"MsoNormal" style=3D"=
margin-left:54.0pt;text-indent:-18.0pt;vertical-align:middle"><span lang=3D"EN=
-US" style=3D"color:black">b.</span><span lang=3D"EN-US" style=3D"font-size: 7pt; =
font-family: 'Times New Roman', serif; color: black;">&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">Interface_list and router-id:=
 For a functioning routing-instance, can't think of a routing-instance witho=
ut either of those defined. So, either the optionality aspect needs to be ch=
anged to "required" or specify
 how a routing-instance would work with either missing.</span></p></div></d=
iv></div></span><div style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-=
serif; font-size: 14px;"><br></div><div style=3D"color: rgb(0, 0, 0); font-fam=
ily: Calibri, sans-serif; font-size: 14px;">NB&gt; A routing instance can co=
ntain a RIB that has next-hops to other RIBs. That is the reason interface-l=
ist and router-id are optional. I can add that clarification in.</div></div>=
</div></span><div><br></div><span id=3D"OLK_SRC_BODY_SECTION"><div><div style=3D=
"word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-=
white-space;"><span id=3D"OLK_SRC_BODY_SECTION" style=3D"color: rgb(0, 0, 0); fo=
nt-family: Calibri, sans-serif; font-size: 14px;"><div><div lang=3D"ZH-CN" lin=
k=3D"#0563C1" vlink=3D"#954F72"><div class=3D"WordSection1"><p class=3D"MsoNormal" s=
tyle=3D"margin-left:54.0pt;text-indent:-18.0pt;vertical-align:middle"><span la=
ng=3D"EN-US" style=3D"color:black"><o:p></o:p></span></p><p class=3D"MsoNormal" st=
yle=3D"margin-left:54.0pt;text-indent:-18.0pt;vertical-align:middle"><span lan=
g=3D"EN-US" style=3D"color:black">c.</span><span lang=3D"EN-US" style=3D"font-size: =
7pt; font-family: 'Times New Roman', serif; color: black;">&nbsp;&nbsp;&nbsp=
;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">Interface-list: per-interface=
 parameters could also be listed (since the interface-list is called out in =
a RIB model): address, families, MTU, extensibility-consideration-for-other-=
interface-attributes</span></p></div></div></div></span><div style=3D"color: r=
gb(0, 0, 0); font-family: Calibri, sans-serif; font-size: 14px;"><br></div><=
div style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-size:=
 14px;">NB&gt; Could be. However it was not deemed necessary.</div><span id=3D=
"OLK_SRC_BODY_SECTION" style=3D"color: rgb(0, 0, 0); font-family: Calibri, san=
s-serif; font-size: 14px;"><div><div lang=3D"ZH-CN" link=3D"#0563C1" vlink=3D"#954=
F72"><div class=3D"WordSection1"><p class=3D"MsoNormal" style=3D"margin-left:54.0p=
t;text-indent:-18.0pt;vertical-align:middle"><span style=3D"font-family: Calib=
ri, sans-serif; font-size: 11pt;">&nbsp;</span></p><p class=3D"MsoNormal" styl=
e=3D"margin-left:27.0pt;text-indent:-18.0pt;vertical-align:middle"><span lang=3D=
"EN-US" style=3D"color:black">4.</span><span lang=3D"EN-US" style=3D"font-size: 7p=
t; font-family: 'Times New Roman', serif; color: black;">&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">2.3:<o:p></o:p></span></p><p =
class=3D"MsoNormal" style=3D"margin-left:54.0pt;text-indent:-18.0pt;vertical-ali=
gn:middle"><span lang=3D"EN-US" style=3D"color:black">a.</span><span lang=3D"EN-US=
" style=3D"font-size: 7pt; font-family: 'Times New Roman', serif; color: black=
;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">ROUTE_PREFERENCE: The text is=
 mixing-up route-preference with "route-metric". Administrative-distance (th=
e route metric) is the IGP cost of a route.</span></p></div></div></div></sp=
an><div style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-s=
ize: 14px;"><br></div><div style=3D"color: rgb(0, 0, 0); font-family: Calibri,=
 sans-serif; font-size: 14px;">NB&gt; No it&#8217;s not. At least one vendor=
 (Juniper) uses route preference and admin distance inter-changeably. &nbsp;=
See</div><div style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif; =
font-size: 14px;"><a href=3D"http://www.juniper.net/documentation/en_US/junos1=
5.1/topics/reference/general/routing-protocols-default-route-preference-valu=
es.html"></a><a href=3D"http://www.juniper.net/documentation/en_US/junos15.1/t=
opics/reference/general/routing-protocols-default-route-preference-values.ht=
ml"></a><a href=3D"http://www.juniper.net/documentation/en_US/junos15.1/topics=
/reference/general/routing-protocols-default-route-preference-values.html"><=
/a><a href=3D"http://www.juniper.net/documentation/en_US/junos15.1/topics/refe=
rence/general/routing-protocols-default-route-preference-values.html"></a><a=
 href=3D"http://www.juniper.net/documentation/en_US/junos15.1/topics/reference=
/general/routing-protocols-default-route-preference-values.html">http://www.=
juniper.net/documentation/en_US/junos15.1/topics/reference/general/routing-p=
rotocols-default-route-preference-values.html</a></div><span id=3D"OLK_SRC_BOD=
Y_SECTION" style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif; fon=
t-size: 14px;"><div><div lang=3D"ZH-CN" link=3D"#0563C1" vlink=3D"#954F72"><div cl=
ass=3D"WordSection1"><p class=3D"MsoNormal" style=3D"margin-left:54.0pt;text-inden=
t:-18.0pt;vertical-align:middle"><span lang=3D"EN-US" style=3D"color:black"><o:p=
></o:p></span></p><p style=3D"mso-margin-top-alt:0cm;margin-right:0cm;margin-b=
ottom:0cm;margin-left:54.0pt;margin-bottom:.0001pt"><span lang=3D"EN-US" style=
=3D"font-size: 11pt; font-family: Calibri, sans-serif; color: black;">Both rou=
te_preference and route-metric would be attributes of the route.</span></p><=
/div></div></div></span><div style=3D"color: rgb(0, 0, 0); font-family: Calibr=
i, sans-serif; font-size: 14px;"><br></div><div style=3D"color: rgb(0, 0, 0); =
font-family: Calibri, sans-serif; font-size: 14px;">NB&gt; Note that there i=
s only 1 value that makes sense when the network device is being programmed =
by a controller.</div><span id=3D"OLK_SRC_BODY_SECTION" style=3D"color: rgb(0, 0=
, 0); font-family: Calibri, sans-serif; font-size: 14px;"><div><div lang=3D"ZH=
-CN" link=3D"#0563C1" vlink=3D"#954F72"><div class=3D"WordSection1"><p style=3D"mso-=
margin-top-alt:0cm;margin-right:0cm;margin-bottom:0cm;margin-left:54.0pt;mar=
gin-bottom:.0001pt"><span lang=3D"EN-US" style=3D"font-size: 11pt; font-family: =
Calibri, sans-serif; color: black;"><o:p></o:p></span></p><p class=3D"MsoNorma=
l" style=3D"margin-left:54.0pt;text-indent:-18.0pt;vertical-align:middle"><spa=
n lang=3D"EN-US" style=3D"color:black">b.</span><span lang=3D"EN-US" style=3D"font-s=
ize: 7pt; font-family: 'Times New Roman', serif; color: black;">&nbsp;&nbsp;=
&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">An additional attribute that =
should be included is "installing protocol". That would require defining a l=
ist of protocols that may install a route.</span></p></div></div></div></spa=
n><div style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-si=
ze: 14px;"><br></div><div style=3D"color: rgb(0, 0, 0); font-family: Calibri, =
sans-serif; font-size: 14px;">NB&gt; "Installing protocol" is something that=
 the controller needs to worry about. A network device should not care about=
 the N different protocols running on the controller.&nbsp;</div><div style=3D=
"color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-size: 14px;"><s=
pan style=3D"font-size: 11pt;">&nbsp;</span></div><span id=3D"OLK_SRC_BODY_SECTI=
ON" style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-size:=
 14px;"><div><div lang=3D"ZH-CN" link=3D"#0563C1" vlink=3D"#954F72"><div class=3D"Wo=
rdSection1"><p class=3D"MsoNormal" style=3D"margin-left:27.0pt;text-indent:-18.0=
pt;vertical-align:middle"><span lang=3D"EN-US" style=3D"color:black">5.</span><s=
pan lang=3D"EN-US" style=3D"font-size: 7pt; font-family: 'Times New Roman', seri=
f; color: black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">2.4:<o:p></o:p></span></p><p =
class=3D"MsoNormal" style=3D"margin-left:54.0pt;text-indent:-18.0pt;vertical-ali=
gn:middle"><span lang=3D"EN-US" style=3D"color:black">a.</span><span lang=3D"EN-US=
" style=3D"font-size: 7pt; font-family: 'Times New Roman', serif; color: black=
;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">Second paragraph could use re=
wording to enhance clarity. Specifically:<o:p></o:p></span></p><p class=3D"Mso=
Normal" style=3D"margin-left:81.0pt;text-indent:-18.0pt;vertical-align:middle"=
><span lang=3D"EN-US" style=3D"font-size: 7pt; font-family: 'Times New Roman', s=
erif; color: black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
sp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">i.</span><span lang=3D"EN-US" s=
tyle=3D"font-size: 7pt; font-family: 'Times New Roman', serif; color: black;">=
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">Need to mention about "(appea=
ring to be) directly connected IP" to distinguish between:<o:p></o:p></span>=
</p><p class=3D"MsoNormal" style=3D"margin-left:108.0pt;text-indent:-18.0pt;vert=
ical-align:middle"><span lang=3D"EN-US" style=3D"color:black">1.</span><span lan=
g=3D"EN-US" style=3D"font-size: 7pt; font-family: 'Times New Roman', serif; colo=
r: black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">Nexthops that don't need to b=
e resolved (by other RIB events) to be installable</span></p></div></div></d=
iv></span><div style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif;=
 font-size: 14px;"><br></div><div style=3D"color: rgb(0, 0, 0); font-family: C=
alibri, sans-serif; font-size: 14px;">NB&gt; As per the draft&#8230;"A resol=
ved nexthop has adequate information to send the outgoing packet to the dest=
ination&#8221;. &nbsp;So if the controller provides all the information, no =
further resolution is necessary.</div><div style=3D"color: rgb(0, 0, 0); font-=
family: Calibri, sans-serif; font-size: 14px;"><br></div><span id=3D"OLK_SRC_B=
ODY_SECTION" style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif; f=
ont-size: 14px;"><div><div lang=3D"ZH-CN" link=3D"#0563C1" vlink=3D"#954F72"><div =
class=3D"WordSection1"><p class=3D"MsoNormal" style=3D"margin-left:108.0pt;text-in=
dent:-18.0pt;vertical-align:middle"><span lang=3D"EN-US" style=3D"color:black"><=
o:p></o:p></span></p><p class=3D"MsoNormal" style=3D"margin-left:108.0pt;text-in=
dent:-18.0pt;vertical-align:middle"><span lang=3D"EN-US" style=3D"color:black">2=
.</span><span lang=3D"EN-US" style=3D"font-size: 7pt; font-family: 'Times New Ro=
man', serif; color: black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">Nexthops that need to be reso=
lved (by other RIB events/properties) to be installable:<o:p></o:p></span></=
p><p class=3D"MsoNormal" style=3D"margin-left:135.0pt;text-indent:-18.0pt;vertic=
al-align:middle"><span lang=3D"EN-US" style=3D"color:black">a.</span><span lang=3D=
"EN-US" style=3D"font-size: 7pt; font-family: 'Times New Roman', serif; color:=
 black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">Those that are currently reso=
lved<o:p></o:p></span></p><p class=3D"MsoNormal" style=3D"margin-left:135.0pt;te=
xt-indent:-18.0pt;vertical-align:middle"><span lang=3D"EN-US" style=3D"color:bla=
ck">b.</span><span lang=3D"EN-US" style=3D"font-size: 7pt; font-family: 'Times N=
ew Roman', serif; color: black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">Those that are currently not-=
resolved</span></p></div></div></div></span><div style=3D"color: rgb(0, 0, 0);=
 font-family: Calibri, sans-serif; font-size: 14px;"><br></div><div style=3D"c=
olor: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-size: 14px;">NB&g=
t; Please provide clarifying/re-wording text&#8230;</div><div style=3D"color: =
rgb(0, 0, 0); font-family: Calibri, sans-serif; font-size: 14px;">At a macro=
 level, this document is not supposed to be a treatise on the design of next=
hops.</div><div style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif=
; font-size: 14px;"><br></div><span id=3D"OLK_SRC_BODY_SECTION" style=3D"color: =
rgb(0, 0, 0); font-family: Calibri, sans-serif; font-size: 14px;"><div><div =
lang=3D"ZH-CN" link=3D"#0563C1" vlink=3D"#954F72"><div class=3D"WordSection1"><p cla=
ss=3D"MsoNormal" style=3D"margin-left:135.0pt;text-indent:-18.0pt;vertical-align=
:middle"><span lang=3D"EN-US" style=3D"color:black"><o:p></o:p></span></p><p cla=
ss=3D"MsoNormal" style=3D"margin-left:54.0pt;text-indent:-18.0pt;vertical-align:=
middle"><span lang=3D"EN-US" style=3D"color:black">b.</span><span lang=3D"EN-US" s=
tyle=3D"font-size: 7pt; font-family: 'Times New Roman', serif; color: black;">=
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">Next-hop property should also=
 include IP of (appearing to be) locally-connected device for which to ARP</=
span></p></div></div></div></span><div style=3D"color: rgb(0, 0, 0); font-fami=
ly: Calibri, sans-serif; font-size: 14px;"><br></div><div style=3D"color: rgb(=
0, 0, 0); font-family: Calibri, sans-serif; font-size: 14px;">NB&gt; That is=
 already specified in the grammar</div><div style=3D"color: rgb(0, 0, 0); font=
-family: Calibri, sans-serif; font-size: 14px;"><div>&lt;EGRESS_INTERFACE&gt=
; (&lt;ipv4-address&gt; | &lt;ipv6-address&gt;)</div></div><span id=3D"OLK_SRC=
_BODY_SECTION" style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif;=
 font-size: 14px;"><div><div lang=3D"ZH-CN" link=3D"#0563C1" vlink=3D"#954F72"><di=
v class=3D"WordSection1"><p class=3D"MsoNormal" style=3D"margin-left:54.0pt;text-i=
ndent:-18.0pt;vertical-align:middle"><span lang=3D"EN-US" style=3D"color:black">=
<o:p></o:p></span></p><p class=3D"MsoNormal" style=3D"margin-left:54.0pt;vertica=
l-align:middle"><span lang=3D"EN-US" style=3D"color:black"><o:p>&nbsp;</o:p></sp=
an></p></div></div></div></span><div style=3D"color: rgb(0, 0, 0); font-family=
: Calibri, sans-serif; font-size: 14px;"><br></div><span id=3D"OLK_SRC_BODY_SE=
CTION" style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-si=
ze: 14px;"><div><div lang=3D"ZH-CN" link=3D"#0563C1" vlink=3D"#954F72"><div class=3D=
"WordSection1"><p class=3D"MsoNormal" style=3D"margin-left:27.0pt;text-indent:-1=
8.0pt;vertical-align:middle"><span lang=3D"EN-US" style=3D"color:black">6.</span=
><span lang=3D"EN-US" style=3D"font-size: 7pt; font-family: 'Times New Roman', s=
erif; color: black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">2.4.1:<o:p></o:p></span></p><=
p class=3D"MsoNormal" style=3D"margin-left:54.0pt;text-indent:-18.0pt;vertical-a=
lign:middle"><span lang=3D"EN-US" style=3D"color:black">a.</span><span lang=3D"EN-=
US" style=3D"font-size: 7pt; font-family: 'Times New Roman', serif; color: bla=
ck;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">Last paragraph: "preceded by"=
 would be more accurate than "followed by"</span></p></div></div></div></spa=
n><div style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-si=
ze: 14px;"><br></div><div style=3D"color: rgb(0, 0, 0); font-family: Calibri, =
sans-serif; font-size: 14px;">NB&gt; Hmm&#8230;.I still think followed by is=
 correct. If you want I can change it to &#8220;encapsulated by&#8221;.</div=
><div style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-siz=
e: 14px;"><br></div><span id=3D"OLK_SRC_BODY_SECTION" style=3D"color: rgb(0, 0, =
0); font-family: Calibri, sans-serif; font-size: 14px;"><div><div lang=3D"ZH-C=
N" link=3D"#0563C1" vlink=3D"#954F72"><div class=3D"WordSection1"><p class=3D"MsoNor=
mal" style=3D"margin-left:54.0pt;text-indent:-18.0pt;vertical-align:middle"><s=
pan style=3D"font-family: Calibri, sans-serif; font-size: 11pt;">&nbsp;</span>=
</p><p class=3D"MsoNormal" style=3D"margin-left:27.0pt;text-indent:-18.0pt;verti=
cal-align:middle"><span lang=3D"EN-US" style=3D"color:black">7.</span><span lang=
=3D"EN-US" style=3D"font-size: 7pt; font-family: 'Times New Roman', serif; color=
: black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">2.4.3:<o:p></o:p></span></p><=
p class=3D"MsoNormal" style=3D"margin-left:54.0pt;text-indent:-18.0pt;vertical-a=
lign:middle"><span lang=3D"EN-US" style=3D"color:black">a.</span><span lang=3D"EN-=
US" style=3D"font-size: 7pt; font-family: 'Times New Roman', serif; color: bla=
ck;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">Under "tunnel encap": The fol=
lowing text
<o:p></o:p></span></p><p style=3D"mso-margin-top-alt:0cm;margin-right:0cm;mar=
gin-bottom:0cm;margin-left:54.0pt;margin-bottom:.0001pt"><span lang=3D"EN-US" =
style=3D"font-size: 11pt; font-family: Calibri, sans-serif; color: black;">"<o=
:p></o:p></span></p><p style=3D"mso-margin-top-alt:0cm;margin-right:0cm;margin=
-bottom:0cm;margin-left:54.0pt;margin-bottom:.0001pt"><span lang=3D"EN-US" sty=
le=3D"font-size: 11pt; font-family: Calibri, sans-serif; color: black;">An opt=
ional<o:p></o:p></span></p><p style=3D"mso-margin-top-alt:0cm;margin-right:0cm=
;margin-bottom:0cm;margin-left:54.0pt;margin-bottom:.0001pt"><span lang=3D"EN-=
US" style=3D"font-size: 11pt; font-family: Calibri, sans-serif; color: black;"=
>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; egress interface can be chained to the tunne=
l encap to indicate<o:p></o:p></span></p><p style=3D"mso-margin-top-alt:0cm;ma=
rgin-right:0cm;margin-bottom:0cm;margin-left:54.0pt;margin-bottom:.0001pt"><=
span lang=3D"EN-US" style=3D"font-size: 11pt; font-family: Calibri, sans-serif; =
color: black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; which interface to send the pa=
cket out on.&nbsp; The egress interface<o:p></o:p></span></p><p style=3D"mso-m=
argin-top-alt:0cm;margin-right:0cm;margin-bottom:0cm;margin-left:54.0pt;marg=
in-bottom:.0001pt"><span lang=3D"EN-US" style=3D"font-size: 11pt; font-family: C=
alibri, sans-serif; color: black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; is useful =
when the network device contains Ethernet interfaces and<o:p></o:p></span></=
p><p style=3D"mso-margin-top-alt:0cm;margin-right:0cm;margin-bottom:0cm;margin=
-left:54.0pt;margin-bottom:.0001pt"><span lang=3D"EN-US" style=3D"font-size: 11p=
t; font-family: Calibri, sans-serif; color: black;">&nbsp;&nbsp;&nbsp;&nbsp;=
&nbsp; one needs to perform address resolution for the IP packet."
<o:p></o:p></span></p><p style=3D"mso-margin-top-alt:0cm;margin-right:0cm;mar=
gin-bottom:0cm;margin-left:54.0pt;margin-bottom:.0001pt"><span lang=3D"EN-US" =
style=3D"font-size: 11pt; font-family: Calibri, sans-serif; color: black;">app=
ears a bit incorrect.<o:p></o:p></span></p><p style=3D"mso-margin-top-alt:0cm;=
margin-right:0cm;margin-bottom:0cm;margin-left:54.0pt;margin-bottom:.0001pt"=
><span lang=3D"EN-US" style=3D"font-size: 11pt; font-family: Calibri, sans-serif=
; color: black;">If one wishes to do resolution for the tunnel-remote-dst th=
en specifying an interface serves no purpose. Either that address does not n=
eed resolution and this specified
 interface is a p2p interface or there is a need for resolution (without ne=
eding to specify an interface-name). Can't be both.<o:p></o:p></span></p><p =
style=3D"mso-margin-top-alt:0cm;margin-right:0cm;margin-bottom:0cm;margin-left=
:27.0pt;margin-bottom:.0001pt"><span lang=3D"EN-US" style=3D"font-size: 11pt; fo=
nt-family: Calibri, sans-serif; color: black;">&nbsp;</span></p></div></div>=
</div></span><div style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-ser=
if; font-size: 14px;">NB&gt; Probably some confusion here. If you attach an =
IP encap to a packet, then before you send it out as an Ethernet frame, you =
need to fill the Ethernet header. For that you need the address resolution.<=
/div><div style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font=
-size: 14px;"><br></div><span id=3D"OLK_SRC_BODY_SECTION" style=3D"color: rgb(0,=
 0, 0); font-family: Calibri, sans-serif; font-size: 14px;"><div lang=3D"ZH-CN=
" link=3D"#0563C1" vlink=3D"#954F72"><div class=3D"WordSection1"><p style=3D"mso-mar=
gin-top-alt:0cm;margin-right:0cm;margin-bottom:0cm;margin-left:27.0pt;margin=
-bottom:.0001pt"><span lang=3D"EN-US" style=3D"font-size: 11pt; font-family: Cal=
ibri, sans-serif; color: black;"><o:p></o:p></span></p><p class=3D"MsoNormal" =
style=3D"margin-left:27.0pt;text-indent:-18.0pt;vertical-align:middle"><span l=
ang=3D"EN-US" style=3D"color:black">8.</span><span lang=3D"EN-US" style=3D"font-size=
: 7pt; font-family: 'Times New Roman', serif; color: black;">&nbsp;&nbsp;&nb=
sp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">Sections 4 &amp; 5 can be mer=
ged. What is the point of having a separate section 5 when it is not really =
saying anything new beyond what text exists in section 4.</span></p></div></=
div></span><div style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif=
; font-size: 14px;"><br></div><div style=3D"color: rgb(0, 0, 0); font-family: =
Calibri, sans-serif; font-size: 14px;"><br></div><span id=3D"OLK_SRC_BODY_SECT=
ION"><div lang=3D"ZH-CN" link=3D"#0563C1" vlink=3D"#954F72"><div class=3D"WordSectio=
n1"><p class=3D"MsoNormal" style=3D"margin-left: 27pt; text-indent: -18pt; verti=
cal-align: middle;"><font face=3D"Calibri,sans-serif" size=3D"3">NB&gt; Section =
4 talks about&nbsp;</font><font face=3D"Calibri,sans-serif">&#8220;</font><fon=
t face=3D"Calibri,sans-serif" size=3D"3">return codes&#8221; on commands sent to=
 a network device. Section 5 talks about asynchronous messages sent by the n=
etwork device (without a corresponding incoming command). That is the differ=
ence.</font></p></div></div></span><span id=3D"OLK_SRC_BODY_SECTION" style=3D"co=
lor: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-size: 14px;"><div>=
<div lang=3D"ZH-CN" link=3D"#0563C1" vlink=3D"#954F72"><div class=3D"WordSection1"><=
p style=3D"mso-margin-top-alt:0cm;margin-right:0cm;margin-bottom:0cm;margin-le=
ft:27.0pt;margin-bottom:.0001pt"><span lang=3D"EN-US" style=3D"font-size: 11pt; =
font-family: Calibri, sans-serif; color: black;">&nbsp;<o:p></o:p></span></p=
><p class=3D"MsoNormal" style=3D"margin-left:27.0pt;text-indent:-18.0pt;vertical=
-align:middle"><span lang=3D"EN-US" style=3D"color:black">9.</span><span lang=3D"E=
N-US" style=3D"font-size: 7pt; font-family: 'Times New Roman', serif; color: b=
lack;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">Section 6:<o:p></o:p></span><=
/p><p class=3D"MsoNormal" style=3D"margin-left:54.0pt;text-indent:-18.0pt;vertic=
al-align:middle"><span lang=3D"EN-US" style=3D"color:black">a.</span><span lang=3D=
"EN-US" style=3D"font-size: 7pt; font-family: 'Times New Roman', serif; color:=
 black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">Not repeating remarks made ab=
out specific attributes (listed above) for each item in the BNF. Eg. Route-m=
etric/preference related remark made above about 2.3.</span></p></div></div>=
</div></span><div><br></div><div>NB&gt; Didn&#8217;t understand this comment=
. Can you rephrase.</div><span id=3D"OLK_SRC_BODY_SECTION" style=3D"color: rgb(0=
, 0, 0); font-family: Calibri, sans-serif; font-size: 14px;"><div><div lang=3D=
"ZH-CN" link=3D"#0563C1" vlink=3D"#954F72"><div class=3D"WordSection1"><p class=3D"M=
soNormal" style=3D"margin-left:54.0pt;text-indent:-18.0pt;vertical-align:middl=
e"><span lang=3D"EN-US" style=3D"color:black"><o:p></o:p></span></p><p style=3D"ms=
o-margin-top-alt:0cm;margin-right:0cm;margin-bottom:0cm;margin-left:54.0pt;m=
argin-bottom:.0001pt"><span lang=3D"EN-US" style=3D"font-size: 11pt; font-family=
: Calibri, sans-serif; color: black;">&nbsp;<o:p></o:p></span></p><p class=3D"=
MsoNormal" style=3D"margin-left:54.0pt;text-indent:-18.0pt;vertical-align:midd=
le"><span lang=3D"EN-US" style=3D"color:black">b.</span><span lang=3D"EN-US" style=
=3D"font-size: 7pt; font-family: 'Times New Roman', serif; color: black;">&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">In-label is not logically a n=
exthop attribute. It is infact a route. This should be fixed.<o:p></o:p></sp=
an></p><p style=3D"mso-margin-top-alt:0cm;margin-right:0cm;margin-bottom:0cm;m=
argin-left:54.0pt;margin-bottom:.0001pt"><span lang=3D"EN-US" style=3D"font-size=
: 11pt; font-family: Calibri, sans-serif; color: black;">&nbsp; &lt;mpls-lab=
el-operation&gt; ::=3D (&lt;MPLS_PUSH&gt; &lt;MPLS_LABEL&gt; [&lt;S_BIT&gt;]<o=
:p></o:p></span></p><p style=3D"mso-margin-top-alt:0cm;margin-right:0cm;margin=
-bottom:0cm;margin-left:54.0pt;margin-bottom:.0001pt"><span lang=3D"EN-US" sty=
le=3D"font-size: 11pt; font-family: Calibri, sans-serif; color: black;">&nbsp;=
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=
&nbsp;&nbsp; [&lt;TOS_VALUE&gt;] [&lt;TTL_VALUE&gt;]) |<o:p></o:p></span></p=
><p style=3D"mso-margin-top-alt:0cm;margin-right:0cm;margin-bottom:0cm;margin-=
left:54.0pt;margin-bottom:.0001pt"><span lang=3D"EN-US" style=3D"font-size: 11pt=
; font-family: Calibri, sans-serif; color: black;">&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (&lt;MPL=
S_SWAP&gt; &lt;IN_LABEL&gt; &lt;OUT_LABEL&gt;<o:p></o:p></span></p><p style=3D=
"mso-margin-top-alt:0cm;margin-right:0cm;margin-bottom:0cm;margin-left:54.0p=
t;margin-bottom:.0001pt"><span lang=3D"EN-US" style=3D"font-size: 11pt; font-fam=
ily: Calibri, sans-serif; color: black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&lt;TTL_ACTION&gt;])<=
/span></p></div></div></div></span><div><br></div><div>NB&gt; &nbsp;The gram=
mar already has content for MPLS style route lookups.</div><div><br></div><p=
 style=3D"margin: 0px; font-family: Menlo; color: rgb(192, 52, 30); background=
-color: rgb(248, 253, 196);"><font size=3D"3">&lt;match&gt; ::=3D &lt;IPV4&gt; &=
lt;ipv4-route&gt; | &lt;IPV6&gt; &lt;ipv6-route&gt; |</font></p><p style=3D"ma=
rgin: 0px; font-family: Menlo; color: rgb(192, 52, 30); background-color: rg=
b(248, 253, 196);"><font size=3D"3">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
&lt;MPLS&gt; &lt;MPLS_LABEL&gt; | &lt;IEEE_MAC&gt; &lt;MAC_ADDRESS&gt; |</fo=
nt></p><p style=3D"margin: 0px; font-family: Menlo; color: rgb(192, 52, 30); b=
ackground-color: rgb(248, 253, 196);"><font size=3D"3">&nbsp; &nbsp; &nbsp; &n=
bsp; &nbsp; &nbsp; &lt;INTERFACE&gt; &lt;INTERFACE_IDENTIFIER&gt;</font></p>=
<div><br></div><div>&lt;mpls-label-operation&gt; is a type of &lt;tunnel-enc=
ap&gt;, which in turn is a type of &lt;nexthop&gt;. The &lt;mpls-label-opera=
tion&gt; grammar allows one to perform MPLS SWAP operations on a given packe=
t. So you would first &lt;match&gt; the MPLS label and the nexthop operation=
 for the route would be a SWAP and the grammar above specifies that.</div><s=
pan id=3D"OLK_SRC_BODY_SECTION" style=3D"color: rgb(0, 0, 0); font-family: Calib=
ri, sans-serif; font-size: 14px;"><div><div lang=3D"ZH-CN" link=3D"#0563C1" vlin=
k=3D"#954F72"><div class=3D"WordSection1"><p style=3D"mso-margin-top-alt:0cm;margi=
n-right:0cm;margin-bottom:0cm;margin-left:54.0pt;margin-bottom:.0001pt"><spa=
n lang=3D"EN-US" style=3D"font-size: 11pt; font-family: Calibri, sans-serif; col=
or: black;"><o:p></o:p></span></p><p class=3D"MsoNormal" style=3D"margin-left:54=
.0pt;text-indent:-18.0pt;vertical-align:middle"><span lang=3D"EN-US" style=3D"co=
lor:black">c.</span><span lang=3D"EN-US" style=3D"font-size: 7pt; font-family: '=
Times New Roman', serif; color: black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=

</span><span lang=3D"EN-US" style=3D"color:black">VXLAN headers needs to have a=
 way to specify src/dst MAC in inner header, since it is possible to use VXL=
AN as a general-purpose encapsulation without L2-learning semantics.</span><=
/p></div></div></div></span><div><br></div><div>NB&gt; We discussed this off=
line a while back. The end discussion was that we did not want to provide wa=
ys to completely specify L2 frames in the context of RIB info model. Note th=
at the current grammar does not allow you to build a complete ethernet heade=
r.</div><div><br></div><span id=3D"OLK_SRC_BODY_SECTION" style=3D"color: rgb(0, =
0, 0); font-family: Calibri, sans-serif; font-size: 14px;"><div><div lang=3D"Z=
H-CN" link=3D"#0563C1" vlink=3D"#954F72"><div class=3D"WordSection1"><p class=3D"Mso=
Normal" style=3D"margin-left:27.0pt;text-indent:-18.0pt;vertical-align:middle"=
><span lang=3D"EN-US" style=3D"color:black">10.</span><span lang=3D"EN-US" style=3D"=
font-size: 7pt; font-family: 'Times New Roman', serif; color: black;">&nbsp;=
&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">Section 6 describes the RIB g=
rammar. The nexthop grammar is a part of that. However, some of that sub-gra=
mmar appears under section 7.</span></p></div></div></div></span><div><br></=
div><div>NB&gt; Section 7 are examples of using the RIB grammar. Sure it cou=
ld be part of Section 6. It won&#8217;t make a meaningful difference either =
ways.</div><div><br></div><span id=3D"OLK_SRC_BODY_SECTION" style=3D"color: rgb(=
0, 0, 0); font-family: Calibri, sans-serif; font-size: 14px;"><div><div lang=
=3D"ZH-CN" link=3D"#0563C1" vlink=3D"#954F72"><div class=3D"WordSection1"><p class=3D"=
MsoNormal" style=3D"margin-left:27.0pt;text-indent:-18.0pt;vertical-align:midd=
le"><span lang=3D"EN-US" style=3D"color:black">11.</span><span lang=3D"EN-US" styl=
e=3D"font-size: 7pt; font-family: 'Times New Roman', serif; color: black;">&nb=
sp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">Section 7 "Using the RIB gram=
mar" starts out by explaining how the complex nexthops maybe used. However, =
it ends up being a listing of the nexthop sub-grammar which should really ha=
ve been listed in section 6 along
 with the RIB grammar.<o:p></o:p></span></p><p style=3D"mso-margin-top-alt:0c=
m;margin-right:0cm;margin-bottom:0cm;margin-left:27.0pt;margin-bottom:.0001p=
t"><span lang=3D"EN-US" style=3D"font-size: 11pt; font-family: Calibri, sans-ser=
if; color: black;">I'd suggest either take the entirety of the next-hop gram=
mar listing to the section 6, or break section 7 so that the next-hop gramma=
r is listed in section 7 &amp; the "using
 the rib" grammar is a purely text only description of Rib/NH grammar maybe=
 used.</span></p></div></div></div></span><div><br></div><div>NB&gt; Section=
 7 is targeted towards how developers would use the grammar to write network=
 applications. So they should all stay together. For instance, Section 7.3 h=
as all text, but it refers to a &#8220;programming example&#8221; in Section=
 7.2.2. So moving Section 7.3 up would do more harm than good.</div><span id=
=3D"OLK_SRC_BODY_SECTION" style=3D"color: rgb(0, 0, 0); font-family: Calibri, sa=
ns-serif; font-size: 14px;"><div><div lang=3D"ZH-CN" link=3D"#0563C1" vlink=3D"#95=
4F72"><div class=3D"WordSection1"><p style=3D"mso-margin-top-alt:0cm;margin-righ=
t:0cm;margin-bottom:0cm;margin-left:27.0pt;margin-bottom:.0001pt"><span styl=
e=3D"font-family: Calibri, sans-serif; font-size: 11pt;">&nbsp;</span></p><p c=
lass=3D"MsoNormal" style=3D"margin-left:27.0pt;text-indent:-18.0pt;vertical-alig=
n:middle"><span lang=3D"EN-US" style=3D"color:black">12.</span><span lang=3D"EN-US=
" style=3D"font-size: 7pt; font-family: 'Times New Roman', serif; color: black=
;">&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">Syntax for &lt;nexthop-replic=
ate&gt;&nbsp; needs to be reconciled beween section 7.2.3 and section 6 wher=
e
<o:p></o:p></span></p><p style=3D"mso-margin-top-alt:0cm;margin-right:0cm;mar=
gin-bottom:0cm;margin-left:27.0pt;margin-bottom:.0001pt"><span lang=3D"EN-US" =
style=3D"font-size: 11pt; font-family: Calibri, sans-serif; color: black;">the=
re is an syntax mismatch,<o:p></o:p></span></p><p style=3D"mso-margin-top-alt:=
0cm;margin-right:0cm;margin-bottom:0cm;margin-left:27.0pt;margin-bottom:.000=
1pt"><span lang=3D"EN-US" style=3D"font-size: 11pt; font-family: Calibri, sans-s=
erif; color: black;">Doesn&#8217;t section 6 need to say:
<o:p></o:p></span></p><p style=3D"mso-margin-top-alt:0cm;margin-right:0cm;mar=
gin-bottom:0cm;margin-left:27.0pt;margin-bottom:.0001pt"><span lang=3D"EN-US" =
style=3D"font-size: 11pt; font-family: Calibri, sans-serif; color: black;">&lt=
;nexthop-replicate&gt; ::=3D &lt;NEXTHOP_REPLICATE&gt; &lt;nexthop&gt; &lt;nex=
thop&gt; ...<o:p></o:p></span></p><p style=3D"margin:0cm;margin-bottom:.0001pt=
"><span lang=3D"EN-US" style=3D"font-size: 11pt; font-family: Calibri, sans-seri=
f; color: black;">&nbsp;</span></p></div></div></div></span><div>NB&gt; Vers=
ion &#8211;06 of the draft had what you are asking for. See&nbsp;</div><a hr=
ef=3D"https://tools.ietf.org/html/draft-ietf-i2rs-rib-info-model-06#section-6"=
></a><div><a href=3D"https://tools.ietf.org/html/draft-ietf-i2rs-rib-info-mode=
l-06#section-6"></a><a href=3D"https://tools.ietf.org/html/draft-ietf-i2rs-rib=
-info-model-06#section-6">https://tools.ietf.org/html/draft-ietf-i2rs-rib-in=
fo-model-06#section-6</a></div><div><br></div><div>We were specifically aske=
d to remove the keyword &lt;NEXTHOP_REPLICATE&gt; because it was not correct=
 use of rBNF. The data-model can have such things, but not the info model. F=
olks were ok with keeping the examples (Section 7) as is.</div><div><br></di=
v><div>Thanks</div><div>Nitin</div><style><!--
/* Font Definitions */
@font-face
	{font-family:SimSun;
	panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
	{font-family:Tahoma;
	panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
	{font-family:SimSun;
	panose-1:2 1 6 0 3 1 1 1 1 1;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0cm;
	margin-bottom:.0001pt;
	font-size:11.0pt;
	font-family:"Calibri","sans-serif";}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:#0563C1;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:#954F72;
	text-decoration:underline;}
p
	{mso-style-priority:99;
	mso-margin-top-alt:auto;
	margin-right:0cm;
	mso-margin-bottom-alt:auto;
	margin-left:0cm;
	font-size:12.0pt;
	font-family:"Times New Roman","serif";}
span.EmailStyle18
	{mso-style-type:personal;
	font-family:"Calibri","sans-serif";
	color:windowtext;}
span.EmailStyle19
	{mso-style-type:personal-reply;
	font-family:"Calibri","sans-serif";
	color:#1F497D;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-size:10.0pt;}
@page WordSection1
	{size:612.0pt 792.0pt;
	margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
	{page:WordSection1;}
--></style></div></div></span></body></html>

--B_3549371328_7852828--



From nobody Tue Jun 21 16:38:41 2016
Return-Path: <nitin_bahadur@yahoo.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 4307412D754 for <i2rs@ietfa.amsl.com>; Tue, 21 Jun 2016 16:38:40 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.125
X-Spam-Level: 
X-Spam-Status: No, score=-4.125 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, MIME_QP_LONG_LINE=0.001, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, RP_MATCHES_RCVD=-1.426, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=yahoo.com
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 Wybs6CwU6-Kq for <i2rs@ietfa.amsl.com>; Tue, 21 Jun 2016 16:38:39 -0700 (PDT)
Received: from nm26-vm5.bullet.mail.gq1.yahoo.com (nm26-vm5.bullet.mail.gq1.yahoo.com [98.136.216.132]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 33E0C12D69E for <i2rs@ietf.org>; Tue, 21 Jun 2016 16:38:39 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1466552318; bh=Tp/tpxBHBE4Il6FghX/NV6uVzxc6wCeEE14GX0Ec3gI=; h=Date:Subject:From:To:CC:References:In-Reply-To:From:Subject; b=nssMdKcKxPE6yAxyYBRwYW7P+j/xbA4n1CZqhXPN0ThwRQeqmyTPGKVoikqygoo1v3NL/XRmRpZN2V22LzXsuyMD+nJ6CbgQkf3QSs2/GKHO6qBF48J+B54Fb3SVSMZU4+qQyqi9RBoZ94ZsltJO07KkEbJQ5HjsacnV9UqHgmGZCmP2Bg6o0pBo6m4IANoVKVj1f6lx03Q6+ZvWgf3LWUJM4UDZmlxcVvxrUeTtFB2WCo1zZpz5DGu7c5nJXoZsBmo6HwSGKplACB0LwbDu59gh/c8pl4eHPmR8uJU4agVSIzdv5BI6ADVbKguNcNfaDifB2KLrFi7dDR+gQshncg==
Received: from [98.137.12.191] by nm26.bullet.mail.gq1.yahoo.com with NNFMP; 21 Jun 2016 23:38:38 -0000
Received: from [208.71.42.201] by tm12.bullet.mail.gq1.yahoo.com with NNFMP; 21 Jun 2016 23:38:38 -0000
Received: from [127.0.0.1] by smtp212.mail.gq1.yahoo.com with NNFMP; 21 Jun 2016 23:38:38 -0000
X-Yahoo-Newman-Id: 519294.69519.bm@smtp212.mail.gq1.yahoo.com
X-Yahoo-Newman-Property: ymail-3
X-YMail-OSG: XZIOBqUVM1mzYQ9eE3aM68j8IuPQOnyDY2jLDl1km47Lrpb 6IHjpT2FroHxS_oS4QXW3LF814m7TSMRxCAL4jJlg_ewcApeBdaZD.TJEVHi QabaOzfdZx5ELZ5kJIeA3zrCvjXCqnDE0kFVENs2dsb6Zw1IiZxKs4AmMt0b ssFmgGupGSWRc0FfdVophQqCn3xryZtYWv3wQsYGDHsFcY_Pqvy4fY6Y9OmI FS1ZqwaaxQ1bsHaZlrf1EJJiRRWhzOWqsBkEY_PhtI1RoYrMSrF6.1ce_TnJ lufAH9fkmuNGJJCibLkyfRn4bEE66cFH.7g.f_2UHSyd6l60YfPtsPW7wUvZ euFrpGHirLD7Q2C5CbD5zLZcSxTSNIEzJAI3iyi2G6ziwbw7h99KxoC2dLq6 bKmgqcq6T4CwB3hdmYNOWFJXv6E7XqXu9JftdRfHE18FMjbarITtmOuQtrHW n77hoar0WQwC06T3eQeYrEqQA1AD0gVS.juTD6sDJmP9PwjkaZnOPQLgzai3 UVZcYS_C8_VegDnL4TUqLWs2yqPy.Y4ZbO_lVdA--
X-Yahoo-SMTP: jU6Na92swBBdqSRkLOL9Cp_LhHZgQAQoL10-
User-Agent: Microsoft-MacOutlook/14.5.9.151119
Date: Tue, 21 Jun 2016 16:38:30 -0700
From: Nitin Bahadur <nitin_bahadur@yahoo.com>
To: "Zhangxian (Xian)" <zhang.xian@huawei.com>, Ravi Singh <ravis@juniper.net>
Message-ID: <D38F1DBA.36937%nitin_bahadur@yahoo.com>
Thread-Topic: [i2rs] FW: Routing directorate QA review of draft-ietf-i2rs-rib-info-model
References: <D38EFA4A.3685E%nitin_bahadur@yahoo.com> <D38F1C01.3692D%nitin_bahadur@yahoo.com>
In-Reply-To: <D38F1C01.3692D%nitin_bahadur@yahoo.com>
Mime-version: 1.0
Content-type: multipart/alternative; boundary="B_3549371917_7850701"
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/mvsbO32mn-HiOiq5j_yZo6PAyLE>
Cc: "i2rs@ietf.org" <i2rs@ietf.org>, "draft-ietf-i2rs-rib-info-model@tools.ietf.org" <draft-ietf-i2rs-rib-info-model@tools.ietf.org>
Subject: Re: [i2rs] FW: Routing directorate QA review of draft-ietf-i2rs-rib-info-model
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Tue, 21 Jun 2016 23:38:40 -0000

> This message is in MIME format. Since your mail reader does not understand
this format, some or all of this message may not be legible.

--B_3549371917_7850701
Content-type: text/plain;
	charset="US-ASCII"
Content-transfer-encoding: 7bit


Section 2.2

b.     Interface_list and router-id: For a functioning routing-instance,
can't think of a routing-instance without either of those defined. So,
either the optionality aspect needs to be changed to "required" or specify
how a routing-instance would work with either missing.

NB> A routing instance can contain a RIB that has next-hops to other RIBs.
That is the reason interface-list and router-id are optional. I can add text
that clarification in.

NB> Text that was added:

"A routing instance may be created purely for the purposes of packet
processing and may not have any interfaces associated with it. For example,
an incoming packet in routing instance A might have a nexthop of routing
instance B and after packet processing in B, the nexthop might be routing
instance C. Thus, routing instance B is not associated with any interface.
And given that this routing instance does not do any control plane
interaction with other network devices, a ROUTER_ID is also not needed."



--B_3549371917_7850701
Content-type: text/html;
	charset="US-ASCII"
Content-transfer-encoding: quoted-printable

<html><head></head><body style=3D"word-wrap: break-word; -webkit-nbsp-mode: s=
pace; -webkit-line-break: after-white-space; color: rgb(0, 0, 0); font-size:=
 14px; font-family: Calibri, sans-serif;"><span id=3D"OLK_SRC_BODY_SECTION"><d=
iv style=3D"word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-brea=
k: after-white-space; color: rgb(0, 0, 0); font-size: 14px; font-family: Cal=
ibri, sans-serif;"><span id=3D"OLK_SRC_BODY_SECTION"><div style=3D"word-wrap: br=
eak-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">=
<span id=3D"OLK_SRC_BODY_SECTION" style=3D"color: rgb(0, 0, 0); font-family: Cal=
ibri, sans-serif; font-size: 14px;"><div lang=3D"ZH-CN" link=3D"#0563C1" vlink=3D"=
#954F72"><div class=3D"WordSection1"><p class=3D"MsoNormal" style=3D"margin-left:5=
4.0pt;text-indent:-18.0pt;vertical-align:middle"><br></p></div></div></span>=
<div style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-size=
: 14px;">Section 2.2</div><div style=3D"color: rgb(0, 0, 0); font-family: Cali=
bri, sans-serif; font-size: 14px;"><br></div><span id=3D"OLK_SRC_BODY_SECTION"=
 style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-size: 14=
px;"><div><div lang=3D"ZH-CN" link=3D"#0563C1" vlink=3D"#954F72"><div class=3D"WordS=
ection1"><p class=3D"MsoNormal" style=3D"margin-left:54.0pt;text-indent:-18.0pt;=
vertical-align:middle"><span lang=3D"EN-US" style=3D"color:black"><o:p></o:p></s=
pan></p><p class=3D"MsoNormal" style=3D"margin-left:54.0pt;text-indent:-18.0pt;v=
ertical-align:middle"><span lang=3D"EN-US" style=3D"color:black">b.</span><span =
lang=3D"EN-US" style=3D"font-size: 7pt; font-family: 'Times New Roman', serif; c=
olor: black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang=3D"EN-US" style=3D"color:black">Interface_list and router-id:=
 For a functioning routing-instance, can't think of a routing-instance witho=
ut either of those defined. So, either the optionality aspect needs to be ch=
anged to "required" or specify
 how a routing-instance would work with either missing.</span></p></div></d=
iv></div></span><div style=3D"color: rgb(0, 0, 0); font-family: Calibri, sans-=
serif; font-size: 14px;"><br></div><div style=3D"color: rgb(0, 0, 0); font-fam=
ily: Calibri, sans-serif; font-size: 14px;">NB&gt; A routing instance can co=
ntain a RIB that has next-hops to other RIBs. That is the reason interface-l=
ist and router-id are optional. I can add text that clarification in.</div><=
/div></span></div></span><div><br></div><div>NB&gt; Text that was added:</di=
v><div><br></div><div>"A routing instance may be created purely for the purp=
oses of packet processing and may not have any interfaces associated with it=
. For example, an incoming packet in routing instance A might have a nexthop=
 of routing instance B and after packet processing in B, the nexthop might b=
e routing instance C. Thus, routing instance B is not associated with any in=
terface. And given that this routing instance does not do any control plane =
interaction with other network devices, a ROUTER_ID is also not needed."</di=
v></body></html>

--B_3549371917_7850701--



From nobody Wed Jun 22 00:44:20 2016
Return-Path: <edwinsc@gmail.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 7DE5E12B054 for <i2rs@ietfa.amsl.com>; Wed, 22 Jun 2016 00:44:18 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.699
X-Spam-Level: 
X-Spam-Status: No, score=-2.699 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
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 YibYLFrpVv_V for <i2rs@ietfa.amsl.com>; Wed, 22 Jun 2016 00:44:16 -0700 (PDT)
Received: from mail-lb0-x22d.google.com (mail-lb0-x22d.google.com [IPv6:2a00:1450:4010:c04::22d]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 1EE51128E19 for <i2rs@ietf.org>; Wed, 22 Jun 2016 00:44:16 -0700 (PDT)
Received: by mail-lb0-x22d.google.com with SMTP id oe3so17215129lbb.1 for <i2rs@ietf.org>; Wed, 22 Jun 2016 00:44:16 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;  h=mime-version:from:date:message-id:subject:to; bh=5H5JH2KH3Qy5OlENvYWG/dDZmyC+M3TifchQ/h3CSqo=; b=fUB8TRI0lFSoI9C/Fi0B/9+BuSyf6fFMdr7yDopmkZSBjy062ltolsaJI0x3+J+pG3 tY9gMcS4yNQuvcltTXXiNKvU3oz2bMqKMoegBUX2ilhqnscmg0V9deopQc6iPoQCouHi w+WAM3fDaQ/45xJbRXmHu2Q4nR8t7wzgJHD31CqH76ReHqOJ9F9NhCBbuUvQN9Va0MKk Wx0miEuU7gJLv1undXVJKgwT227nH5CA2UmpcKrNOD4PaUmkYe5JdtHVI/vZj8iJn0MD 4imUEJpV8kEZ2/Yq1E3H8hMxyG3LTV7crjLFfoZHqXMQ3ofO8jVdeVgF+Kt7Mx5oFeC8 NxWw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=5H5JH2KH3Qy5OlENvYWG/dDZmyC+M3TifchQ/h3CSqo=; b=kKavB4XbcSvaIzVndyHfgsVdWk4RhUatNdgWeaioQk1i3GckQ4QE831Zt4hJQrzmS4 Hm6LMbP2Z13zTzBWK0/Y9Gk3XIZ2LJwesIUiFtrRogf94gye439Z1bRu7ua37Rs3Qvgb nHBSofS+c6hoNjZHOYxhfwCGDRgmWQOvWupSLdxfrs9yeALrE2iIV02oQQmH2mrQY0Jo AaYd6wMH3h42cMPQKT9oUbMXnSHKFsACIq22iZ4DhNWFNS86gSu808NlIKH0p+SGGMdR xkOZRiEG8oP+WkFWh2GCKEksEUgovIWnlgkFgUbTSOg+wWekJAmWY7BT8xPaizGcn95u K3wQ==
X-Gm-Message-State: ALyK8tKDNuytBN4283DUtLnwG+NWf+Se/QbDd+uOv4OMRHMZlDtQSAyNqGQ/0/uL7zU6f4eP+gr5dK4Jcz1TGw==
X-Received: by 10.194.134.230 with SMTP id pn6mr23299783wjb.165.1466581453820;  Wed, 22 Jun 2016 00:44:13 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.28.113.74 with HTTP; Wed, 22 Jun 2016 00:43:44 -0700 (PDT)
From: Edwin Cordeiro <edwinsc@gmail.com>
Date: Wed, 22 Jun 2016 09:43:44 +0200
Message-ID: <CAERpkxAbLVf5OkGPOkixGh9xi3qMutqp1puJzTbZzvn+VhOhqg@mail.gmail.com>
To: i2rs <i2rs@ietf.org>
Content-Type: multipart/alternative; boundary=089e01175e8196d7a90535d91a8c
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/eq65jFNjTowoF8g0x-i37JCpRcE>
Subject: [i2rs] Problem using rib-data-model RPC with rib-info-model Information (draft-ietf-i2rs-rib-data-model-05 + draft-ietf-i2rs-rib-info-model-08)
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 22 Jun 2016 07:44:18 -0000

--089e01175e8196d7a90535d91a8c
Content-Type: text/plain; charset=UTF-8

Hello all,

When trying to implement I2RS we are faced the following problem:

In draft-ietf-i2rs-rib-data-model-05#section-2.5 the RPC offer the
following Nexthop operations:
      +---x nh-add
      |  +---w input
      |  |  +---w rib-name              string
      |  |  +---w nexthop-id?           uint32
      |  |  +---w sharing-flag?         boolean
      |  |  +---w (nexthop-type)?
      |  |     ...
      |  +--ro output
      |     +--ro result        uint32
      |     +--ro reason?       string
      |     +--ro nexthop-id?   uint32
      +---x nh-delete
         +---w input
         |  +---w rib-name              string
         |  +---w nexthop-id?           uint32
         |  +---w sharing-flag?         boolean
         |  +---w (nexthop-type)?
         |     ...
         +--ro output
            +--ro result uint32
            +--ro reason? string

In these operations the Nexthop is directly connected to a RIB, but
in draft-ietf-i2rs-rib-info-model-08#section-2: RIB(s) contains Route(s)
and Route(s) contains Nexthop(s):

            routing-instance
            |             |
            |             |
      0..N  |             | 1..N
            |             |
        interface(s)     RIB(s)
                          |
                          |
                          | 0..N
                          |
                        route(s)
                        | | |
              +---------+ | +----------+
              |           |            |
         0..N |           |            |
route-attribute         match         nexthop
                          |
                         ...

Our questions are:
- How can we add a Nexthop without informing the parent Route?
- Looking at the RIB grammar (draft-ietf-i2rs-rib-info-model-08#section-6)
the Nexthop is also attached to a Route. Shouldn't Nexthop be part of RIB?
Maybe something like:

  <rib> ::= <RIB_NAME> <rib-family>
                      [<route> ... ]
                      [<nexthop> ...]
                      [ENABLE_IP_RPF_CHECK]

            routing-instance
            |      |
            |      |
      0..N  |      | 1..N
            |      |
    interface(s)  RIB(s)
                   |  | 0..N
                   |  +--------------+
              0..N |                 |
                   |                 |
                 route(s) ------> nexthop(s)
                 | |       1..N
       +---------+ |
       |           |
  0..N |           |
route-attribute  match
                   |
                  ...

If we misunderstood the model, could someone please explain why our
understanding is incorrect?

Best Regards,

Edwin Cordeiro

--089e01175e8196d7a90535d91a8c
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div class=3D"gmail_default" style=3D"font-family:verdana,=
sans-serif;font-size:small"><div class=3D"gmail_default">Hello all,</div><d=
iv class=3D"gmail_default"><br></div><div class=3D"gmail_default" style=3D"=
font-family:arial,sans-serif;font-size:12.8px"><font face=3D"verdana, sans-=
serif">When trying to implement I2RS we are faced the following problem:</f=
ont></div><div class=3D"gmail_default" style=3D"font-family:arial,sans-seri=
f;font-size:12.8px"><font face=3D"verdana, sans-serif"><br></font></div><di=
v class=3D"gmail_default" style=3D"font-family:arial,sans-serif;font-size:1=
2.8px"><font face=3D"verdana, sans-serif">In=C2=A0draft-ietf-i2rs-rib-data-=
model-05#section-2.5 the RPC offer the following Nexthop operations:</font>=
</div><div class=3D"gmail_default" style=3D"font-family:arial,sans-serif;fo=
nt-size:12.8px"><div class=3D"gmail_default"><font face=3D"monospace, monos=
pace">=C2=A0 =C2=A0 =C2=A0 +---x nh-add</font></div><div class=3D"gmail_def=
ault"><font face=3D"monospace, monospace">=C2=A0 =C2=A0 =C2=A0 | =C2=A0+---=
w input</font></div><div class=3D"gmail_default"><font face=3D"monospace, m=
onospace">=C2=A0 =C2=A0 =C2=A0 | =C2=A0| =C2=A0+---w rib-name =C2=A0 =C2=A0=
 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0string</font></div><div class=3D"gmail_d=
efault"><font face=3D"monospace, monospace">=C2=A0 =C2=A0 =C2=A0 | =C2=A0| =
=C2=A0+---w nexthop-id? =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 uint32</font></d=
iv><div class=3D"gmail_default"><font face=3D"monospace, monospace">=C2=A0 =
=C2=A0 =C2=A0 | =C2=A0| =C2=A0+---w sharing-flag? =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 boolean</font></div><div class=3D"gmail_default"><font face=3D"monospac=
e, monospace">=C2=A0 =C2=A0 =C2=A0 | =C2=A0| =C2=A0+---w (nexthop-type)?</f=
ont></div><div class=3D"gmail_default"><font face=3D"monospace, monospace">=
=C2=A0 =C2=A0 =C2=A0 | =C2=A0| =C2=A0 =C2=A0 ...</font></div><div class=3D"=
gmail_default"><font face=3D"monospace, monospace">=C2=A0 =C2=A0 =C2=A0 | =
=C2=A0+--ro output</font></div><div class=3D"gmail_default"><font face=3D"m=
onospace, monospace">=C2=A0 =C2=A0 =C2=A0 | =C2=A0 =C2=A0 +--ro result =C2=
=A0 =C2=A0 =C2=A0 =C2=A0uint32</font></div><div class=3D"gmail_default"><fo=
nt face=3D"monospace, monospace">=C2=A0 =C2=A0 =C2=A0 | =C2=A0 =C2=A0 +--ro=
 reason? =C2=A0 =C2=A0 =C2=A0 string</font></div><div class=3D"gmail_defaul=
t"><font face=3D"monospace, monospace">=C2=A0 =C2=A0 =C2=A0 | =C2=A0 =C2=A0=
 +--ro nexthop-id? =C2=A0 uint32</font></div><div class=3D"gmail_default"><=
font face=3D"monospace, monospace">=C2=A0 =C2=A0 =C2=A0 +---x nh-delete</fo=
nt></div><div class=3D"gmail_default"><font face=3D"monospace, monospace">=
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0+---w input</font></div><div class=3D"gma=
il_default"><font face=3D"monospace, monospace">=C2=A0 =C2=A0 =C2=A0 =C2=A0=
 =C2=A0| =C2=A0+---w rib-name =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0string</font></div><div class=3D"gmail_default"><font face=3D"monospace,=
 monospace">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0| =C2=A0+---w nexthop-id? =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 uint32</font></div><div class=3D"gmail_defa=
ult"><font face=3D"monospace, monospace">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0=
| =C2=A0+---w sharing-flag? =C2=A0 =C2=A0 =C2=A0 =C2=A0 boolean</font></div=
><div class=3D"gmail_default"><font face=3D"monospace, monospace">=C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0| =C2=A0+---w (nexthop-type)?</font></div><div c=
lass=3D"gmail_default"><font face=3D"monospace, monospace">=C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0| =C2=A0 =C2=A0 ...</font></div><div class=3D"gmail_def=
ault"><font face=3D"monospace, monospace">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0+--ro output</font></div><div class=3D"gmail_default"><font face=3D"mono=
space, monospace">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 +--ro result ui=
nt32</font></div><div class=3D"gmail_default"><font face=3D"monospace, mono=
space">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 +--ro reason? string</font=
></div></div><div class=3D"gmail_default" style=3D"font-family:arial,sans-s=
erif;font-size:12.8px"><span style=3D"font-family:verdana,sans-serif"><br><=
/span></div><div class=3D"gmail_default" style=3D"font-family:arial,sans-se=
rif;font-size:12.8px"><font face=3D"verdana, sans-serif">In these operation=
s the Nexthop is directly connected to a RIB, but in=C2=A0draft-ietf-i2rs-r=
ib-info-model-08#section-2:=C2=A0RIB(s) contains Route(s) and Route(s) cont=
ains Nexthop(s):</font></div><div class=3D"gmail_default" style=3D"font-fam=
ily:arial,sans-serif;font-size:12.8px"><font face=3D"verdana, sans-serif"><=
br></font></div><div class=3D"gmail_default" style=3D"font-family:arial,san=
s-serif;font-size:12.8px"><div class=3D"gmail_default"><font face=3D"monosp=
ace, monospace">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 routing-instance<=
/font></div><div class=3D"gmail_default"><font face=3D"monospace, monospace=
">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 | =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 |</font></div><div class=3D"gmail_default"><font face=3D"mono=
space, monospace">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 | =C2=A0 =C2=A0=
 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |</font></div><div class=3D"gmail_default"><fo=
nt face=3D"monospace, monospace">=C2=A0 =C2=A0 =C2=A0 0..N =C2=A0| =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 | 1..N</font></div><div class=3D"gmail_d=
efault"><font face=3D"monospace, monospace">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 | =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |</font></div><div c=
lass=3D"gmail_default"><font face=3D"monospace, monospace">=C2=A0 =C2=A0 =
=C2=A0 =C2=A0 interface(s) =C2=A0 =C2=A0 RIB(s)</font></div><div class=3D"g=
mail_default"><font face=3D"monospace, monospace">=C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |</font>=
</div><div class=3D"gmail_default"><font face=3D"monospace, monospace">=C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 |</font></div><div class=3D"gmail_default"><font face=3D"mono=
space, monospace">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 | 0..N</font></div><div class=3D"gmail_d=
efault"><font face=3D"monospace, monospace">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |</font></div><=
div class=3D"gmail_default"><font face=3D"monospace, monospace">=C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 r=
oute(s)</font></div><div class=3D"gmail_default"><font face=3D"monospace, m=
onospace"><div class=3D"gmail_default">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 | | |</div></font><font fa=
ce=3D"monospace, monospace"><div class=3D"gmail_default">=C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 +---------+ | +----------+</div><div class=
=3D"gmail_default">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 | =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 | =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0=
|</div></font><font face=3D"monospace, monospace"><div class=3D"gmail_defau=
lt">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A00..N | =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 | =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0|</div></font><font face=
=3D"monospace, monospace"><div class=3D"gmail_default">route-attribute =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 match =C2=A0 =C2=A0 =C2=A0 =C2=A0 nexthop</div><di=
v class=3D"gmail_default">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |</div></font><font face=3D"monos=
pace, monospace"><div class=3D"gmail_default">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0...</div></fo=
nt><font face=3D"monospace, monospace"><div class=3D"gmail_default">=C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0</div></font></div></div><d=
iv class=3D"gmail_default" style=3D"font-family:arial,sans-serif;font-size:=
12.8px"><span style=3D"font-family:verdana,sans-serif">Our questions are:</=
span><br></div><div class=3D"gmail_default" style=3D"font-family:arial,sans=
-serif;font-size:12.8px"><font face=3D"verdana, sans-serif">- How can we ad=
d a Nexthop without informing the parent Route?</font></div><div class=3D"g=
mail_default" style=3D"font-family:arial,sans-serif;font-size:12.8px"><font=
 face=3D"verdana, sans-serif">- Looking at the RIB grammar (draft-ietf-i2rs=
-rib-info-model-08#section-6) the Nexthop is also attached to a Route. Shou=
ldn&#39;t Nexthop be part of RIB? Maybe something like:</font></div><div cl=
ass=3D"gmail_default" style=3D"font-family:arial,sans-serif;font-size:12.8p=
x"><span style=3D"font-family:verdana,sans-serif"><br></span></div><div cla=
ss=3D"gmail_default" style=3D"font-family:arial,sans-serif;font-size:12.8px=
"><div class=3D"gmail_default"><font face=3D"monospace, monospace"><div cla=
ss=3D"gmail_default">=C2=A0 &lt;rib&gt; ::=3D &lt;RIB_NAME&gt; &lt;rib-fami=
ly&gt;</div><div class=3D"gmail_default">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0=
 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 [&lt;route&gt; ... ]</div><div c=
lass=3D"gmail_default">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 [&lt;nexthop&gt; ...]</div><div class=3D"gmail_def=
ault">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0=
 =C2=A0 [ENABLE_IP_RPF_CHECK]</div></font></div><div class=3D"gmail_default=
"><font face=3D"monospace, monospace"><br></font></div><div class=3D"gmail_=
default"><font face=3D"monospace, monospace">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 routing-instance</font></div><div class=3D"gmail_default"><fo=
nt face=3D"monospace, monospace">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
| =C2=A0 =C2=A0 =C2=A0| =C2=A0 =C2=A0 =C2=A0</font></div><div class=3D"gmai=
l_default"><font face=3D"monospace, monospace">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 | =C2=A0 =C2=A0 =C2=A0| =C2=A0 =C2=A0 =C2=A0</font></div><div=
 class=3D"gmail_default"><font face=3D"monospace, monospace">=C2=A0 =C2=A0 =
=C2=A0 0..N =C2=A0| =C2=A0 =C2=A0 =C2=A0|=C2=A0</font><span style=3D"font-f=
amily:monospace,monospace">1..N</span><font face=3D"monospace, monospace">=
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0=C2=A0</font></div><=
div class=3D"gmail_default"><font face=3D"monospace, monospace">=C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 | =C2=A0 =C2=A0 =C2=A0|=C2=A0</font><font f=
ace=3D"monospace, monospace">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0=C2=
=A0</font></div><div class=3D"gmail_default"><font face=3D"monospace, monos=
pace">=C2=A0 =C2=A0 interface(s) =C2=A0RIB(s) =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0</font></div><div class=3D"gmail_default"><font face=3D=
"monospace, monospace">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0| =C2=A0|=C2=A00..N=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0</font></div><div class=3D"gmail_default"><font face=3D"mo=
nospace, monospace">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0=
 =C2=A0 =C2=A0| =C2=A0+--------------+</font></div><div class=3D"gmail_defa=
ult"><font face=3D"monospace, monospace">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0=
 =C2=A0 =C2=A0=C2=A00..N=C2=A0| =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0=C2=A0</font><span style=3D"font-family:monospace,monospace">|=
</span></div><div class=3D"gmail_default"><font face=3D"monospace, monospac=
e">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0| =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0=C2=A0</font><span s=
tyle=3D"font-family:monospace,monospace">|</span></div><div class=3D"gmail_=
default"><font face=3D"monospace, monospace">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0route(s) ------&gt;=C2=A0</font><span sty=
le=3D"font-family:monospace,monospace">nexthop(s)</span></div><div class=3D=
"gmail_default"><font face=3D"monospace, monospace"><div class=3D"gmail_def=
ault">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0| | =C2=
=A0 =C2=A0 =C2=A0 1..N</div></font><font face=3D"monospace, monospace"><div=
 class=3D"gmail_default">=C2=A0 =C2=A0 =C2=A0 =C2=A0+---------+ |=C2=A0</di=
v><div class=3D"gmail_default">=C2=A0 =C2=A0 =C2=A0 =C2=A0| =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 |=C2=A0</div></font><font face=3D"monospace, monospace=
"><div class=3D"gmail_default">=C2=A0 0..N | =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 |=C2=A0</div></font><font face=3D"monospace, monospace"><div class=
=3D"gmail_default">route-attribute =C2=A0match=C2=A0</div><div class=3D"gma=
il_default">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0|</div></font><font face=3D"monospace, monospace"><div class=3D"gmail=
_default">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 ..=
.</div></font></div></div><div class=3D"gmail_default" style=3D"font-family=
:arial,sans-serif;font-size:12.8px"><span style=3D"font-family:verdana,sans=
-serif">=C2=A0=C2=A0</span></div><div class=3D"gmail_default" style=3D"font=
-family:arial,sans-serif;font-size:12.8px"><font face=3D"verdana, sans-seri=
f">If we misunderstood the model, could someone please explain why our unde=
rstanding is incorrect?</font></div><div class=3D"gmail_default" style=3D"f=
ont-family:arial,sans-serif;font-size:12.8px"><font face=3D"verdana, sans-s=
erif"><br></font></div><div class=3D"gmail_default" style=3D"font-family:ar=
ial,sans-serif;font-size:12.8px"><font face=3D"verdana, sans-serif">Best Re=
gards,</font></div></div><br clear=3D"all"><div><div class=3D"gmail_signatu=
re" data-smartmail=3D"gmail_signature"><div dir=3D"ltr"><div><font face=3D"=
verdana, sans-serif">Edwin Cordeiro</font></div></div></div></div>
</div>

--089e01175e8196d7a90535d91a8c--


From nobody Wed Jun 22 07:02:44 2016
Return-Path: <shares@ndzh.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 1F78F12D528 for <i2rs@ietfa.amsl.com>; Wed, 22 Jun 2016 07:02:42 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.74
X-Spam-Level: *
X-Spam-Status: No, score=1.74 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, HTML_FONT_LOW_CONTRAST=0.001, HTML_MESSAGE=0.001, RDNS_NONE=0.793] autolearn=no autolearn_force=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 z8WJu8YALg5d for <i2rs@ietfa.amsl.com>; Wed, 22 Jun 2016 07:02:35 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 7D21A12D51D for <i2rs@ietf.org>; Wed, 22 Jun 2016 07:02:35 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=184.157.84.183; 
From: "Susan Hares" <shares@ndzh.com>
To: <i2rs@ietf.org>
Date: Wed, 22 Jun 2016 10:02:14 -0400
Message-ID: <0ade01d1cc8e$ae12b920$0a382b60$@ndzh.com>
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="----=_NextPart_000_0ADF_01D1CC6D.27033C00"
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AdHMjqSCiSpHMV9/TYmpjRPFERdz9A==
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/QeSo6O4B-NdpQZR2j6P3yU4z7b0>
Subject: [i2rs] FW: I2RS Interim on Wednesday 6/22/2016 at 10:00am - 11:30am EDT - topic Ephemeral State Requirements - Starting now
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 22 Jun 2016 14:02:42 -0000

This is a multipart message in MIME format.

------=_NextPart_000_0ADF_01D1CC6D.27033C00
Content-Type: multipart/alternative;
	boundary="----=_NextPart_001_0AE0_01D1CC6D.27033C00"


------=_NextPart_001_0AE0_01D1CC6D.27033C00
Content-Type: text/plain;
	charset="utf-8"
Content-Transfer-Encoding: quoted-printable

I2RS WG:=20

=20

Interim meeting is starting now.   We are discussing ephemeral state. =20

=20

Sue=20

=20

From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Susan Hares
Sent: Tuesday, June 21, 2016 3:40 PM
To: i2rs@ietf.org
Cc: 'Russ White'; 'Jeffrey Haas'; akatlas@gmail.com
Subject: [i2rs] I2RS Interim on Wednesday 6/22/2016 at 10:00am - 11:30am =
EDT - topic Ephemeral State Requirements

=20

I2RS WG:=20

=20

An I2RS interim is schedule for 10:00am =E2=80=93 11:30am on Wednesday =
June 22, 2016.   The ephemeral state document has 15 requirements for =
Ephemeral state, and 2 requirements for pub/sub support of ephemeral =
state. =20

=20

=20

I2RS interim=20

=20

Wednesday, June 22, 2016=20

10:00 am  |  Eastern Daylight Time (New York, GMT-04:00)  |  1 hr 30 =
mins=20

=20

Webex - =
https://ietf.webex.com/ietf/j.php?MTID=3Dm5869d472f054eead724ef69b55a1271=
c

Meeting number (access code): 640 065 533=20

Meeting password: JFZGgVPm

=20

Join by phone

1-877-668-4493 Call-in toll free number (US/Canada)

1-650-479-3208 Call-in toll number (US/Canada)

=20

=20

Topic:=20

=20

1) Review of Opstate requirements=20

                a) Opstate being decided in netmod=20

                b) Validation for I2RS Data models          =20

                   Option 1: Declare all I2RS Operational State, and

       allow configuration + operational state to be=20

                   validated as I2RS drafts specifies=20

                  =20

                   Option 2: Work through Configuration +=20

                   operational ephemeral state with netconf

               =20

2) Walk through Ephemeral State requirements=20

=20

=20

=20

From: I2RS Working Group [mailto:messenger@webex.com]=20
Sent: Tuesday, June 21, 2016 3:19 PM
To: i2rs-chairs@tools.ietf.org
Subject: (Forward to others) WebEx meeting invitation: I2RS Ephemeral =
State requirements

=20




You can forward this invitation to others.=20

=20


Hello,=20


I2RS Working Group invites you to join this WebEx meeting.=20

=20


=20

=20


I2RS Ephemeral State requirements=20


Wednesday, June 22, 2016=20


10:00 am  |  Eastern Daylight Time (New York, GMT-04:00)  |  1 hr 30 =
mins=20

=20


Meeting number (access code): 640 065 533=20

=20


Meeting password: JFZGgVPm

=20


=20

=20



 =
<https://ietf.webex.com/ietf/j.php?MTID=3Dmb0237e710fb9449283ce534c3e996f=
8b> Add to Calendar=20


When it's time,  =
<https://ietf.webex.com/ietf/j.php?MTID=3Dm5869d472f054eead724ef69b55a127=
1c> join the meeting.

=20


=20

=20


Join by phone


1-877-668-4493 Call-in toll free number (US/Canada)


1-650-479-3208 Call-in toll number (US/Canada)


 <https://www.webex.com/pdf/tollfree_restrictions.pdf> Toll-free calling =
restrictions

=20


=20

=20


 <https://help.webex.com/docs/DOC-5412> Can't join the meeting?=20

=20


=20

=20


IMPORTANT NOTICE: Please note that this WebEx service allows audio and =
other information sent during the session to be recorded, which may be =
discoverable in a legal matter. By joining this session, you =
automatically consent to such recordings. If you do not consent to being =
recorded, discuss your concerns with the host or do not join the =
session.

=20


------=_NextPart_001_0AE0_01D1CC6D.27033C00
Content-Type: text/html;
	charset="utf-8"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" =
xmlns:o=3D"urn:schemas-microsoft-com:office:office" =
xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" =
xmlns=3D"http://www.w3.org/TR/REC-html40"><head><meta =
http-equiv=3DContent-Type content=3D"text/html; charset=3Dutf-8"><meta =
name=3DGenerator content=3D"Microsoft Word 14 (filtered =
medium)"><style><!--
/* Font Definitions */
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
	{font-family:Tahoma;
	panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0in;
	margin-bottom:.0001pt;
	font-size:12.0pt;
	font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	font-family:"Arial","sans-serif";
	color:#666666;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	font-family:"Arial","sans-serif";
	color:#666666;
	text-decoration:underline;}
p
	{mso-style-priority:99;
	mso-margin-top-alt:auto;
	margin-right:0in;
	mso-margin-bottom-alt:auto;
	margin-left:0in;
	font-size:12.0pt;
	font-family:"Times New Roman","serif";}
p.MsoAcetate, li.MsoAcetate, div.MsoAcetate
	{mso-style-priority:99;
	mso-style-link:"Balloon Text Char";
	margin:0in;
	margin-bottom:.0001pt;
	font-size:8.0pt;
	font-family:"Tahoma","sans-serif";}
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
	{mso-style-priority:34;
	margin-top:0in;
	margin-right:0in;
	margin-bottom:0in;
	margin-left:.5in;
	margin-bottom:.0001pt;
	font-size:12.0pt;
	font-family:"Times New Roman","serif";}
span.EmailStyle19
	{mso-style-type:personal;
	font-family:"Calibri","sans-serif";
	color:#1F497D;}
span.BalloonTextChar
	{mso-style-name:"Balloon Text Char";
	mso-style-priority:99;
	mso-style-link:"Balloon Text";
	font-family:"Tahoma","sans-serif";}
span.EmailStyle22
	{mso-style-type:personal-reply;
	font-family:"Calibri","sans-serif";
	color:#1F497D;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-size:10.0pt;}
@page WordSection1
	{size:8.5in 11.0in;
	margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
	{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]--></head><body lang=3DEN-US =
link=3D"#666666" vlink=3D"#666666"><div class=3DWordSection1><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>I2RS WG: <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Interim meeting is starting now. =C2=A0=C2=A0We are discussing =
ephemeral state.=C2=A0 <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Sue <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><div><div =
style=3D'border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in =
0in 0in'><p class=3DMsoNormal><b><span =
style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span>=
</b><span style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif"'> =
i2rs [mailto:i2rs-bounces@ietf.org] <b>On Behalf Of </b>Susan =
Hares<br><b>Sent:</b> Tuesday, June 21, 2016 3:40 PM<br><b>To:</b> =
i2rs@ietf.org<br><b>Cc:</b> 'Russ White'; 'Jeffrey Haas'; =
akatlas@gmail.com<br><b>Subject:</b> [i2rs] I2RS Interim on Wednesday =
6/22/2016 at 10:00am - 11:30am EDT - topic Ephemeral State =
Requirements<o:p></o:p></span></p></div></div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>I2RS WG: <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>An I2RS interim is schedule for 10:00am =E2=80=93 11:30am on =
Wednesday June 22, 2016.&nbsp; &nbsp;The ephemeral state document has 15 =
requirements for Ephemeral state, and 2 requirements for pub/sub support =
of ephemeral state. &nbsp;<o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><b><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>I2RS interim <o:p></o:p></span></b></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Wednesday, June 22, 2016 <o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>10:00 am&nbsp; |&nbsp; Eastern Daylight Time (New York, =
GMT-04:00)&nbsp; |&nbsp; 1 hr 30 mins <o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Webex - <a =
href=3D"https://ietf.webex.com/ietf/j.php?MTID=3Dm5869d472f054eead724ef69=
b55a1271c">https://ietf.webex.com/ietf/j.php?MTID=3Dm5869d472f054eead724e=
f69b55a1271c</a><o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Meeting number (access code): 640 065 533 <o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Meeting password: JFZGgVPm<o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Join by phone<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>1-877-668-4493 Call-in toll free number =
(US/Canada)<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>1-650-479-3208 Call-in toll number =
(US/Canada)<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Topic: <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>1) Review of Opstate requirements <o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp; a) Opstate being decided in netmod =
<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp; b) Validation for I2RS Data =
models&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; Option 1: Declare all I2RS Operational =
State, and<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; allow configuration + =
operational state to be <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;validated as I2RS drafts =
specifies <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;<o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;Option 2: Work through =
Configuration + <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;operational ephemeral state with =
netconf<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp; <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>2) Walk through Ephemeral State requirements <o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><div><div =
style=3D'border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in =
0in 0in'><p class=3DMsoNormal><b><span =
style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span>=
</b><span style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif"'> =
I2RS Working Group [<a =
href=3D"mailto:messenger@webex.com">mailto:messenger@webex.com</a>] =
<br><b>Sent:</b> Tuesday, June 21, 2016 3:19 PM<br><b>To:</b> <a =
href=3D"mailto:i2rs-chairs@tools.ietf.org">i2rs-chairs@tools.ietf.org</a>=
<br><b>Subject:</b> (Forward to others) WebEx meeting invitation: I2RS =
Ephemeral State requirements<o:p></o:p></span></p></div></div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p><table class=3DMsoNormalTable =
border=3D0 cellpadding=3D0 align=3Dleft width=3D"100%" =
style=3D'width:100.0%'><tr><td style=3D'padding:3.75pt 0in 0in =
0in'><table class=3DMsoNormalTable border=3D0 cellpadding=3D0 =
align=3Dleft width=3D525 =
style=3D'width:393.75pt;margin-left:3.75pt'><tr><td valign=3Dtop =
style=3D'padding:0in 0in 0in 0in'><table class=3DMsoNormalTable =
border=3D0 cellpadding=3D0 width=3D"100%" style=3D'width:100.0%'><tr><td =
style=3D'padding:0in 0in 0in 0in'><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666'=
>You can forward this invitation to others. =
<o:p></o:p></span></p></td></tr></table><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666;=
display:none'><o:p>&nbsp;</o:p></span></p><table class=3DMsoNormalTable =
border=3D0 cellpadding=3D0 width=3D525 style=3D'width:393.75pt'><tr><td =
style=3D'padding:0in 0in 0in 0in'><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#4D4D4D'=
>Hello, <o:p></o:p></span></p></td></tr><tr><td style=3D'padding:7.5pt =
0in 0in 0in'><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#4D4D4D'=
>I2RS Working Group invites you to join this WebEx meeting. =
<o:p></o:p></span></p></td></tr></table><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666;=
display:none'><o:p>&nbsp;</o:p></span></p><table class=3DMsoNormalTable =
border=3D0 cellpadding=3D0 width=3D525 style=3D'width:393.75pt'><tr =
style=3D'height:15.0pt'><td style=3D'padding:0in 0in 0in =
0in;height:15.0pt'><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666'=
>&nbsp;<o:p></o:p></span></p></td></tr></table><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666;=
display:none'><o:p>&nbsp;</o:p></span></p><table class=3DMsoNormalTable =
border=3D0 cellpadding=3D0 width=3D"100%" style=3D'width:100.0%'><tr><td =
style=3D'padding:0in 0in 0in 0in'><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><b><span =
style=3D'font-family:"Arial","sans-serif";color:#4D4D4D'>I2RS Ephemeral =
State requirements</span></b><span =
style=3D'font-family:"Arial","sans-serif";color:#4D4D4D'> =
<o:p></o:p></span></p></td></tr><tr><td style=3D'padding:0in 0in 0in =
0in'><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666'=
>Wednesday, June 22, 2016 <o:p></o:p></span></p></td></tr><tr><td =
style=3D'padding:0in 0in 0in 0in'><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666'=
>10:00 am&nbsp;&nbsp;|&nbsp;&nbsp;Eastern Daylight Time (New York, =
GMT-04:00)&nbsp;&nbsp;|&nbsp;&nbsp;1 hr 30 mins =
<o:p></o:p></span></p></td></tr></table><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666;=
display:none'><o:p>&nbsp;</o:p></span></p><table class=3DMsoNormalTable =
border=3D0 cellpadding=3D0 width=3D0 =
style=3D'width:0in;width:auto!important'><tr><td style=3D'padding:0in =
0in 0in 0in'><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666'=
>Meeting number (access code): 640 065 533 =
<o:p></o:p></span></p></td></tr></table><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666;=
display:none'><o:p>&nbsp;</o:p></span></p><table class=3DMsoNormalTable =
border=3D0 cellpadding=3D0 width=3D0 =
style=3D'width:0in;width:auto!important'><tr><td style=3D'padding:0in =
0in 0in 0in'><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666'=
>Meeting password: JFZGgVPm<o:p></o:p></span></p></td></tr></table><p =
class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666;=
display:none'><o:p>&nbsp;</o:p></span></p><table class=3DMsoNormalTable =
border=3D0 cellpadding=3D0 width=3D525 style=3D'width:393.75pt'><tr =
style=3D'height:15.0pt'><td style=3D'padding:0in 0in 0in =
0in;height:15.0pt'><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666'=
>&nbsp;<o:p></o:p></span></p></td></tr></table><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666'=
><o:p>&nbsp;</o:p></span></p><table class=3DMsoNormalTable border=3D0 =
cellpadding=3D0 width=3D0 =
style=3D'width:0in;width:auto!important'><tr><td style=3D'padding:0in =
0in 0in 0in;width:auto!important'><table class=3DMsoNormalTable =
border=3D1 cellspacing=3D0 cellpadding=3D0 width=3D0 =
style=3D'width:0in;background:#43A942;border:solid #43A942 =
1.5pt;width:auto!important'><tr><td style=3D'border:none;padding:10.5pt =
15.0pt 10.5pt 15.0pt;width:auto!important'><p class=3DMsoNormal =
align=3Dcenter =
style=3D'text-align:center;line-height:15.0pt;mso-element:frame;mso-eleme=
nt-frame-hspace:2.25pt;mso-element-wrap:around;mso-element-anchor-vertica=
l:paragraph;mso-element-anchor-horizontal:column;mso-height-rule:exactly'=
><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666'=
><a =
href=3D"https://ietf.webex.com/ietf/j.php?MTID=3Dmb0237e710fb9449283ce534=
c3e996f8b"><span =
style=3D'font-size:15.0pt;color:white;text-decoration:none'>Add to =
Calendar</span></a> <o:p></o:p></span></p></td></tr></table></td><td =
style=3D'padding:0in 0in 0in 0in;width:auto!important'><table =
class=3DMsoNormalTable border=3D0 cellspacing=3D0 cellpadding=3D0 =
width=3D0 =
style=3D'width:0in;width:auto!important;min-width:186px!important'><tr><t=
d style=3D'padding:0in 0in 0in =
12.0pt;width:auto!important;min-width:186px!important'><p =
class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666'=
>When it's time, <a =
href=3D"https://ietf.webex.com/ietf/j.php?MTID=3Dm5869d472f054eead724ef69=
b55a1271c"><span style=3D'color:#00AFF9;text-decoration:none'>join the =
meeting</span></a>.<o:p></o:p></span></p></td></tr></table></td></tr></ta=
ble><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666;=
display:none'><o:p>&nbsp;</o:p></span></p><table class=3DMsoNormalTable =
border=3D0 cellpadding=3D0 width=3D525 style=3D'width:393.75pt'><tr =
style=3D'height:15.0pt'><td style=3D'padding:0in 0in 0in =
0in;height:15.0pt'><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666'=
>&nbsp;<o:p></o:p></span></p></td></tr></table><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666;=
display:none'><o:p>&nbsp;</o:p></span></p><table class=3DMsoNormalTable =
border=3D0 cellpadding=3D0 width=3D525 style=3D'width:393.75pt'><tr><td =
style=3D'padding:0in 0in 0in 0in'><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><b><span =
style=3D'font-family:"Arial","sans-serif";color:#666666'>Join by =
phone</span></b><span =
style=3D'font-family:"Arial","sans-serif";color:#666666'><o:p></o:p></spa=
n></p></td></tr><tr><td style=3D'padding:0in 0in 0in 0in'><p =
class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><b><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666'=
>1-877-668-4493</span></b><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666'=
>&nbsp;Call-in toll free number =
(US/Canada)<o:p></o:p></span></p></td></tr><tr><td style=3D'padding:0in =
0in 0in 0in'><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><b><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666'=
>1-650-479-3208</span></b><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666'=
>&nbsp;Call-in toll number =
(US/Canada)<o:p></o:p></span></p></td></tr><tr><td style=3D'padding:0in =
0in 0in 0in'><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666'=
><a href=3D"https://www.webex.com/pdf/tollfree_restrictions.pdf"><span =
style=3D'font-size:10.0pt;color:#00AFF9;text-decoration:none'>Toll-free =
calling =
restrictions</span></a><o:p></o:p></span></p></td></tr></table><p =
class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666;=
display:none'><o:p>&nbsp;</o:p></span></p><table class=3DMsoNormalTable =
border=3D0 cellpadding=3D0 width=3D525 style=3D'width:393.75pt'><tr =
style=3D'height:15.0pt'><td style=3D'padding:0in 0in 0in =
0in;height:15.0pt'><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666'=
>&nbsp;<o:p></o:p></span></p></td></tr></table><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666;=
display:none'><o:p>&nbsp;</o:p></span></p><table class=3DMsoNormalTable =
border=3D0 cellpadding=3D0 width=3D525 style=3D'width:393.75pt'><tr><td =
style=3D'padding:0in 0in 0in 0in'><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:10.0pt;font-family:"Arial","sans-serif";color:#666666'=
><a href=3D"https://help.webex.com/docs/DOC-5412"><span =
style=3D'color:#00AFF9;text-decoration:none'>Can't join the meeting? =
</span></a><o:p></o:p></span></p></td></tr></table><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666;=
display:none'><o:p>&nbsp;</o:p></span></p><table class=3DMsoNormalTable =
border=3D0 cellpadding=3D0 width=3D525 style=3D'width:393.75pt'><tr =
style=3D'height:7.5pt'><td style=3D'padding:0in 0in 0in =
0in;height:7.5pt'><p class=3DMsoNormal =
style=3D'mso-line-height-alt:7.5pt;mso-element:frame;mso-element-frame-hs=
pace:2.25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph=
;mso-element-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666'=
>&nbsp;<o:p></o:p></span></p></td></tr></table><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:11.5pt;font-family:"Arial","sans-serif";color:#666666;=
display:none'><o:p>&nbsp;</o:p></span></p><table class=3DMsoNormalTable =
border=3D0 cellpadding=3D0 width=3D525 style=3D'width:393.75pt'><tr><td =
style=3D'padding:0in 0in 0in 0in'><p class=3DMsoNormal =
style=3D'line-height:15.0pt;mso-element:frame;mso-element-frame-hspace:2.=
25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly'><span =
style=3D'font-size:9.0pt;font-family:"Arial","sans-serif";color:#A0A0A0'>=
IMPORTANT NOTICE: Please note that this WebEx service allows audio and =
other information sent during the session to be recorded, which may be =
discoverable in a legal matter. By joining this session, you =
automatically consent to such recordings. If you do not consent to being =
recorded, discuss your concerns with the host or do not join the =
session.<o:p></o:p></span></p></td></tr></table><p =
class=3DMsoNormal><o:p></o:p></p></td></tr></table></td></tr></table><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div></body></html>
------=_NextPart_001_0AE0_01D1CC6D.27033C00--

------=_NextPart_000_0ADF_01D1CC6D.27033C00
Content-Type: application/octet-stream;
	name="WebEx_Meeting.ics"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
	filename="WebEx_Meeting.ics"

BEGIN:VCALENDAR=0A=
PRODID:-//Microsoft Corporation//Outlook 10.0 MIMEDIR//EN=0A=
VERSION:2.0=0A=
METHOD:REQUEST=0A=
BEGIN:VTIMEZONE=0A=
TZID:Eastern Time=0A=
BEGIN:STANDARD=0A=
DTSTART:20141101T020000=0A=
RRULE:FREQ=3DYEARLY;INTERVAL=3D1;BYDAY=3D1SU;BYMONTH=3D11=0A=
TZOFFSETFROM:-0400=0A=
TZOFFSETTO:-0500=0A=
TZNAME:Standard Time=0A=
END:STANDARD=0A=
BEGIN:DAYLIGHT=0A=
DTSTART:20140301T020000=0A=
RRULE:FREQ=3DYEARLY;INTERVAL=3D1;BYDAY=3D2SU;BYMONTH=3D3=0A=
TZOFFSETFROM:-0500=0A=
TZOFFSETTO:-0400=0A=
TZNAME:Daylight Savings Time=0A=
END:DAYLIGHT=0A=
END:VTIMEZONE=0A=
BEGIN:VEVENT=0A=
ATTENDEE;CN=3D"I2RS Working =
Group";ROLE=3DREQ-PARTICIPANT;RSVP=3DTRUE:MAILTO:i2rs-chairs@tools.ietf.o=
rg=0A=
ORGANIZER;CN=3D"I2RS Working Group":MAILTO:i2rs-chairs@tools.ietf.org=0A=
DTSTART;TZID=3D"Eastern Time":20160622T100000=0A=
DTEND;TZID=3D"Eastern Time":20160622T113000=0A=
LOCATION:https://ietf.webex.com/ietf=0A=
TRANSP:OPAQUE=0A=
SEQUENCE:1466536763=0A=
UID:2fa6e8bd-d1af-4e19-b406-1d61390cacc3=0A=
DTSTAMP:20160622T140000Z=0A=
DESCRIPTION:\n\n\nJOIN WEBEX =
MEETING\nhttps://ietf.webex.com/ietf/j.php?MTID=3Dm497c9ea0c422764533c9b8=
5b7b9ee42b\nMeeting number (access code): 640 065 533\nMeeting password: =
JFZGgVPm\n\n\nJOIN BY PHONE\n1-877-668-4493 Call-in toll free number =
(US/Canada) \n1-650-479-3208 Call-in toll number =
(US/Canada)\n\nToll-free dialing restrictions: =
\nhttps://www.webex.com/pdf/tollfree_restrictions.pdf\n\n\n\nCan't join =
the meeting?\nhttps://help.webex.com/docs/DOC-5412\n\n\nIMPORTANT =
NOTICE: Please note that this WebEx service allows audio and other =
information sent during the session to be recorded, which may be =
discoverable in a legal matter. By joining this session, you =
automatically consent to such recordings. If you do not consent to being =
recorded, discuss your concerns with the host or do not join the =
session.\n=0A=
X-ALT-DESC;FMTTYPE=3Dtext/html:	<FONT SIZE=3D"1" =
FACE=3D"ARIAL">&nbsp;<BR>&nbsp;<BR>&nbsp;<BR><FONT SIZE=3D"4" =
FACE=3D"ARIAL">		<a =
href=3D"https://ietf.webex.com/ietf/j.php?MTID=3Dm497c9ea0c422764533c9b85=
b7b9ee42b"><FONT SIZE=3D"3" COLOR=3D"#00AFF9" FACE=3D"Arial">Join WebEx =
meeting</FONT></a>			<table>				<tr>					<td>						<FONT SIZE=3D"2" =
COLOR=3D"#666666" FACE=3D"arial">Meeting number (access code): 640 065 =
533</FONT>					</td>				</tr>			</table>						<table><tr><td><FONT =
SIZE=3D"2" COLOR=3D"#666666" FACE=3D"arial">Meeting =
password:</FONT></td><td><FONT SIZE=3D"2"  COLOR=3D"#666666" =
FACE=3D"arial">JFZGgVPm</FONT></td></tr></table>		</FONT><FONT =
SIZE=3D"1" FACE=3D"ARIAL">&nbsp;<BR>&nbsp;<BR></FONT><FONT SIZE=3D"4" =
FACE=3D"ARIAL"><FONT SIZE=3D"3" COLOR=3D"#666666" FACE=3D"arial">Join by =
phone</FONT>&nbsp; <BR><FONT SIZE=3D"2" COLOR=3D"#666666" =
FACE=3D"arial"><strong>1-877-668-4493</strong>&nbsp;Call-in toll free =
number (US/Canada)</FONT>&nbsp; <BR><FONT SIZE=3D"2" COLOR=3D"#666666" =
FACE=3D"arial"><strong>1-650-479-3208</strong>&nbsp;Call-in toll number =
(US/Canada)</FONT>&nbsp; <BR><a =
href=3D"https://www.webex.com/pdf/tollfree_restrictions.pdf"><FONT =
SIZE=3D"1" COLOR=3D"#00AFF9" FACE=3D"arial">Toll-free calling =
restrictions</FONT></a> &nbsp; <BR></FONT><BR><BR>	&nbsp;<BR>	<a =
href=3D"https://help.webex.com/docs/DOC-5412">	<FONT SIZE=3D"1" =
COLOR=3D"#00AFF9" FACE=3D"Arial">Can't join the meeting?</FONT></a>	=
&nbsp;<BR>&nbsp;<BR><FONT COLOR=3D"#A0A0A0" size=3D"1" =
FACE=3D"arial">IMPORTANT NOTICE: Please note that this WebEx service =
allows audio and other information sent during the session to be =
recorded, which may be discoverable in a legal matter. By joining this =
session, you automatically consent to such recordings. If you do not =
consent to being recorded, discuss your concerns with the host or do not =
join the session.</FONT></FONT>=0A=
SUMMARY:I2RS Ephemeral State requirements=0A=
PRIORITY:5=0A=
CLASS:PUBLIC=0A=
BEGIN:VALARM=0A=
TRIGGER:-PT5M=0A=
ACTION:DISPLAY=0A=
DESCRIPTION:Reminder=0A=
END:VALARM=0A=
END:VEVENT=0A=
END:VCALENDAR=0A=

------=_NextPart_000_0ADF_01D1CC6D.27033C00
Content-Type: text/plain;
	name="Untitled attachment 00300.txt"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
	filename="Untitled attachment 00300.txt"

_______________________________________________
i2rs mailing list
i2rs@ietf.org
https://www.ietf.org/mailman/listinfo/i2rs

------=_NextPart_000_0ADF_01D1CC6D.27033C00--


From nobody Wed Jun 22 09:17:51 2016
Return-Path: <shares@ndzh.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 3C7FD12D786 for <i2rs@ietfa.amsl.com>; Wed, 22 Jun 2016 09:17:50 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 3.139
X-Spam-Level: ***
X-Spam-Status: No, score=3.139 tagged_above=-999 required=5 tests=[BAYES_05=-0.5, DOS_OUTLOOK_TO_MX=2.845, HTML_MESSAGE=0.001, RDNS_NONE=0.793] autolearn=no autolearn_force=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 QXoknizUt0AM for <i2rs@ietfa.amsl.com>; Wed, 22 Jun 2016 09:17:48 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 73C6112D125 for <i2rs@ietf.org>; Wed, 22 Jun 2016 09:13:17 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=184.157.84.183; 
From: "Susan Hares" <shares@ndzh.com>
To: <i2rs@ietf.org>
Date: Wed, 22 Jun 2016 12:12:53 -0400
Message-ID: <008e01d1cca0$ef034e60$cd09eb20$@ndzh.com>
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="----=_NextPart_000_008F_01D1CC7F.67F1AE60"
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AdHMoLP/9XRVqq8ORea+JPevsVllvg==
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/JyoeHcYF5FCH3oTepC9Q3KqfshU>
Cc: 'Russ White' <russ@riw.us>, akatlas@gmail.com
Subject: [i2rs] WebEx recording is available for viewing: I2RS Ephemeral State requirements-20160622 1448-1
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 22 Jun 2016 16:17:50 -0000

This is a multipart message in MIME format.

------=_NextPart_000_008F_01D1CC7F.67F1AE60
Content-Type: text/plain;
	charset="us-ascii"
Content-Transfer-Encoding: 7bit

Hello, 

I2RS Working Group recording of the interim meeting is below.  It does not
contain the first 45 minutes due to an operational error. 

The first 45 minutes were discussing the operational state issues contained
in the slides.  

I2RS Ephemeral State requirements-20160622 1448-1 
Wednesday, June 22, 2016 
11:45 am | Eastern Daylight Time (New York, GMT-04:00) 

PLAY RECORDING ( 45 min) 
https://ietf.webex.com/ietf/ldr.php?RCID=e56ebeed34e9de3bcb37732615724238 
Recording Password:(This recording does not require a password.) 

This contains the discussion on the ephemeral state requirement discussion.


 

Sue 


------=_NextPart_000_008F_01D1CC7F.67F1AE60
Content-Type: text/html;
	charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" =
xmlns:o=3D"urn:schemas-microsoft-com:office:office" =
xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" =
xmlns=3D"http://www.w3.org/TR/REC-html40"><head><META =
HTTP-EQUIV=3D"Content-Type" CONTENT=3D"text/html; =
charset=3Dus-ascii"><meta name=3DGenerator content=3D"Microsoft Word 14 =
(filtered medium)"><style><!--
/* Font Definitions */
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0in;
	margin-bottom:.0001pt;
	font-size:12.0pt;
	font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:blue;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:purple;
	text-decoration:underline;}
p
	{mso-style-priority:99;
	mso-margin-top-alt:auto;
	margin-right:0in;
	mso-margin-bottom-alt:auto;
	margin-left:0in;
	font-size:12.0pt;
	font-family:"Times New Roman","serif";}
span.EmailStyle18
	{mso-style-type:personal-compose;
	font-family:"Calibri","sans-serif";}
.MsoChpDefault
	{mso-style-type:export-only;
	font-size:10.0pt;}
@page WordSection1
	{size:8.5in 11.0in;
	margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
	{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]--></head><body lang=3DEN-US link=3Dblue =
vlink=3Dpurple><div class=3DWordSection1><p><span =
style=3D'font-family:"Calibri","sans-serif"'>Hello,</span> =
<o:p></o:p></p><p><span =
style=3D'font-family:"Calibri","sans-serif"'>I2RS Working Group =
recording of the interim meeting is below.&nbsp; It does not contain the =
first 45 minutes due to an operational error. =
<o:p></o:p></span></p><p><span =
style=3D'font-family:"Calibri","sans-serif"'>The first 45 minutes were =
discussing the operational state issues contained in the slides. =
</span>&nbsp;<o:p></o:p></p><p><span =
style=3D'font-family:"Calibri","sans-serif"'>I2RS Ephemeral State =
requirements-20160622 1448-1</span> <br><span =
style=3D'font-family:"Calibri","sans-serif"'>Wednesday, June 22, =
2016</span> <br><span style=3D'font-family:"Calibri","sans-serif"'>11:45 =
am | Eastern Daylight Time (New York, GMT-04:00)</span> =
<o:p></o:p></p><p><span =
style=3D'font-family:"Calibri","sans-serif"'>PLAY RECORDING ( 45 =
min)</span> <br><span style=3D'font-family:"Calibri","sans-serif"'><a =
href=3D"https://ietf.webex.com/ietf/ldr.php?RCID=3De56ebeed34e9de3bcb3773=
2615724238">https://ietf.webex.com/ietf/ldr.php?RCID=3De56ebeed34e9de3bcb=
37732615724238</a></span> <br><span =
style=3D'font-family:"Calibri","sans-serif"'>Recording Password:(This =
recording does not require a password.)</span> <o:p></o:p></p><p>This =
contains the discussion on the ephemeral state requirement =
discussion.&nbsp; <o:p></o:p></p><p><o:p>&nbsp;</o:p></p><p>Sue =
<o:p></o:p></p></div></body></html>
------=_NextPart_000_008F_01D1CC7F.67F1AE60--


From nobody Wed Jun 22 11:12:32 2016
Return-Path: <shares@ndzh.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 7308D12DA37 for <i2rs@ietfa.amsl.com>; Wed, 22 Jun 2016 11:12:31 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.739
X-Spam-Level: *
X-Spam-Status: No, score=1.739 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, HTML_MESSAGE=0.001, RDNS_NONE=0.793] autolearn=no autolearn_force=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 oMK0FkxMaSQX for <i2rs@ietfa.amsl.com>; Wed, 22 Jun 2016 11:12:29 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 56E1112DA32 for <i2rs@ietf.org>; Wed, 22 Jun 2016 11:12:29 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=184.157.84.183; 
From: "Susan Hares" <shares@ndzh.com>
To: <i2rs@ietf.org>
References: <008e01d1cca0$ef034e60$cd09eb20$@ndzh.com>
In-Reply-To: <008e01d1cca0$ef034e60$cd09eb20$@ndzh.com>
Date: Wed, 22 Jun 2016 14:10:33 -0400
Message-ID: <038601d1ccb1$5ec4f9a0$1c4eece0$@ndzh.com>
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="----=_NextPart_000_0387_01D1CC8F.D7B49220"
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQKjtCtsXHFdrX2F7ik+zNNg/INF+J5R+kow
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/hT8r8bkFJAnuuS2jcQ_mo1KJZCo>
Cc: 'Russ White' <russ@riw.us>, akatlas@gmail.com
Subject: Re: [i2rs] WebEx recording is available for viewing: I2RS Ephemeral State requirements-20160622 1448-1
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 22 Jun 2016 18:12:31 -0000

This is a multipart message in MIME format.

------=_NextPart_000_0387_01D1CC8F.D7B49220
Content-Type: text/plain;
	charset="us-ascii"
Content-Transfer-Encoding: 7bit

Written minutes for the I2RS interim are available here :

 

https://www.ietf.org/proceedings/interim-2016-i2rs-10/minutes/minutes-interi
m-2016-i2rs-10

 

 

Sue 

 

From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Susan Hares
Sent: Wednesday, June 22, 2016 12:13 PM
To: i2rs@ietf.org
Cc: 'Russ White'; akatlas@gmail.com
Subject: [i2rs] WebEx recording is available for viewing: I2RS Ephemeral
State requirements-20160622 1448-1

 

Hello, 

I2RS Working Group recording of the interim meeting is below.  It does not
contain the first 45 minutes due to an operational error. 

The first 45 minutes were discussing the operational state issues contained
in the slides.  

I2RS Ephemeral State requirements-20160622 1448-1 
Wednesday, June 22, 2016 
11:45 am | Eastern Daylight Time (New York, GMT-04:00) 

PLAY RECORDING ( 45 min) 
https://ietf.webex.com/ietf/ldr.php?RCID=e56ebeed34e9de3bcb37732615724238 
Recording Password:(This recording does not require a password.) 

This contains the discussion on the ephemeral state requirement discussion.


 

Sue 


------=_NextPart_000_0387_01D1CC8F.D7B49220
Content-Type: text/html;
	charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" =
xmlns:o=3D"urn:schemas-microsoft-com:office:office" =
xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" =
xmlns=3D"http://www.w3.org/TR/REC-html40"><head><META =
HTTP-EQUIV=3D"Content-Type" CONTENT=3D"text/html; =
charset=3Dus-ascii"><meta name=3DGenerator content=3D"Microsoft Word 14 =
(filtered medium)"><style><!--
/* Font Definitions */
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
	{font-family:Tahoma;
	panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0in;
	margin-bottom:.0001pt;
	font-size:12.0pt;
	font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:blue;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:purple;
	text-decoration:underline;}
p
	{mso-style-priority:99;
	mso-margin-top-alt:auto;
	margin-right:0in;
	mso-margin-bottom-alt:auto;
	margin-left:0in;
	font-size:12.0pt;
	font-family:"Times New Roman","serif";}
span.EmailStyle18
	{mso-style-type:personal;
	font-family:"Calibri","sans-serif";}
span.EmailStyle19
	{mso-style-type:personal-reply;
	font-family:"Calibri","sans-serif";
	color:#1F497D;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-size:10.0pt;}
@page WordSection1
	{size:8.5in 11.0in;
	margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
	{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]--></head><body lang=3DEN-US link=3Dblue =
vlink=3Dpurple><div class=3DWordSection1><p class=3DMsoNormal><b><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Written minutes for the I2RS interim are available here =
:<o:p></o:p></span></b></p><p class=3DMsoNormal><b><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></b></p><p class=3DMsoNormal><b><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><a =
href=3D"https://www.ietf.org/proceedings/interim-2016-i2rs-10/minutes/min=
utes-interim-2016-i2rs-10">https://www.ietf.org/proceedings/interim-2016-=
i2rs-10/minutes/minutes-interim-2016-i2rs-10</a><o:p></o:p></span></b></p=
><p class=3DMsoNormal><b><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></b></p><p class=3DMsoNormal><b><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></b></p><p class=3DMsoNormal><b><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Sue <o:p></o:p></span></b></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><div><div =
style=3D'border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in =
0in 0in'><p class=3DMsoNormal><b><span =
style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span>=
</b><span style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif"'> =
i2rs [mailto:i2rs-bounces@ietf.org] <b>On Behalf Of </b>Susan =
Hares<br><b>Sent:</b> Wednesday, June 22, 2016 12:13 PM<br><b>To:</b> =
i2rs@ietf.org<br><b>Cc:</b> 'Russ White'; =
akatlas@gmail.com<br><b>Subject:</b> [i2rs] WebEx recording is available =
for viewing: I2RS Ephemeral State requirements-20160622 =
1448-1<o:p></o:p></span></p></div></div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p><p><span =
style=3D'font-family:"Calibri","sans-serif"'>Hello,</span> =
<o:p></o:p></p><p><span =
style=3D'font-family:"Calibri","sans-serif"'>I2RS Working Group =
recording of the interim meeting is below.&nbsp; It does not contain the =
first 45 minutes due to an operational error. =
<o:p></o:p></span></p><p><span =
style=3D'font-family:"Calibri","sans-serif"'>The first 45 minutes were =
discussing the operational state issues contained in the slides. =
</span>&nbsp;<o:p></o:p></p><p><span =
style=3D'font-family:"Calibri","sans-serif"'>I2RS Ephemeral State =
requirements-20160622 1448-1</span> <br><span =
style=3D'font-family:"Calibri","sans-serif"'>Wednesday, June 22, =
2016</span> <br><span style=3D'font-family:"Calibri","sans-serif"'>11:45 =
am | Eastern Daylight Time (New York, GMT-04:00)</span> =
<o:p></o:p></p><p><span =
style=3D'font-family:"Calibri","sans-serif"'>PLAY RECORDING ( 45 =
min)</span> <br><span style=3D'font-family:"Calibri","sans-serif"'><a =
href=3D"https://ietf.webex.com/ietf/ldr.php?RCID=3De56ebeed34e9de3bcb3773=
2615724238">https://ietf.webex.com/ietf/ldr.php?RCID=3De56ebeed34e9de3bcb=
37732615724238</a></span> <br><span =
style=3D'font-family:"Calibri","sans-serif"'>Recording Password:(This =
recording does not require a password.)</span> <o:p></o:p></p><p>This =
contains the discussion on the ephemeral state requirement =
discussion.&nbsp; <o:p></o:p></p><p><o:p>&nbsp;</o:p></p><p>Sue =
<o:p></o:p></p></div></body></html>
------=_NextPart_000_0387_01D1CC8F.D7B49220--


From nobody Wed Jun 22 14:33:51 2016
Return-Path: <shares@ndzh.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 DBC6412DC82 for <i2rs@ietfa.amsl.com>; Wed, 22 Jun 2016 14:33:48 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.106
X-Spam-Level: 
X-Spam-Status: No, score=-1.106 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RDNS_NONE=0.793] autolearn=no autolearn_force=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 0j0K9qMuQ2j4 for <i2rs@ietfa.amsl.com>; Wed, 22 Jun 2016 14:33:46 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id F0F6812DC85 for <i2rs@ietf.org>; Wed, 22 Jun 2016 14:33:21 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=107.92.122.226; 
Date: Wed, 22 Jun 2016 17:33:09 -0400
Message-ID: <3cicggcbb4tr1fqqrvicwm9e.1466631189241@email.android.com>
Importance: normal
From: Susan Hares <shares@ndzh.com>
To: Robert Wilton <rwilton@cisco.com>, i2rs@ietf.org, jhaas@juniper.net
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="--_com.samsung.android.email_156078091711300"
X-Authenticated-User: skh@ndzh.com 
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/MwnTg2SPbWhCQPoVXlMeoXeQyWI>
Subject: Re: [i2rs] Clarifications on draft-ietf-i2rs-ephemeral-state section 3
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 22 Jun 2016 21:33:49 -0000

----_com.samsung.android.email_156078091711300
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: base64

Um9iZXJ0OgpSZXNwb25zZXMgYmVsb3cuCgoKCgpTZW50IHZpYSB0aGUgU2Ftc3VuZyBHYWxheHkg
Tm90ZTUsIGFuIEFUJlQgNEcgTFRFIHNtYXJ0cGhvbmUtLS0tLS0tLSBPcmlnaW5hbCBtZXNzYWdl
IC0tLS0tLS0tRnJvbTogUm9iZXJ0IFdpbHRvbiA8cndpbHRvbkBjaXNjby5jb20+IERhdGU6IDYv
MjAvMjAxNiAgMTE6MzAgQU0gIChHTVQtMDU6MDApIFRvOiBpMnJzQGlldGYub3JnLCBqaGFhc0Bq
dW5pcGVyLm5ldCwgc2hhcmVzQG5kemguY29tIFN1YmplY3Q6IFtpMnJzXSBDbGFyaWZpY2F0aW9u
cyBvbiBkcmFmdC1pZXRmLWkycnMtZXBoZW1lcmFsLXN0YXRlIHNlY3Rpb24gMyAKCiAgICBIaSBK
ZWZmLCBTdXNhbiwKICAgIEluIG9uZSBvZiB0aGUgZGlzY3Vzc2lvbnMgdGhhdCBJIGhhZCB3aXRo
IEp1ZXJnZW4gcmVnYXJkaW5nCiAgICAgIGRhdGFzdG9yZXMgaGUgaW5kaWNhdGVkIHRoZSByZWZp
bmVkIGRhdGFzdG9yZSBhcmNoaXRlY3R1cmUgdGhhdCBJCiAgICAgIHdhcyBwcm9wb3Npbmcgd2Fz
bid0IGluIGtlZXBpbmcgd2l0aCB0aGUgY3VycmVudCBlcGhlbWVyYWwKICAgICAgZGF0YXN0b3Jl
IGlkZWFzIG9uIEkyUlMsIGhlbmNlIEknbSB0cnlpbmcgdG8gY2F0Y2ggdXAuCgogICAgCiAgICBJ
IGhhdmUgYSBmZXcgY2xhcmlmeWluZyBxdWVzdGlvbnMgb24gc2VjdGlvbnMgMy4yIG9mCiAgICAg
IGRyYWZ0LWlldGYtaTJycy1lcGhlbWVyYWwtc3RhdGUgdGhhdCB5b3UgbWlnaHQgYmUgYWJsZSB0
byBoZWxwCiAgICAgIHdpdGggbWUgcGxlYXNlLsKgIEkndmUgb25seSBqdXN0IHNpZ25lZCB1cCB0
aGUgSVIyUywgc28gYXBvbG9naWVzCiAgICAgIGlmIHRoZXNlIHF1ZXN0aW9ucyBoYXZlIGFscmVh
ZHkgYmVlbiBhc2tlZC9hbnN3ZXJlZC4KCiAgICAKICAgIFNlY3Rpb24gMy4xLiBQZXJzaXN0ZW5j
ZSwgcGFyYWdyYXBoIDEgaXMgc3RhdGVkIGFzOgogICAgICAgRXBoZW1lcmFsLVJFUS0wMTogSTJS
UyByZXF1aXJlcyBlcGhlbWVyYWwgc3RhdGU7IGkuZS4gc3RhdGUgdGhhdCBkb2VzCiAgIG5vdCBw
ZXJzaXN0IGFjcm9zcyByZWJvb3RzLiAgSWYgc3RhdGUgbXVzdCBiZSByZXN0b3JlZCwgaXQgc2hv
dWxkIGJlCiAgIGRvbmUgc29sZWx5IGJ5IHJlcGxheSBhY3Rpb25zIGZyb20gdGhlIEkyUlMgY2xp
ZW50IHZpYSB0aGUgSTJSUwogICBhZ2VudC4gIEVwaGVtZXJhbCBzdGF0ZSBtYXkgY29uc2lzdCBv
ZiBlcGhlbWVyYWwgY29uZmlndXJhdGlvbiBvcgogICBlcGhlbWVyYWwgb3BlcmF0aW9uYWwgc3Rh
dGUsIG9yIGJvdGguCiAgICBUaGlzIHRleHQgbWFrZXMgaXQgY2xlYXIgdGhhdCAiRXBoZW1lcmFs
IHN0YXRlIiBjb25zaXN0cyBvZiBib3RoCiAgICAgICJlcGhlbWVyYWwgY29uZmlnIiBhbmQvb3Ig
ImVwaGVtZXJhbCBvcGVyYXRpb24gc3RhdGUiLgogICAgRXBoZW1lcmFsLVJFUS0wMyBpcyBzdGF0
ZWQgYXM6CiAgICAgICBFcGhlbWVyYWwtUkVRLTAzOiBFcGhlbWVyYWwgc3RhdGUgbXVzdCBiZSBh
YmxlIHRvIHV0aWxpemVkIHRlbXBvcmFyeQogICBvcGVyYXRpb25hbCBzdGF0ZSAoZS5nLiAgTVBM
UyBMU1AtSUQgb3IgYSBCR1AgSU4tUklCKSBhcyBhCiAgIGNvbnN0cmFpbnRzLgogICAgUTEuIEFt
IEkgcmlnaHQgaW4gdW5kZXJzdGFuZGluZyB0aGF0IGJvdGggZXBoZW1lcmFsIGNvbmZpZyBhbmQK
ICAgICAgZXBoZW1lcmFsIG9wZXJhdGlvbmFsIHN0YXRlIGluZGVwZW5kZW50bHkgaGF2ZSB0aGUg
cmVxdWlyZW1lbnQKICAgICAgdGhhdCB0aGV5IGhhdmUgdG8gcmVseSBvbiByZWd1bGFyIG9wZXJh
dGlvbmFsIHN0YXRlIGFzIGEKICAgICAgY29uc3RyYWludD8gCgogICAgU3VlOiBpdCBkZXBlbmRz
IG9uIHRoZSBkYXRhIG1vZGVsLiDCoEZvciB0aGUgSTJSUyBkYXRhIG1vZGVscywgdGhlIGkycnMg
cmliIGFuZCBpMnJzIGZiLXJpYiBkbyBkZXBlbmQgb24gdGhlIGNvbmZpZ3VyYXRpb24gYW5kIG9w
ZXJhdGlvbmFsIHN0YXRlIG9mIGludGVyZmFjZXMuRm9yIHRoZSBpMnJzIHRvcG9sb2d5IG1vZGVs
cywgdGhlIGwzIHRvcG9sb2d5IG1vZGVsIGRlcGVuZHMgb24gdGhlIG9wZXJhdGlvbmFsIHN0YXRl
IG9mIG9zcGYsaXMtaXMgYW5kIHN0YXRpYyBjb25maWd1cmF0aW9uLCBhbmQgc29tZSBpbnRlcmZh
Y2Ugc3JhdGUuIMKgU29tZSBpbnRlcmZhY2Ugc3RhdGUgbWF5IGJlIHZpcnR1YWwgaW50ZXJmYWNl
cyBvciB2aXJ0dWFsIHRlcm1pbmF0aW9uIHBvaW50cy4gwqBUaGUgwqBsMiB0b3BvbG9neSBtb2Rl
bCBoYXMgZGVwZW5kZW5jaWVzIG9uIGxheWVyIDIgcHJvdG9jb2xzIGFuZCBpbnRlcmZhY2Ugc3Rh
dGUuIMKgSW4gdGhlIHRvcG9sb2d5IG1vZGVsIHRoZXJlIGNhbiBiZSBzdGF0aWMgY29uZmlndXJh
dGlvbiB0aGF0IGF1Z21lbnRzIHRoZSBvcGVyYXRpb25hbCBzdGF0ZSBieSBjcmVhdGluZyB2aXJ0
dWFsIHRvcG9sb2dpZXMgb3IgdHVubmVscy4KICAgIFEyLiBXaGF0IGlzIGV4cGVjdGVkIHRvIGhh
cHBlbiBpZiB0aGUgb3BlcmF0aW9uYWwgc3RhdGUgY2hhbmdlcwogICAgICBzdWNoIHRoYXQgdGhl
IGNvbnN0cmFpbnQgbm8gbG9uZ2VyIGhvbGQgZm9yIGEgZXBoZW1lcmFsIG5vZGU/wqAKICAgICAg
U2hvdWxkIHRoYXQgbm9kZSBiZSByZW1vdmVkLCBvciBqdXN0IHN0b3AgdGFraW5nIGVmZmVjdD/C
oCBPcgogICAgICBleHByZXNzZWQgZGlmZmVyZW50bHk6IGNvdWxkIGVwaGVtZXJhbCBjb25maWcg
YmUgcmVnYXJkZWQgYXMgYmVpbmcKICAgICAgY29uZGl0aW9uYWxseSBhcHBsaWVkIG9uIGEgY29u
c3RyYWludFN1ZTogaWYgdGhlIGNvbnN0cmFpbnRzIHRoZSBubyBsb25nZXIgYWxsb3dzIHRoZSBl
cGhlbWVyYWwgc3RhdGUgdG8gYmUgdmFsaWQsIHRoZSB0aGUgaTJycyBhZ2VudCBzZW5kcyBhIG5v
dGlmaWNhdGlvbiB0byB0aGUgaTJycyBjbGllbnRzIHRvIGFuZCByZW1vdmVzIHRoZSBpbnZhbGlk
IHN0YXRlLiDCoFRoZSBpMnJzIGNsaWVudCBjYW4gdHJ5IHRvIGZpeCB0aGlzIHN0YXRlIGJ5IG90
aGVyIGFjdGlvbiDCoChlLmcuIGNvbmZpZ3VyZSBzb21ldGhpbmcgZWxzZSBvciByZW1vdmUgb3Ro
ZXIgc3RhdGUuKQogICAgRXBoZW1lcmFsLVJFUS0wNCBpcyBzdGF0ZWQgYXM6CgogICAgCiAgICAg
ICBFcGhlbWVyYWwtUkVRLTA0OiBFcGhlbWVyYWwgc3RhdGUgTUFZIHJlZmVyIHRvIG5vbi1lcGhl
bWVyYWwgc3RhdGUKICAgZm9yIHB1cnBvc2VzIG9mIGltcGxlbWVudGluZyBjb25zdHJhaW50cy4g
IFRoZSBkZXNpZ25lciBvZiBlcGhlbWVyYWwKICAgc3RhdGUgbW9kdWxlcyBhcmUgYWR2aXNlZCB0
aGF0IHN1Y2ggY29uc3RyYWludHMgbWF5IGltcGFjdCB0aGUgc3BlZWQKICAgb2YgcHJvY2Vzc2lu
ZyBlcGhlbWVyYWwgc3RhdGUgY29tbWl0cyBhbmQgc2hvdWxkIGF2b2lkIHRoZW0gd2hlbgogICBz
cGVlZCBpcyBlc3NlbnRpYWwuCiAgICBRMy4gSSB0aGluayB0aGF0IFJFUS0wMyBtYXkgYWxyZWFk
eSBhbnN3ZXIgdGhpcywgYnV0IHRvIGF2b2lkIGFueQogICAgICBjb25mdXNpb246IERvZXMgdGhp
cyBtZWFuIHRoYXQgZXBoZW1lcmFsIGNvbmZpZyBub2RlcyBtYXkgcmVmZXIgdG8KICAgICAgbm9u
LWVwaGVtZXJhbCBvcGVyYXRpb25hbCBzdGF0ZSBub2Rlcz8KCiAgICBZZXMuIMKgQW4gZXhhbXBs
ZSBpcyB0aGUgcmVmZXJlbmNlIHRvIGludGVyZmFjZSBjb25maWd1cmF0aW9uIG9yIGludGVyZmFj
ZSBvcGVyYXRpb25hbCBzdGF0ZUxldCBtZSBrbm93IGlmIHlvdSBoYXZlIG1vcmUgcXVlc3Rpb25z
LgoKICAgIFRoYW5rcwogICAgICBSb2IKICAgIEdsYWQgdG8gYW5zd2VyIGFueSBxdWVzdGlvbnMu
CiAgICAKU3VlCiAgICAKCiAgICAKICA=

----_com.samsung.android.email_156078091711300
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: base64

PGh0bWw+PGhlYWQ+PG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0
L2h0bWw7IGNoYXJzZXQ9VVRGLTgiPjwvaGVhZD48Ym9keT48ZGl2PlJvYmVydDo8L2Rpdj48ZGl2
Pjxicj48L2Rpdj48ZGl2PlJlc3BvbnNlcyBiZWxvdy48L2Rpdj48ZGl2Pjxicj48L2Rpdj48ZGl2
Pjxicj48L2Rpdj48ZGl2Pjxicj48L2Rpdj48ZGl2Pjxicj48L2Rpdj48ZGl2Pjxicj48L2Rpdj48
ZGl2IGlkPSJjb21wb3Nlcl9zaWduYXR1cmUiPjxkaXYgc3R5bGU9ImZvbnQtc2l6ZTo4NSU7Y29s
b3I6IzU3NTc1NyI+U2VudCB2aWEgdGhlIFNhbXN1bmcgR2FsYXh5IE5vdGU1LCBhbiBBVCZhbXA7
VCA0RyBMVEUgc21hcnRwaG9uZTwvZGl2PjwvZGl2PjxkaXYgc3R5bGU9ImZvbnQtc2l6ZToxMDAl
O2NvbG9yOiMwMDAwMDAiPjwhLS0gb3JpZ2luYWxNZXNzYWdlIC0tPjxkaXY+LS0tLS0tLS0gT3Jp
Z2luYWwgbWVzc2FnZSAtLS0tLS0tLTwvZGl2PjxkaXY+RnJvbTogUm9iZXJ0IFdpbHRvbiAmbHQ7
cndpbHRvbkBjaXNjby5jb20mZ3Q7IDwvZGl2PjxkaXY+RGF0ZTogNi8yMC8yMDE2ICAxMTozMCBB
TSAgKEdNVC0wNTowMCkgPC9kaXY+PGRpdj5UbzogaTJyc0BpZXRmLm9yZywgamhhYXNAanVuaXBl
ci5uZXQsIHNoYXJlc0BuZHpoLmNvbSA8L2Rpdj48ZGl2PlN1YmplY3Q6IFtpMnJzXSBDbGFyaWZp
Y2F0aW9ucyBvbiBkcmFmdC1pZXRmLWkycnMtZXBoZW1lcmFsLXN0YXRlIHNlY3Rpb24gMyA8L2Rp
dj48ZGl2Pjxicj48L2Rpdj48L2Rpdj4KICAgIDxwPkhpIEplZmYsIFN1c2FuLDwvcD4KICAgIDxw
PkluIG9uZSBvZiB0aGUgZGlzY3Vzc2lvbnMgdGhhdCBJIGhhZCB3aXRoIEp1ZXJnZW4gcmVnYXJk
aW5nCiAgICAgIGRhdGFzdG9yZXMgaGUgaW5kaWNhdGVkIHRoZSByZWZpbmVkIGRhdGFzdG9yZSBh
cmNoaXRlY3R1cmUgdGhhdCBJCiAgICAgIHdhcyBwcm9wb3Npbmcgd2Fzbid0IGluIGtlZXBpbmcg
d2l0aCB0aGUgY3VycmVudCBlcGhlbWVyYWwKICAgICAgZGF0YXN0b3JlIGlkZWFzIG9uIEkyUlMs
IGhlbmNlIEknbSB0cnlpbmcgdG8gY2F0Y2ggdXAuPGJyPgogICAgPC9wPgogICAgPHA+SSBoYXZl
IGEgZmV3IGNsYXJpZnlpbmcgcXVlc3Rpb25zIG9uIHNlY3Rpb25zIDMuMiBvZgogICAgICBkcmFm
dC1pZXRmLWkycnMtZXBoZW1lcmFsLXN0YXRlIHRoYXQgeW91IG1pZ2h0IGJlIGFibGUgdG8gaGVs
cAogICAgICB3aXRoIG1lIHBsZWFzZS4mbmJzcDsgSSd2ZSBvbmx5IGp1c3Qgc2lnbmVkIHVwIHRo
ZSBJUjJTLCBzbyBhcG9sb2dpZXMKICAgICAgaWYgdGhlc2UgcXVlc3Rpb25zIGhhdmUgYWxyZWFk
eSBiZWVuIGFza2VkL2Fuc3dlcmVkLjxicj4KICAgIDwvcD4KICAgIDxwPlNlY3Rpb24gMy4xLiBQ
ZXJzaXN0ZW5jZSwgcGFyYWdyYXBoIDEgaXMgc3RhdGVkIGFzOjwvcD4KICAgIDxwcmUgc3R5bGU9
ImJveC1zaXppbmc6IGJvcmRlci1ib3g7IG92ZXJmbG93OiBhdXRvOyBmb250LWZhbWlseTogJ1BU
IE1vbm8nLCBNb25hY28sIG1vbm9zcGFjZTsgZm9udC1zaXplOiAxNHB4OyBkaXNwbGF5OiBibG9j
azsgcGFkZGluZzogMTBweDsgbWFyZ2luOiAwcHggMHB4IDEwLjVweDsgbGluZS1oZWlnaHQ6IDEu
MjE0OyBjb2xvcjogcmdiKDAsIDAsIDApOyB3b3JkLWJyZWFrOiBicmVhay1hbGw7IHdvcmQtd3Jh
cDogYnJlYWstd29yZDsgYm9yZGVyOiAxcHggc29saWQgcmdiKDIwNCwgMjA0LCAyMDQpOyBib3Jk
ZXItcmFkaXVzOiA0cHg7IGZvbnQtc3R5bGU6IG5vcm1hbDsgZm9udC12YXJpYW50OiBub3JtYWw7
IGZvbnQtd2VpZ2h0OiBub3JtYWw7IGxldHRlci1zcGFjaW5nOiBub3JtYWw7IG9ycGhhbnM6IGF1
dG87IHRleHQtYWxpZ246IHN0YXJ0OyB0ZXh0LWluZGVudDogMHB4OyB0ZXh0LXRyYW5zZm9ybTog
bm9uZTsgd2lkb3dzOiAxOyB3b3JkLXNwYWNpbmc6IDBweDsgLXdlYmtpdC10ZXh0LXN0cm9rZS13
aWR0aDogMHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCAyNTMsIDI0NSk7Ij4gICBFcGhl
bWVyYWwtUkVRLTAxOiBJMlJTIHJlcXVpcmVzIGVwaGVtZXJhbCBzdGF0ZTsgaS5lLiBzdGF0ZSB0
aGF0IGRvZXMKICAgbm90IHBlcnNpc3QgYWNyb3NzIHJlYm9vdHMuICBJZiBzdGF0ZSBtdXN0IGJl
IHJlc3RvcmVkLCBpdCBzaG91bGQgYmUKICAgZG9uZSBzb2xlbHkgYnkgcmVwbGF5IGFjdGlvbnMg
ZnJvbSB0aGUgSTJSUyBjbGllbnQgdmlhIHRoZSBJMlJTCiAgIGFnZW50LiAgRXBoZW1lcmFsIHN0
YXRlIG1heSBjb25zaXN0IG9mIGVwaGVtZXJhbCBjb25maWd1cmF0aW9uIG9yCiAgIGVwaGVtZXJh
bCBvcGVyYXRpb25hbCBzdGF0ZSwgb3IgYm90aC48L3ByZT4KICAgIDxwPlRoaXMgdGV4dCBtYWtl
cyBpdCBjbGVhciB0aGF0ICJFcGhlbWVyYWwgc3RhdGUiIGNvbnNpc3RzIG9mIGJvdGgKICAgICAg
ImVwaGVtZXJhbCBjb25maWciIGFuZC9vciAiZXBoZW1lcmFsIG9wZXJhdGlvbiBzdGF0ZSIuPC9w
PgogICAgPHA+RXBoZW1lcmFsLVJFUS0wMyBpcyBzdGF0ZWQgYXM6PC9wPgogICAgPHByZSBzdHls
ZT0iYm94LXNpemluZzogYm9yZGVyLWJveDsgb3ZlcmZsb3c6IGF1dG87IGZvbnQtZmFtaWx5OiAn
UFQgTW9ubycsIE1vbmFjbywgbW9ub3NwYWNlOyBmb250LXNpemU6IDE0cHg7IGRpc3BsYXk6IGJs
b2NrOyBwYWRkaW5nOiAxMHB4OyBtYXJnaW46IDBweCAwcHggMTAuNXB4OyBsaW5lLWhlaWdodDog
MS4yMTQ7IGNvbG9yOiByZ2IoMCwgMCwgMCk7IHdvcmQtYnJlYWs6IGJyZWFrLWFsbDsgd29yZC13
cmFwOiBicmVhay13b3JkOyBib3JkZXI6IDFweCBzb2xpZCByZ2IoMjA0LCAyMDQsIDIwNCk7IGJv
cmRlci1yYWRpdXM6IDRweDsgZm9udC1zdHlsZTogbm9ybWFsOyBmb250LXZhcmlhbnQ6IG5vcm1h
bDsgZm9udC13ZWlnaHQ6IG5vcm1hbDsgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDsgb3JwaGFuczog
YXV0bzsgdGV4dC1hbGlnbjogc3RhcnQ7IHRleHQtaW5kZW50OiAwcHg7IHRleHQtdHJhbnNmb3Jt
OiBub25lOyB3aWRvd3M6IDE7IHdvcmQtc3BhY2luZzogMHB4OyAtd2Via2l0LXRleHQtc3Ryb2tl
LXdpZHRoOiAwcHg7IGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDI1MywgMjQ1KTsiPiAgIEVw
aGVtZXJhbC1SRVEtMDM6IEVwaGVtZXJhbCBzdGF0ZSBtdXN0IGJlIGFibGUgdG8gdXRpbGl6ZWQg
dGVtcG9yYXJ5CiAgIG9wZXJhdGlvbmFsIHN0YXRlIChlLmcuICBNUExTIExTUC1JRCBvciBhIEJH
UCBJTi1SSUIpIGFzIGEKICAgY29uc3RyYWludHMuPC9wcmU+CiAgICA8cD5RMS4gQW0gSSByaWdo
dCBpbiB1bmRlcnN0YW5kaW5nIHRoYXQgYm90aCBlcGhlbWVyYWwgY29uZmlnIGFuZAogICAgICBl
cGhlbWVyYWwgb3BlcmF0aW9uYWwgc3RhdGUgaW5kZXBlbmRlbnRseSBoYXZlIHRoZSByZXF1aXJl
bWVudAogICAgICB0aGF0IHRoZXkgaGF2ZSB0byByZWx5IG9uIHJlZ3VsYXIgb3BlcmF0aW9uYWwg
c3RhdGUgYXMgYQogICAgICBjb25zdHJhaW50PyA8YnI+CiAgICA8L3A+PHA+U3VlOiBpdCBkZXBl
bmRzIG9uIHRoZSBkYXRhIG1vZGVsLiAmbmJzcDtGb3IgdGhlIEkyUlMgZGF0YSBtb2RlbHMsIHRo
ZSBpMnJzIHJpYiBhbmQgaTJycyBmYi1yaWIgZG8gZGVwZW5kIG9uIHRoZSBjb25maWd1cmF0aW9u
IGFuZCBvcGVyYXRpb25hbCBzdGF0ZSBvZiBpbnRlcmZhY2VzLjwvcD48cD5Gb3IgdGhlIGkycnMg
dG9wb2xvZ3kgbW9kZWxzLCB0aGUgbDMgdG9wb2xvZ3kgbW9kZWwgZGVwZW5kcyBvbiB0aGUgb3Bl
cmF0aW9uYWwgc3RhdGUgb2Ygb3NwZixpcy1pcyBhbmQgc3RhdGljIGNvbmZpZ3VyYXRpb24sIGFu
ZCBzb21lIGludGVyZmFjZSBzcmF0ZS4gJm5ic3A7U29tZSBpbnRlcmZhY2Ugc3RhdGUgbWF5IGJl
IHZpcnR1YWwgaW50ZXJmYWNlcyBvciB2aXJ0dWFsIHRlcm1pbmF0aW9uIHBvaW50cy4gJm5ic3A7
VGhlICZuYnNwO2wyIHRvcG9sb2d5IG1vZGVsIGhhcyBkZXBlbmRlbmNpZXMgb24gbGF5ZXIgMiBw
cm90b2NvbHMgYW5kIGludGVyZmFjZSBzdGF0ZS4gJm5ic3A7SW4gdGhlIHRvcG9sb2d5IG1vZGVs
IHRoZXJlIGNhbiBiZSBzdGF0aWMgY29uZmlndXJhdGlvbiB0aGF0IGF1Z21lbnRzIHRoZSBvcGVy
YXRpb25hbCBzdGF0ZSBieSBjcmVhdGluZyB2aXJ0dWFsIHRvcG9sb2dpZXMgb3IgdHVubmVscy48
L3A+CiAgICA8cD5RMi4gV2hhdCBpcyBleHBlY3RlZCB0byBoYXBwZW4gaWYgdGhlIG9wZXJhdGlv
bmFsIHN0YXRlIGNoYW5nZXMKICAgICAgc3VjaCB0aGF0IHRoZSBjb25zdHJhaW50IG5vIGxvbmdl
ciBob2xkIGZvciBhIGVwaGVtZXJhbCBub2RlPyZuYnNwOwogICAgICBTaG91bGQgdGhhdCBub2Rl
IGJlIHJlbW92ZWQsIG9yIGp1c3Qgc3RvcCB0YWtpbmcgZWZmZWN0PyZuYnNwOyBPcgogICAgICBl
eHByZXNzZWQgZGlmZmVyZW50bHk6IGNvdWxkIGVwaGVtZXJhbCBjb25maWcgYmUgcmVnYXJkZWQg
YXMgYmVpbmcKICAgICAgY29uZGl0aW9uYWxseSBhcHBsaWVkIG9uIGEgY29uc3RyYWludDwvcD48
cD5TdWU6IGlmIHRoZSBjb25zdHJhaW50cyB0aGUgbm8gbG9uZ2VyIGFsbG93cyB0aGUgZXBoZW1l
cmFsIHN0YXRlIHRvIGJlIHZhbGlkLCB0aGUgdGhlIGkycnMgYWdlbnQgc2VuZHMgYSBub3RpZmlj
YXRpb24gdG8gdGhlIGkycnMgY2xpZW50cyB0byBhbmQgcmVtb3ZlcyB0aGUgaW52YWxpZCBzdGF0
ZS4gJm5ic3A7VGhlIGkycnMgY2xpZW50IGNhbiB0cnkgdG8gZml4IHRoaXMgc3RhdGUgYnkgb3Ro
ZXIgYWN0aW9uICZuYnNwOyhlLmcuIGNvbmZpZ3VyZSBzb21ldGhpbmcgZWxzZSBvciByZW1vdmUg
b3RoZXIgc3RhdGUuKTwvcD4KICAgIDxwPkVwaGVtZXJhbC1SRVEtMDQgaXMgc3RhdGVkIGFzOjxi
ciBjbGFzcz0iQXBwbGUtaW50ZXJjaGFuZ2UtbmV3bGluZSI+CiAgICA8L3A+CiAgICA8cHJlIHN0
eWxlPSJib3gtc2l6aW5nOiBib3JkZXItYm94OyBvdmVyZmxvdzogYXV0bzsgZm9udC1mYW1pbHk6
ICdQVCBNb25vJywgTW9uYWNvLCBtb25vc3BhY2U7IGZvbnQtc2l6ZTogMTRweDsgZGlzcGxheTog
YmxvY2s7IHBhZGRpbmc6IDEwcHg7IG1hcmdpbjogMHB4IDBweCAxMC41cHg7IGxpbmUtaGVpZ2h0
OiAxLjIxNDsgY29sb3I6IHJnYigwLCAwLCAwKTsgd29yZC1icmVhazogYnJlYWstYWxsOyB3b3Jk
LXdyYXA6IGJyZWFrLXdvcmQ7IGJvcmRlcjogMXB4IHNvbGlkIHJnYigyMDQsIDIwNCwgMjA0KTsg
Ym9yZGVyLXJhZGl1czogNHB4OyBmb250LXN0eWxlOiBub3JtYWw7IGZvbnQtdmFyaWFudDogbm9y
bWFsOyBmb250LXdlaWdodDogbm9ybWFsOyBsZXR0ZXItc3BhY2luZzogbm9ybWFsOyBvcnBoYW5z
OiBhdXRvOyB0ZXh0LWFsaWduOiBzdGFydDsgdGV4dC1pbmRlbnQ6IDBweDsgdGV4dC10cmFuc2Zv
cm06IG5vbmU7IHdpZG93czogMTsgd29yZC1zcGFjaW5nOiAwcHg7IC13ZWJraXQtdGV4dC1zdHJv
a2Utd2lkdGg6IDBweDsgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NSwgMjUzLCAyNDUpOyI+ICAg
RXBoZW1lcmFsLVJFUS0wNDogRXBoZW1lcmFsIHN0YXRlIE1BWSByZWZlciB0byBub24tZXBoZW1l
cmFsIHN0YXRlCiAgIGZvciBwdXJwb3NlcyBvZiBpbXBsZW1lbnRpbmcgY29uc3RyYWludHMuICBU
aGUgZGVzaWduZXIgb2YgZXBoZW1lcmFsCiAgIHN0YXRlIG1vZHVsZXMgYXJlIGFkdmlzZWQgdGhh
dCBzdWNoIGNvbnN0cmFpbnRzIG1heSBpbXBhY3QgdGhlIHNwZWVkCiAgIG9mIHByb2Nlc3Npbmcg
ZXBoZW1lcmFsIHN0YXRlIGNvbW1pdHMgYW5kIHNob3VsZCBhdm9pZCB0aGVtIHdoZW4KICAgc3Bl
ZWQgaXMgZXNzZW50aWFsLjwvcHJlPgogICAgPHA+UTMuIEkgdGhpbmsgdGhhdCBSRVEtMDMgbWF5
IGFscmVhZHkgYW5zd2VyIHRoaXMsIGJ1dCB0byBhdm9pZCBhbnkKICAgICAgY29uZnVzaW9uOiBE
b2VzIHRoaXMgbWVhbiB0aGF0IGVwaGVtZXJhbCBjb25maWcgbm9kZXMgbWF5IHJlZmVyIHRvCiAg
ICAgIG5vbi1lcGhlbWVyYWwgb3BlcmF0aW9uYWwgc3RhdGUgbm9kZXM/PGJyPgogICAgPC9wPjxw
Plllcy4gJm5ic3A7QW4gZXhhbXBsZSBpcyB0aGUgcmVmZXJlbmNlIHRvIGludGVyZmFjZSBjb25m
aWd1cmF0aW9uIG9yIGludGVyZmFjZSBvcGVyYXRpb25hbCBzdGF0ZTwvcD48cD5MZXQgbWUga25v
dyBpZiB5b3UgaGF2ZSBtb3JlIHF1ZXN0aW9ucy48L3A+PHA+PGJyPjwvcD4KICAgIDxwPlRoYW5r
czwvcD48cD4KICAgICAgUm9iPC9wPgogICAgPHA+R2xhZCB0byBhbnN3ZXIgYW55IHF1ZXN0aW9u
cy4KICAgIDwvcD48cD48YnI+PC9wPjxwPlN1ZTwvcD4KICAgIDxwPjxicj4KICAgIDwvcD4KICA8
L2JvZHk+PC9odG1sPg==

----_com.samsung.android.email_156078091711300--


From nobody Thu Jun 23 05:03:16 2016
Return-Path: <j.schoenwaelder@jacobs-university.de>
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 D040912E2E8 for <i2rs@ietfa.amsl.com>; Thu, 23 Jun 2016 05:03:14 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.626
X-Spam-Level: 
X-Spam-Status: No, score=-5.626 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, RP_MATCHES_RCVD=-1.426] autolearn=ham autolearn_force=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 0ICQFImuh9H3 for <i2rs@ietfa.amsl.com>; Thu, 23 Jun 2016 05:03:11 -0700 (PDT)
Received: from atlas3.jacobs-university.de (atlas3.jacobs-university.de [212.201.44.18]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id A297A12E305 for <i2rs@ietf.org>; Thu, 23 Jun 2016 05:03:00 -0700 (PDT)
Received: from localhost (demetrius5.irc-it.jacobs-university.de [10.70.0.222]) by atlas3.jacobs-university.de (Postfix) with ESMTP id 05D15724 for <i2rs@ietf.org>; Thu, 23 Jun 2016 14:02:59 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from atlas3.jacobs-university.de ([10.70.0.205]) by localhost (demetrius5.jacobs-university.de [10.70.0.222]) (amavisd-new, port 10030) with ESMTP id JeaaFKLM10Na for <i2rs@ietf.org>; Thu, 23 Jun 2016 14:02:57 +0200 (CEST)
Received: from hermes.jacobs-university.de (hermes.jacobs-university.de [212.201.44.23]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "hermes.jacobs-university.de", Issuer "Jacobs University CA - G01" (verified OK)) by atlas3.jacobs-university.de (Postfix) with ESMTPS for <i2rs@ietf.org>; Thu, 23 Jun 2016 14:02:58 +0200 (CEST)
Received: from localhost (demetrius1.jacobs-university.de [212.201.44.46]) by hermes.jacobs-university.de (Postfix) with ESMTP id 0E2CA20047 for <i2rs@ietf.org>; Thu, 23 Jun 2016 14:02:58 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from hermes.jacobs-university.de ([212.201.44.23]) by localhost (demetrius1.jacobs-university.de [212.201.44.32]) (amavisd-new, port 10024) with ESMTP id QfVpOMHwoV4h; Thu, 23 Jun 2016 14:02:52 +0200 (CEST)
Received: from elstar.local (elstar.jacobs.jacobs-university.de [10.50.231.133]) by hermes.jacobs-university.de (Postfix) with ESMTP id A8B3420058; Thu, 23 Jun 2016 14:02:52 +0200 (CEST)
Received: by elstar.local (Postfix, from userid 501) id 74AD43B373F6; Thu, 23 Jun 2016 14:02:52 +0200 (CEST)
Date: Thu, 23 Jun 2016 14:02:51 +0200
From: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
To: i2rs@ietf.org
Message-ID: <20160623120251.GA46183@elstar.local>
Mail-Followup-To: i2rs@ietf.org
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
User-Agent: Mutt/1.6.0 (2016-04-01)
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/mEx3P-RLyPuhcNgRHTISEnc3SOs>
Subject: [i2rs] comments on draft-ietf-i2rs-ephemeral-state-10
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
Reply-To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 23 Jun 2016 12:03:15 -0000

Hi,

here are few comments on the latest version.

   Ephemeral-REQ-03: Ephemeral state must be able to utilized temporary
   operational state (e.g.  MPLS LSP-ID or a BGP IN-RIB) as a
   constraints.

I am not sure what 'must be able to utilized temporary operational
state as constraints' means. The text in the parenthesis does not help
me understand this better. Did you want to say something like:
'Ephemeral configuration state may have constraints that refer to
operational state'? I am using 'ephemeral configuration state' since
this is used in other places (although sometimes worded slightly
different).

   Ephemeral-REQ-04: Ephemeral state MAY refer to non-ephemeral state
   for purposes of implementing constraints.

Hm, now I wonder whether this is just a special case of
Ephemeral-REQ-03 and if so it is not clear why we need this as a
separate requirement. If this is not the case but something different,
then likely my interpretation of Ephemeral-REQ-03 is wrong.

s/2RS/I2RS in Ephemeral-REQ-05. I would actually rewrite the beginning
of Ephemeral-REQ-05 as follows:

   Ephemeral-REQ-05: I2RS interactions may
   lead to undesirable or unsustainable resource consumption on a system
   implementing an I2RS Agent.  It is RECOMMENDED that mechanisms be
   made available to permit prioritization of I2RS interactions, when
   appropriate, to permit implementations to shed work load when
   operating under constrained resources.  An example of such a work
   shedding mechanism is rate-limiting.

I would remove the Note: since I believe the key observation here are
the potentially high volume of I2RS interactions and not the fact that
there is a datastore involved that is ephemeral.

I am still struggling with Ephemeral-REQ-06:

   Ephemeral-REQ-06: The ability to augment an object with appropriate
   YANG structures that have the property of being ephemeral.  An object
   defined as any one of the following: yang module, submodule or
   components of submodule, or schema node.

Perhaps this is what you wanted to say?

   Ephemeral-REQ-06: The ability to augment YANG schema nodes with
   additional YANG schema nodes that have the property of being
   ephemeral.

I wonder why there are some ephemeral state requirements in sections
labeled with "I2RS Protocol version 1" while others seem to be
protocol version agnostic. What is the definition of I2RS protocol
versions?  Perhaps this notion of protocol version should simply be
removed; I am not sure it helps with the requirements.

   Ephemeral-REQ-08: Yang MUST have a way to indicate in a data model
   that nodes have the following properties: ephemeral, writable/not-
   writable, and status/configuration.

This is confusing because it says 'nodes' while in YANG we distinguish
data nodes and schema nodes. For example, in YANG a schema node has a
property config true|false. This schema node property defines whether
corresponding data nodes are writable/non-writable. In other words,
some of this requirement seems to be covered by YANG already; so what
remains is the 'ephemeral' property - does the requirement expect this
to be a property of a schema node?

Editorial: s/prevent was the oscillation/prevent oscillation/

/js

-- 
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>


From nobody Thu Jun 23 07:13:30 2016
Return-Path: <rwilton@cisco.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 C08C7128B44 for <i2rs@ietfa.amsl.com>; Thu, 23 Jun 2016 07:13:26 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -15.947
X-Spam-Level: 
X-Spam-Status: No, score=-15.947 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H4=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-1.426, SPF_PASS=-0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.com
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 l6MfMv7Z2Z_z for <i2rs@ietfa.amsl.com>; Thu, 23 Jun 2016 07:13:24 -0700 (PDT)
Received: from aer-iport-3.cisco.com (aer-iport-3.cisco.com [173.38.203.53]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 8CBAF12DAB2 for <i2rs@ietf.org>; Thu, 23 Jun 2016 07:12:53 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=4764; q=dns/txt; s=iport; t=1466691173; x=1467900773; h=subject:to:references:from:message-id:date:mime-version: in-reply-to:content-transfer-encoding; bh=gQDZkA5DpRw1QABSVrfIL7tsdzYY+S6v6ShfPqQdosw=; b=Et6s+xoRSjII27SVZXwYS85TiGlRudZXVSSIY+H2OEn7l3IAC6QdzIlV YphzkJF8OQ3Mq7ywKRYT819xxGR6VuUnL01VJhnXmH+4hsjUjh6kiWJun z51lO0Cso5mpr9BZPHs0rQCP3p0KQyUmwFA8AgfogzSLOI9FqeZ7E4JZ7 4=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0CoBACo7GpX/xbLJq1ehD+9AYYXAoF8A?= =?us-ascii?q?QEBAQEBZieETAEBAQMBOFELGC5XEwgBAYgkCMUVAQEBAQYBAQEBI4YngXeCVoo?= =?us-ascii?q?bAQSYfY4tgWmHXSOFOo98VIIIHIFNO4lfKoEaAQEB?=
X-IronPort-AV: E=Sophos;i="5.26,509,1459814400"; d="scan'208";a="636348558"
Received: from aer-iport-nat.cisco.com (HELO aer-core-4.cisco.com) ([173.38.203.22]) by aer-iport-3.cisco.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 23 Jun 2016 14:12:51 +0000
Received: from [10.63.23.64] (dhcp-ensft1-uk-vla370-10-63-23-64.cisco.com [10.63.23.64]) by aer-core-4.cisco.com (8.14.5/8.14.5) with ESMTP id u5NECpkj002060 for <i2rs@ietf.org>; Thu, 23 Jun 2016 14:12:51 GMT
To: i2rs@ietf.org
References: <20160623120251.GA46183@elstar.local>
From: Robert Wilton <rwilton@cisco.com>
Message-ID: <085cf0e5-414d-7bfc-203e-b98e75a1337a@cisco.com>
Date: Thu, 23 Jun 2016 15:12:50 +0100
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.1.1
MIME-Version: 1.0
In-Reply-To: <20160623120251.GA46183@elstar.local>
Content-Type: text/plain; charset=windows-1252; format=flowed
Content-Transfer-Encoding: 7bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/64Mqjxai1SVaQ7IMNlACeKjeZig>
Subject: Re: [i2rs] comments on draft-ietf-i2rs-ephemeral-state-10
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 23 Jun 2016 14:13:27 -0000

Hi,

On 23/06/2016 13:02, Juergen Schoenwaelder wrote:
> Hi,
>
> here are few comments on the latest version.
>
>     Ephemeral-REQ-03: Ephemeral state must be able to utilized temporary
>     operational state (e.g.  MPLS LSP-ID or a BGP IN-RIB) as a
>     constraints.
>
> I am not sure what 'must be able to utilized temporary operational
> state as constraints' means. The text in the parenthesis does not help
> me understand this better. Did you want to say something like:
> 'Ephemeral configuration state may have constraints that refer to
> operational state'? I am using 'ephemeral configuration state' since
> this is used in other places (although sometimes worded slightly
> different).
I asked a similar question in the I2RS  interim meeting yesterday, I 
think that Sue's spoken explanation of the requirement was effectively:

    Ephemeral-REQ-03: Ephemeral state may have constraints that refer
    to operational state, this includes potentially fast changing or
    short lived operational state nodes, such as MPLS LSP-ID or a BGP IN-RIB.

Perhaps this wording is more clear?


>
>     Ephemeral-REQ-04: Ephemeral state MAY refer to non-ephemeral state
>     for purposes of implementing constraints.
>
> Hm, now I wonder whether this is just a special case of
> Ephemeral-REQ-03 and if so it is not clear why we need this as a
> separate requirement. If this is not the case but something different,
> then likely my interpretation of Ephemeral-REQ-03 is wrong.
I think that ephemeral state could also use configuration nodes as a 
constraint, so it isn't just operational state covered by REQ-3.

>
> s/2RS/I2RS in Ephemeral-REQ-05. I would actually rewrite the beginning
> of Ephemeral-REQ-05 as follows:
>
>     Ephemeral-REQ-05: I2RS interactions may
>     lead to undesirable or unsustainable resource consumption on a system
>     implementing an I2RS Agent.  It is RECOMMENDED that mechanisms be
>     made available to permit prioritization of I2RS interactions, when
>     appropriate, to permit implementations to shed work load when
>     operating under constrained resources.  An example of such a work
>     shedding mechanism is rate-limiting.
>
> I would remove the Note: since I believe the key observation here are
> the potentially high volume of I2RS interactions and not the fact that
> there is a datastore involved that is ephemeral.
>
> I am still struggling with Ephemeral-REQ-06:
>
>     Ephemeral-REQ-06: The ability to augment an object with appropriate
>     YANG structures that have the property of being ephemeral.  An object
>     defined as any one of the following: yang module, submodule or
>     components of submodule, or schema node.
>
> Perhaps this is what you wanted to say?
>
>     Ephemeral-REQ-06: The ability to augment YANG schema nodes with
>     additional YANG schema nodes that have the property of being
>     ephemeral.
>
> I wonder why there are some ephemeral state requirements in sections
> labeled with "I2RS Protocol version 1" while others seem to be
> protocol version agnostic. What is the definition of I2RS protocol
> versions?  Perhaps this notion of protocol version should simply be
> removed; I am not sure it helps with the requirements.
>
>     Ephemeral-REQ-08: Yang MUST have a way to indicate in a data model
>     that nodes have the following properties: ephemeral, writable/not-
>     writable, and status/configuration.
>
> This is confusing because it says 'nodes' while in YANG we distinguish
> data nodes and schema nodes. For example, in YANG a schema node has a
> property config true|false. This schema node property defines whether
> corresponding data nodes are writable/non-writable. In other words,
> some of this requirement seems to be covered by YANG already; so what
> remains is the 'ephemeral' property - does the requirement expect this
> to be a property of a schema node?
This also came up in the meeting yesterday.  My understanding is that 
there is a desire to be able to mark ephemeral operational state nodes 
in the YANG schema as writable.  One example given was to be able to 
have a single topology table that is predominantly learned from OSPF and 
ISIS but also have some static client entries added as well.

Personally, I would prefer that all operational state is read only, and 
to restrict writable nodes to configuration only.

Hence, this leads me to wonder whether the actual desire here is really 
to be able to have tables of ephemeral state (i.e. YANG lists) that 
consist of both ephemeral configuration and ephemeral state entries.

Rob


>
> Editorial: s/prevent was the oscillation/prevent oscillation/
>
> /js
>


From nobody Thu Jun 23 08:41:49 2016
Return-Path: <j.schoenwaelder@jacobs-university.de>
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 3C5E212D1AC for <i2rs@ietfa.amsl.com>; Thu, 23 Jun 2016 08:41:48 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.626
X-Spam-Level: 
X-Spam-Status: No, score=-5.626 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, RP_MATCHES_RCVD=-1.426] autolearn=ham autolearn_force=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 kgQPkWDPYoDW for <i2rs@ietfa.amsl.com>; Thu, 23 Jun 2016 08:41:45 -0700 (PDT)
Received: from atlas3.jacobs-university.de (atlas3.jacobs-university.de [212.201.44.18]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 5644012D19B for <i2rs@ietf.org>; Thu, 23 Jun 2016 08:41:45 -0700 (PDT)
Received: from localhost (demetrius5.irc-it.jacobs-university.de [10.70.0.222]) by atlas3.jacobs-university.de (Postfix) with ESMTP id 86E6176A; Thu, 23 Jun 2016 17:41:43 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from atlas3.jacobs-university.de ([10.70.0.205]) by localhost (demetrius5.jacobs-university.de [10.70.0.222]) (amavisd-new, port 10030) with ESMTP id ngm4c0vJFAn7; Thu, 23 Jun 2016 17:41:41 +0200 (CEST)
Received: from hermes.jacobs-university.de (hermes.jacobs-university.de [212.201.44.23]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "hermes.jacobs-university.de", Issuer "Jacobs University CA - G01" (verified OK)) by atlas3.jacobs-university.de (Postfix) with ESMTPS; Thu, 23 Jun 2016 17:41:42 +0200 (CEST)
Received: from localhost (demetrius3.jacobs-university.de [212.201.44.48]) by hermes.jacobs-university.de (Postfix) with ESMTP id 2AE1920056; Thu, 23 Jun 2016 17:41:42 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from hermes.jacobs-university.de ([212.201.44.23]) by localhost (demetrius3.jacobs-university.de [212.201.44.32]) (amavisd-new, port 10024) with ESMTP id fVScgGlAh8Qx; Thu, 23 Jun 2016 17:41:41 +0200 (CEST)
Received: from elstar.local (elstar.jacobs.jacobs-university.de [10.50.231.133]) by hermes.jacobs-university.de (Postfix) with ESMTP id 5B21B20047; Thu, 23 Jun 2016 17:41:41 +0200 (CEST)
Received: by elstar.local (Postfix, from userid 501) id 7038F3B3791C; Thu, 23 Jun 2016 17:41:39 +0200 (CEST)
Date: Thu, 23 Jun 2016 17:41:38 +0200
From: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
To: Robert Wilton <rwilton@cisco.com>
Message-ID: <20160623154138.GA46519@elstar.local>
Mail-Followup-To: Robert Wilton <rwilton@cisco.com>, i2rs@ietf.org
References: <20160623120251.GA46183@elstar.local> <085cf0e5-414d-7bfc-203e-b98e75a1337a@cisco.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <085cf0e5-414d-7bfc-203e-b98e75a1337a@cisco.com>
User-Agent: Mutt/1.6.0 (2016-04-01)
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/jQoqCTaKm9KMHQ-Rr4OkWjNxcTI>
Cc: i2rs@ietf.org
Subject: Re: [i2rs] comments on draft-ietf-i2rs-ephemeral-state-10
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
Reply-To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 23 Jun 2016 15:41:48 -0000

On Thu, Jun 23, 2016 at 03:12:50PM +0100, Robert Wilton wrote:
> Hi,
> 
> On 23/06/2016 13:02, Juergen Schoenwaelder wrote:
> > Hi,
> > 
> > here are few comments on the latest version.
> > 
> >     Ephemeral-REQ-03: Ephemeral state must be able to utilized temporary
> >     operational state (e.g.  MPLS LSP-ID or a BGP IN-RIB) as a
> >     constraints.
> > 
> > I am not sure what 'must be able to utilized temporary operational
> > state as constraints' means. The text in the parenthesis does not help
> > me understand this better. Did you want to say something like:
> > 'Ephemeral configuration state may have constraints that refer to
> > operational state'? I am using 'ephemeral configuration state' since
> > this is used in other places (although sometimes worded slightly
> > different).
> I asked a similar question in the I2RS  interim meeting yesterday, I think
> that Sue's spoken explanation of the requirement was effectively:
> 
>    Ephemeral-REQ-03: Ephemeral state may have constraints that refer
>    to operational state, this includes potentially fast changing or
>    short lived operational state nodes, such as MPLS LSP-ID or a BGP IN-RIB.
> 
> Perhaps this wording is more clear?

Yes, this is clearer. One question of course is what is expected to
happen if constraints are becoming false due to (fast) operational
state changes, that is, what the expected consequence of this is.

> >     Ephemeral-REQ-04: Ephemeral state MAY refer to non-ephemeral state
> >     for purposes of implementing constraints.
> > 
> > Hm, now I wonder whether this is just a special case of
> > Ephemeral-REQ-03 and if so it is not clear why we need this as a
> > separate requirement. If this is not the case but something different,
> > then likely my interpretation of Ephemeral-REQ-03 is wrong.
> I think that ephemeral state could also use configuration nodes as a
> constraint, so it isn't just operational state covered by REQ-3.

Well, the Ephemeral-REQ-04 text says 'non-ephemeral state' - if your
interpretation is correct than this phrase is wrong or possibly
misleading.

/js

-- 
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>


From nobody Thu Jun 23 08:42:06 2016
Return-Path: <shares@ndzh.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 BEC9D12D1AC for <i2rs@ietfa.amsl.com>; Thu, 23 Jun 2016 08:42:04 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.738
X-Spam-Level: *
X-Spam-Status: No, score=1.738 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, RDNS_NONE=0.793] autolearn=no autolearn_force=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 dGFsDubQEaAu for <i2rs@ietfa.amsl.com>; Thu, 23 Jun 2016 08:42:03 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 930F812D505 for <i2rs@ietf.org>; Thu, 23 Jun 2016 08:41:59 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=174.124.195.80; 
From: "Susan Hares" <shares@ndzh.com>
To: "'Juergen Schoenwaelder'" <j.schoenwaelder@jacobs-university.de>, <i2rs@ietf.org>
References: <20160623120251.GA46183@elstar.local>
In-Reply-To: <20160623120251.GA46183@elstar.local>
Date: Thu, 23 Jun 2016 11:41:27 -0400
Message-ID: <00d101d1cd65$b4edf660$1ec9e320$@ndzh.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQHCSRbpWb0yJVb4kgFT1yEyebZopKAWMnQg
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/Zo8izWx3JUB3blQW46Llgk35V6Q>
Subject: Re: [i2rs] comments on draft-ietf-i2rs-ephemeral-state-10
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 23 Jun 2016 15:42:05 -0000

Juergen: 

Answers are listed below.  After you confirm Ephemeral-REQ-03,
Ephemeral-REQ-06, and Ephemeral-REQ-08, I will release a version-11. 

Sue 

-----Original Message-----
From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Juergen Schoenwaelder
Sent: Thursday, June 23, 2016 8:03 AM
To: i2rs@ietf.org
Subject: [i2rs] comments on draft-ietf-i2rs-ephemeral-state-10

>Hi,
>
>here are few comments on the latest version.
>
> Ephemeral-REQ-03: Ephemeral state must be able to utilized temporary
> operational state (e.g.  MPLS LSP-ID or a BGP IN-RIB) as a
> constraints.

> I am not sure what 'must be able to utilized temporary operational state
as constraints' means. The text in the parenthesis does not help me
understand this better. Did you want to say something like:
> 'Ephemeral configuration state may have constraints that refer to
operational state'? I am using 'ephemeral configuration state' since this is
used in other places (although sometimes worded slightly different).
>

Sue:  Ephemeral state is defined as "ephemeral configuration state" and
operational state.  Would this text be acceptable: 

Ephemeral State Requirements
In requirements Ephemeral-REQ-01 to Ephemeral-05, Ephemeral state 
is defined as potentially including both ephemeral configured state and
operational state.	

Ephemeral-REQ-03: Ephemeral state must be able to utilize operational state 
(e.g. MPLS LSP-ID or BGP In-RIB) as a constraint.      

>   Ephemeral-REQ-04: Ephemeral state MAY refer to non-ephemeral state
> for purposes of implementing constraints.

> Hm, now I wonder whether this is just a special case of
> Ephemeral-REQ-03 and if so it is not clear why we need this as a separate
requirement. If this is not the case but something different, then likely my
interpretation of Ephemeral-REQ-03 is wrong.

Juergen: Ephemeral state was defined by the I2RS group as both ephemeral
configuration state and operational state in ephemeral portions of
datastore. 

>s/2RS/I2RS in Ephemeral-REQ-05. I would actually rewrite the beginning of
Ephemeral-REQ-05 as follows:

Sue: I will change /2RS/I2RS. 

>   Ephemeral-REQ-05: I2RS interactions may
>  lead to undesirable or unsustainable resource consumption on a system
> implementing an I2RS Agent.  It is RECOMMENDED that mechanisms be
>  made available to permit prioritization of I2RS interactions, when
>  appropriate, to permit implementations to shed work load when
> operating under constrained resources.  An example of such a work
 > shedding mechanism is rate-limiting.

Sue: The text that specifies  
"I2RS pub-sub, logging, RPC or other mechanisms may lead to undesirable 
   or unsustainable resource consumption on a system implementing an I2RS
Agent.:" 

provides useful information to the I2RS implementers.  Unless this really
causes problems, 
it would be useful to leave it.  I believe it says the same thing. 

>I would remove the Note: since I believe the key observation here are the
potentially high volume of I2RS interactions and not the fact that there is
a datastore involved that is ephemeral.

Sue: I can remove the note. 

>I am still struggling with Ephemeral-REQ-06:
>
> Ephemeral-REQ-06: The ability to augment an object with appropriate
> YANG structures that have the property of being ephemeral.  An object
> defined as any one of the following: yang module, submodule or
> components of submodule, or schema node.

> Perhaps this is what you wanted to say?

   > Ephemeral-REQ-06: The ability to augment YANG schema nodes with
   > additional YANG schema nodes that have the property of being
   > ephemeral.

Sue:  If this text allows: 
1) yang modules that are all ephemeral, 
2) yang submodules that are all ephemeral, 
3) portions of submodules that are ephemeral,  and 
4) schema nodes that are ephemeral

Then I'll change it.  Please confirm. 

>I wonder why there are some ephemeral state requirements in sections
labeled with "I2RS Protocol version 1" while others seem to be protocol
version agnostic. What is the definition of I2RS protocol versions?  Perhaps
this notion of protocol version should simply be >removed; I am not sure it
helps with the requirements.

Sue: I will remove it.  However, the I2RS knows that it will add additional
features in a second revision.  However, that is probably self-evident if we
come up with a "bis" document. 

>   Ephemeral-REQ-08: Yang MUST have a way to indicate in a data model
>  that nodes have the following properties: ephemeral, writable/not-
>  writable, and status/configuration.

>This is confusing because it says 'nodes' while in YANG we distinguish data
nodes and schema nodes. For example, in YANG a schema node has a property
config true|false. This schema node property defines whether corresponding
data nodes are writable/non->writable. In other words, some of this
requirement seems to be covered by YANG already; so what remains is the
'ephemeral' property - does the requirement expect this to be a property of
a schema node?

We will change nodes to a "schema node". 

Editorial: s/prevent was the oscillation/prevent oscillation/
- changed 

/js

-- 
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>

_______________________________________________
i2rs mailing list
i2rs@ietf.org
https://www.ietf.org/mailman/listinfo/i2rs


From nobody Thu Jun 23 08:47:57 2016
Return-Path: <shares@ndzh.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 06BBD12D0A6 for <i2rs@ietfa.amsl.com>; Thu, 23 Jun 2016 08:47:56 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.738
X-Spam-Level: *
X-Spam-Status: No, score=1.738 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, RDNS_NONE=0.793] autolearn=no autolearn_force=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 hcwPRNHGBmG6 for <i2rs@ietfa.amsl.com>; Thu, 23 Jun 2016 08:47:54 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 6EC9C12D19B for <i2rs@ietf.org>; Thu, 23 Jun 2016 08:47:53 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=174.124.195.80; 
From: "Susan Hares" <shares@ndzh.com>
To: "'Juergen Schoenwaelder'" <j.schoenwaelder@jacobs-university.de>, "'Robert Wilton'" <rwilton@cisco.com>
References: <20160623120251.GA46183@elstar.local> <085cf0e5-414d-7bfc-203e-b98e75a1337a@cisco.com> <20160623154138.GA46519@elstar.local>
In-Reply-To: <20160623154138.GA46519@elstar.local>
Date: Thu, 23 Jun 2016 11:47:24 -0400
Message-ID: <013f01d1cd66$89680930$9c381b90$@ndzh.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQHCSRbpWb0yJVb4kgFT1yEyebZopAEPuBwXAwKJxXSf9agc8A==
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/f5xEUXkHdHRrzBYcRgUWbC4WIbk>
Cc: i2rs@ietf.org
Subject: Re: [i2rs] comments on draft-ietf-i2rs-ephemeral-state-10
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 23 Jun 2016 15:47:56 -0000

Juergen and Robert: 

I will use the following for Ephemeral-REQ-03.  

Ephemeral-REQ-03: Ephemeral state must be able to utilized temporary
 operational state (e.g.  MPLS LSP-ID or a BGP IN-RIB) as a
 constraints.

On Ephemeral-REQ-04, 

>Ephemeral-REQ-04: Ephemeral state MAY refer to non-ephemeral state
>for purposes of implementing constraints.

Non-ephemeral state is both configuration state (config true), and
operational state (config false). 

I believe these are two different requirements. 

Sue 

-----Original Message-----
From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Juergen Schoenwaelder
Sent: Thursday, June 23, 2016 11:42 AM
To: Robert Wilton
Cc: i2rs@ietf.org
Subject: Re: [i2rs] comments on draft-ietf-i2rs-ephemeral-state-10

On Thu, Jun 23, 2016 at 03:12:50PM +0100, Robert Wilton wrote:
> Hi,
> 
> On 23/06/2016 13:02, Juergen Schoenwaelder wrote:
> > Hi,
> > 
> > here are few comments on the latest version.
> > 
> >     Ephemeral-REQ-03: Ephemeral state must be able to utilized temporary
> >     operational state (e.g.  MPLS LSP-ID or a BGP IN-RIB) as a
> >     constraints.
> > 
> > I am not sure what 'must be able to utilized temporary operational 
> > state as constraints' means. The text in the parenthesis does not 
> > help me understand this better. Did you want to say something like:
> > 'Ephemeral configuration state may have constraints that refer to 
> > operational state'? I am using 'ephemeral configuration state' since 
> > this is used in other places (although sometimes worded slightly 
> > different).
> I asked a similar question in the I2RS  interim meeting yesterday, I 
> think that Sue's spoken explanation of the requirement was effectively:
> 
>    Ephemeral-REQ-03: Ephemeral state may have constraints that refer
>    to operational state, this includes potentially fast changing or
>    short lived operational state nodes, such as MPLS LSP-ID or a BGP
IN-RIB.
> 
> Perhaps this wording is more clear?

Yes, this is clearer. One question of course is what is expected to happen
if constraints are becoming false due to (fast) operational state changes,
that is, what the expected consequence of this is.

> >     Ephemeral-REQ-04: Ephemeral state MAY refer to non-ephemeral state
> >     for purposes of implementing constraints.
> > 
> > Hm, now I wonder whether this is just a special case of
> > Ephemeral-REQ-03 and if so it is not clear why we need this as a 
> > separate requirement. If this is not the case but something 
> > different, then likely my interpretation of Ephemeral-REQ-03 is wrong.
> I think that ephemeral state could also use configuration nodes as a 
> constraint, so it isn't just operational state covered by REQ-3.

Well, the Ephemeral-REQ-04 text says 'non-ephemeral state' - if your
interpretation is correct than this phrase is wrong or possibly misleading.

/js

-- 
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>

_______________________________________________
i2rs mailing list
i2rs@ietf.org
https://www.ietf.org/mailman/listinfo/i2rs


From nobody Thu Jun 23 08:59:42 2016
Return-Path: <rwilton@cisco.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 6309912D1E6 for <i2rs@ietfa.amsl.com>; Thu, 23 Jun 2016 08:59:40 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -15.947
X-Spam-Level: 
X-Spam-Status: No, score=-15.947 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H4=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-1.426, SPF_PASS=-0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.com
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 D-TQ5IeswooB for <i2rs@ietfa.amsl.com>; Thu, 23 Jun 2016 08:59:37 -0700 (PDT)
Received: from aer-iport-2.cisco.com (aer-iport-2.cisco.com [173.38.203.52]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 2ECE312D0F9 for <i2rs@ietf.org>; Thu, 23 Jun 2016 08:59:37 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=3777; q=dns/txt; s=iport; t=1466697577; x=1467907177; h=subject:to:references:cc:from:message-id:date: mime-version:in-reply-to:content-transfer-encoding; bh=1+Am/gZqCVwaiZJnn9CL6vy5uvqgpDFLI94axn/SenU=; b=UjTufhQGRwrVpgUobg3g99bzY0/qpPdmBeX+/KQ0OsJqrAJoEjhEz3AO MDVQQbhNtAtFoYaHrp7rFK04BZQTWseupXHYkoNnQqmbGF6PcpE3b6bTo 58xPo3D4jnOn92ejZAU5lb1XR59jUKgzunsz3msMc7g45I0g2lQyNe8ov s=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0DOAQCJBmxX/xbLJq1dhD9SujqBeoYYA?= =?us-ascii?q?oFjFAEBAQEBAQFlJ4RMAQEBAwE4QQwECw4DBAEBAScHRgkIBgEMBgIBAYgkCMc?= =?us-ascii?q?XAQEBAQEBAQEBAQEBAQEBAQEBAQEBHIYngXeCVoobAQSYf44xiUeFXY9+HjaCC?= =?us-ascii?q?ByBTTsyiGAqgRoBAQE?=
X-IronPort-AV: E=Sophos;i="5.26,517,1459814400"; d="scan'208";a="635332398"
Received: from aer-iport-nat.cisco.com (HELO aer-core-4.cisco.com) ([173.38.203.22]) by aer-iport-2.cisco.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 23 Jun 2016 15:59:35 +0000
Received: from [10.63.23.64] (dhcp-ensft1-uk-vla370-10-63-23-64.cisco.com [10.63.23.64]) by aer-core-4.cisco.com (8.14.5/8.14.5) with ESMTP id u5NFxYIx023351; Thu, 23 Jun 2016 15:59:35 GMT
To: Susan Hares <shares@ndzh.com>, "'Juergen Schoenwaelder'" <j.schoenwaelder@jacobs-university.de>
References: <20160623120251.GA46183@elstar.local> <085cf0e5-414d-7bfc-203e-b98e75a1337a@cisco.com> <20160623154138.GA46519@elstar.local> <013f01d1cd66$89680930$9c381b90$@ndzh.com>
From: Robert Wilton <rwilton@cisco.com>
Message-ID: <cbd8985a-d1b8-bf57-d607-362013e4cd04@cisco.com>
Date: Thu, 23 Jun 2016 16:59:34 +0100
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.1.1
MIME-Version: 1.0
In-Reply-To: <013f01d1cd66$89680930$9c381b90$@ndzh.com>
Content-Type: text/plain; charset=windows-1252; format=flowed
Content-Transfer-Encoding: 7bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/nBKrNbqLs1N8Q135eboLzIF6UTE>
Cc: i2rs@ietf.org
Subject: Re: [i2rs] comments on draft-ietf-i2rs-ephemeral-state-10
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 23 Jun 2016 15:59:40 -0000

Hi,


On 23/06/2016 16:47, Susan Hares wrote:
> Juergen and Robert:
>
> I will use the following for Ephemeral-REQ-03.
>
> Ephemeral-REQ-03: Ephemeral state must be able to utilized temporary
>   operational state (e.g.  MPLS LSP-ID or a BGP IN-RIB) as a
>   constraints.
That is the original text.  Am I correct in assuming that you meant this 
text instead?:

Ephemeral-REQ-03: Ephemeral state must be able to utilize operational state
(e.g. MPLS LSP-ID or BGP In-RIB) as a constraint.

If so, this proposed text is OK with me.


>
> On Ephemeral-REQ-04,
>
>> Ephemeral-REQ-04: Ephemeral state MAY refer to non-ephemeral state
>> for purposes of implementing constraints.
> Non-ephemeral state is both configuration state (config true), and
> operational state (config false).
>
> I believe these are two different requirements.
Yes.  Given that REQ-03 covers using operational state as a constraint, 
then would it be sufficient to word REQ-04 as:

Ephemeral-REQ-04: Ephemeral state MAY refer to non-ephemeral configuration
for purposes of implementing constraints.

Or perhaps to relate it more closely to REQ-03, as:

Ephemeral-REQ-03: Ephemeral state must be able to utilize non-ephemeral
configuration as a constraint.

Or is this missing something out?

Thanks,
Rob


>
> Sue
>
> -----Original Message-----
> From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Juergen Schoenwaelder
> Sent: Thursday, June 23, 2016 11:42 AM
> To: Robert Wilton
> Cc: i2rs@ietf.org
> Subject: Re: [i2rs] comments on draft-ietf-i2rs-ephemeral-state-10
>
> On Thu, Jun 23, 2016 at 03:12:50PM +0100, Robert Wilton wrote:
>> Hi,
>>
>> On 23/06/2016 13:02, Juergen Schoenwaelder wrote:
>>> Hi,
>>>
>>> here are few comments on the latest version.
>>>
>>>      Ephemeral-REQ-03: Ephemeral state must be able to utilized temporary
>>>      operational state (e.g.  MPLS LSP-ID or a BGP IN-RIB) as a
>>>      constraints.
>>>
>>> I am not sure what 'must be able to utilized temporary operational
>>> state as constraints' means. The text in the parenthesis does not
>>> help me understand this better. Did you want to say something like:
>>> 'Ephemeral configuration state may have constraints that refer to
>>> operational state'? I am using 'ephemeral configuration state' since
>>> this is used in other places (although sometimes worded slightly
>>> different).
>> I asked a similar question in the I2RS  interim meeting yesterday, I
>> think that Sue's spoken explanation of the requirement was effectively:
>>
>>     Ephemeral-REQ-03: Ephemeral state may have constraints that refer
>>     to operational state, this includes potentially fast changing or
>>     short lived operational state nodes, such as MPLS LSP-ID or a BGP
> IN-RIB.
>> Perhaps this wording is more clear?
> Yes, this is clearer. One question of course is what is expected to happen
> if constraints are becoming false due to (fast) operational state changes,
> that is, what the expected consequence of this is.
>
>>>      Ephemeral-REQ-04: Ephemeral state MAY refer to non-ephemeral state
>>>      for purposes of implementing constraints.
>>>
>>> Hm, now I wonder whether this is just a special case of
>>> Ephemeral-REQ-03 and if so it is not clear why we need this as a
>>> separate requirement. If this is not the case but something
>>> different, then likely my interpretation of Ephemeral-REQ-03 is wrong.
>> I think that ephemeral state could also use configuration nodes as a
>> constraint, so it isn't just operational state covered by REQ-3.
> Well, the Ephemeral-REQ-04 text says 'non-ephemeral state' - if your
> interpretation is correct than this phrase is wrong or possibly misleading.
>
> /js
>


From nobody Thu Jun 23 09:18:31 2016
Return-Path: <shares@ndzh.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 B54CE12B00F for <i2rs@ietfa.amsl.com>; Thu, 23 Jun 2016 09:18:29 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.738
X-Spam-Level: *
X-Spam-Status: No, score=1.738 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, RDNS_NONE=0.793] autolearn=no autolearn_force=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 ougZJvFdraln for <i2rs@ietfa.amsl.com>; Thu, 23 Jun 2016 09:18:28 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id DF1C8127071 for <i2rs@ietf.org>; Thu, 23 Jun 2016 09:18:27 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=174.124.195.80; 
From: "Susan Hares" <shares@ndzh.com>
To: "'Robert Wilton'" <rwilton@cisco.com>, "'Juergen Schoenwaelder'" <j.schoenwaelder@jacobs-university.de>
References: <20160623120251.GA46183@elstar.local> <085cf0e5-414d-7bfc-203e-b98e75a1337a@cisco.com> <20160623154138.GA46519@elstar.local> <013f01d1cd66$89680930$9c381b90$@ndzh.com> <cbd8985a-d1b8-bf57-d607-362013e4cd04@cisco.com>
In-Reply-To: <cbd8985a-d1b8-bf57-d607-362013e4cd04@cisco.com>
Date: Thu, 23 Jun 2016 12:17:54 -0400
Message-ID: <029001d1cd6a$cc514280$64f3c780$@ndzh.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQHCSRbpWb0yJVb4kgFT1yEyebZopAEPuBwXAwKJxXQCTxCG+wILhFN4n9LcARA=
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/KIF-S9PyjtBOCFFkw0KajUXrEOQ>
Cc: i2rs@ietf.org
Subject: Re: [i2rs] comments on draft-ietf-i2rs-ephemeral-state-10
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 23 Jun 2016 16:18:30 -0000

Robert: 

I'm ok with the proposed change to Ephemeral-REQ-04. 

Ephemeral-REQ-03: Ephemeral state must be able to utilize non-ephemeral
configuration as a constraint.

I will await Juergen's comment on Ephemeral-REQ-08, and then publish version
-11. 

Sue 
-----Original Message-----
From: Robert Wilton [mailto:rwilton@cisco.com] 
Sent: Thursday, June 23, 2016 12:00 PM
To: Susan Hares; 'Juergen Schoenwaelder'
Cc: i2rs@ietf.org
Subject: Re: [i2rs] comments on draft-ietf-i2rs-ephemeral-state-10

Hi,


On 23/06/2016 16:47, Susan Hares wrote:
> Juergen and Robert:
>
> I will use the following for Ephemeral-REQ-03.
>
> Ephemeral-REQ-03: Ephemeral state must be able to utilized temporary
>   operational state (e.g.  MPLS LSP-ID or a BGP IN-RIB) as a
>   constraints.
That is the original text.  Am I correct in assuming that you meant this
text instead?:

Ephemeral-REQ-03: Ephemeral state must be able to utilize operational state
(e.g. MPLS LSP-ID or BGP In-RIB) as a constraint.

If so, this proposed text is OK with me.


>
> On Ephemeral-REQ-04,
>
>> Ephemeral-REQ-04: Ephemeral state MAY refer to non-ephemeral state 
>> for purposes of implementing constraints.
> Non-ephemeral state is both configuration state (config true), and 
> operational state (config false).
>
> I believe these are two different requirements.
Yes.  Given that REQ-03 covers using operational state as a constraint, then
would it be sufficient to word REQ-04 as:

Ephemeral-REQ-04: Ephemeral state MAY refer to non-ephemeral configuration
for purposes of implementing constraints.

Or perhaps to relate it more closely to REQ-03, as:

Ephemeral-REQ-03: Ephemeral state must be able to utilize non-ephemeral
configuration as a constraint.

Or is this missing something out?

Thanks,
Rob


>
> Sue
>
> -----Original Message-----
> From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Juergen 
> Schoenwaelder
> Sent: Thursday, June 23, 2016 11:42 AM
> To: Robert Wilton
> Cc: i2rs@ietf.org
> Subject: Re: [i2rs] comments on draft-ietf-i2rs-ephemeral-state-10
>
> On Thu, Jun 23, 2016 at 03:12:50PM +0100, Robert Wilton wrote:
>> Hi,
>>
>> On 23/06/2016 13:02, Juergen Schoenwaelder wrote:
>>> Hi,
>>>
>>> here are few comments on the latest version.
>>>
>>>      Ephemeral-REQ-03: Ephemeral state must be able to utilized
temporary
>>>      operational state (e.g.  MPLS LSP-ID or a BGP IN-RIB) as a
>>>      constraints.
>>>
>>> I am not sure what 'must be able to utilized temporary operational 
>>> state as constraints' means. The text in the parenthesis does not 
>>> help me understand this better. Did you want to say something like:
>>> 'Ephemeral configuration state may have constraints that refer to 
>>> operational state'? I am using 'ephemeral configuration state' since 
>>> this is used in other places (although sometimes worded slightly 
>>> different).
>> I asked a similar question in the I2RS  interim meeting yesterday, I 
>> think that Sue's spoken explanation of the requirement was effectively:
>>
>>     Ephemeral-REQ-03: Ephemeral state may have constraints that refer
>>     to operational state, this includes potentially fast changing or
>>     short lived operational state nodes, such as MPLS LSP-ID or a BGP
> IN-RIB.
>> Perhaps this wording is more clear?
> Yes, this is clearer. One question of course is what is expected to 
> happen if constraints are becoming false due to (fast) operational 
> state changes, that is, what the expected consequence of this is.
>
>>>      Ephemeral-REQ-04: Ephemeral state MAY refer to non-ephemeral state
>>>      for purposes of implementing constraints.
>>>
>>> Hm, now I wonder whether this is just a special case of
>>> Ephemeral-REQ-03 and if so it is not clear why we need this as a 
>>> separate requirement. If this is not the case but something 
>>> different, then likely my interpretation of Ephemeral-REQ-03 is wrong.
>> I think that ephemeral state could also use configuration nodes as a 
>> constraint, so it isn't just operational state covered by REQ-3.
> Well, the Ephemeral-REQ-04 text says 'non-ephemeral state' - if your 
> interpretation is correct than this phrase is wrong or possibly
misleading.
>
> /js
>



From nobody Thu Jun 23 09:19:34 2016
Return-Path: <shares@ndzh.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 DBAA912B00F for <i2rs@ietfa.amsl.com>; Thu, 23 Jun 2016 09:19:31 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.738
X-Spam-Level: *
X-Spam-Status: No, score=1.738 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, RDNS_NONE=0.793] autolearn=no autolearn_force=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 WSMiV8uVVeLH for <i2rs@ietfa.amsl.com>; Thu, 23 Jun 2016 09:19:30 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 3BCFB127071 for <i2rs@ietf.org>; Thu, 23 Jun 2016 09:19:30 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=174.124.195.80; 
From: "Susan Hares" <shares@ndzh.com>
To: "'Robert Wilton'" <rwilton@cisco.com>, <i2rs@ietf.org>
References: <20160623120251.GA46183@elstar.local> <085cf0e5-414d-7bfc-203e-b98e75a1337a@cisco.com>
In-Reply-To: <085cf0e5-414d-7bfc-203e-b98e75a1337a@cisco.com>
Date: Thu, 23 Jun 2016 12:19:05 -0400
Message-ID: <029201d1cd6a$f6b80ea0$e4282be0$@ndzh.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQHCSRbpWb0yJVb4kgFT1yEyebZopAEPuBwXoA27lbA=
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/xHVacQWC9evdzdGC0PYuDW8kqRU>
Subject: Re: [i2rs] comments on draft-ietf-i2rs-ephemeral-state-10
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 23 Jun 2016 16:19:32 -0000

Juergen and Robert:  

I will use the following for Ephemeral-REQ-03. 

   Ephemeral-REQ-03: Ephemeral state may have constraints that refer
    to operational state, this includes potentially fast changing or
    short lived operational state nodes, such as MPLS LSP-ID or a BGP
IN-RIB.

Sue  



-----Original Message-----
From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Robert Wilton
Sent: Thursday, June 23, 2016 10:13 AM
To: i2rs@ietf.org
Subject: Re: [i2rs] comments on draft-ietf-i2rs-ephemeral-state-10

Hi,

On 23/06/2016 13:02, Juergen Schoenwaelder wrote:
> Hi,
>
> here are few comments on the latest version.
>
>     Ephemeral-REQ-03: Ephemeral state must be able to utilized temporary
>     operational state (e.g.  MPLS LSP-ID or a BGP IN-RIB) as a
>     constraints.
>
> I am not sure what 'must be able to utilized temporary operational 
> state as constraints' means. The text in the parenthesis does not help 
> me understand this better. Did you want to say something like:
> 'Ephemeral configuration state may have constraints that refer to 
> operational state'? I am using 'ephemeral configuration state' since 
> this is used in other places (although sometimes worded slightly 
> different).
I asked a similar question in the I2RS  interim meeting yesterday, I think
that Sue's spoken explanation of the requirement was effectively:

    Ephemeral-REQ-03: Ephemeral state may have constraints that refer
    to operational state, this includes potentially fast changing or
    short lived operational state nodes, such as MPLS LSP-ID or a BGP
IN-RIB.

Perhaps this wording is more clear?


>
>     Ephemeral-REQ-04: Ephemeral state MAY refer to non-ephemeral state
>     for purposes of implementing constraints.
>
> Hm, now I wonder whether this is just a special case of
> Ephemeral-REQ-03 and if so it is not clear why we need this as a 
> separate requirement. If this is not the case but something different, 
> then likely my interpretation of Ephemeral-REQ-03 is wrong.
I think that ephemeral state could also use configuration nodes as a
constraint, so it isn't just operational state covered by REQ-3.

>
> s/2RS/I2RS in Ephemeral-REQ-05. I would actually rewrite the beginning 
> of Ephemeral-REQ-05 as follows:
>
>     Ephemeral-REQ-05: I2RS interactions may
>     lead to undesirable or unsustainable resource consumption on a system
>     implementing an I2RS Agent.  It is RECOMMENDED that mechanisms be
>     made available to permit prioritization of I2RS interactions, when
>     appropriate, to permit implementations to shed work load when
>     operating under constrained resources.  An example of such a work
>     shedding mechanism is rate-limiting.
>
> I would remove the Note: since I believe the key observation here are 
> the potentially high volume of I2RS interactions and not the fact that 
> there is a datastore involved that is ephemeral.
>
> I am still struggling with Ephemeral-REQ-06:
>
>     Ephemeral-REQ-06: The ability to augment an object with appropriate
>     YANG structures that have the property of being ephemeral.  An object
>     defined as any one of the following: yang module, submodule or
>     components of submodule, or schema node.
>
> Perhaps this is what you wanted to say?
>
>     Ephemeral-REQ-06: The ability to augment YANG schema nodes with
>     additional YANG schema nodes that have the property of being
>     ephemeral.
>
> I wonder why there are some ephemeral state requirements in sections 
> labeled with "I2RS Protocol version 1" while others seem to be 
> protocol version agnostic. What is the definition of I2RS protocol 
> versions?  Perhaps this notion of protocol version should simply be 
> removed; I am not sure it helps with the requirements.
>
>     Ephemeral-REQ-08: Yang MUST have a way to indicate in a data model
>     that nodes have the following properties: ephemeral, writable/not-
>     writable, and status/configuration.
>
> This is confusing because it says 'nodes' while in YANG we distinguish 
> data nodes and schema nodes. For example, in YANG a schema node has a 
> property config true|false. This schema node property defines whether 
> corresponding data nodes are writable/non-writable. In other words, 
> some of this requirement seems to be covered by YANG already; so what 
> remains is the 'ephemeral' property - does the requirement expect this 
> to be a property of a schema node?
This also came up in the meeting yesterday.  My understanding is that there
is a desire to be able to mark ephemeral operational state nodes in the YANG
schema as writable.  One example given was to be able to have a single
topology table that is predominantly learned from OSPF and ISIS but also
have some static client entries added as well.

Personally, I would prefer that all operational state is read only, and to
restrict writable nodes to configuration only.

Hence, this leads me to wonder whether the actual desire here is really to
be able to have tables of ephemeral state (i.e. YANG lists) that consist of
both ephemeral configuration and ephemeral state entries.

Rob


>
> Editorial: s/prevent was the oscillation/prevent oscillation/
>
> /js
>

_______________________________________________
i2rs mailing list
i2rs@ietf.org
https://www.ietf.org/mailman/listinfo/i2rs


From nobody Thu Jun 23 09:20:34 2016
Return-Path: <shares@ndzh.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 0C16912D0A5 for <i2rs@ietfa.amsl.com>; Thu, 23 Jun 2016 09:20:30 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.738
X-Spam-Level: *
X-Spam-Status: No, score=1.738 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, RDNS_NONE=0.793] autolearn=no autolearn_force=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 Rs5yLABqNLmt for <i2rs@ietfa.amsl.com>; Thu, 23 Jun 2016 09:20:28 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 73B6012B00F for <i2rs@ietf.org>; Thu, 23 Jun 2016 09:20:28 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=174.124.195.80; 
From: "Susan Hares" <shares@ndzh.com>
To: "'Robert Wilton'" <rwilton@cisco.com>, "'Juergen Schoenwaelder'" <j.schoenwaelder@jacobs-university.de>
References: <20160623120251.GA46183@elstar.local> <085cf0e5-414d-7bfc-203e-b98e75a1337a@cisco.com> <20160623154138.GA46519@elstar.local> <013f01d1cd66$89680930$9c381b90$@ndzh.com> <cbd8985a-d1b8-bf57-d607-362013e4cd04@cisco.com>
In-Reply-To: <cbd8985a-d1b8-bf57-d607-362013e4cd04@cisco.com>
Date: Thu, 23 Jun 2016 12:19:57 -0400
Message-ID: <029401d1cd6b$15b12260$41136720$@ndzh.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQHCSRbpWb0yJVb4kgFT1yEyebZopAEPuBwXAwKJxXQCTxCG+wILhFN4n9LbBAA=
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/gRW-FzBJvc7IMSDjmSODn3MbuO4>
Cc: i2rs@ietf.org
Subject: Re: [i2rs] comments on draft-ietf-i2rs-ephemeral-state-10
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 23 Jun 2016 16:20:31 -0000

Robert: 

I changed Ephemeral-REQ-03 to: 

   Ephemeral-REQ-03: Ephemeral state may have constraints that refer
     to operational state, this includes potentially fast changing or
     short lived operational state nodes, such as MPLS LSP-ID or a BGP
IN-RIB.

Is this OK? 

Sue 

-----Original Message-----
From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Robert Wilton
Sent: Thursday, June 23, 2016 12:00 PM
To: Susan Hares; 'Juergen Schoenwaelder'
Cc: i2rs@ietf.org
Subject: Re: [i2rs] comments on draft-ietf-i2rs-ephemeral-state-10

Hi,


On 23/06/2016 16:47, Susan Hares wrote:
> Juergen and Robert:
>
> I will use the following for Ephemeral-REQ-03.
>
> Ephemeral-REQ-03: Ephemeral state must be able to utilized temporary
>   operational state (e.g.  MPLS LSP-ID or a BGP IN-RIB) as a
>   constraints.
That is the original text.  Am I correct in assuming that you meant this
text instead?:

Ephemeral-REQ-03: Ephemeral state must be able to utilize operational state
(e.g. MPLS LSP-ID or BGP In-RIB) as a constraint.

If so, this proposed text is OK with me.


>
> On Ephemeral-REQ-04,
>
>> Ephemeral-REQ-04: Ephemeral state MAY refer to non-ephemeral state 
>> for purposes of implementing constraints.
> Non-ephemeral state is both configuration state (config true), and 
> operational state (config false).
>
> I believe these are two different requirements.
Yes.  Given that REQ-03 covers using operational state as a constraint, then
would it be sufficient to word REQ-04 as:

Ephemeral-REQ-04: Ephemeral state MAY refer to non-ephemeral configuration
for purposes of implementing constraints.

Or perhaps to relate it more closely to REQ-03, as:

Ephemeral-REQ-03: Ephemeral state must be able to utilize non-ephemeral
configuration as a constraint.

Or is this missing something out?

Thanks,
Rob


>
> Sue
>
> -----Original Message-----
> From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Juergen 
> Schoenwaelder
> Sent: Thursday, June 23, 2016 11:42 AM
> To: Robert Wilton
> Cc: i2rs@ietf.org
> Subject: Re: [i2rs] comments on draft-ietf-i2rs-ephemeral-state-10
>
> On Thu, Jun 23, 2016 at 03:12:50PM +0100, Robert Wilton wrote:
>> Hi,
>>
>> On 23/06/2016 13:02, Juergen Schoenwaelder wrote:
>>> Hi,
>>>
>>> here are few comments on the latest version.
>>>
>>>      Ephemeral-REQ-03: Ephemeral state must be able to utilized
temporary
>>>      operational state (e.g.  MPLS LSP-ID or a BGP IN-RIB) as a
>>>      constraints.
>>>
>>> I am not sure what 'must be able to utilized temporary operational 
>>> state as constraints' means. The text in the parenthesis does not 
>>> help me understand this better. Did you want to say something like:
>>> 'Ephemeral configuration state may have constraints that refer to 
>>> operational state'? I am using 'ephemeral configuration state' since 
>>> this is used in other places (although sometimes worded slightly 
>>> different).
>> I asked a similar question in the I2RS  interim meeting yesterday, I 
>> think that Sue's spoken explanation of the requirement was effectively:
>>
>>     Ephemeral-REQ-03: Ephemeral state may have constraints that refer
>>     to operational state, this includes potentially fast changing or
>>     short lived operational state nodes, such as MPLS LSP-ID or a BGP
> IN-RIB.
>> Perhaps this wording is more clear?
> Yes, this is clearer. One question of course is what is expected to 
> happen if constraints are becoming false due to (fast) operational 
> state changes, that is, what the expected consequence of this is.
>
>>>      Ephemeral-REQ-04: Ephemeral state MAY refer to non-ephemeral state
>>>      for purposes of implementing constraints.
>>>
>>> Hm, now I wonder whether this is just a special case of
>>> Ephemeral-REQ-03 and if so it is not clear why we need this as a 
>>> separate requirement. If this is not the case but something 
>>> different, then likely my interpretation of Ephemeral-REQ-03 is wrong.
>> I think that ephemeral state could also use configuration nodes as a 
>> constraint, so it isn't just operational state covered by REQ-3.
> Well, the Ephemeral-REQ-04 text says 'non-ephemeral state' - if your 
> interpretation is correct than this phrase is wrong or possibly
misleading.
>
> /js
>

_______________________________________________
i2rs mailing list
i2rs@ietf.org
https://www.ietf.org/mailman/listinfo/i2rs


From nobody Thu Jun 23 09:40:35 2016
Return-Path: <rwilton@cisco.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 3FE2C12D0B7 for <i2rs@ietfa.amsl.com>; Thu, 23 Jun 2016 09:40:34 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -15.948
X-Spam-Level: 
X-Spam-Status: No, score=-15.948 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H4=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-1.426, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.com
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 WNVdy-XIK2oN for <i2rs@ietfa.amsl.com>; Thu, 23 Jun 2016 09:40:32 -0700 (PDT)
Received: from aer-iport-1.cisco.com (aer-iport-1.cisco.com [173.38.203.51]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 7FE1012B046 for <i2rs@ietf.org>; Thu, 23 Jun 2016 09:40:31 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=4711; q=dns/txt; s=iport; t=1466700031; x=1467909631; h=subject:to:references:cc:from:message-id:date: mime-version:in-reply-to:content-transfer-encoding; bh=pSHSsd4yEX4WnhLpAj56/JMJB5yp72egRYLdB2PpT7M=; b=LQQLWI6OmkLv2zMz0MBwFpI+G/XqIQcFAUFINJmsrCWERJMzTZ4bYTGo cLoO/NPwGsdw9kjdMrIZv5ROwcnUX4Up8vQ2nJSkbl7ZQ3BuaZxl0/onB fu+nmhsKh7WDT7VRuOVhGEmhgKVkYlQhmG54tiyZqxUuCq2PMOKxvlNz0 k=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0DPAQAlEGxX/xbLJq1dhBQrUro6gXoXC?= =?us-ascii?q?4V2AoFkFAEBAQEBAQFlJ4RMAQEBBAEBATU2CwwECw4DBAEBAScHJx8JCAYBDAY?= =?us-ascii?q?CAQGILA7GfQEBAQEBAQEBAQEBAQEBAQEBAQEBARcFhieBd4JWihsBBJh/jjGJR?= =?us-ascii?q?4Vdj34eNoIIHIFNOzKIYCqBGgEBAQ?=
X-IronPort-AV: E=Sophos;i="5.26,517,1459814400"; d="scan'208";a="677886871"
Received: from aer-iport-nat.cisco.com (HELO aer-core-4.cisco.com) ([173.38.203.22]) by aer-iport-1.cisco.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 23 Jun 2016 16:40:29 +0000
Received: from [10.63.23.64] (dhcp-ensft1-uk-vla370-10-63-23-64.cisco.com [10.63.23.64]) by aer-core-4.cisco.com (8.14.5/8.14.5) with ESMTP id u5NGeTR8030903; Thu, 23 Jun 2016 16:40:29 GMT
To: Susan Hares <shares@ndzh.com>, "'Juergen Schoenwaelder'" <j.schoenwaelder@jacobs-university.de>
References: <20160623120251.GA46183@elstar.local> <085cf0e5-414d-7bfc-203e-b98e75a1337a@cisco.com> <20160623154138.GA46519@elstar.local> <013f01d1cd66$89680930$9c381b90$@ndzh.com> <cbd8985a-d1b8-bf57-d607-362013e4cd04@cisco.com> <029401d1cd6b$15b12260$41136720$@ndzh.com>
From: Robert Wilton <rwilton@cisco.com>
Message-ID: <b67ea204-cd88-a73f-a394-b575a29eb303@cisco.com>
Date: Thu, 23 Jun 2016 17:40:29 +0100
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.1.1
MIME-Version: 1.0
In-Reply-To: <029401d1cd6b$15b12260$41136720$@ndzh.com>
Content-Type: text/plain; charset=windows-1252; format=flowed
Content-Transfer-Encoding: 7bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/NTp7CEgRHacAHj6NskthTA2s7jI>
Cc: i2rs@ietf.org
Subject: Re: [i2rs] comments on draft-ietf-i2rs-ephemeral-state-10
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 23 Jun 2016 16:40:34 -0000

Yes.

Thanks,
Rob


On 23/06/2016 17:19, Susan Hares wrote:
> Robert:
>
> I changed Ephemeral-REQ-03 to:
>
>     Ephemeral-REQ-03: Ephemeral state may have constraints that refer
>       to operational state, this includes potentially fast changing or
>       short lived operational state nodes, such as MPLS LSP-ID or a BGP
> IN-RIB.
>
> Is this OK?
>
> Sue
>
> -----Original Message-----
> From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Robert Wilton
> Sent: Thursday, June 23, 2016 12:00 PM
> To: Susan Hares; 'Juergen Schoenwaelder'
> Cc: i2rs@ietf.org
> Subject: Re: [i2rs] comments on draft-ietf-i2rs-ephemeral-state-10
>
> Hi,
>
>
> On 23/06/2016 16:47, Susan Hares wrote:
>> Juergen and Robert:
>>
>> I will use the following for Ephemeral-REQ-03.
>>
>> Ephemeral-REQ-03: Ephemeral state must be able to utilized temporary
>>    operational state (e.g.  MPLS LSP-ID or a BGP IN-RIB) as a
>>    constraints.
> That is the original text.  Am I correct in assuming that you meant this
> text instead?:
>
> Ephemeral-REQ-03: Ephemeral state must be able to utilize operational state
> (e.g. MPLS LSP-ID or BGP In-RIB) as a constraint.
>
> If so, this proposed text is OK with me.
>
>
>> On Ephemeral-REQ-04,
>>
>>> Ephemeral-REQ-04: Ephemeral state MAY refer to non-ephemeral state
>>> for purposes of implementing constraints.
>> Non-ephemeral state is both configuration state (config true), and
>> operational state (config false).
>>
>> I believe these are two different requirements.
> Yes.  Given that REQ-03 covers using operational state as a constraint, then
> would it be sufficient to word REQ-04 as:
>
> Ephemeral-REQ-04: Ephemeral state MAY refer to non-ephemeral configuration
> for purposes of implementing constraints.
>
> Or perhaps to relate it more closely to REQ-03, as:
>
> Ephemeral-REQ-03: Ephemeral state must be able to utilize non-ephemeral
> configuration as a constraint.
>
> Or is this missing something out?
>
> Thanks,
> Rob
>
>
>> Sue
>>
>> -----Original Message-----
>> From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Juergen
>> Schoenwaelder
>> Sent: Thursday, June 23, 2016 11:42 AM
>> To: Robert Wilton
>> Cc: i2rs@ietf.org
>> Subject: Re: [i2rs] comments on draft-ietf-i2rs-ephemeral-state-10
>>
>> On Thu, Jun 23, 2016 at 03:12:50PM +0100, Robert Wilton wrote:
>>> Hi,
>>>
>>> On 23/06/2016 13:02, Juergen Schoenwaelder wrote:
>>>> Hi,
>>>>
>>>> here are few comments on the latest version.
>>>>
>>>>       Ephemeral-REQ-03: Ephemeral state must be able to utilized
> temporary
>>>>       operational state (e.g.  MPLS LSP-ID or a BGP IN-RIB) as a
>>>>       constraints.
>>>>
>>>> I am not sure what 'must be able to utilized temporary operational
>>>> state as constraints' means. The text in the parenthesis does not
>>>> help me understand this better. Did you want to say something like:
>>>> 'Ephemeral configuration state may have constraints that refer to
>>>> operational state'? I am using 'ephemeral configuration state' since
>>>> this is used in other places (although sometimes worded slightly
>>>> different).
>>> I asked a similar question in the I2RS  interim meeting yesterday, I
>>> think that Sue's spoken explanation of the requirement was effectively:
>>>
>>>      Ephemeral-REQ-03: Ephemeral state may have constraints that refer
>>>      to operational state, this includes potentially fast changing or
>>>      short lived operational state nodes, such as MPLS LSP-ID or a BGP
>> IN-RIB.
>>> Perhaps this wording is more clear?
>> Yes, this is clearer. One question of course is what is expected to
>> happen if constraints are becoming false due to (fast) operational
>> state changes, that is, what the expected consequence of this is.
>>
>>>>       Ephemeral-REQ-04: Ephemeral state MAY refer to non-ephemeral state
>>>>       for purposes of implementing constraints.
>>>>
>>>> Hm, now I wonder whether this is just a special case of
>>>> Ephemeral-REQ-03 and if so it is not clear why we need this as a
>>>> separate requirement. If this is not the case but something
>>>> different, then likely my interpretation of Ephemeral-REQ-03 is wrong.
>>> I think that ephemeral state could also use configuration nodes as a
>>> constraint, so it isn't just operational state covered by REQ-3.
>> Well, the Ephemeral-REQ-04 text says 'non-ephemeral state' - if your
>> interpretation is correct than this phrase is wrong or possibly
> misleading.
>> /js
>>
> _______________________________________________
> i2rs mailing list
> i2rs@ietf.org
> https://www.ietf.org/mailman/listinfo/i2rs
>
> .
>


From nobody Thu Jun 23 13:00:52 2016
Return-Path: <internet-drafts@ietf.org>
X-Original-To: i2rs@ietf.org
Delivered-To: i2rs@ietfa.amsl.com
Received: from ietfa.amsl.com (localhost [IPv6:::1]) by ietfa.amsl.com (Postfix) with ESMTP id 373BC12D565; Thu, 23 Jun 2016 13:00:47 -0700 (PDT)
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
From: internet-drafts@ietf.org
To: <i-d-announce@ietf.org>
X-Test-IDTracker: no
X-IETF-IDTracker: 6.24.0
Auto-Submitted: auto-generated
Precedence: bulk
Message-ID: <20160623200047.12552.37072.idtracker@ietfa.amsl.com>
Date: Thu, 23 Jun 2016 13:00:47 -0700
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/SxI1W0j2X6YVXK2VdlZqu70BZ4c>
Cc: i2rs@ietf.org
Subject: [i2rs] I-D Action: draft-ietf-i2rs-fb-rib-data-model-00.txt
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 23 Jun 2016 20:00:47 -0000

A New Internet-Draft is available from the on-line Internet-Drafts directories.
This draft is a work item of the Interface to the Routing System of the IETF.

        Title           : Filter-Based RIB Data Model
        Authors         : Susan Hares
                          Sriganesh Kini
                          Linda Dunbar
                          Ram Krishnan
                          Dean Bogdanovic
                          Russ White
	Filename        : draft-ietf-i2rs-fb-rib-data-model-00.txt
	Pages           : 20
	Date            : 2016-06-23

Abstract:
   This document defines a data model to support the Filter-based
   Routing Information Base (RIB) Yang data models for I2RS.  A routing
   system uses the Filter-based RIB to program FIB entries that process
   incoming packets by matching on multiple fields within the packet and
   then performing a specified action on it.  The FB-RIB can also
   specify an action to forward the packet according to the FIB entries
   programmed using the RIBs of its routing instance.


The IETF datatracker status page for this draft is:
https://datatracker.ietf.org/doc/draft-ietf-i2rs-fb-rib-data-model/

There's also a htmlized version available at:
https://tools.ietf.org/html/draft-ietf-i2rs-fb-rib-data-model-00


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/


From nobody Thu Jun 23 20:08:22 2016
Return-Path: <mach.chen@huawei.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 0D84912D93F for <i2rs@ietfa.amsl.com>; Thu, 23 Jun 2016 20:08:20 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.646
X-Spam-Level: 
X-Spam-Status: No, score=-5.646 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-1.426, SPF_PASS=-0.001] autolearn=ham autolearn_force=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 33x8fr6fTpcK for <i2rs@ietfa.amsl.com>; Thu, 23 Jun 2016 20:08:17 -0700 (PDT)
Received: from lhrrgout.huawei.com (lhrrgout.huawei.com [194.213.3.17]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 6A13112D886 for <i2rs@ietf.org>; Thu, 23 Jun 2016 20:08:16 -0700 (PDT)
Received: from 172.18.7.190 (EHLO lhreml708-cah.china.huawei.com) ([172.18.7.190]) by lhrrg02-dlp.huawei.com (MOS 4.3.7-GA FastPath queued) with ESMTP id CMM80545; Fri, 24 Jun 2016 03:08:12 +0000 (GMT)
Received: from SZXEMA413-HUB.china.huawei.com (10.82.72.72) by lhreml708-cah.china.huawei.com (10.201.5.202) with Microsoft SMTP Server (TLS) id 14.3.235.1; Fri, 24 Jun 2016 04:08:11 +0100
Received: from SZXEMA510-MBX.china.huawei.com ([169.254.3.42]) by SZXEMA413-HUB.china.huawei.com ([10.82.72.72]) with mapi id 14.03.0235.001; Fri, 24 Jun 2016 11:08:02 +0800
From: Mach Chen <mach.chen@huawei.com>
To: Edwin Cordeiro <edwinsc@gmail.com>, i2rs <i2rs@ietf.org>
Thread-Topic: [i2rs] Problem using rib-data-model RPC with rib-info-model Information (draft-ietf-i2rs-rib-data-model-05 + draft-ietf-i2rs-rib-info-model-08)
Thread-Index: AQHRzFpn2C0gJVAqEEO0WgKgn0ozkp/31qRQ
Date: Fri, 24 Jun 2016 03:08:01 +0000
Message-ID: <F73A3CB31E8BE34FA1BBE3C8F0CB2AE28CC869E0@SZXEMA510-MBX.china.huawei.com>
References: <CAERpkxAbLVf5OkGPOkixGh9xi3qMutqp1puJzTbZzvn+VhOhqg@mail.gmail.com>
In-Reply-To: <CAERpkxAbLVf5OkGPOkixGh9xi3qMutqp1puJzTbZzvn+VhOhqg@mail.gmail.com>
Accept-Language: en-US, zh-CN
Content-Language: zh-CN
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-originating-ip: [10.111.102.135]
Content-Type: multipart/alternative; boundary="_000_F73A3CB31E8BE34FA1BBE3C8F0CB2AE28CC869E0SZXEMA510MBXchi_"
MIME-Version: 1.0
X-CFilter-Loop: Reflected
X-Mirapoint-Virus-RAPID-Raw: score=unknown(0), refid=str=0001.0A090201.576CA41D.00BC, ss=1, re=0.000, recu=0.000, reip=0.000,  cl=1, cld=1, fgs=0, ip=169.254.3.42, so=2013-06-18 04:22:30, dmn=2013-03-21 17:37:32
X-Mirapoint-Loop-Id: d944e9cd1c3846766baee5b5f78ac52f
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/VtDN5nlFyjPEurzHFJ31954QcWE>
Subject: Re: [i2rs] Problem using rib-data-model RPC with rib-info-model Information (draft-ietf-i2rs-rib-data-model-05 + draft-ietf-i2rs-rib-info-model-08)
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Fri, 24 Jun 2016 03:08:20 -0000

--_000_F73A3CB31E8BE34FA1BBE3C8F0CB2AE28CC869E0SZXEMA510MBXchi_
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64

SGkgRWR3aW4sDQoNClRoYW5rcyBmb3IgeW91ciBncmVhdCBxdWVzdGlvbiENCg0KSSB0aGluayB0
aGlzIGlzIGEgYnVnIG9mIHRoZSBjdXJyZW50IG1vZGVsLCB0aGVyZSBzaG91bGQgYmUgYSBsaXN0
IGluIGEgcmliIHRvIG1haW50YWluIHRoZSBuZXh0aG9wcyBvZiB0aGUgcmliLg0KDQpSZWdhcmRp
bmcgeW91ciBxdWVzdGlvbjog4oCcSG93IGNhbiB3ZSBhZGQgYSBOZXh0aG9wIHdpdGhvdXQgaW5m
b3JtaW5nIHRoZSBwYXJlbnQgUm91dGU/4oCdIFllcywgYSBuZXh0aG9wIGNhbiBiZSBjcmVhdGVk
IHdpdGhvdXQgaW5mb3JtaW5nIHRoZSBwYXJlbnQgcm91dGVzLiBJbiB0aGUgY3VycmVudCBkZXNp
Z24sIHRoZSBuZXh0aG9wIGlzIGRlY291cGxlZCBmcm9tIHRoZSByb3V0ZXMuIEEgbmV4dGhvcCBj
YW4gYmUgc2hhcmVkIGJ5IG11bHRpcGxlIHJvdXRlcyBvciBpcyBkZWRpY2F0ZWQgdG8gYSBzaW5n
bGUgcm91dGUuDQoNCkJlc3QgcmVnYXJkcywNCk1hY2gNCg0KRnJvbTogaTJycyBbbWFpbHRvOmky
cnMtYm91bmNlc0BpZXRmLm9yZ10gT24gQmVoYWxmIE9mIEVkd2luIENvcmRlaXJvDQpTZW50OiBX
ZWRuZXNkYXksIEp1bmUgMjIsIDIwMTYgMzo0NCBQTQ0KVG86IGkycnMNClN1YmplY3Q6IFtpMnJz
XSBQcm9ibGVtIHVzaW5nIHJpYi1kYXRhLW1vZGVsIFJQQyB3aXRoIHJpYi1pbmZvLW1vZGVsIElu
Zm9ybWF0aW9uIChkcmFmdC1pZXRmLWkycnMtcmliLWRhdGEtbW9kZWwtMDUgKyBkcmFmdC1pZXRm
LWkycnMtcmliLWluZm8tbW9kZWwtMDgpDQoNCkhlbGxvIGFsbCwNCg0KV2hlbiB0cnlpbmcgdG8g
aW1wbGVtZW50IEkyUlMgd2UgYXJlIGZhY2VkIHRoZSBmb2xsb3dpbmcgcHJvYmxlbToNCg0KSW4g
ZHJhZnQtaWV0Zi1pMnJzLXJpYi1kYXRhLW1vZGVsLTA1I3NlY3Rpb24tMi41IHRoZSBSUEMgb2Zm
ZXIgdGhlIGZvbGxvd2luZyBOZXh0aG9wIG9wZXJhdGlvbnM6DQogICAgICArLS0teCBuaC1hZGQN
CiAgICAgIHwgICstLS13IGlucHV0DQogICAgICB8ICB8ICArLS0tdyByaWItbmFtZSAgICAgICAg
ICAgICAgc3RyaW5nDQogICAgICB8ICB8ICArLS0tdyBuZXh0aG9wLWlkPyAgICAgICAgICAgdWlu
dDMyDQogICAgICB8ICB8ICArLS0tdyBzaGFyaW5nLWZsYWc/ICAgICAgICAgYm9vbGVhbg0KICAg
ICAgfCAgfCAgKy0tLXcgKG5leHRob3AtdHlwZSk/DQogICAgICB8ICB8ICAgICAuLi4NCiAgICAg
IHwgICstLXJvIG91dHB1dA0KICAgICAgfCAgICAgKy0tcm8gcmVzdWx0ICAgICAgICB1aW50MzIN
CiAgICAgIHwgICAgICstLXJvIHJlYXNvbj8gICAgICAgc3RyaW5nDQogICAgICB8ICAgICArLS1y
byBuZXh0aG9wLWlkPyAgIHVpbnQzMg0KICAgICAgKy0tLXggbmgtZGVsZXRlDQogICAgICAgICAr
LS0tdyBpbnB1dA0KICAgICAgICAgfCAgKy0tLXcgcmliLW5hbWUgICAgICAgICAgICAgIHN0cmlu
Zw0KICAgICAgICAgfCAgKy0tLXcgbmV4dGhvcC1pZD8gICAgICAgICAgIHVpbnQzMg0KICAgICAg
ICAgfCAgKy0tLXcgc2hhcmluZy1mbGFnPyAgICAgICAgIGJvb2xlYW4NCiAgICAgICAgIHwgICst
LS13IChuZXh0aG9wLXR5cGUpPw0KICAgICAgICAgfCAgICAgLi4uDQogICAgICAgICArLS1ybyBv
dXRwdXQNCiAgICAgICAgICAgICstLXJvIHJlc3VsdCB1aW50MzINCiAgICAgICAgICAgICstLXJv
IHJlYXNvbj8gc3RyaW5nDQoNCkluIHRoZXNlIG9wZXJhdGlvbnMgdGhlIE5leHRob3AgaXMgZGly
ZWN0bHkgY29ubmVjdGVkIHRvIGEgUklCLCBidXQgaW4gZHJhZnQtaWV0Zi1pMnJzLXJpYi1pbmZv
LW1vZGVsLTA4I3NlY3Rpb24tMjogUklCKHMpIGNvbnRhaW5zIFJvdXRlKHMpIGFuZCBSb3V0ZShz
KSBjb250YWlucyBOZXh0aG9wKHMpOg0KDQogICAgICAgICAgICByb3V0aW5nLWluc3RhbmNlDQog
ICAgICAgICAgICB8ICAgICAgICAgICAgIHwNCiAgICAgICAgICAgIHwgICAgICAgICAgICAgfA0K
ICAgICAgMC4uTiAgfCAgICAgICAgICAgICB8IDEuLk4NCiAgICAgICAgICAgIHwgICAgICAgICAg
ICAgfA0KICAgICAgICBpbnRlcmZhY2UocykgICAgIFJJQihzKQ0KICAgICAgICAgICAgICAgICAg
ICAgICAgICB8DQogICAgICAgICAgICAgICAgICAgICAgICAgIHwNCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgfCAwLi5ODQogICAgICAgICAgICAgICAgICAgICAgICAgIHwNCiAgICAgICAgICAg
ICAgICAgICAgICAgIHJvdXRlKHMpDQogICAgICAgICAgICAgICAgICAgICAgICB8IHwgfA0KICAg
ICAgICAgICAgICArLS0tLS0tLS0tKyB8ICstLS0tLS0tLS0tKw0KICAgICAgICAgICAgICB8ICAg
ICAgICAgICB8ICAgICAgICAgICAgfA0KICAgICAgICAgMC4uTiB8ICAgICAgICAgICB8ICAgICAg
ICAgICAgfA0Kcm91dGUtYXR0cmlidXRlICAgICAgICAgbWF0Y2ggICAgICAgICBuZXh0aG9wDQog
ICAgICAgICAgICAgICAgICAgICAgICAgIHwNCiAgICAgICAgICAgICAgICAgICAgICAgICAuLi4N
Cg0KT3VyIHF1ZXN0aW9ucyBhcmU6DQotIEhvdyBjYW4gd2UgYWRkIGEgTmV4dGhvcCB3aXRob3V0
IGluZm9ybWluZyB0aGUgcGFyZW50IFJvdXRlPw0KLSBMb29raW5nIGF0IHRoZSBSSUIgZ3JhbW1h
ciAoZHJhZnQtaWV0Zi1pMnJzLXJpYi1pbmZvLW1vZGVsLTA4I3NlY3Rpb24tNikgdGhlIE5leHRo
b3AgaXMgYWxzbyBhdHRhY2hlZCB0byBhIFJvdXRlLiBTaG91bGRuJ3QgTmV4dGhvcCBiZSBwYXJ0
IG9mIFJJQj8gTWF5YmUgc29tZXRoaW5nIGxpa2U6DQoNCiAgPHJpYj4gOjo9IDxSSUJfTkFNRT4g
PHJpYi1mYW1pbHk+DQogICAgICAgICAgICAgICAgICAgICAgWzxyb3V0ZT4gLi4uIF0NCiAgICAg
ICAgICAgICAgICAgICAgICBbPG5leHRob3A+IC4uLl0NCiAgICAgICAgICAgICAgICAgICAgICBb
RU5BQkxFX0lQX1JQRl9DSEVDS10NCg0KICAgICAgICAgICAgcm91dGluZy1pbnN0YW5jZQ0KICAg
ICAgICAgICAgfCAgICAgIHwNCiAgICAgICAgICAgIHwgICAgICB8DQogICAgICAwLi5OICB8ICAg
ICAgfCAxLi5ODQogICAgICAgICAgICB8ICAgICAgfA0KICAgIGludGVyZmFjZShzKSAgUklCKHMp
DQogICAgICAgICAgICAgICAgICAgfCAgfCAwLi5ODQogICAgICAgICAgICAgICAgICAgfCAgKy0t
LS0tLS0tLS0tLS0tKw0KICAgICAgICAgICAgICAwLi5OIHwgICAgICAgICAgICAgICAgIHwNCiAg
ICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICB8DQogICAgICAgICAgICAgICAgIHJv
dXRlKHMpIC0tLS0tLT4gbmV4dGhvcChzKQ0KICAgICAgICAgICAgICAgICB8IHwgICAgICAgMS4u
Tg0KICAgICAgICstLS0tLS0tLS0rIHwNCiAgICAgICB8ICAgICAgICAgICB8DQogIDAuLk4gfCAg
ICAgICAgICAgfA0Kcm91dGUtYXR0cmlidXRlICBtYXRjaA0KICAgICAgICAgICAgICAgICAgIHwN
CiAgICAgICAgICAgICAgICAgIC4uLg0KDQpJZiB3ZSBtaXN1bmRlcnN0b29kIHRoZSBtb2RlbCwg
Y291bGQgc29tZW9uZSBwbGVhc2UgZXhwbGFpbiB3aHkgb3VyIHVuZGVyc3RhbmRpbmcgaXMgaW5j
b3JyZWN0Pw0KDQpCZXN0IFJlZ2FyZHMsDQoNCkVkd2luIENvcmRlaXJvDQo=

--_000_F73A3CB31E8BE34FA1BBE3C8F0CB2AE28CC869E0SZXEMA510MBXchi_
Content-Type: text/html; charset="utf-8"
Content-Transfer-Encoding: base64

PGh0bWwgeG1sbnM6dj0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTp2bWwiIHhtbG5zOm89InVy
bjpzY2hlbWFzLW1pY3Jvc29mdC1jb206b2ZmaWNlOm9mZmljZSIgeG1sbnM6dz0idXJuOnNjaGVt
YXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6d29yZCIgeG1sbnM6bT0iaHR0cDovL3NjaGVtYXMubWlj
cm9zb2Z0LmNvbS9vZmZpY2UvMjAwNC8xMi9vbW1sIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
VFIvUkVDLWh0bWw0MCI+DQo8aGVhZD4NCjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIg
Y29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4NCjxtZXRhIG5hbWU9IkdlbmVyYXRv
ciIgY29udGVudD0iTWljcm9zb2Z0IFdvcmQgMTIgKGZpbHRlcmVkIG1lZGl1bSkiPg0KPHN0eWxl
PjwhLS0NCi8qIEZvbnQgRGVmaW5pdGlvbnMgKi8NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6
5a6L5L2TOw0KCXBhbm9zZS0xOjIgMSA2IDAgMyAxIDEgMSAxIDE7fQ0KQGZvbnQtZmFjZQ0KCXtm
b250LWZhbWlseToiQ2FtYnJpYSBNYXRoIjsNCglwYW5vc2UtMToyIDQgNSAzIDUgNCA2IDMgMiA0
O30NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6Q2FsaWJyaTsNCglwYW5vc2UtMToyIDE1IDUg
MiAyIDIgNCAzIDIgNDt9DQpAZm9udC1mYWNlDQoJe2ZvbnQtZmFtaWx5OlRhaG9tYTsNCglwYW5v
c2UtMToyIDExIDYgNCAzIDUgNCA0IDIgNDt9DQpAZm9udC1mYWNlDQoJe2ZvbnQtZmFtaWx5OiJc
QOWui+S9kyI7DQoJcGFub3NlLTE6MiAxIDYgMCAzIDEgMSAxIDEgMTt9DQpAZm9udC1mYWNlDQoJ
e2ZvbnQtZmFtaWx5OlZlcmRhbmE7DQoJcGFub3NlLTE6MiAxMSA2IDQgMyA1IDQgNCAyIDQ7fQ0K
LyogU3R5bGUgRGVmaW5pdGlvbnMgKi8NCnAuTXNvTm9ybWFsLCBsaS5Nc29Ob3JtYWwsIGRpdi5N
c29Ob3JtYWwNCgl7bWFyZ2luOjBjbTsNCgltYXJnaW4tYm90dG9tOi4wMDAxcHQ7DQoJZm9udC1z
aXplOjEyLjBwdDsNCglmb250LWZhbWlseTrlrovkvZM7fQ0KYTpsaW5rLCBzcGFuLk1zb0h5cGVy
bGluaw0KCXttc28tc3R5bGUtcHJpb3JpdHk6OTk7DQoJY29sb3I6Ymx1ZTsNCgl0ZXh0LWRlY29y
YXRpb246dW5kZXJsaW5lO30NCmE6dmlzaXRlZCwgc3Bhbi5Nc29IeXBlcmxpbmtGb2xsb3dlZA0K
CXttc28tc3R5bGUtcHJpb3JpdHk6OTk7DQoJY29sb3I6cHVycGxlOw0KCXRleHQtZGVjb3JhdGlv
bjp1bmRlcmxpbmU7fQ0KcC5Nc29QbGFpblRleHQsIGxpLk1zb1BsYWluVGV4dCwgZGl2Lk1zb1Bs
YWluVGV4dA0KCXttc28tc3R5bGUtcHJpb3JpdHk6OTk7DQoJbXNvLXN0eWxlLWxpbms6Iue6r+aW
h+acrCBDaGFyIjsNCgltYXJnaW46MGNtOw0KCW1hcmdpbi1ib3R0b206LjAwMDFwdDsNCglmb250
LXNpemU6MTAuNXB0Ow0KCWZvbnQtZmFtaWx5OiJDYWxpYnJpIiwic2Fucy1zZXJpZiI7fQ0Kc3Bh
bi5FbWFpbFN0eWxlMTcNCgl7bXNvLXN0eWxlLXR5cGU6cGVyc29uYWwtcmVwbHk7DQoJZm9udC1m
YW1pbHk6IkNhbGlicmkiLCJzYW5zLXNlcmlmIjsNCgljb2xvcjojMUY0OTdEO30NCnNwYW4uQ2hh
cg0KCXttc28tc3R5bGUtbmFtZToi57qv5paH5pysIENoYXIiOw0KCW1zby1zdHlsZS1wcmlvcml0
eTo5OTsNCgltc28tc3R5bGUtbGluazrnuq/mlofmnKw7DQoJZm9udC1mYW1pbHk6IkNhbGlicmki
LCJzYW5zLXNlcmlmIjt9DQouTXNvQ2hwRGVmYXVsdA0KCXttc28tc3R5bGUtdHlwZTpleHBvcnQt
b25seTt9DQpAcGFnZSBXb3JkU2VjdGlvbjENCgl7c2l6ZTo2MTIuMHB0IDc5Mi4wcHQ7DQoJbWFy
Z2luOjcyLjBwdCA5MC4wcHQgNzIuMHB0IDkwLjBwdDt9DQpkaXYuV29yZFNlY3Rpb24xDQoJe3Bh
Z2U6V29yZFNlY3Rpb24xO30NCi0tPjwvc3R5bGU+PCEtLVtpZiBndGUgbXNvIDldPjx4bWw+DQo8
bzpzaGFwZWRlZmF1bHRzIHY6ZXh0PSJlZGl0IiBzcGlkbWF4PSIxMDI2IiAvPg0KPC94bWw+PCFb
ZW5kaWZdLS0+PCEtLVtpZiBndGUgbXNvIDldPjx4bWw+DQo8bzpzaGFwZWxheW91dCB2OmV4dD0i
ZWRpdCI+DQo8bzppZG1hcCB2OmV4dD0iZWRpdCIgZGF0YT0iMSIgLz4NCjwvbzpzaGFwZWxheW91
dD48L3htbD48IVtlbmRpZl0tLT4NCjwvaGVhZD4NCjxib2R5IGxhbmc9IlpILUNOIiBsaW5rPSJi
bHVlIiB2bGluaz0icHVycGxlIj4NCjxkaXYgY2xhc3M9IldvcmRTZWN0aW9uMSI+DQo8cCBjbGFz
cz0iTXNvTm9ybWFsIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZToxMC41cHQ7
Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2Nv
bG9yOiMxRjQ5N0QiPkhpIEVkd2luLDxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJN
c29Ob3JtYWwiPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjEwLjVwdDtmb250
LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6
IzFGNDk3RCI+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1h
bCI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6MTAuNXB0O2ZvbnQtZmFtaWx5
OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdE
Ij5UaGFua3MgZm9yIHlvdXIgZ3JlYXQgcXVlc3Rpb24hPG86cD48L286cD48L3NwYW4+PC9wPg0K
PHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6
MTAuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZx
dW90Oztjb2xvcjojMUY0OTdEIj48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFz
cz0iTXNvTm9ybWFsIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZToxMC41cHQ7
Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2Nv
bG9yOiMxRjQ5N0QiPkkgdGhpbmsgdGhpcyBpcyBhIGJ1ZyBvZiB0aGUgY3VycmVudCBtb2RlbCwg
dGhlcmUgc2hvdWxkIGJlIGEgbGlzdCBpbiBhIHJpYiB0byBtYWludGFpbiB0aGUgbmV4dGhvcHMg
b2YgdGhlIHJpYi4NCjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwi
PjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjEwLjVwdDtmb250LWZhbWlseTom
cXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+
PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4g
bGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6MTAuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0Nh
bGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj5SZWdhcmRp
bmcgeW91ciBxdWVzdGlvbjo8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNp
emU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7VmVyZGFuYSZxdW90OywmcXVvdDtzYW5zLXNlcmlm
JnF1b3Q7Ij4g4oCcSG93IGNhbiB3ZSBhZGQgYSBOZXh0aG9wIHdpdGhvdXQNCiBpbmZvcm1pbmcg
dGhlIHBhcmVudCBSb3V0ZT/igJ0gPC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9u
dC1zaXplOjEwLjVwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMt
c2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+WWVzLCBhIG5leHRob3AgY2FuIGJlIGNyZWF0ZWQg
d2l0aG91dCBpbmZvcm1pbmcgdGhlIHBhcmVudCByb3V0ZXMuIEluIHRoZSBjdXJyZW50IGRlc2ln
biwgdGhlIG5leHRob3AgaXMgZGVjb3VwbGVkIGZyb20gdGhlIHJvdXRlcy4NCiBBIG5leHRob3Ag
Y2FuIGJlIHNoYXJlZCBieSBtdWx0aXBsZSByb3V0ZXMgb3IgaXMgZGVkaWNhdGVkIHRvIGEgc2lu
Z2xlIHJvdXRlLiA8bzpwPg0KPC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwi
PjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjEwLjVwdDtmb250LWZhbWlseTom
cXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+
PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4g
bGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6MTAuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0Nh
bGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj5CZXN0IHJl
Z2FyZHMsPG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4g
bGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6MTAuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0Nh
bGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj5NYWNoDQo8
bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBsYW5nPSJF
Ti1VUyIgc3R5bGU9ImZvbnQtc2l6ZToxMC41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZx
dW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPjxvOnA+Jm5ic3A7PC9v
OnA+PC9zcGFuPjwvcD4NCjxkaXYgc3R5bGU9ImJvcmRlcjpub25lO2JvcmRlci1sZWZ0OnNvbGlk
IGJsdWUgMS41cHQ7cGFkZGluZzowY20gMGNtIDBjbSA0LjBwdCI+DQo8ZGl2Pg0KPGRpdiBzdHls
ZT0iYm9yZGVyOm5vbmU7Ym9yZGVyLXRvcDpzb2xpZCAjQjVDNERGIDEuMHB0O3BhZGRpbmc6My4w
cHQgMGNtIDBjbSAwY20iPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PGI+PHNwYW4gbGFuZz0iRU4t
VVMiIHN0eWxlPSJmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O1RhaG9tYSZxdW90
OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7Ij5Gcm9tOjwvc3Bhbj48L2I+PHNwYW4gbGFuZz0iRU4t
VVMiIHN0eWxlPSJmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O1RhaG9tYSZxdW90
OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7Ij4gaTJycyBbbWFpbHRvOmkycnMtYm91bmNlc0BpZXRm
Lm9yZ10NCjxiPk9uIEJlaGFsZiBPZiA8L2I+RWR3aW4gQ29yZGVpcm88YnI+DQo8Yj5TZW50Ojwv
Yj4gV2VkbmVzZGF5LCBKdW5lIDIyLCAyMDE2IDM6NDQgUE08YnI+DQo8Yj5Ubzo8L2I+IGkycnM8
YnI+DQo8Yj5TdWJqZWN0OjwvYj4gW2kycnNdIFByb2JsZW0gdXNpbmcgcmliLWRhdGEtbW9kZWwg
UlBDIHdpdGggcmliLWluZm8tbW9kZWwgSW5mb3JtYXRpb24gKGRyYWZ0LWlldGYtaTJycy1yaWIt
ZGF0YS1tb2RlbC0wNSAmIzQzOyBkcmFmdC1pZXRmLWkycnMtcmliLWluZm8tbW9kZWwtMDgpPG86
cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8L2Rpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwi
PjxzcGFuIGxhbmc9IkVOLVVTIj48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+DQo8ZGl2Pg0K
PGRpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5
bGU9ImZvbnQtZmFtaWx5OiZxdW90O1ZlcmRhbmEmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90
OyI+SGVsbG8gYWxsLDxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNs
YXNzPSJNc29Ob3JtYWwiPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1mYW1pbHk6JnF1
b3Q7VmVyZGFuYSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7Ij48bzpwPiZuYnNwOzwvbzpw
Pjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBs
YW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtWZXJk
YW5hJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDsiPldoZW4gdHJ5aW5nIHRvIGltcGxlbWVu
dCBJMlJTIHdlIGFyZSBmYWNlZCB0aGUgZm9sbG93aW5nIHByb2JsZW06PC9zcGFuPjxzcGFuIGxh
bmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0FyaWFs
JnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDsiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwv
ZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHls
ZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0FyaWFsJnF1b3Q7LCZxdW90O3Nh
bnMtc2VyaWYmcXVvdDsiPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRp
dj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1z
aXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O1ZlcmRhbmEmcXVvdDssJnF1b3Q7c2Fucy1zZXJp
ZiZxdW90OyI+SW4mbmJzcDtkcmFmdC1pZXRmLWkycnMtcmliLWRhdGEtbW9kZWwtMDUjc2VjdGlv
bi0yLjUgdGhlIFJQQyBvZmZlciB0aGUgZm9sbG93aW5nIE5leHRob3Agb3BlcmF0aW9uczo8L3Nw
YW4+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6
JnF1b3Q7QXJpYWwmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90OyI+PG86cD48L286cD48L3Nw
YW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFu
IGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0Nv
dXJpZXIgTmV3JnF1b3Q7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmIzQzOy0tLXggbmgtYWRkPC9z
cGFuPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5
OiZxdW90O0FyaWFsJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDsiPjxvOnA+PC9vOnA+PC9z
cGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIGxhbmc9
IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIg
TmV3JnF1b3Q7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyB8ICZuYnNwOyYjNDM7LS0tdyBpbnB1dDwv
c3Bhbj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWls
eTomcXVvdDtBcmlhbCZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7Ij48bzpwPjwvbzpwPjwv
c3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBsYW5n
PSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtDb3VyaWVy
IE5ldyZxdW90OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgfCAmbmJzcDt8ICZuYnNwOyYjNDM7LS0t
dyByaWItbmFtZSAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz
cDtzdHJpbmc8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7
Zm9udC1mYW1pbHk6JnF1b3Q7QXJpYWwmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90OyI+PG86
cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+
PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1
b3Q7Q291cmllciBOZXcmcXVvdDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7IHwgJm5ic3A7fCAmbmJz
cDsmIzQzOy0tLXcgbmV4dGhvcC1pZD8gJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw
OyB1aW50MzI8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7
Zm9udC1mYW1pbHk6JnF1b3Q7QXJpYWwmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90OyI+PG86
cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+
PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1
b3Q7Q291cmllciBOZXcmcXVvdDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7IHwgJm5ic3A7fCAmbmJz
cDsmIzQzOy0tLXcgc2hhcmluZy1mbGFnPyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgYm9v
bGVhbjwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250
LWZhbWlseTomcXVvdDtBcmlhbCZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7Ij48bzpwPjwv
bzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3Bh
biBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtD
b3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgfCAmbmJzcDt8ICZuYnNwOyYj
NDM7LS0tdyAobmV4dGhvcC10eXBlKT88L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJm
b250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7QXJpYWwmcXVvdDssJnF1b3Q7c2Fucy1z
ZXJpZiZxdW90OyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xh
c3M9Ik1zb05vcm1hbCI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7
Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7
IHwgJm5ic3A7fCAmbmJzcDsgJm5ic3A7IC4uLjwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5
bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtBcmlhbCZxdW90OywmcXVvdDtz
YW5zLXNlcmlmJnF1b3Q7Ij48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8
cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5
LjVwdDtmb250LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7ICZuYnNwOyAm
bmJzcDsgfCAmbmJzcDsmIzQzOy0tcm8gb3V0cHV0PC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIiBz
dHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0FyaWFsJnF1b3Q7LCZxdW90
O3NhbnMtc2VyaWYmcXVvdDsiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4N
CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXpl
OjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij4mbmJzcDsgJm5ic3A7
ICZuYnNwOyB8ICZuYnNwOyAmbmJzcDsgJiM0MzstLXJvIHJlc3VsdCAmbmJzcDsgJm5ic3A7ICZu
YnNwOyAmbmJzcDt1aW50MzI8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNp
emU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7QXJpYWwmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZx
dW90OyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1z
b05vcm1hbCI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1m
YW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7IHwgJm5i
c3A7ICZuYnNwOyAmIzQzOy0tcm8gcmVhc29uPyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBzdHJpbmc8
L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1p
bHk6JnF1b3Q7QXJpYWwmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90OyI+PG86cD48L286cD48
L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gbGFu
Zz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmll
ciBOZXcmcXVvdDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7IHwgJm5ic3A7ICZuYnNwOyAmIzQzOy0t
cm8gbmV4dGhvcC1pZD8gJm5ic3A7IHVpbnQzMjwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5
bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtBcmlhbCZxdW90OywmcXVvdDtz
YW5zLXNlcmlmJnF1b3Q7Ij48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8
cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5
LjVwdDtmb250LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7ICZuYnNwOyAm
bmJzcDsgJiM0MzstLS14IG5oLWRlbGV0ZTwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9
ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtBcmlhbCZxdW90OywmcXVvdDtzYW5z
LXNlcmlmJnF1b3Q7Ij48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBj
bGFzcz0iTXNvTm9ybWFsIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVw
dDtmb250LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7ICZuYnNwOyAmbmJz
cDsgJm5ic3A7ICZuYnNwOyYjNDM7LS0tdyBpbnB1dDwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyIg
c3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtBcmlhbCZxdW90OywmcXVv
dDtzYW5zLXNlcmlmJnF1b3Q7Ij48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+
DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6
ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7ICZuYnNw
OyAmbmJzcDsgJm5ic3A7ICZuYnNwO3wgJm5ic3A7JiM0MzstLS13IHJpYi1uYW1lICZuYnNwOyAm
bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwO3N0cmluZzwvc3Bhbj48c3Bh
biBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtB
cmlhbCZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7Ij48bzpwPjwvbzpwPjwvc3Bhbj48L3A+
DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBsYW5nPSJFTi1VUyIg
c3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90
OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwO3wgJm5ic3A7JiM0MzstLS13IG5l
eHRob3AtaWQ/ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgdWludDMyPC9zcGFu
PjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZx
dW90O0FyaWFsJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDsiPjxvOnA+PC9vOnA+PC9zcGFu
PjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIGxhbmc9IkVO
LVVTIiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3
JnF1b3Q7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7fCAmbmJzcDsmIzQzOy0t
LXcgc2hhcmluZy1mbGFnPyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgYm9vbGVhbjwvc3Bh
bj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTom
cXVvdDtBcmlhbCZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7Ij48bzpwPjwvbzpwPjwvc3Bh
bj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBsYW5nPSJF
Ti1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtDb3VyaWVyIE5l
dyZxdW90OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwO3wgJm5ic3A7JiM0Mzst
LS13IChuZXh0aG9wLXR5cGUpPzwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQt
c2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtBcmlhbCZxdW90OywmcXVvdDtzYW5zLXNlcmlm
JnF1b3Q7Ij48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0i
TXNvTm9ybWFsIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250
LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i
c3A7ICZuYnNwO3wgJm5ic3A7ICZuYnNwOyAuLi48L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiIHN0
eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7QXJpYWwmcXVvdDssJnF1b3Q7
c2Fucy1zZXJpZiZxdW90OyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0K
PHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6
OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsiPiZuYnNwOyAmbmJzcDsg
Jm5ic3A7ICZuYnNwOyAmbmJzcDsmIzQzOy0tcm8gb3V0cHV0PC9zcGFuPjxzcGFuIGxhbmc9IkVO
LVVTIiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0FyaWFsJnF1b3Q7
LCZxdW90O3NhbnMtc2VyaWYmcXVvdDsiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0K
PGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9u
dC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij4mbmJzcDsg
Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmIzQzOy0tcm8gcmVzdWx0IHVpbnQz
Mjwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZh
bWlseTomcXVvdDtBcmlhbCZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7Ij48bzpwPjwvbzpw
Pjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBs
YW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtDb3Vy
aWVyIE5ldyZxdW90OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg
JiM0MzstLXJvIHJlYXNvbj8gc3RyaW5nPC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0i
Zm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0FyaWFsJnF1b3Q7LCZxdW90O3NhbnMt
c2VyaWYmcXVvdDsiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPC9kaXY+DQo8ZGl2
Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNp
emU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7QXJpYWwmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZx
dW90OyI+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xh
c3M9Ik1zb05vcm1hbCI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7
Zm9udC1mYW1pbHk6JnF1b3Q7VmVyZGFuYSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7Ij5J
biB0aGVzZSBvcGVyYXRpb25zIHRoZSBOZXh0aG9wIGlzIGRpcmVjdGx5IGNvbm5lY3RlZCB0byBh
IFJJQiwgYnV0IGluJm5ic3A7ZHJhZnQtaWV0Zi1pMnJzLXJpYi1pbmZvLW1vZGVsLTA4I3NlY3Rp
b24tMjombmJzcDtSSUIocykgY29udGFpbnMgUm91dGUocykgYW5kIFJvdXRlKHMpIGNvbnRhaW5z
DQogTmV4dGhvcChzKTo8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6
OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7QXJpYWwmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90
OyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05v
cm1hbCI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1p
bHk6JnF1b3Q7QXJpYWwmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90OyI+PG86cD4mbmJzcDs8
L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3Jt
YWwiPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5
OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i
c3A7ICZuYnNwOyByb3V0aW5nLWluc3RhbmNlPC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHls
ZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0FyaWFsJnF1b3Q7LCZxdW90O3Nh
bnMtc2VyaWYmcXVvdDsiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxw
IGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjku
NXB0O2ZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij4mbmJzcDsgJm5ic3A7ICZu
YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyB8ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAm
bmJzcDsgJm5ic3A7IHw8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6
OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7QXJpYWwmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90
OyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05v
cm1hbCI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1p
bHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAm
bmJzcDsgJm5ic3A7IHwgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg
fDwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZh
bWlseTomcXVvdDtBcmlhbCZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7Ij48bzpwPjwvbzpw
Pjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBs
YW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtDb3Vy
aWVyIE5ldyZxdW90OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgMC4uTiAmbmJzcDt8ICZuYnNwOyAm
bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IHwgMS4uTjwvc3Bhbj48c3BhbiBsYW5n
PSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtBcmlhbCZx
dW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7Ij48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rp
dj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9
ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5i
c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgfCAmbmJzcDsgJm5ic3A7ICZu
YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyB8PC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHls
ZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0FyaWFsJnF1b3Q7LCZxdW90O3Nh
bnMtc2VyaWYmcXVvdDsiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxw
IGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjku
NXB0O2ZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij4mbmJzcDsgJm5ic3A7ICZu
YnNwOyAmbmJzcDsgaW50ZXJmYWNlKHMpICZuYnNwOyAmbmJzcDsgUklCKHMpPC9zcGFuPjxzcGFu
IGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0Fy
aWFsJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDsiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4N
CjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIGxhbmc9IkVOLVVTIiBz
dHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7
Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7
ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgfDwvc3Bhbj48c3BhbiBsYW5nPSJF
Ti1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtBcmlhbCZxdW90
OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7Ij48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4N
CjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZv
bnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7
ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg
Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IHw8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiIHN0
eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7QXJpYWwmcXVvdDssJnF1b3Q7
c2Fucy1zZXJpZiZxdW90OyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0K
PHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6
OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsiPiZuYnNwOyAmbmJzcDsg
Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAm
bmJzcDsgJm5ic3A7ICZuYnNwOyB8IDAuLk48L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxl
PSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7QXJpYWwmcXVvdDssJnF1b3Q7c2Fu
cy1zZXJpZiZxdW90OyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAg
Y2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41
cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsiPiZuYnNwOyAmbmJzcDsgJm5i
c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz
cDsgJm5ic3A7ICZuYnNwOyB8PC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1z
aXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0FyaWFsJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYm
cXVvdDsiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJN
c29Ob3JtYWwiPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQt
ZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz
cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw
OyByb3V0ZShzKTwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVw
dDtmb250LWZhbWlseTomcXVvdDtBcmlhbCZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7Ij48
bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1z
b05vcm1hbCI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1m
YW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw
OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7
IHwgfCB8PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1z
b05vcm1hbCI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1m
YW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw
OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmIzQzOy0tLS0tLS0tLSYjNDM7IHwgJiM0MzstLS0tLS0t
LS0tJiM0Mzs8bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0i
TXNvTm9ybWFsIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250
LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i
c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IHwgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu
YnNwOyB8ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7fDxvOnA+PC9v
OnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFu
IGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0Nv
dXJpZXIgTmV3JnF1b3Q7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7MC4uTiB8
ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgfCAmbmJzcDsgJm5ic3A7ICZuYnNw
OyAmbmJzcDsgJm5ic3A7ICZuYnNwO3w8bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxk
aXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQt
c2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+cm91dGUtYXR0
cmlidXRlICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBtYXRjaCAmbmJzcDsgJm5ic3A7ICZu
YnNwOyAmbmJzcDsgbmV4dGhvcDxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4N
CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXpl
OjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij4mbmJzcDsgJm5ic3A7
ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg
Jm5ic3A7ICZuYnNwOyAmbmJzcDsgfDxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRp
dj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1z
aXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij4mbmJzcDsgJm5i
c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz
cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsuLi48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4N
CjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZv
bnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7
ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOzxvOnA+PC9v
OnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPC9kaXY+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0i
TXNvTm9ybWFsIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250
LWZhbWlseTomcXVvdDtWZXJkYW5hJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDsiPk91ciBx
dWVzdGlvbnMgYXJlOjwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5
LjVwdDtmb250LWZhbWlseTomcXVvdDtBcmlhbCZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7
Ij48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9y
bWFsIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWls
eTomcXVvdDtWZXJkYW5hJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDsiPi0gSG93IGNhbiB3
ZSBhZGQgYSBOZXh0aG9wIHdpdGhvdXQgaW5mb3JtaW5nIHRoZSBwYXJlbnQgUm91dGU/PC9zcGFu
PjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZx
dW90O0FyaWFsJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDsiPjxvOnA+PC9vOnA+PC9zcGFu
PjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIGxhbmc9IkVO
LVVTIiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O1ZlcmRhbmEmcXVv
dDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90OyI+LSBMb29raW5nIGF0IHRoZSBSSUIgZ3JhbW1hciAo
ZHJhZnQtaWV0Zi1pMnJzLXJpYi1pbmZvLW1vZGVsLTA4I3NlY3Rpb24tNikgdGhlIE5leHRob3Ag
aXMgYWxzbyBhdHRhY2hlZCB0byBhIFJvdXRlLiBTaG91bGRuJ3QgTmV4dGhvcCBiZSBwYXJ0IG9m
IFJJQj8gTWF5YmUgc29tZXRoaW5nDQogbGlrZTo8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiIHN0
eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7QXJpYWwmcXVvdDssJnF1b3Q7
c2Fucy1zZXJpZiZxdW90OyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0K
PHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6
OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7QXJpYWwmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90
OyI+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPGRpdj4NCjxk
aXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQt
c2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7ICZs
dDtyaWImZ3Q7IDo6PSAmbHQ7UklCX05BTUUmZ3Q7ICZsdDtyaWItZmFtaWx5Jmd0OzxvOnA+PC9v
OnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFu
IGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0Nv
dXJpZXIgTmV3JnF1b3Q7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw
OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IFsmbHQ7cm91dGUmZ3Q7IC4uLiBd
PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1h
bCI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6
JnF1b3Q7Q291cmllciBOZXcmcXVvdDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz
cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgWyZsdDtuZXh0aG9w
Jmd0OyAuLi5dPG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9
Ik1zb05vcm1hbCI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9u
dC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu
YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgW0VO
QUJMRV9JUF9SUEZfQ0hFQ0tdPG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8L2Rpdj4N
CjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZv
bnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtBcmlhbCZxdW90OywmcXVvdDtzYW5zLXNl
cmlmJnF1b3Q7Ij48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8
cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5
LjVwdDtmb250LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7ICZuYnNwOyAm
bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgcm91dGluZy1pbnN0YW5jZTwvc3Bhbj48c3BhbiBs
YW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtBcmlh
bCZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7Ij48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8
L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5
bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+
Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgfCAmbmJzcDsgJm5ic3A7
ICZuYnNwO3wgJm5ic3A7ICZuYnNwOyAmbmJzcDs8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiIHN0
eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7QXJpYWwmcXVvdDssJnF1b3Q7
c2Fucy1zZXJpZiZxdW90OyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0K
PHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6
OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsiPiZuYnNwOyAmbmJzcDsg
Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IHwgJm5ic3A7ICZuYnNwOyAmbmJzcDt8ICZuYnNw
OyAmbmJzcDsgJm5ic3A7PC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXpl
OjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0FyaWFsJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVv
dDsiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29O
b3JtYWwiPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFt
aWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAwLi5OICZu
YnNwO3wgJm5ic3A7ICZuYnNwOyAmbmJzcDt8Jm5ic3A7MS4uTiZuYnNwOyAmbmJzcDsgJm5ic3A7
ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsmbmJzcDs8L3NwYW4+PHNwYW4gbGFu
Zz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7QXJpYWwm
cXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90OyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9k
aXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxl
PSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsiPiZu
YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IHwgJm5ic3A7ICZuYnNwOyAm
bmJzcDt8Jm5ic3A7Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsmbmJz
cDs8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1m
YW1pbHk6JnF1b3Q7QXJpYWwmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90OyI+PG86cD48L286
cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4g
bGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291
cmllciBOZXcmcXVvdDsiPiZuYnNwOyAmbmJzcDsgaW50ZXJmYWNlKHMpICZuYnNwO1JJQihzKSAm
bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDs8L3NwYW4+PHNw
YW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7
QXJpYWwmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90OyI+PG86cD48L286cD48L3NwYW4+PC9w
Pg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gbGFuZz0iRU4tVVMi
IHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVv
dDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz
cDsgJm5ic3A7ICZuYnNwO3wgJm5ic3A7fCZuYnNwOzAuLk4mbmJzcDsgJm5ic3A7ICZuYnNwOyAm
bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7PC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVT
IiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0FyaWFsJnF1b3Q7LCZx
dW90O3NhbnMtc2VyaWYmcXVvdDsiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRp
dj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1z
aXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij4mbmJzcDsgJm5i
c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz
cDt8ICZuYnNwOyYjNDM7LS0tLS0tLS0tLS0tLS0mIzQzOzwvc3Bhbj48c3BhbiBsYW5nPSJFTi1V
UyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtBcmlhbCZxdW90Oywm
cXVvdDtzYW5zLXNlcmlmJnF1b3Q7Ij48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxk
aXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQt
c2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7ICZu
YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7Jm5ic3A7MC4uTiZuYnNwO3wg
Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyZu
YnNwO3w8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9u
dC1mYW1pbHk6JnF1b3Q7QXJpYWwmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90OyI+PG86cD48
L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNw
YW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7
Q291cmllciBOZXcmcXVvdDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i
c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwO3wgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i
c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyZuYnNwO3w8L3NwYW4+PHNwYW4gbGFuZz0i
RU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7QXJpYWwmcXVv
dDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90OyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+
DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJm
b250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsiPiZuYnNw
OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7
cm91dGUocykgLS0tLS0tJmd0OyZuYnNwO25leHRob3Aocyk8L3NwYW4+PHNwYW4gbGFuZz0iRU4t
VVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7QXJpYWwmcXVvdDss
JnF1b3Q7c2Fucy1zZXJpZiZxdW90OyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8
ZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHls
ZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij4m
bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu
YnNwO3wgfCAmbmJzcDsgJm5ic3A7ICZuYnNwOyAxLi5OPG86cD48L286cD48L3NwYW4+PC9wPg0K
PC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0
eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsi
PiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyYjNDM7LS0tLS0tLS0tJiM0MzsgfCZuYnNwOzxv
OnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwi
PjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZx
dW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDt8ICZuYnNw
OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgfCZuYnNwOzxvOnA+PC9vOnA+PC9zcGFuPjwv
cD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIGxhbmc9IkVOLVVT
IiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1
b3Q7Ij4mbmJzcDsgMC4uTiB8ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgfCZu
YnNwOzxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29O
b3JtYWwiPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFt
aWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij5yb3V0ZS1hdHRyaWJ1dGUgJm5ic3A7bWF0Y2gm
bmJzcDs8bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNv
Tm9ybWFsIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZh
bWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7
ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7fDxvOnA+PC9vOnA+PC9z
cGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIGxhbmc9
IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIg
TmV3JnF1b3Q7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz
cDsgJm5ic3A7ICZuYnNwOyAuLi48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjwvZGl2
Pg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gbGFuZz0iRU4tVVMi
IHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7VmVyZGFuYSZxdW90Oywm
cXVvdDtzYW5zLXNlcmlmJnF1b3Q7Ij4mbmJzcDsmbmJzcDs8L3NwYW4+PHNwYW4gbGFuZz0iRU4t
VVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7QXJpYWwmcXVvdDss
JnF1b3Q7c2Fucy1zZXJpZiZxdW90OyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8
ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250
LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7VmVyZGFuYSZxdW90OywmcXVvdDtzYW5zLXNl
cmlmJnF1b3Q7Ij5JZiB3ZSBtaXN1bmRlcnN0b29kIHRoZSBtb2RlbCwgY291bGQgc29tZW9uZSBw
bGVhc2UgZXhwbGFpbiB3aHkgb3VyIHVuZGVyc3RhbmRpbmcgaXMgaW5jb3JyZWN0Pzwvc3Bhbj48
c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVv
dDtBcmlhbCZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7Ij48bzpwPjwvbzpwPjwvc3Bhbj48
L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBsYW5nPSJFTi1V
UyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtBcmlhbCZxdW90Oywm
cXVvdDtzYW5zLXNlcmlmJnF1b3Q7Ij48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rp
dj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9
ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtWZXJkYW5hJnF1b3Q7LCZxdW90O3Nh
bnMtc2VyaWYmcXVvdDsiPkJlc3QgUmVnYXJkcyw8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiIHN0
eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7QXJpYWwmcXVvdDssJnF1b3Q7
c2Fucy1zZXJpZiZxdW90OyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8L2Rpdj4N
CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIGxhbmc9IkVOLVVTIj48YnIgY2xlYXI9ImFsbCI+
DQo8bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8ZGl2Pg0KPGRpdj4NCjxkaXY+DQo8ZGl2Pg0KPHAg
Y2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LWZhbWlseTom
cXVvdDtWZXJkYW5hJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDsiPkVkd2luIENvcmRlaXJv
PC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIj48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4N
CjwvZGl2Pg0KPC9kaXY+DQo8L2Rpdj4NCjwvZGl2Pg0KPC9kaXY+DQo8L2Rpdj4NCjwvYm9keT4N
CjwvaHRtbD4NCg==

--_000_F73A3CB31E8BE34FA1BBE3C8F0CB2AE28CC869E0SZXEMA510MBXchi_--



From nobody Fri Jun 24 09:07:03 2016
Return-Path: <agenda@ietf.org>
X-Original-To: i2rs@ietf.org
Delivered-To: i2rs@ietfa.amsl.com
Received: from ietfa.amsl.com (localhost [IPv6:::1]) by ietfa.amsl.com (Postfix) with ESMTP id 4E2F912DCF2; Fri, 24 Jun 2016 09:00:54 -0700 (PDT)
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
From: "\"IETF Secretariat\"" <agenda@ietf.org>
To: <i2rs-chairs@ietf.org>, <shares@ndzh.com>
X-Test-IDTracker: no
X-IETF-IDTracker: 6.24.0
Auto-Submitted: auto-generated
Precedence: bulk
Message-ID: <20160624160054.10933.4869.idtracker@ietfa.amsl.com>
Date: Fri, 24 Jun 2016 09:00:54 -0700
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/pjMmHKN72FcoN-fwehFULkJFBCo>
Cc: i2rs@ietf.org, akatlas@gmail.com
Subject: [i2rs] i2rs - Requested session has been scheduled for IETF 96
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Fri, 24 Jun 2016 16:00:56 -0000

Dear Susan Hares,

The session(s) that you have requested have been scheduled.
Below is the scheduled session information followed by
the original request. 

i2rs Session 1 (1:30:00)
    Monday, Afternoon Session I 1400-1530
    Room Name: Schoeneberg size: 100
    ---------------------------------------------
    


Request Information:


---------------------------------------------------------
Working Group Name: Interface to the Routing System
Area Name: Routing Area
Session Requester: Susan Hares

Number of Sessions: 1
Length of Session(s):  1.5 Hours
Number of Attendees: 50
Conflicts to Avoid: 
 First Priority: netmod netconf i2nsf trill idr bfd
 Second Priority: nfvrg pce bfcpbis teas rtgwg rtgarea opsarea opsawg grow bess
 Third Priority: dots sdnrg


Special Requests:
  
---------------------------------------------------------


From nobody Fri Jun 24 09:38:28 2016
Return-Path: <david.sinicrope@ericsson.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 52FA112DC4B; Fri, 24 Jun 2016 09:38:23 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.201
X-Spam-Level: 
X-Spam-Status: No, score=-4.201 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H2=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=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 6ffJ4ApD7i8Y; Fri, 24 Jun 2016 09:38:20 -0700 (PDT)
Received: from usplmg21.ericsson.net (usplmg21.ericsson.net [198.24.6.65]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 2A31C12DCA2; Fri, 24 Jun 2016 09:34:57 -0700 (PDT)
X-AuditID: c6180641-f796f6d000000e1e-e5-576d60f0a12e
Received: from EUSAAHC006.ericsson.se (Unknown_Domain [147.117.188.90]) by usplmg21.ericsson.net (Symantec Mail Security) with SMTP id CC.41.03614.0F06D675; Fri, 24 Jun 2016 18:33:53 +0200 (CEST)
Received: from EUSAAMB103.ericsson.se ([147.117.188.120]) by EUSAAHC006.ericsson.se ([147.117.188.90]) with mapi id 14.03.0294.000; Fri, 24 Jun 2016 12:34:54 -0400
From: David Sinicrope <david.sinicrope@ericsson.com>
To: "rtg-dir@ietf.org" <rtg-dir@ietf.org>, "i2rs@ietf.org" <i2rs@ietf.org>, "draft-ietf-i2rs-security-environment-reqs-all@tools.ietf.org" <draft-ietf-i2rs-security-environment-reqs-all@tools.ietf.org>, "rtg-ads@tools.ietf.org" <rtg-ads@tools.ietf.org>
Thread-Topic: Routing directorate QA review of draft-ietf-i2rs-security-environment-reqs
Thread-Index: AdHONlWZ2vPF5dq0SgmDrrz7diM49A==
Date: Fri, 24 Jun 2016 16:34:53 +0000
Message-ID: <A8228021-D32B-4C80-85BB-FC84E6815EAB@ericsson.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: yes
X-MS-TNEF-Correlator: 
Content-Type: multipart/mixed; boundary="_005_A8228021D32B4C8085BBFC84E6815EABericssoncom_"
MIME-Version: 1.0
X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFuphleLIzCtJLcpLzFFi42KZXLonSvdjQm64wfRZphaHFjcxWayb8YHF 4vmcmSwWC9Y8ZXdg8Viy5CeTx5fLn9kCmKK4bFJSczLLUov07RK4Mvr//GQuWNKpWzHj7zym BsaLX7S7GDk4JARMJCZ8celi5AQyxSQu3FvP1sXIxSEkcJRR4k/Td1aQhJDAckaJG59sQWw2 oPp1G/ewgBSJCDQxScz/2MgIkhAWCJXYPXEaG8hQEYEoiZl9aSBhEQE9iTn7frKD2CwCqhJ7 D10Bm8krYC+x9kYDWJwRaPH3U2uYQGxmAXGJW0/mM0EcJCLx8OJpNghbVOLl43+sEDWxEm3H ZrNBzBGUODnzCcsERsFZSNpnISmbhaQMIp4s0fH/FFCcA8jWlFi/Sx8irCgxpfshO4StIdE6 Zy6UbS3x4d9JNlQ1XED2REaJh1N6oYrcJD58mcwCkbjEKHG3oYcZpnvnwudsmDboSBx5voMV Jr7myDZmiOYVjBJXJ/xkg2k+v/QoK7LmBYzCqxg5SosLcnLTjQw3MQLTxTEJNscdjHt7PQ8x CnAwKvHwLlDOCRdiTSwrrsw9xKgC1Ppow+oLjFIsefl5qUoivH6xueFCvCmJlVWpRfnxRaU5 qcWHGKU5WJTEefVfKoYLCaQnlqRmp6YWpBbBZJk4OKUaGP0fnj/3wmxf7+k0lZMu9uHij98Z nVl2uDx64W+1g8+Mf4m46Lf8u8UpOT37xBfdzZLlX6fkvU2y72PJjXfjmGS6fMOqR5w2uRtc FudeXFUk7MDk/SOJ0dq94q0i9znOI64amkuV+r4YLlt1/n3VhG9zJLQf5C7d6b9ij8WdWZJ1 Anp8/RH7jZRYijMSDbWYi4oTAXMgLUIfAwAA
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/J2o87WHz3RhmZBdd7yArtyq1HDM>
Subject: [i2rs] Routing directorate QA review of draft-ietf-i2rs-security-environment-reqs
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Fri, 24 Jun 2016 16:38:23 -0000

--_005_A8228021D32B4C8085BBFC84E6815EABericssoncom_
Content-Type: multipart/alternative;
	boundary="_000_A8228021D32B4C8085BBFC84E6815EABericssoncom_"

--_000_A8228021D32B4C8085BBFC84E6815EABericssoncom_
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64

SGVsbG8sDQoNCkkgYW0gdGhlIFJvdXRpbmcgQXJlYSBEaXJlY3RvcmF0ZSBtZW1iZXIgdGhhdCB3
YXMgYXNzaWduZWQgdGhlIFFBIHJldmlldyBvZiBkcmFmdC1pZXRmLWkycnMtc2VjdXJpdHktZW52
aXJvbm1lbnQtcmVxcy0wMS4NCg0KSWYgeW914oCZcmUgbm90IGZhbWlsaWFyIHdpdGggdGhlIFFB
IHJldmlldyBwcm9jZXNzIHBsZWFzZSBzZWU6IGh0dHBzOi8vdHJhYy50b29scy5pZXRmLm9yZy9h
cmVhL3J0Zy90cmFjL3dpa2kvUnRnRGlyRG9jUWENCg0KQlINCkRhdmUNCg0KR2VuZXJhbCBDb21t
ZW50czoNCi0gb3ZlcmFsbCB0aGUgZG9jdW1lbnQgaXMgb3JnYW5pemVkIHdlbGwgYW5kIGhhcyBh
IGdvb2QgZmxvdyBsZWFkaW5nIGZyb20gb3ZlcmFsbCBpc3N1ZXMgdG8gc3BlY2lmaWMgaXNzdWVz
IGFuZCBqdXN0aWZpZWQgcmVxdWlyZW1lbnRzLg0KDQotIHRoZSBkb2N1bWVudCBwcmVzdW1lcyBm
YW1pbGlhcml0eSB3aXRoIHRoZSBJMlJTIGFyY2hpdGVjdHVyZSBhbmQgc3RhdGVzIHRoaXMgcGxh
aW5seSBjdWluZyAgdGhlIHJlYWRlciB0byBsb29rIHRoZXJlIGZpcnN0LiAgVGhhdCBzYWlkIHRo
ZSBkb2N1bWVudCBjYW4gYmUgcmVhZCBzdGFuZGFsb25lIHdpdGggYSBjb25jZXB0dWFsIGtub3ds
ZWRnZSBvZiB0aGUgSTJSUyBhcmNoaXRlY3R1cmUuDQoNClNlZSB0aGUgYXR0YWNoZWQgZG9jdW1l
bnQgZm9yIG1hcmtlZCB1cCBhbmQgaW5saW5lIGNvbW1lbnRzLg0KDQpOaXRzDQotIHNpbmd1bGFy
IC8gcGx1cmFsIHVzYWdlIG5lZWRzIHRvIGJlIGNvbnNpc3RlbnQNCi0gdmVyYiBwbHVyYWwgYW5k
IHRlbnNlIG1hdGNoIG5lZWQgYXR0ZW50aW9uDQoNCk5vdGU6IEkgZ290IHRocm91Z2ggcGFnZSAx
NC4gIE1hbnkgY29tbWVudHMgZWFybGllciBpbiB0aGUgZG9jIGFwcGx5IHRvIHRoZSBmZXcgcmVt
YWluaW5nIHNlY3Rpb25zLg0KDQpQbGVhc2UgbGV0IG1lIGtub3cgaWYgeW91IGhhdmUgYW55IHF1
ZXN0aW9ucy4NCkRhdmUNCg0K

--_000_A8228021D32B4C8085BBFC84E6815EABericssoncom_
Content-Type: text/html; charset="utf-8"
Content-ID: <724A777C3C21B84BB35BB4B43EF07D95@ericsson.com>
Content-Transfer-Encoding: base64

PGh0bWw+DQo8aGVhZD4NCjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0i
dGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4NCjwvaGVhZD4NCjxib2R5IGRpcj0iYXV0byI+DQo8
ZGl2PjxzcGFuPjwvc3Bhbj48L2Rpdj4NCjxkaXY+DQo8ZGl2PjxzcGFuPjwvc3Bhbj48L2Rpdj4N
CjxkaXY+DQo8ZGl2PjxzcGFuPjwvc3Bhbj48L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9y
bWFsIiBzdHlsZT0ibWFyZ2luOiAwY20gMGNtIDAuMDAwMXB0OyI+PHNwYW4gbGFuZz0iRU4tVVMi
IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDApOyI+SGVsbG8s
PG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1hcmdp
bjogMGNtIDBjbSAwLjAwMDFwdDsiPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iYmFja2dyb3Vu
ZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwKTsiPiZuYnNwOzwvc3Bhbj48L3A+DQo8cCBj
bGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibWFyZ2luOiAwY20gMGNtIDAuMDAwMXB0OyI+PHNwYW4g
bGFuZz0iRU4tVVMiIHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUs
IDApOyI+SSBhbSB0aGUgUm91dGluZyBBcmVhIERpcmVjdG9yYXRlIG1lbWJlciB0aGF0IHdhcyBh
c3NpZ25lZCB0aGUgUUEgcmV2aWV3IG9mIGRyYWZ0LTwvc3Bhbj5pZXRmLWkycnMtc2VjdXJpdHkt
ZW52aXJvbm1lbnQtcmVxcy0wMTxzcGFuIHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1
NSwgMjU1LCAyNTUsIDApOyI+Ljwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHls
ZT0ibWFyZ2luOiAwY20gMGNtIDAuMDAwMXB0OyI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJi
YWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDApOyI+Jm5ic3A7PC9zcGFuPjwv
cD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtYXJnaW46IDBjbSAwY20gMC4wMDAxcHQ7
Ij48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAy
NTUsIDI1NSwgMCk7Ij5JZiB5b3XigJlyZSBub3QgZmFtaWxpYXIgd2l0aCB0aGUgUUEgcmV2aWV3
IHByb2Nlc3MgcGxlYXNlIHNlZTombmJzcDs8YSBocmVmPSJodHRwczovL3RyYWMudG9vbHMuaWV0
Zi5vcmcvYXJlYS9ydGcvdHJhYy93aWtpL1J0Z0RpckRvY1FhIj5odHRwczovL3RyYWMudG9vbHMu
aWV0Zi5vcmcvYXJlYS9ydGcvdHJhYy93aWtpL1J0Z0RpckRvY1FhPC9hPjxvOnA+PC9vOnA+PC9z
cGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtYXJnaW46IDBjbSAwY20gMC4w
MDAxcHQ7Ij48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6IHJnYmEo
MjU1LCAyNTUsIDI1NSwgMCk7Ij4mbmJzcDs8L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1h
bCIgc3R5bGU9Im1hcmdpbjogMGNtIDBjbSAwLjAwMDFwdDsiPjxzcGFuIGxhbmc9IkVOLVVTIiBz
dHlsZT0iYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwKTsiPkJSPGJyPg0K
RGF2ZTwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibWFyZ2luOiAwY20g
MGNtIDAuMDAwMXB0OyI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9y
OiByZ2JhKDI1NSwgMjU1LCAyNTUsIDApOyI+PGJyPg0KPC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJN
c29Ob3JtYWwiIHN0eWxlPSJtYXJnaW46IDBjbSAwY20gMC4wMDAxcHQ7Ij48c3BhbiBsYW5nPSJF
Ti1VUyIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMCk7Ij5H
ZW5lcmFsIENvbW1lbnRzOjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0i
bWFyZ2luOiAwY20gMGNtIDAuMDAwMXB0OyI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJiYWNr
Z3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDApOyI+LSBvdmVyYWxsIHRoZSBkb2N1
bWVudCBpcyBvcmdhbml6ZWQgd2VsbCBhbmQgaGFzIGEgZ29vZCBmbG93IGxlYWRpbmcgZnJvbSBv
dmVyYWxsIGlzc3VlcyB0byBzcGVjaWZpYyBpc3N1ZXMgYW5kIGp1c3RpZmllZCByZXF1aXJlbWVu
dHMuPC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtYXJnaW46IDBjbSAw
Y20gMC4wMDAxcHQ7Ij48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6
IHJnYmEoMjU1LCAyNTUsIDI1NSwgMCk7Ij48YnI+DQo8L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1z
b05vcm1hbCIgc3R5bGU9Im1hcmdpbjogMGNtIDBjbSAwLjAwMDFwdDsiPjxzcGFuIGxhbmc9IkVO
LVVTIiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwKTsiPi0g
dGhlIGRvY3VtZW50IHByZXN1bWVzIGZhbWlsaWFyaXR5IHdpdGggdGhlIEkyUlMgYXJjaGl0ZWN0
dXJlIGFuZCBzdGF0ZXMgdGhpcyBwbGFpbmx5IGN1aW5nICZuYnNwO3RoZSByZWFkZXIgdG8gbG9v
ayB0aGVyZSBmaXJzdC4gJm5ic3A7VGhhdCBzYWlkDQogdGhlIGRvY3VtZW50IGNhbiBiZSByZWFk
IHN0YW5kYWxvbmUgd2l0aCBhIGNvbmNlcHR1YWwga25vd2xlZGdlIG9mIHRoZSBJMlJTIGFyY2hp
dGVjdHVyZS48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1hcmdpbjog
MGNtIDBjbSAwLjAwMDFwdDsiPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iYmFja2dyb3VuZC1j
b2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwKTsiPjxicj4NCjwvc3Bhbj48L3A+DQo8cCBjbGFz
cz0iTXNvTm9ybWFsIiBzdHlsZT0ibWFyZ2luOiAwY20gMGNtIDAuMDAwMXB0OyI+U2VlIHRoZSBh
dHRhY2hlZCBkb2N1bWVudCBmb3IgbWFya2VkIHVwIGFuZCBpbmxpbmUgY29tbWVudHMuPC9wPg0K
PHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1hcmdpbjogMGNtIDBjbSAwLjAwMDFwdDsiPjxz
cGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwg
MjU1LCAwKTsiPjxicj4NCjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0i
bWFyZ2luOiAwY20gMGNtIDAuMDAwMXB0OyI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJiYWNr
Z3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDApOyI+Tml0czwvc3Bhbj48L3A+DQo8
cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibWFyZ2luOiAwY20gMGNtIDAuMDAwMXB0OyI+PHNw
YW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAy
NTUsIDApOyI+LSBzaW5ndWxhciAvIHBsdXJhbCB1c2FnZSBuZWVkcyB0byBiZSBjb25zaXN0ZW50
PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtYXJnaW46IDBjbSAwY20g
MC4wMDAxcHQ7Ij48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6IHJn
YmEoMjU1LCAyNTUsIDI1NSwgMCk7Ij4tIHZlcmIgcGx1cmFsIGFuZCB0ZW5zZSBtYXRjaCBuZWVk
IGF0dGVudGlvbjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibWFyZ2lu
OiAwY20gMGNtIDAuMDAwMXB0OyI+PGJyPg0KPC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5
bGU9Im1hcmdpbjogMGNtIDBjbSAwLjAwMDFwdDsiPk5vdGU6IEkgZ290IHRocm91Z2ggcGFnZSAx
NC4gJm5ic3A7TWFueSBjb21tZW50cyBlYXJsaWVyIGluIHRoZSBkb2MgYXBwbHkgdG8gdGhlIGZl
dyByZW1haW5pbmcgc2VjdGlvbnMuPC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1h
cmdpbjogMGNtIDBjbSAwLjAwMDFwdDsiPjxicj4NCjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwi
IHN0eWxlPSJtYXJnaW46IDBjbSAwY20gMC4wMDAxcHQ7Ij5QbGVhc2UgbGV0IG1lIGtub3cgaWYg
eW91IGhhdmUgYW55IHF1ZXN0aW9ucy48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0i
bWFyZ2luOiAwY20gMGNtIDAuMDAwMXB0OyI+RGF2ZTwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwi
IHN0eWxlPSJtYXJnaW46IDBjbSAwY20gMC4wMDAxcHQ7Ij48c3BhbiBsYW5nPSJFTi1VUyIgc3R5
bGU9ImJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMCk7Ij48YnI+DQo8L3Nw
YW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1hcmdpbjogMGNtIDBjbSAwLjAw
MDFwdDsiPjwvcD4NCjwvZGl2Pg0KPGRpdj48L2Rpdj4NCjwvZGl2Pg0KPGRpdj48L2Rpdj4NCjwv
ZGl2Pg0KPGRpdj48L2Rpdj4NCjwvYm9keT4NCjwvaHRtbD4NCg==

--_000_A8228021D32B4C8085BBFC84E6815EABericssoncom_--

--_005_A8228021D32B4C8085BBFC84E6815EABericssoncom_
Content-Type: application/vnd.openxmlformats-officedocument.wordprocessingml.document;
	name="draft-ietf-i2rs-security-environment-reqs-01.docx"
Content-Description: draft-ietf-i2rs-security-environment-reqs-01.docx
Content-Disposition: attachment;
	filename="draft-ietf-i2rs-security-environment-reqs-01.docx"; size=532582;
	creation-date="Fri, 24 Jun 2016 16:34:53 GMT";
	modification-date="Fri, 24 Jun 2016 16:34:53 GMT"
Content-ID: <0C4F36CC9464D8449628F653F33D4DA8@ericsson.com>
Content-Transfer-Encoding: base64

UEsDBBQABgAIAAAAIQA41HxfrwEAAHQJAAATAAgCW0NvbnRlbnRfVHlwZXNdLnhtbCCiBAIooAAC
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC0
lstOwzAQRfdI/EPkLWrcskAINWXBYwlIwAe49qS1iB+yp4X+PZMmjRCq6grqTaR4fO89E8dxprdf
pinWEKJ2tmKTcswKsNIpbRcVe397HF2zIqKwSjTOQsU2ENnt7Pxs+rbxEAtS21ixJaK/4TzKJRgR
S+fBUqV2wQik27DgXsgPsQB+OR5fceksgsURth5sNr2HWqwaLB6+aLgjITkr7rp5bVTFhPeNlgKp
zNsq36vzdvFLp02b247vVwRo4oGotVW/+hn1vZSk3M6JS+3jRc/0TA8zaAXFiwj4JAzZ8U8XFFdO
rgxFlIdb25Pn6lpLGPStmw9OQoy0SqYph4oR2iY57MrMIZDy9CCDdRIi4qaBeHqCzjcdD4gkyAHQ
OycRPmH+mo3ih3kSpHYOrcMcqzFYJyHAqkwMO+ckgnSmdciAsHM+GmH7dVKg8qHsEpJISxAKwuT0
JJ3xUW9nlvzO+Ih8yhPzBnIQ9NZJCA/O5yDofJPxSKc6dNf/L8TW5lAkzXwJzkfaDeEPPe8O51Y9
om49BNSHt/+QSNb/7g/6nbUnm2//mWbfAAAA//8DAFBLAwQUAAYACAAAACEAwmCa8+4AAABOAgAA
CwAIAl9yZWxzLy5yZWxzIKIEAiigAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAKySzUoDQQyA74LvMOTenW0FEelsL1LoTaQ+QJjJ7g7u/JBJ
tX17B1GxUksPHieTfPkSslztw6ReiYtP0cC8aUFRtMn5OBh43q5nd6CKYHQ4pUgGDlRg1V1fLZ9o
QqlFZfS5qEqJxcAoku+1LnakgKVJmWL96RMHlPrkQWe0LziQXrTtreafDOiOmGrjDPDGzUFtD5ku
Yae+95Yekt0FinKixa+MSkYeSAy8JXbafYabigV92mZxuc3fk+pAgg4FtU1Ms8y1msXXzX4LVZfH
Gi4fGeeEbv5zPbQXio7ceSXM+ctIH11B9w4AAP//AwBQSwMEFAAGAAgAAAAhAHB65ftwAQAAPQcA
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
GTCz8jqH6xknuXLUoBMefLmWGnmDC2zP8sU6h+GZl2Ls0+k9UIMe+/Dl46MX+DjXVxjyym928xcX
vOlUC769PKXBuWdYcPgrRry6zvVVTbiuOBVPi3y83Zsx92o2J3DEeG9dYdKHOz2uavDTguPq/csH
OXkNW45vUHjmh37PdOSJKy2wXDvzHRavPs3OeGyPz/rJY1w802ue8bBPo6s8GHnNH76q59w30vuB
Lwzx/dbKoc9/eNgXbw9HdeHSKKb3UByOvjcw5fB5uXhurmB4p6qth3LVgKmO/ojjqx65qgmTFlj1
DpZY/RLjPl88w4KJp5r6CMMzHPOhPh9xkOMeHj1i9QEmL2HYz1fc4Mux9N0ZXTzHBwd15aklXoxz
vaYFF3v8hiH2JCqABHCk3fsQI2gPaUUQq5ih8ywWoOHSZKAwkIENQ0MRQgQJQtWsGfAR9SxPrGfL
swYQ6159uZY8++raj68rLCLVFitODAM0wBmNlsF2pSP+zmmnEwadcJx79mHJI9i8UBcG3vLgqmUA
NCB/nfHAmXtDJ885HCu+7tXxAuCAPx9ol0unfV6Xy2MeGioxdOOLexiu6svBG2f6cC5XzYa6YcKz
PtGVJhzxEoc7Ta4WPPs40s0/8bDx8+HBERbOzp2pJc6+e7pc8eyfq2GrwQ/1cabLXl7Bh2f+6h/9
zQkOznmkhjMae3GdwacJPh2e8zxtZkZt8a7mtg8P3vLF4uAKA0919EFNCy5dPKmOa3PMDzH9F53Z
whku/q442JPDQ3vNvHx/GLjiyXPLPY5i8VGDZ1Ya/RelHyU8e0fyRy1zBEe8fTi9d875oL98cY+j
mp7FNQc484+eFl58wKf+0qCPMHByJsZ8+MPLmcXP3hf8/EBVH1dzaZkhvOHjlo9q4+hZPDzzQhMO
avedqnfqiK++WDjO+eKc3vTXQx465wGv5YlNu3r40ed99UyvOYIlDsfw06KuGvqGL/1qeKZNXQvu
/ssJLnTgYSbc26uGmrTDhguzb5/aNMsVx/dmTX0equ8bDs+z2rjjoicw7autrgVXr/IatnjP5ss7
ryZv3KthqWEOnOmLdwdWPqglxhWW3zXeyPGspvrbG7V54hxuvlcXh2qpRwsMOXItXtiDQQfPnLta
zuTxuTx+dAbfLDlz5TFc2qohVl9wVEOcqxiaLVybH1qbT7g019/48kbv7OOoBgx5zSwfzLF8ezSq
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
HzGcxesRv5yrRb97Cz/5zSSe+iOHfh/jet1syeeD2VRHDD76rE9qqs1T/xrqWWw9U5cudV3Vct9c
4WRueIUDbuqoD4P38J3Jsy/GM5/g0wHH/Kadv2ZKHft4i7Hk0dSHTw3x+LkvVi2xcVGTdhrs4yUe
Dm70e3aWj80l7N4FfMWIdQ8fT898qNe0mA9X+TB5o5Z7dZ2l31W/8DejzsWppSfelfzHBZZ4PStW
vFr27fGQbv9aYV9tvca5+uX6jjRPcGDoj/qWWc0fzzDU9q7UOzXUxNeCbdZgqY2LXjXPZgeWvsBz
71xvcOCDGs7UhiPG1Z669tPkTE06YIgxM/bE5U1z56qePumdGeCxmu4tPGD4nXMPU7xa7tWiy5KL
c7+lxaidfzB8z8SrY8HHRb57mHDMQu9E957d5wufy+cLPXyBRbdn+xb9OJXrufr4mCm19cO8wS4X
b7WdmVW46uaHfeee1XaFD4d+deHhjh88s8JL9+rAi2+/Dfbl1GPYFr5q1FvPLXWcmXvz139cOYfv
qparc5rV649kubTg56qf/c6mXS7e+qZX8GC5zxua6cM378V5F+SZA/43w/Jg2pMrxvcEhphquocj
jj/w5PYtwcGSi/shINBLQShDiRRkn0hFGCehj5EYuQqJiSBiNVSswUEcKc/O1ZJjj8GefVDVU0dD
/RFXMzzb9+xllOPHAgfmwXGv4WKdaaxndYhVgzZaLPHOGISvBmmkGPu45AtM+eJg0oCPvTwRgxdc
mLTCKZ4+iwY1cIQnjj/qazpP5ajdsMDjY41Uyz0elg+IK136gZPa6oVhvz/I1RWPqzq9dDSJt+cM
Lp6WPXm45yf9ztSiwczI4aN6eiNez+ii1XO66bKvbv3VS9zgNQNwLL44lw9ffVd7eMCLg3z1cNWX
/gVOvA+SWMvM+9csNeGoY58P6sgV716M/tUf9+Jg+iCopzdqwrVPn3uYnr2gYvHzA2kfZ5g80DvP
6ukBTvbxSCd8emmC7RxvfHDgi1j9hw9bPef2cXavb+K9K9W0JwaeM3lxp613hy5nNNmTY8n3bF75
5ppP8GDRhWNzh589Ne3B4LV7OT7W6olRM61q26OHF7w1p/UMDl3icFAHJ1i8qQ5d+d88e/Y/f+Mh
Xw1c5NEZX7PtHlYfYrzl06o38tXVd7k0wKEDvn7i59l5vecRTPvi1Ydtr7mCBYN+dezjqr549ziK
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

--_005_A8228021D32B4C8085BBFC84E6815EABericssoncom_
Content-Type: text/html; name="ATT00001.htm"
Content-Description: ATT00001.htm
Content-Disposition: attachment; filename="ATT00001.htm"; size=546;
	creation-date="Fri, 24 Jun 2016 16:34:53 GMT";
	modification-date="Fri, 24 Jun 2016 16:34:53 GMT"
Content-ID: <E3696789765E8F4D97A951A78BE8A4DF@ericsson.com>
Content-Transfer-Encoding: base64

PGh0bWw+PGhlYWQ+PG1ldGEgaHR0cC1lcXVpdj0iY29udGVudC10eXBlIiBjb250ZW50PSJ0ZXh0
L2h0bWw7IGNoYXJzZXQ9dXMtYXNjaWkiPjwvaGVhZD48Ym9keSBkaXI9ImF1dG8iPjxkaXY+PC9k
aXY+PGRpdj48bWV0YSBodHRwLWVxdWl2PSJjb250ZW50LXR5cGUiIGNvbnRlbnQ9InRleHQvaHRt
bDsgY2hhcnNldD11cy1hc2NpaSI+PGRpdj48L2Rpdj48ZGl2PjxtZXRhIGh0dHAtZXF1aXY9ImNv
bnRlbnQtdHlwZSIgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PXVzLWFzY2lpIj48ZGl2Pjwv
ZGl2PjxkaXY+PG1ldGEgaHR0cC1lcXVpdj0iY29udGVudC10eXBlIiBjb250ZW50PSJ0ZXh0L2h0
bWw7IGNoYXJzZXQ9dXMtYXNjaWkiPjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtYXJnaW46
IDBjbSAwY20gMC4wMDAxcHQ7Ij48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImJhY2tncm91bmQt
Y29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMCk7Ij48YnI+PC9zcGFuPjwvcD48ZGl2PjwvZGl2
PjwvZGl2PjwvZGl2PjwvZGl2PjwvYm9keT48L2h0bWw+

--_005_A8228021D32B4C8085BBFC84E6815EABericssoncom_--


From nobody Sat Jun 25 00:25:14 2016
Return-Path: <edwinsc@gmail.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 7281912D85C for <i2rs@ietfa.amsl.com>; Sat, 25 Jun 2016 00:25:13 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.699
X-Spam-Level: 
X-Spam-Status: No, score=-2.699 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
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 8aLzqC01dOmf for <i2rs@ietfa.amsl.com>; Sat, 25 Jun 2016 00:25:11 -0700 (PDT)
Received: from mail-wm0-x22d.google.com (mail-wm0-x22d.google.com [IPv6:2a00:1450:400c:c09::22d]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id C68BA12D7DC for <i2rs@ietf.org>; Sat, 25 Jun 2016 00:25:10 -0700 (PDT)
Received: by mail-wm0-x22d.google.com with SMTP id v199so44364580wmv.0 for <i2rs@ietf.org>; Sat, 25 Jun 2016 00:25:10 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;  h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=3Trlv+mFMYgajyadsjheMoV3r1q38adFswRfbTZIQ0c=; b=dA4FrejOdeApfwJn/TJhySkYv3u+Vbegu1rHrf69dI46rLw1ce37LxRaLVMgdbDwQw dzHEOCsOm22gr9y92A2ftIQ4zs3yDRfqeLmfuZLU+ueKmlk1hHjMU9XRIXHxfH+NfFYv D88zRQWktJA2c/BqTb/Y2H/QK63ToD67LNzHZfJhPUkpx/1vG8j3PSGLGnEYyvPxmAB8 DfQPxCVEdKUknwEAHWAW/RjToOdby9lOQyIBq+TjkaHcLhKUhHJCrdGmOUgBPkkVa+7j F2oASS3oJaSIKNNjXLMtKWHGMCQCf9HeML6KGBj2znWh4VAG2llexJd0LdyacAfeVUKT Nvpg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=3Trlv+mFMYgajyadsjheMoV3r1q38adFswRfbTZIQ0c=; b=d8Fjfr1vzTu5ZArkm3kcZ7X/5clS4kzE0u2p5rJ9sJ3d2XM6kodS6WVlbSBDbr6Wyt YqNj4xluIsf0zoQA0kIY80ZTZlPYY1s736SwZ4bw7Qsge6LKl0Rntp/dIzBrsHFas/6u 6f6T8fkGTRAeSqm7S2nWerXpIF4gFCKEo4QUtbT3vJswPg1QLkMVNEI/7lYmjgeM1QPf h5XYUL6WgSj29fxXWDaOVt/pRIA5kzfyyjXBE9FBJkS4goLGz3jaXu8Jlc/eqQL5+WS8 d0QtrAfb06w/CKj+H2Hep2HIT5Pb6nB12+5Or/Rq4v72+IGH/mgCmb+HGhg+ylpecdp1 RtbA==
X-Gm-Message-State: ALyK8tKECAarcCNhMoYrIPAFNvrsoypIAZsjkm+cyEwo/VimF8b8JAN0CoojuQs/HvKA/QT+HQCMjdV+rK0w2A==
X-Received: by 10.28.18.199 with SMTP id 190mr1751400wms.66.1466839509226; Sat, 25 Jun 2016 00:25:09 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.28.113.74 with HTTP; Sat, 25 Jun 2016 00:24:39 -0700 (PDT)
In-Reply-To: <F73A3CB31E8BE34FA1BBE3C8F0CB2AE28CC869E0@SZXEMA510-MBX.china.huawei.com>
References: <CAERpkxAbLVf5OkGPOkixGh9xi3qMutqp1puJzTbZzvn+VhOhqg@mail.gmail.com> <F73A3CB31E8BE34FA1BBE3C8F0CB2AE28CC869E0@SZXEMA510-MBX.china.huawei.com>
From: Edwin Cordeiro <edwinsc@gmail.com>
Date: Sat, 25 Jun 2016 09:24:39 +0200
Message-ID: <CAERpkxBM+UgN-Y2nq=xQ1qRxUVtS0F0QrZDj9WNy9FWyf6TWbA@mail.gmail.com>
To: Mach Chen <mach.chen@huawei.com>
Content-Type: multipart/alternative; boundary=001a1145b088e3d9c60536152f05
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/Yfff2pXLqyHxW6G4M4pWn3IEOzA>
Cc: i2rs <i2rs@ietf.org>
Subject: Re: [i2rs] Problem using rib-data-model RPC with rib-info-model Information (draft-ietf-i2rs-rib-data-model-05 + draft-ietf-i2rs-rib-info-model-08)
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Sat, 25 Jun 2016 07:25:13 -0000

--001a1145b088e3d9c60536152f05
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

Hi Mach,

Thanks for the explanation. We thought that nexthops should be handled
separated to routes, but that wasn't reflected in the draft.

Best Regards,


Edwin Cordeiro

On Fri, Jun 24, 2016 at 5:08 AM, Mach Chen <mach.chen@huawei.com> wrote:

> Hi Edwin,
>
>
>
> Thanks for your great question!
>
>
>
> I think this is a bug of the current model, there should be a list in a
> rib to maintain the nexthops of the rib.
>
>
>
> Regarding your question: =E2=80=9CHow can we add a Nexthop without inform=
ing the
> parent Route?=E2=80=9D Yes, a nexthop can be created without informing th=
e parent
> routes. In the current design, the nexthop is decoupled from the routes. =
A
> nexthop can be shared by multiple routes or is dedicated to a single rout=
e.
>
>
>
> Best regards,
>
> Mach
>
>
>
> *From:* i2rs [mailto:i2rs-bounces@ietf.org] *On Behalf Of *Edwin Cordeiro
> *Sent:* Wednesday, June 22, 2016 3:44 PM
> *To:* i2rs
> *Subject:* [i2rs] Problem using rib-data-model RPC with rib-info-model
> Information (draft-ietf-i2rs-rib-data-model-05 +
> draft-ietf-i2rs-rib-info-model-08)
>
>
>
> Hello all,
>
>
>
> When trying to implement I2RS we are faced the following problem:
>
>
>
> In draft-ietf-i2rs-rib-data-model-05#section-2.5 the RPC offer the
> following Nexthop operations:
>
>       +---x nh-add
>
>       |  +---w input
>
>       |  |  +---w rib-name              string
>
>       |  |  +---w nexthop-id?           uint32
>
>       |  |  +---w sharing-flag?         boolean
>
>       |  |  +---w (nexthop-type)?
>
>       |  |     ...
>
>       |  +--ro output
>
>       |     +--ro result        uint32
>
>       |     +--ro reason?       string
>
>       |     +--ro nexthop-id?   uint32
>
>       +---x nh-delete
>
>          +---w input
>
>          |  +---w rib-name              string
>
>          |  +---w nexthop-id?           uint32
>
>          |  +---w sharing-flag?         boolean
>
>          |  +---w (nexthop-type)?
>
>          |     ...
>
>          +--ro output
>
>             +--ro result uint32
>
>             +--ro reason? string
>
>
>
> In these operations the Nexthop is directly connected to a RIB, but
> in draft-ietf-i2rs-rib-info-model-08#section-2: RIB(s) contains Route(s)
> and Route(s) contains Nexthop(s):
>
>
>
>             routing-instance
>
>             |             |
>
>             |             |
>
>       0..N  |             | 1..N
>
>             |             |
>
>         interface(s)     RIB(s)
>
>                           |
>
>                           |
>
>                           | 0..N
>
>                           |
>
>                         route(s)
>
>                         | | |
>
>               +---------+ | +----------+
>
>               |           |            |
>
>          0..N |           |            |
>
> route-attribute         match         nexthop
>
>                           |
>
>                          ...
>
>
>
> Our questions are:
>
> - How can we add a Nexthop without informing the parent Route?
>
> - Looking at the RIB grammar (draft-ietf-i2rs-rib-info-model-08#section-6=
)
> the Nexthop is also attached to a Route. Shouldn't Nexthop be part of RIB=
?
> Maybe something like:
>
>
>
>   <rib> ::=3D <RIB_NAME> <rib-family>
>
>                       [<route> ... ]
>
>                       [<nexthop> ...]
>
>                       [ENABLE_IP_RPF_CHECK]
>
>
>
>             routing-instance
>
>             |      |
>
>             |      |
>
>       0..N  |      | 1..N
>
>             |      |
>
>     interface(s)  RIB(s)
>
>                    |  | 0..N
>
>                    |  +--------------+
>
>               0..N |                 |
>
>                    |                 |
>
>                  route(s) ------> nexthop(s)
>
>                  | |       1..N
>
>        +---------+ |
>
>        |           |
>
>   0..N |           |
>
> route-attribute  match
>
>                    |
>
>                   ...
>
>
>
> If we misunderstood the model, could someone please explain why our
> understanding is incorrect?
>
>
>
> Best Regards,
>
>
> Edwin Cordeiro
>

--001a1145b088e3d9c60536152f05
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div class=3D"gmail_default" style=3D"font-family:verdana,=
sans-serif;font-size:small">Hi Mach,</div><div class=3D"gmail_default" styl=
e=3D"font-family:verdana,sans-serif;font-size:small"><br></div><div class=
=3D"gmail_default" style=3D"font-family:verdana,sans-serif;font-size:small"=
>Thanks for the explanation. We thought that nexthops should be handled sep=
arated to routes, but that wasn&#39;t reflected in the draft.</div><div cla=
ss=3D"gmail_default" style=3D"font-family:verdana,sans-serif;font-size:smal=
l"><br></div><div class=3D"gmail_default" style=3D"font-family:verdana,sans=
-serif;font-size:small">Best Regards,</div><div class=3D"gmail_default" sty=
le=3D"font-family:verdana,sans-serif;font-size:small"><br></div></div><div =
class=3D"gmail_extra"><br clear=3D"all"><div><div class=3D"gmail_signature"=
 data-smartmail=3D"gmail_signature"><div dir=3D"ltr"><div><font face=3D"ver=
dana, sans-serif">Edwin Cordeiro</font></div></div></div></div>
<br><div class=3D"gmail_quote">On Fri, Jun 24, 2016 at 5:08 AM, Mach Chen <=
span dir=3D"ltr">&lt;<a href=3D"mailto:mach.chen@huawei.com" target=3D"_bla=
nk">mach.chen@huawei.com</a>&gt;</span> wrote:<br><blockquote class=3D"gmai=
l_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left=
:1ex">





<div lang=3D"ZH-CN" link=3D"blue" vlink=3D"purple">
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.5pt;font-=
family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">Hi Edwin,<=
u></u><u></u></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.5pt;font-=
family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d"><u></u>=C2=
=A0<u></u></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.5pt;font-=
family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">Thanks for=
 your great question!<u></u><u></u></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.5pt;font-=
family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d"><u></u>=C2=
=A0<u></u></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.5pt;font-=
family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">I think th=
is is a bug of the current model, there should be a list in a rib to mainta=
in the nexthops of the rib.
<u></u><u></u></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.5pt;font-=
family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d"><u></u>=C2=
=A0<u></u></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.5pt;font-=
family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">Regarding =
your question:</span><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-fam=
ily:&quot;Verdana&quot;,&quot;sans-serif&quot;"> =E2=80=9CHow can we add a =
Nexthop without
 informing the parent Route?=E2=80=9D </span><span lang=3D"EN-US" style=3D"=
font-size:10.5pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;col=
or:#1f497d">Yes, a nexthop can be created without informing the parent rout=
es. In the current design, the nexthop is decoupled from the routes.
 A nexthop can be shared by multiple routes or is dedicated to a single rou=
te. <u></u>
<u></u></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.5pt;font-=
family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d"><u></u>=C2=
=A0<u></u></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.5pt;font-=
family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">Best regar=
ds,<u></u><u></u></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.5pt;font-=
family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">Mach
<u></u><u></u></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.5pt;font-=
family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d"><u></u>=C2=
=A0<u></u></span></p>
<div style=3D"border:none;border-left:solid blue 1.5pt;padding:0cm 0cm 0cm =
4.0pt">
<div>
<div style=3D"border:none;border-top:solid #b5c4df 1.0pt;padding:3.0pt 0cm =
0cm 0cm">
<p class=3D"MsoNormal"><b><span lang=3D"EN-US" style=3D"font-size:10.0pt;fo=
nt-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;">From:</span></b><span =
lang=3D"EN-US" style=3D"font-size:10.0pt;font-family:&quot;Tahoma&quot;,&qu=
ot;sans-serif&quot;"> i2rs [mailto:<a href=3D"mailto:i2rs-bounces@ietf.org"=
 target=3D"_blank">i2rs-bounces@ietf.org</a>]
<b>On Behalf Of </b>Edwin Cordeiro<br>
<b>Sent:</b> Wednesday, June 22, 2016 3:44 PM<br>
<b>To:</b> i2rs<br>
<b>Subject:</b> [i2rs] Problem using rib-data-model RPC with rib-info-model=
 Information (draft-ietf-i2rs-rib-data-model-05 + draft-ietf-i2rs-rib-info-=
model-08)<u></u><u></u></span></p>
</div>
</div><div><div class=3D"h5">
<p class=3D"MsoNormal"><span lang=3D"EN-US"><u></u>=C2=A0<u></u></span></p>
<div>
<div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-family:&quot;Verd=
ana&quot;,&quot;sans-serif&quot;">Hello all,<u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-family:&quot;Verd=
ana&quot;,&quot;sans-serif&quot;"><u></u>=C2=A0<u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Verdana&quot;,&quot;sans-serif&quot;">When trying to implement =
I2RS we are faced the following problem:</span><span lang=3D"EN-US" style=
=3D"font-size:9.5pt;font-family:&quot;Arial&quot;,&quot;sans-serif&quot;"><=
u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Arial&quot;,&quot;sans-serif&quot;"><u></u>=C2=A0<u></u></span>=
</p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Verdana&quot;,&quot;sans-serif&quot;">In=C2=A0draft-ietf-i2rs-r=
ib-data-model-05#section-2.5 the RPC offer the following Nexthop operations=
:</span><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-family:&quot;Ari=
al&quot;,&quot;sans-serif&quot;"><u></u><u></u></span></p>
</div>
<div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 +---x nh-add</span><spa=
n lang=3D"EN-US" style=3D"font-size:9.5pt;font-family:&quot;Arial&quot;,&qu=
ot;sans-serif&quot;"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 | =C2=A0+---w input</sp=
an><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-family:&quot;Arial&qu=
ot;,&quot;sans-serif&quot;"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 | =C2=A0| =C2=A0+---w r=
ib-name =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0string</span><span =
lang=3D"EN-US" style=3D"font-size:9.5pt;font-family:&quot;Arial&quot;,&quot=
;sans-serif&quot;"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 | =C2=A0| =C2=A0+---w n=
exthop-id? =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 uint32</span><span lang=3D"EN=
-US" style=3D"font-size:9.5pt;font-family:&quot;Arial&quot;,&quot;sans-seri=
f&quot;"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 | =C2=A0| =C2=A0+---w s=
haring-flag? =C2=A0 =C2=A0 =C2=A0 =C2=A0 boolean</span><span lang=3D"EN-US"=
 style=3D"font-size:9.5pt;font-family:&quot;Arial&quot;,&quot;sans-serif&qu=
ot;"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 | =C2=A0| =C2=A0+---w (=
nexthop-type)?</span><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-fam=
ily:&quot;Arial&quot;,&quot;sans-serif&quot;"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 | =C2=A0| =C2=A0 =C2=A0=
 ...</span><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-family:&quot;=
Arial&quot;,&quot;sans-serif&quot;"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 | =C2=A0+--ro output</s=
pan><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-family:&quot;Arial&q=
uot;,&quot;sans-serif&quot;"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 | =C2=A0 =C2=A0 +--ro r=
esult =C2=A0 =C2=A0 =C2=A0 =C2=A0uint32</span><span lang=3D"EN-US" style=3D=
"font-size:9.5pt;font-family:&quot;Arial&quot;,&quot;sans-serif&quot;"><u><=
/u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 | =C2=A0 =C2=A0 +--ro r=
eason? =C2=A0 =C2=A0 =C2=A0 string</span><span lang=3D"EN-US" style=3D"font=
-size:9.5pt;font-family:&quot;Arial&quot;,&quot;sans-serif&quot;"><u></u><u=
></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 | =C2=A0 =C2=A0 +--ro n=
exthop-id? =C2=A0 uint32</span><span lang=3D"EN-US" style=3D"font-size:9.5p=
t;font-family:&quot;Arial&quot;,&quot;sans-serif&quot;"><u></u><u></u></spa=
n></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 +---x nh-delete</span><=
span lang=3D"EN-US" style=3D"font-size:9.5pt;font-family:&quot;Arial&quot;,=
&quot;sans-serif&quot;"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0+---w inpu=
t</span><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-family:&quot;Ari=
al&quot;,&quot;sans-serif&quot;"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0| =C2=A0+-=
--w rib-name =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0string</span><=
span lang=3D"EN-US" style=3D"font-size:9.5pt;font-family:&quot;Arial&quot;,=
&quot;sans-serif&quot;"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0| =C2=A0+-=
--w nexthop-id? =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 uint32</span><span lang=
=3D"EN-US" style=3D"font-size:9.5pt;font-family:&quot;Arial&quot;,&quot;san=
s-serif&quot;"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0| =C2=A0+-=
--w sharing-flag? =C2=A0 =C2=A0 =C2=A0 =C2=A0 boolean</span><span lang=3D"E=
N-US" style=3D"font-size:9.5pt;font-family:&quot;Arial&quot;,&quot;sans-ser=
if&quot;"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0| =C2=A0+-=
--w (nexthop-type)?</span><span lang=3D"EN-US" style=3D"font-size:9.5pt;fon=
t-family:&quot;Arial&quot;,&quot;sans-serif&quot;"><u></u><u></u></span></p=
>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0| =C2=A0 =
=C2=A0 ...</span><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-family:=
&quot;Arial&quot;,&quot;sans-serif&quot;"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0+--ro outp=
ut</span><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-family:&quot;Ar=
ial&quot;,&quot;sans-serif&quot;"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 +-=
-ro result uint32</span><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-=
family:&quot;Arial&quot;,&quot;sans-serif&quot;"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 +-=
-ro reason? string</span><span lang=3D"EN-US" style=3D"font-size:9.5pt;font=
-family:&quot;Arial&quot;,&quot;sans-serif&quot;"><u></u><u></u></span></p>
</div>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Arial&quot;,&quot;sans-serif&quot;"><u></u>=C2=A0<u></u></span>=
</p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Verdana&quot;,&quot;sans-serif&quot;">In these operations the N=
exthop is directly connected to a RIB, but in=C2=A0draft-ietf-i2rs-rib-info=
-model-08#section-2:=C2=A0RIB(s) contains Route(s) and Route(s) contains
 Nexthop(s):</span><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-famil=
y:&quot;Arial&quot;,&quot;sans-serif&quot;"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Arial&quot;,&quot;sans-serif&quot;"><u></u>=C2=A0<u></u></span>=
</p>
</div>
<div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 ro=
uting-instance</span><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-fam=
ily:&quot;Arial&quot;,&quot;sans-serif&quot;"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 | =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |</span><span lang=3D"EN-US" styl=
e=3D"font-size:9.5pt;font-family:&quot;Arial&quot;,&quot;sans-serif&quot;">=
<u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 | =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |</span><span lang=3D"EN-US" styl=
e=3D"font-size:9.5pt;font-family:&quot;Arial&quot;,&quot;sans-serif&quot;">=
<u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 0..N =C2=A0| =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 | 1..N</span><span lang=3D"EN-US" style=3D"=
font-size:9.5pt;font-family:&quot;Arial&quot;,&quot;sans-serif&quot;"><u></=
u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 | =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |</span><span lang=3D"EN-US" styl=
e=3D"font-size:9.5pt;font-family:&quot;Arial&quot;,&quot;sans-serif&quot;">=
<u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 interface(s) =C2=
=A0 =C2=A0 RIB(s)</span><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-=
family:&quot;Arial&quot;,&quot;sans-serif&quot;"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |</span><span lang=3D"EN-U=
S" style=3D"font-size:9.5pt;font-family:&quot;Arial&quot;,&quot;sans-serif&=
quot;"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |</span><span lang=3D"EN-U=
S" style=3D"font-size:9.5pt;font-family:&quot;Arial&quot;,&quot;sans-serif&=
quot;"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 | 0..N</span><span lang=3D=
"EN-US" style=3D"font-size:9.5pt;font-family:&quot;Arial&quot;,&quot;sans-s=
erif&quot;"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |</span><span lang=3D"EN-U=
S" style=3D"font-size:9.5pt;font-family:&quot;Arial&quot;,&quot;sans-serif&=
quot;"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 route(s)</span><span lang=3D"EN-U=
S" style=3D"font-size:9.5pt;font-family:&quot;Arial&quot;,&quot;sans-serif&=
quot;"><u></u><u></u></span></p>
</div>
<div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 | | |<u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 +---------+ | +----------+<u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 | =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 | =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0|<u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A00..N | =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 | =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0=
|<u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">route-attribute =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
match =C2=A0 =C2=A0 =C2=A0 =C2=A0 nexthop<u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |<u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0...<u></u><u></u></span></p=
>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0<u></u><u></u></span></p>
</div>
</div>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Verdana&quot;,&quot;sans-serif&quot;">Our questions are:</span>=
<span lang=3D"EN-US" style=3D"font-size:9.5pt;font-family:&quot;Arial&quot;=
,&quot;sans-serif&quot;"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Verdana&quot;,&quot;sans-serif&quot;">- How can we add a Nextho=
p without informing the parent Route?</span><span lang=3D"EN-US" style=3D"f=
ont-size:9.5pt;font-family:&quot;Arial&quot;,&quot;sans-serif&quot;"><u></u=
><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Verdana&quot;,&quot;sans-serif&quot;">- Looking at the RIB gram=
mar (draft-ietf-i2rs-rib-info-model-08#section-6) the Nexthop is also attac=
hed to a Route. Shouldn&#39;t Nexthop be part of RIB? Maybe something
 like:</span><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-family:&quo=
t;Arial&quot;,&quot;sans-serif&quot;"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Arial&quot;,&quot;sans-serif&quot;"><u></u>=C2=A0<u></u></span>=
</p>
</div>
<div>
<div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 &lt;rib&gt; ::=3D &lt;RIB_NAME&gt; &l=
t;rib-family&gt;<u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 [&lt;route&gt; ... ]<u></u><u></u></span=
></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 [&lt;nexthop&gt; ...]<u></u><u></u></spa=
n></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 [ENABLE_IP_RPF_CHECK]<u></u><u></u></spa=
n></p>
</div>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Arial&quot;,&quot;sans-serif&quot;"><u></u>=C2=A0<u></u></span>=
</p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 ro=
uting-instance</span><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-fam=
ily:&quot;Arial&quot;,&quot;sans-serif&quot;"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 | =
=C2=A0 =C2=A0 =C2=A0| =C2=A0 =C2=A0 =C2=A0</span><span lang=3D"EN-US" style=
=3D"font-size:9.5pt;font-family:&quot;Arial&quot;,&quot;sans-serif&quot;"><=
u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 | =
=C2=A0 =C2=A0 =C2=A0| =C2=A0 =C2=A0 =C2=A0</span><span lang=3D"EN-US" style=
=3D"font-size:9.5pt;font-family:&quot;Arial&quot;,&quot;sans-serif&quot;"><=
u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 0..N =C2=A0| =C2=A0 =C2=
=A0 =C2=A0|=C2=A01..N=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0=C2=A0</span><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-family:&=
quot;Arial&quot;,&quot;sans-serif&quot;"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 | =
=C2=A0 =C2=A0 =C2=A0|=C2=A0=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0=C2=A0<=
/span><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-family:&quot;Arial=
&quot;,&quot;sans-serif&quot;"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 interface(s) =C2=A0RIB(s) =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0</span><span lang=3D"EN-US" st=
yle=3D"font-size:9.5pt;font-family:&quot;Arial&quot;,&quot;sans-serif&quot;=
"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0| =C2=A0|=C2=A00..N=C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0</span><span lang=3D"EN-US" style=3D"font-size:9=
.5pt;font-family:&quot;Arial&quot;,&quot;sans-serif&quot;"><u></u><u></u></=
span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0| =C2=A0+--------------+</span><span lang=3D"EN-=
US" style=3D"font-size:9.5pt;font-family:&quot;Arial&quot;,&quot;sans-serif=
&quot;"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0=C2=A00..N=C2=A0| =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0=C2=A0|</span><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-fami=
ly:&quot;Arial&quot;,&quot;sans-serif&quot;"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0| =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0=C2=A0|</span><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-=
family:&quot;Arial&quot;,&quot;sans-serif&quot;"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0route(s) ------&gt;=C2=A0nexthop(s)</span><span lang=3D=
"EN-US" style=3D"font-size:9.5pt;font-family:&quot;Arial&quot;,&quot;sans-s=
erif&quot;"><u></u><u></u></span></p>
</div>
<div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0| | =C2=A0 =C2=A0 =C2=A0 1..N<u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0+---------+ |=C2=
=A0<u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0| =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 |=C2=A0<u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 0..N | =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 |=C2=A0<u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">route-attribute =C2=A0match=C2=A0<u></u><u><=
/u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0|<u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 ...<u></u><u></u></span></p>
</div>
</div>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Verdana&quot;,&quot;sans-serif&quot;">=C2=A0=C2=A0</span><span =
lang=3D"EN-US" style=3D"font-size:9.5pt;font-family:&quot;Arial&quot;,&quot=
;sans-serif&quot;"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Verdana&quot;,&quot;sans-serif&quot;">If we misunderstood the m=
odel, could someone please explain why our understanding is incorrect?</spa=
n><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-family:&quot;Arial&quo=
t;,&quot;sans-serif&quot;"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Arial&quot;,&quot;sans-serif&quot;"><u></u>=C2=A0<u></u></span>=
</p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Verdana&quot;,&quot;sans-serif&quot;">Best Regards,</span><span=
 lang=3D"EN-US" style=3D"font-size:9.5pt;font-family:&quot;Arial&quot;,&quo=
t;sans-serif&quot;"><u></u><u></u></span></p>
</div>
</div>
<p class=3D"MsoNormal"><span lang=3D"EN-US"><br clear=3D"all">
<u></u><u></u></span></p>
<div>
<div>
<div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-family:&quot;Verd=
ana&quot;,&quot;sans-serif&quot;">Edwin Cordeiro</span><span lang=3D"EN-US"=
><u></u><u></u></span></p>
</div>
</div>
</div>
</div>
</div>
</div></div></div>
</div>
</div>

</blockquote></div><br></div>

--001a1145b088e3d9c60536152f05--


From nobody Sat Jun 25 04:03:13 2016
Return-Path: <shares@ndzh.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 C0D2F12D752; Sat, 25 Jun 2016 04:03:11 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.739
X-Spam-Level: *
X-Spam-Status: No, score=1.739 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, HTML_MESSAGE=0.001, RDNS_NONE=0.793] autolearn=no autolearn_force=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 iqSQx7flaEZI; Sat, 25 Jun 2016 04:03:10 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 07D6C12D6B8; Sat, 25 Jun 2016 04:03:08 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=174.124.195.80; 
From: "Susan Hares" <shares@ndzh.com>
To: "'David Sinicrope'" <david.sinicrope@ericsson.com>, <rtg-dir@ietf.org>, <i2rs@ietf.org>, <draft-ietf-i2rs-security-environment-reqs-all@tools.ietf.org>, <rtg-ads@tools.ietf.org>
References: <A8228021-D32B-4C80-85BB-FC84E6815EAB@ericsson.com>
In-Reply-To: <A8228021-D32B-4C80-85BB-FC84E6815EAB@ericsson.com>
Date: Sat, 25 Jun 2016 07:02:41 -0400
Message-ID: <11e201d1ced1$18221ab0$48665010$@ndzh.com>
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="----=_NextPart_000_11E3_01D1CEAF.91116510"
X-Mailer: Microsoft Outlook 14.0
Content-Language: en-us
Thread-Index: AQMlitkczsSQ0Oj+jqmkQxzpqhsA351Sad5w
X-Authenticated-User: skh@ndzh.com 
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/QmFcnXHobu2_lP4UrDbP5NDfGok>
Subject: Re: [i2rs] Routing directorate QA review of draft-ietf-i2rs-security-environment-reqs
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Sat, 25 Jun 2016 11:03:12 -0000

This is a multipart message in MIME format.

------=_NextPart_000_11E3_01D1CEAF.91116510
Content-Type: text/plain;
	charset="utf-8"
Content-Transfer-Encoding: quoted-printable

Dave:=20

=20

Thank you for the review of the document.   We will provide an update of =
this document early next week. =20

=20

Sue=20

=20

From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of David Sinicrope
Sent: Friday, June 24, 2016 12:35 PM
To: rtg-dir@ietf.org; i2rs@ietf.org; =
draft-ietf-i2rs-security-environment-reqs-all@tools.ietf.org; =
rtg-ads@tools.ietf.org
Subject: [i2rs] Routing directorate QA review of =
draft-ietf-i2rs-security-environment-reqs

=20

Hello,

=20

I am the Routing Area Directorate member that was assigned the QA review =
of draft-ietf-i2rs-security-environment-reqs-01.

=20

If you=E2=80=99re not familiar with the QA review process please see: =
https://trac.tools.ietf.org/area/rtg/trac/wiki/RtgDirDocQa

=20

BR
Dave





General Comments:

- overall the document is organized well and has a good flow leading =
from overall issues to specific issues and justified requirements.





- the document presumes familiarity with the I2RS architecture and =
states this plainly cuing  the reader to look there first.  That said =
the document can be read standalone with a conceptual knowledge of the =
I2RS architecture.





See the attached document for marked up and inline comments.





Nits

- singular / plural usage needs to be consistent

- verb plural and tense match need attention

=20

Note: I got through page 14.  Many comments earlier in the doc apply to =
the few remaining sections.

=20

Please let me know if you have any questions.

Dave






------=_NextPart_000_11E3_01D1CEAF.91116510
Content-Type: text/html;
	charset="utf-8"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" =
xmlns:o=3D"urn:schemas-microsoft-com:office:office" =
xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" =
xmlns=3D"http://www.w3.org/TR/REC-html40"><head><meta =
http-equiv=3DContent-Type content=3D"text/html; charset=3Dutf-8"><meta =
name=3DGenerator content=3D"Microsoft Word 14 (filtered =
medium)"><style><!--
/* Font Definitions */
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
	{font-family:Tahoma;
	panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0in;
	margin-bottom:.0001pt;
	font-size:12.0pt;
	font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:blue;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:purple;
	text-decoration:underline;}
span.EmailStyle17
	{mso-style-type:personal-reply;
	font-family:"Calibri","sans-serif";
	color:#1F497D;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-size:10.0pt;}
@page WordSection1
	{size:8.5in 11.0in;
	margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
	{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]--></head><body lang=3DEN-US link=3Dblue =
vlink=3Dpurple><div class=3DWordSection1><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Dave: <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Thank you for the review of the document.=C2=A0=C2=A0 We will provide =
an update of this document early next week. =
=C2=A0<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Sue <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><div><div =
style=3D'border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in =
0in 0in'><p class=3DMsoNormal><b><span =
style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span>=
</b><span style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif"'> =
i2rs [mailto:i2rs-bounces@ietf.org] <b>On Behalf Of </b>David =
Sinicrope<br><b>Sent:</b> Friday, June 24, 2016 12:35 PM<br><b>To:</b> =
rtg-dir@ietf.org; i2rs@ietf.org; =
draft-ietf-i2rs-security-environment-reqs-all@tools.ietf.org; =
rtg-ads@tools.ietf.org<br><b>Subject:</b> [i2rs] Routing directorate QA =
review of =
draft-ietf-i2rs-security-environment-reqs<o:p></o:p></span></p></div></di=
v><p class=3DMsoNormal><o:p>&nbsp;</o:p></p><div><div><div><p =
class=3DMsoNormal>Hello,<o:p></o:p></p><p =
class=3DMsoNormal>&nbsp;<o:p></o:p></p><p class=3DMsoNormal>I am the =
Routing Area Directorate member that was assigned the QA review of =
draft-ietf-i2rs-security-environment-reqs-01.<o:p></o:p></p><p =
class=3DMsoNormal>&nbsp;<o:p></o:p></p><p class=3DMsoNormal>If =
you=E2=80=99re not familiar with the QA review process please =
see:&nbsp;<a =
href=3D"https://trac.tools.ietf.org/area/rtg/trac/wiki/RtgDirDocQa">https=
://trac.tools.ietf.org/area/rtg/trac/wiki/RtgDirDocQa</a><o:p></o:p></p><=
p class=3DMsoNormal>&nbsp;<o:p></o:p></p><p =
class=3DMsoNormal>BR<br>Dave<o:p></o:p></p><p =
class=3DMsoNormal><br><br><o:p></o:p></p><p class=3DMsoNormal>General =
Comments:<o:p></o:p></p><p class=3DMsoNormal>- overall the document is =
organized well and has a good flow leading from overall issues to =
specific issues and justified requirements.<o:p></o:p></p><p =
class=3DMsoNormal><br><br><o:p></o:p></p><p class=3DMsoNormal>- the =
document presumes familiarity with the I2RS architecture and states this =
plainly cuing &nbsp;the reader to look there first. &nbsp;That said the =
document can be read standalone with a conceptual knowledge of the I2RS =
architecture.<o:p></o:p></p><p =
class=3DMsoNormal><br><br><o:p></o:p></p><p class=3DMsoNormal>See the =
attached document for marked up and inline comments.<o:p></o:p></p><p =
class=3DMsoNormal><br><br><o:p></o:p></p><p =
class=3DMsoNormal>Nits<o:p></o:p></p><p class=3DMsoNormal>- singular / =
plural usage needs to be consistent<o:p></o:p></p><p class=3DMsoNormal>- =
verb plural and tense match need attention<o:p></o:p></p><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p><p class=3DMsoNormal>Note: I got =
through page 14. &nbsp;Many comments earlier in the doc apply to the few =
remaining sections.<o:p></o:p></p><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p><p class=3DMsoNormal>Please let =
me know if you have any questions.<o:p></o:p></p><p =
class=3DMsoNormal>Dave<o:p></o:p></p><p =
class=3DMsoNormal><br><br><o:p></o:p></p></div></div></div></div></body><=
/html>
------=_NextPart_000_11E3_01D1CEAF.91116510--


From nobody Sat Jun 25 04:10:24 2016
Return-Path: <internet-drafts@ietf.org>
X-Original-To: i2rs@ietf.org
Delivered-To: i2rs@ietfa.amsl.com
Received: from ietfa.amsl.com (localhost [IPv6:::1]) by ietfa.amsl.com (Postfix) with ESMTP id E92EF12D6B8; Sat, 25 Jun 2016 04:10:19 -0700 (PDT)
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
From: internet-drafts@ietf.org
To: <i-d-announce@ietf.org>
X-Test-IDTracker: no
X-IETF-IDTracker: 6.24.0
Auto-Submitted: auto-generated
Precedence: bulk
Message-ID: <20160625111019.17108.82926.idtracker@ietfa.amsl.com>
Date: Sat, 25 Jun 2016 04:10:19 -0700
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/OQmTvPUbCFYVZP-N59EfhIX-EVE>
Cc: i2rs@ietf.org
Subject: [i2rs] I-D Action: draft-ietf-i2rs-ephemeral-state-11.txt
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Sat, 25 Jun 2016 11:10:20 -0000

A New Internet-Draft is available from the on-line Internet-Drafts directories.
This draft is a work item of the Interface to the Routing System of the IETF.

        Title           : I2RS Ephemeral State Requirements
        Authors         : Jeff Haas
                          Susan Hares
	Filename        : draft-ietf-i2rs-ephemeral-state-11.txt
	Pages           : 11
	Date            : 2016-06-25

Abstract:
   This document covers requests to the NETMOD and NETCONF Working
   Groups for functionality to support the ephemeral state requirements
   to implement the I2RS architecture.


The IETF datatracker status page for this draft is:
https://datatracker.ietf.org/doc/draft-ietf-i2rs-ephemeral-state/

There's also a htmlized version available at:
https://tools.ietf.org/html/draft-ietf-i2rs-ephemeral-state-11

A diff from the previous version is available at:
https://www.ietf.org/rfcdiff?url2=draft-ietf-i2rs-ephemeral-state-11


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/


From nobody Sun Jun 26 19:22:17 2016
Return-Path: <mach.chen@huawei.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 0E1FA12D58E for <i2rs@ietfa.amsl.com>; Sun, 26 Jun 2016 19:22:16 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.646
X-Spam-Level: 
X-Spam-Status: No, score=-5.646 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-1.426, SPF_PASS=-0.001] autolearn=ham autolearn_force=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 OEygRt4PV2uQ for <i2rs@ietfa.amsl.com>; Sun, 26 Jun 2016 19:22:12 -0700 (PDT)
Received: from lhrrgout.huawei.com (lhrrgout.huawei.com [194.213.3.17]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 7466B12D57B for <i2rs@ietf.org>; Sun, 26 Jun 2016 19:22:11 -0700 (PDT)
Received: from 172.18.7.190 (EHLO lhreml705-cah.china.huawei.com) ([172.18.7.190]) by lhrrg02-dlp.huawei.com (MOS 4.3.7-GA FastPath queued) with ESMTP id CMR01397; Mon, 27 Jun 2016 02:22:08 +0000 (GMT)
Received: from SZXEMA415-HUB.china.huawei.com (10.82.72.33) by lhreml705-cah.china.huawei.com (10.201.5.168) with Microsoft SMTP Server (TLS) id 14.3.235.1; Mon, 27 Jun 2016 03:22:07 +0100
Received: from SZXEMA510-MBX.china.huawei.com ([169.254.3.42]) by SZXEMA415-HUB.china.huawei.com ([10.82.72.33]) with mapi id 14.03.0235.001; Mon, 27 Jun 2016 10:22:03 +0800
From: Mach Chen <mach.chen@huawei.com>
To: Edwin Cordeiro <edwinsc@gmail.com>
Thread-Topic: [i2rs] Problem using rib-data-model RPC with rib-info-model Information (draft-ietf-i2rs-rib-data-model-05 + draft-ietf-i2rs-rib-info-model-08)
Thread-Index: AQHRzFpn2C0gJVAqEEO0WgKgn0ozkp/31qRQgAFvz4CAA1NscA==
Date: Mon, 27 Jun 2016 02:22:02 +0000
Message-ID: <F73A3CB31E8BE34FA1BBE3C8F0CB2AE28CC874DA@SZXEMA510-MBX.china.huawei.com>
References: <CAERpkxAbLVf5OkGPOkixGh9xi3qMutqp1puJzTbZzvn+VhOhqg@mail.gmail.com> <F73A3CB31E8BE34FA1BBE3C8F0CB2AE28CC869E0@SZXEMA510-MBX.china.huawei.com> <CAERpkxBM+UgN-Y2nq=xQ1qRxUVtS0F0QrZDj9WNy9FWyf6TWbA@mail.gmail.com>
In-Reply-To: <CAERpkxBM+UgN-Y2nq=xQ1qRxUVtS0F0QrZDj9WNy9FWyf6TWbA@mail.gmail.com>
Accept-Language: en-US, zh-CN
Content-Language: zh-CN
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-originating-ip: [10.111.102.135]
Content-Type: multipart/alternative; boundary="_000_F73A3CB31E8BE34FA1BBE3C8F0CB2AE28CC874DASZXEMA510MBXchi_"
MIME-Version: 1.0
X-CFilter-Loop: Reflected
X-Mirapoint-Virus-RAPID-Raw: score=unknown(0), refid=str=0001.0A090202.57708DD1.0045, ss=1, re=0.000, recu=0.000, reip=0.000,  cl=1, cld=1, fgs=0, ip=169.254.3.42, so=2013-06-18 04:22:30, dmn=2013-03-21 17:37:32
X-Mirapoint-Loop-Id: d944e9cd1c3846766baee5b5f78ac52f
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/ntAtHwoz1wBJKc3V7ZAMfJ5G17s>
Cc: i2rs <i2rs@ietf.org>
Subject: Re: [i2rs] Problem using rib-data-model RPC with rib-info-model Information (draft-ietf-i2rs-rib-data-model-05 + draft-ietf-i2rs-rib-info-model-08)
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Mon, 27 Jun 2016 02:22:16 -0000

--_000_F73A3CB31E8BE34FA1BBE3C8F0CB2AE28CC874DASZXEMA510MBXchi_
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64

SGkgRWR3aW4sDQoNCkNvdWxkIHlvdSBlbGFib3JhdGUgbW9yZSBhYm91dCB0aGUgbWVhbiBvZiDi
gJxuZXh0aG9wcyBzaG91bGQgYmUgaGFuZGxlZCBzZXBhcmF0ZWQgdG8gcm91dGVz4oCdID8NCg0K
SW4gbXkgdW5kZXJzdGFuZGluZywgdGhlIG5leHRob3AtYWRkL2RlbGV0ZSBSUEMgcyBhcmUgZGVz
aWduZWQgdG8gb3BlcmF0ZSB0aGUgbmV4dGhvcCBzZXBhcmF0ZWx5LiAgT2YgY2F1c2UsIGEgbmV4
dGhvcCBsaXN0IG5vZGUgc2hvdWxkIGJlIGFkZGVkIHRvIHRoZSByaWIsIGhlbmNlIHRvIG1haW50
YWluIHRoZSBhZGRlZCBuZXh0aG9wcy4NCg0KQmVzdCByZWdhcmRzLA0KTWFjaA0KDQpGcm9tOiBF
ZHdpbiBDb3JkZWlybyBbbWFpbHRvOmVkd2luc2NAZ21haWwuY29tXQ0KU2VudDogU2F0dXJkYXks
IEp1bmUgMjUsIDIwMTYgMzoyNSBQTQ0KVG86IE1hY2ggQ2hlbg0KQ2M6IGkycnMNClN1YmplY3Q6
IFJlOiBbaTJyc10gUHJvYmxlbSB1c2luZyByaWItZGF0YS1tb2RlbCBSUEMgd2l0aCByaWItaW5m
by1tb2RlbCBJbmZvcm1hdGlvbiAoZHJhZnQtaWV0Zi1pMnJzLXJpYi1kYXRhLW1vZGVsLTA1ICsg
ZHJhZnQtaWV0Zi1pMnJzLXJpYi1pbmZvLW1vZGVsLTA4KQ0KDQpIaSBNYWNoLA0KDQpUaGFua3Mg
Zm9yIHRoZSBleHBsYW5hdGlvbi4gV2UgdGhvdWdodCB0aGF0IG5leHRob3BzIHNob3VsZCBiZSBo
YW5kbGVkIHNlcGFyYXRlZCB0byByb3V0ZXMsIGJ1dCB0aGF0IHdhc24ndCByZWZsZWN0ZWQgaW4g
dGhlIGRyYWZ0Lg0KDQpCZXN0IFJlZ2FyZHMsDQoNCg0KRWR3aW4gQ29yZGVpcm8NCg0KT24gRnJp
LCBKdW4gMjQsIDIwMTYgYXQgNTowOCBBTSwgTWFjaCBDaGVuIDxtYWNoLmNoZW5AaHVhd2VpLmNv
bTxtYWlsdG86bWFjaC5jaGVuQGh1YXdlaS5jb20+PiB3cm90ZToNCkhpIEVkd2luLA0KDQpUaGFu
a3MgZm9yIHlvdXIgZ3JlYXQgcXVlc3Rpb24hDQoNCkkgdGhpbmsgdGhpcyBpcyBhIGJ1ZyBvZiB0
aGUgY3VycmVudCBtb2RlbCwgdGhlcmUgc2hvdWxkIGJlIGEgbGlzdCBpbiBhIHJpYiB0byBtYWlu
dGFpbiB0aGUgbmV4dGhvcHMgb2YgdGhlIHJpYi4NCg0KUmVnYXJkaW5nIHlvdXIgcXVlc3Rpb246
IOKAnEhvdyBjYW4gd2UgYWRkIGEgTmV4dGhvcCB3aXRob3V0IGluZm9ybWluZyB0aGUgcGFyZW50
IFJvdXRlP+KAnSBZZXMsIGEgbmV4dGhvcCBjYW4gYmUgY3JlYXRlZCB3aXRob3V0IGluZm9ybWlu
ZyB0aGUgcGFyZW50IHJvdXRlcy4gSW4gdGhlIGN1cnJlbnQgZGVzaWduLCB0aGUgbmV4dGhvcCBp
cyBkZWNvdXBsZWQgZnJvbSB0aGUgcm91dGVzLiBBIG5leHRob3AgY2FuIGJlIHNoYXJlZCBieSBt
dWx0aXBsZSByb3V0ZXMgb3IgaXMgZGVkaWNhdGVkIHRvIGEgc2luZ2xlIHJvdXRlLg0KDQpCZXN0
IHJlZ2FyZHMsDQpNYWNoDQoNCkZyb206IGkycnMgW21haWx0bzppMnJzLWJvdW5jZXNAaWV0Zi5v
cmc8bWFpbHRvOmkycnMtYm91bmNlc0BpZXRmLm9yZz5dIE9uIEJlaGFsZiBPZiBFZHdpbiBDb3Jk
ZWlybw0KU2VudDogV2VkbmVzZGF5LCBKdW5lIDIyLCAyMDE2IDM6NDQgUE0NClRvOiBpMnJzDQpT
dWJqZWN0OiBbaTJyc10gUHJvYmxlbSB1c2luZyByaWItZGF0YS1tb2RlbCBSUEMgd2l0aCByaWIt
aW5mby1tb2RlbCBJbmZvcm1hdGlvbiAoZHJhZnQtaWV0Zi1pMnJzLXJpYi1kYXRhLW1vZGVsLTA1
ICsgZHJhZnQtaWV0Zi1pMnJzLXJpYi1pbmZvLW1vZGVsLTA4KQ0KDQpIZWxsbyBhbGwsDQoNCldo
ZW4gdHJ5aW5nIHRvIGltcGxlbWVudCBJMlJTIHdlIGFyZSBmYWNlZCB0aGUgZm9sbG93aW5nIHBy
b2JsZW06DQoNCkluIGRyYWZ0LWlldGYtaTJycy1yaWItZGF0YS1tb2RlbC0wNSNzZWN0aW9uLTIu
NSB0aGUgUlBDIG9mZmVyIHRoZSBmb2xsb3dpbmcgTmV4dGhvcCBvcGVyYXRpb25zOg0KICAgICAg
Ky0tLXggbmgtYWRkDQogICAgICB8ICArLS0tdyBpbnB1dA0KICAgICAgfCAgfCAgKy0tLXcgcmli
LW5hbWUgICAgICAgICAgICAgIHN0cmluZw0KICAgICAgfCAgfCAgKy0tLXcgbmV4dGhvcC1pZD8g
ICAgICAgICAgIHVpbnQzMg0KICAgICAgfCAgfCAgKy0tLXcgc2hhcmluZy1mbGFnPyAgICAgICAg
IGJvb2xlYW4NCiAgICAgIHwgIHwgICstLS13IChuZXh0aG9wLXR5cGUpPw0KICAgICAgfCAgfCAg
ICAgLi4uDQogICAgICB8ICArLS1ybyBvdXRwdXQNCiAgICAgIHwgICAgICstLXJvIHJlc3VsdCAg
ICAgICAgdWludDMyDQogICAgICB8ICAgICArLS1ybyByZWFzb24/ICAgICAgIHN0cmluZw0KICAg
ICAgfCAgICAgKy0tcm8gbmV4dGhvcC1pZD8gICB1aW50MzINCiAgICAgICstLS14IG5oLWRlbGV0
ZQ0KICAgICAgICAgKy0tLXcgaW5wdXQNCiAgICAgICAgIHwgICstLS13IHJpYi1uYW1lICAgICAg
ICAgICAgICBzdHJpbmcNCiAgICAgICAgIHwgICstLS13IG5leHRob3AtaWQ/ICAgICAgICAgICB1
aW50MzINCiAgICAgICAgIHwgICstLS13IHNoYXJpbmctZmxhZz8gICAgICAgICBib29sZWFuDQog
ICAgICAgICB8ICArLS0tdyAobmV4dGhvcC10eXBlKT8NCiAgICAgICAgIHwgICAgIC4uLg0KICAg
ICAgICAgKy0tcm8gb3V0cHV0DQogICAgICAgICAgICArLS1ybyByZXN1bHQgdWludDMyDQogICAg
ICAgICAgICArLS1ybyByZWFzb24/IHN0cmluZw0KDQpJbiB0aGVzZSBvcGVyYXRpb25zIHRoZSBO
ZXh0aG9wIGlzIGRpcmVjdGx5IGNvbm5lY3RlZCB0byBhIFJJQiwgYnV0IGluIGRyYWZ0LWlldGYt
aTJycy1yaWItaW5mby1tb2RlbC0wOCNzZWN0aW9uLTI6IFJJQihzKSBjb250YWlucyBSb3V0ZShz
KSBhbmQgUm91dGUocykgY29udGFpbnMgTmV4dGhvcChzKToNCg0KICAgICAgICAgICAgcm91dGlu
Zy1pbnN0YW5jZQ0KICAgICAgICAgICAgfCAgICAgICAgICAgICB8DQogICAgICAgICAgICB8ICAg
ICAgICAgICAgIHwNCiAgICAgIDAuLk4gIHwgICAgICAgICAgICAgfCAxLi5ODQogICAgICAgICAg
ICB8ICAgICAgICAgICAgIHwNCiAgICAgICAgaW50ZXJmYWNlKHMpICAgICBSSUIocykNCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgfA0KICAgICAgICAgICAgICAgICAgICAgICAgICB8DQogICAg
ICAgICAgICAgICAgICAgICAgICAgIHwgMC4uTg0KICAgICAgICAgICAgICAgICAgICAgICAgICB8
DQogICAgICAgICAgICAgICAgICAgICAgICByb3V0ZShzKQ0KICAgICAgICAgICAgICAgICAgICAg
ICAgfCB8IHwNCiAgICAgICAgICAgICAgKy0tLS0tLS0tLSsgfCArLS0tLS0tLS0tLSsNCiAgICAg
ICAgICAgICAgfCAgICAgICAgICAgfCAgICAgICAgICAgIHwNCiAgICAgICAgIDAuLk4gfCAgICAg
ICAgICAgfCAgICAgICAgICAgIHwNCnJvdXRlLWF0dHJpYnV0ZSAgICAgICAgIG1hdGNoICAgICAg
ICAgbmV4dGhvcA0KICAgICAgICAgICAgICAgICAgICAgICAgICB8DQogICAgICAgICAgICAgICAg
ICAgICAgICAgLi4uDQoNCk91ciBxdWVzdGlvbnMgYXJlOg0KLSBIb3cgY2FuIHdlIGFkZCBhIE5l
eHRob3Agd2l0aG91dCBpbmZvcm1pbmcgdGhlIHBhcmVudCBSb3V0ZT8NCi0gTG9va2luZyBhdCB0
aGUgUklCIGdyYW1tYXIgKGRyYWZ0LWlldGYtaTJycy1yaWItaW5mby1tb2RlbC0wOCNzZWN0aW9u
LTYpIHRoZSBOZXh0aG9wIGlzIGFsc28gYXR0YWNoZWQgdG8gYSBSb3V0ZS4gU2hvdWxkbid0IE5l
eHRob3AgYmUgcGFydCBvZiBSSUI/IE1heWJlIHNvbWV0aGluZyBsaWtlOg0KDQogIDxyaWI+IDo6
PSA8UklCX05BTUU+IDxyaWItZmFtaWx5Pg0KICAgICAgICAgICAgICAgICAgICAgIFs8cm91dGU+
IC4uLiBdDQogICAgICAgICAgICAgICAgICAgICAgWzxuZXh0aG9wPiAuLi5dDQogICAgICAgICAg
ICAgICAgICAgICAgW0VOQUJMRV9JUF9SUEZfQ0hFQ0tdDQoNCiAgICAgICAgICAgIHJvdXRpbmct
aW5zdGFuY2UNCiAgICAgICAgICAgIHwgICAgICB8DQogICAgICAgICAgICB8ICAgICAgfA0KICAg
ICAgMC4uTiAgfCAgICAgIHwgMS4uTg0KICAgICAgICAgICAgfCAgICAgIHwNCiAgICBpbnRlcmZh
Y2UocykgIFJJQihzKQ0KICAgICAgICAgICAgICAgICAgIHwgIHwgMC4uTg0KICAgICAgICAgICAg
ICAgICAgIHwgICstLS0tLS0tLS0tLS0tLSsNCiAgICAgICAgICAgICAgMC4uTiB8ICAgICAgICAg
ICAgICAgICB8DQogICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgfA0KICAgICAg
ICAgICAgICAgICByb3V0ZShzKSAtLS0tLS0+IG5leHRob3AocykNCiAgICAgICAgICAgICAgICAg
fCB8ICAgICAgIDEuLk4NCiAgICAgICArLS0tLS0tLS0tKyB8DQogICAgICAgfCAgICAgICAgICAg
fA0KICAwLi5OIHwgICAgICAgICAgIHwNCnJvdXRlLWF0dHJpYnV0ZSAgbWF0Y2gNCiAgICAgICAg
ICAgICAgICAgICB8DQogICAgICAgICAgICAgICAgICAuLi4NCg0KSWYgd2UgbWlzdW5kZXJzdG9v
ZCB0aGUgbW9kZWwsIGNvdWxkIHNvbWVvbmUgcGxlYXNlIGV4cGxhaW4gd2h5IG91ciB1bmRlcnN0
YW5kaW5nIGlzIGluY29ycmVjdD8NCg0KQmVzdCBSZWdhcmRzLA0KDQpFZHdpbiBDb3JkZWlybw0K
DQo=

--_000_F73A3CB31E8BE34FA1BBE3C8F0CB2AE28CC874DASZXEMA510MBXchi_
Content-Type: text/html; charset="utf-8"
Content-Transfer-Encoding: base64

PGh0bWwgeG1sbnM6dj0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTp2bWwiIHhtbG5zOm89InVy
bjpzY2hlbWFzLW1pY3Jvc29mdC1jb206b2ZmaWNlOm9mZmljZSIgeG1sbnM6dz0idXJuOnNjaGVt
YXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6d29yZCIgeG1sbnM6bT0iaHR0cDovL3NjaGVtYXMubWlj
cm9zb2Z0LmNvbS9vZmZpY2UvMjAwNC8xMi9vbW1sIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
VFIvUkVDLWh0bWw0MCI+DQo8aGVhZD4NCjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIg
Y29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4NCjxtZXRhIG5hbWU9IkdlbmVyYXRv
ciIgY29udGVudD0iTWljcm9zb2Z0IFdvcmQgMTIgKGZpbHRlcmVkIG1lZGl1bSkiPg0KPHN0eWxl
PjwhLS0NCi8qIEZvbnQgRGVmaW5pdGlvbnMgKi8NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6
5a6L5L2TOw0KCXBhbm9zZS0xOjIgMSA2IDAgMyAxIDEgMSAxIDE7fQ0KQGZvbnQtZmFjZQ0KCXtm
b250LWZhbWlseToiQ2FtYnJpYSBNYXRoIjsNCglwYW5vc2UtMToyIDQgNSAzIDUgNCA2IDMgMiA0
O30NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6Q2FsaWJyaTsNCglwYW5vc2UtMToyIDE1IDUg
MiAyIDIgNCAzIDIgNDt9DQpAZm9udC1mYWNlDQoJe2ZvbnQtZmFtaWx5OiJcQOWui+S9kyI7DQoJ
cGFub3NlLTE6MiAxIDYgMCAzIDEgMSAxIDEgMTt9DQpAZm9udC1mYWNlDQoJe2ZvbnQtZmFtaWx5
OlZlcmRhbmE7DQoJcGFub3NlLTE6MiAxMSA2IDQgMyA1IDQgNCAyIDQ7fQ0KQGZvbnQtZmFjZQ0K
CXtmb250LWZhbWlseTpUYWhvbWE7DQoJcGFub3NlLTE6MiAxMSA2IDQgMyA1IDQgNCAyIDQ7fQ0K
LyogU3R5bGUgRGVmaW5pdGlvbnMgKi8NCnAuTXNvTm9ybWFsLCBsaS5Nc29Ob3JtYWwsIGRpdi5N
c29Ob3JtYWwNCgl7bWFyZ2luOjBjbTsNCgltYXJnaW4tYm90dG9tOi4wMDAxcHQ7DQoJZm9udC1z
aXplOjEyLjBwdDsNCglmb250LWZhbWlseTrlrovkvZM7fQ0KYTpsaW5rLCBzcGFuLk1zb0h5cGVy
bGluaw0KCXttc28tc3R5bGUtcHJpb3JpdHk6OTk7DQoJY29sb3I6Ymx1ZTsNCgl0ZXh0LWRlY29y
YXRpb246dW5kZXJsaW5lO30NCmE6dmlzaXRlZCwgc3Bhbi5Nc29IeXBlcmxpbmtGb2xsb3dlZA0K
CXttc28tc3R5bGUtcHJpb3JpdHk6OTk7DQoJY29sb3I6cHVycGxlOw0KCXRleHQtZGVjb3JhdGlv
bjp1bmRlcmxpbmU7fQ0KcC5Nc29BY2V0YXRlLCBsaS5Nc29BY2V0YXRlLCBkaXYuTXNvQWNldGF0
ZQ0KCXttc28tc3R5bGUtcHJpb3JpdHk6OTk7DQoJbXNvLXN0eWxlLWxpbms6IuaJueazqOahhuaW
h+acrCBDaGFyIjsNCgltYXJnaW46MGNtOw0KCW1hcmdpbi1ib3R0b206LjAwMDFwdDsNCglmb250
LXNpemU6OS4wcHQ7DQoJZm9udC1mYW1pbHk65a6L5L2TO30NCnNwYW4uQ2hhcg0KCXttc28tc3R5
bGUtbmFtZToi5om55rOo5qGG5paH5pysIENoYXIiOw0KCW1zby1zdHlsZS1wcmlvcml0eTo5OTsN
Cgltc28tc3R5bGUtbGluazrmibnms6jmoYbmlofmnKw7DQoJZm9udC1mYW1pbHk65a6L5L2TO30N
CnNwYW4uRW1haWxTdHlsZTE5DQoJe21zby1zdHlsZS10eXBlOnBlcnNvbmFsLXJlcGx5Ow0KCWZv
bnQtZmFtaWx5OiJDYWxpYnJpIiwic2Fucy1zZXJpZiI7DQoJY29sb3I6IzFGNDk3RDt9DQouTXNv
Q2hwRGVmYXVsdA0KCXttc28tc3R5bGUtdHlwZTpleHBvcnQtb25seTt9DQpAcGFnZSBXb3JkU2Vj
dGlvbjENCgl7c2l6ZTo2MTIuMHB0IDc5Mi4wcHQ7DQoJbWFyZ2luOjcyLjBwdCA5MC4wcHQgNzIu
MHB0IDkwLjBwdDt9DQpkaXYuV29yZFNlY3Rpb24xDQoJe3BhZ2U6V29yZFNlY3Rpb24xO30NCi0t
Pjwvc3R5bGU+PCEtLVtpZiBndGUgbXNvIDldPjx4bWw+DQo8bzpzaGFwZWRlZmF1bHRzIHY6ZXh0
PSJlZGl0IiBzcGlkbWF4PSIxMDI2IiAvPg0KPC94bWw+PCFbZW5kaWZdLS0+PCEtLVtpZiBndGUg
bXNvIDldPjx4bWw+DQo8bzpzaGFwZWxheW91dCB2OmV4dD0iZWRpdCI+DQo8bzppZG1hcCB2OmV4
dD0iZWRpdCIgZGF0YT0iMSIgLz4NCjwvbzpzaGFwZWxheW91dD48L3htbD48IVtlbmRpZl0tLT4N
CjwvaGVhZD4NCjxib2R5IGxhbmc9IlpILUNOIiBsaW5rPSJibHVlIiB2bGluaz0icHVycGxlIj4N
CjxkaXYgY2xhc3M9IldvcmRTZWN0aW9uMSI+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBs
YW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZToxMC41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2Fs
aWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPkhpIEVkd2lu
LDxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIGxhbmc9
IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjEwLjVwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJp
JnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+PG86cD4mbmJzcDs8
L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gbGFuZz0iRU4tVVMi
IHN0eWxlPSJmb250LXNpemU6MTAuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDss
JnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj5Db3VsZCB5b3UgZWxhYm9yYXRl
IG1vcmUgYWJvdXQgdGhlIG1lYW4gb2Yg4oCcPC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHls
ZT0iZm9udC1mYW1pbHk6JnF1b3Q7VmVyZGFuYSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7
Ij5uZXh0aG9wcyBzaG91bGQgYmUgaGFuZGxlZCBzZXBhcmF0ZWQNCiB0byByb3V0ZXM8L3NwYW4+
PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6MTAuNXB0O2ZvbnQtZmFtaWx5OiZx
dW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj7i
gJ0gPw0KPG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4g
bGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6MTAuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0Nh
bGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj48bzpwPiZu
YnNwOzwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBsYW5nPSJF
Ti1VUyIgc3R5bGU9ImZvbnQtc2l6ZToxMC41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZx
dW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPkluIG15IHVuZGVyc3Rh
bmRpbmcsIHRoZSBuZXh0aG9wLWFkZC9kZWxldGUgUlBDIHMgYXJlIGRlc2lnbmVkIHRvIG9wZXJh
dGUgdGhlIG5leHRob3Agc2VwYXJhdGVseS4gJm5ic3A7T2YgY2F1c2UsIGEgbmV4dGhvcCBsaXN0
IG5vZGUgc2hvdWxkIGJlIGFkZGVkDQogdG8gdGhlIHJpYiwgaGVuY2UgdG8gbWFpbnRhaW4gdGhl
IGFkZGVkIG5leHRob3BzLiA8bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9y
bWFsIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZToxMC41cHQ7Zm9udC1mYW1p
bHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5
N0QiPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxz
cGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjEwLjVwdDtmb250LWZhbWlseTomcXVv
dDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+QmVz
dCByZWdhcmRzLDxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxz
cGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjEwLjVwdDtmb250LWZhbWlseTomcXVv
dDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+TWFj
aDxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIGxhbmc9
IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjEwLjVwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJp
JnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+PG86cD4mbmJzcDs8
L286cD48L3NwYW4+PC9wPg0KPGRpdiBzdHlsZT0iYm9yZGVyOm5vbmU7Ym9yZGVyLWxlZnQ6c29s
aWQgYmx1ZSAxLjVwdDtwYWRkaW5nOjBjbSAwY20gMGNtIDQuMHB0Ij4NCjxkaXY+DQo8ZGl2IHN0
eWxlPSJib3JkZXI6bm9uZTtib3JkZXItdG9wOnNvbGlkICNCNUM0REYgMS4wcHQ7cGFkZGluZzoz
LjBwdCAwY20gMGNtIDBjbSI+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48Yj48c3BhbiBsYW5nPSJF
Ti1VUyIgc3R5bGU9ImZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7VGFob21hJnF1
b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDsiPkZyb206PC9zcGFuPjwvYj48c3BhbiBsYW5nPSJF
Ti1VUyIgc3R5bGU9ImZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7VGFob21hJnF1
b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDsiPiBFZHdpbiBDb3JkZWlybyBbbWFpbHRvOmVkd2lu
c2NAZ21haWwuY29tXQ0KPGJyPg0KPGI+U2VudDo8L2I+IFNhdHVyZGF5LCBKdW5lIDI1LCAyMDE2
IDM6MjUgUE08YnI+DQo8Yj5Ubzo8L2I+IE1hY2ggQ2hlbjxicj4NCjxiPkNjOjwvYj4gaTJyczxi
cj4NCjxiPlN1YmplY3Q6PC9iPiBSZTogW2kycnNdIFByb2JsZW0gdXNpbmcgcmliLWRhdGEtbW9k
ZWwgUlBDIHdpdGggcmliLWluZm8tbW9kZWwgSW5mb3JtYXRpb24gKGRyYWZ0LWlldGYtaTJycy1y
aWItZGF0YS1tb2RlbC0wNSAmIzQzOyBkcmFmdC1pZXRmLWkycnMtcmliLWluZm8tbW9kZWwtMDgp
PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8L2Rpdj4NCjxwIGNsYXNzPSJNc29Ob3Jt
YWwiPjxzcGFuIGxhbmc9IkVOLVVTIj48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+DQo8ZGl2
Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0i
Zm9udC1mYW1pbHk6JnF1b3Q7VmVyZGFuYSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7Ij5I
aSBNYWNoLDxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJN
c29Ob3JtYWwiPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1mYW1pbHk6JnF1b3Q7VmVy
ZGFuYSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7Ij48bzpwPiZuYnNwOzwvbzpwPjwvc3Bh
bj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBsYW5nPSJF
Ti1VUyIgc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O1ZlcmRhbmEmcXVvdDssJnF1b3Q7c2Fucy1z
ZXJpZiZxdW90OyI+VGhhbmtzIGZvciB0aGUgZXhwbGFuYXRpb24uIFdlIHRob3VnaHQgdGhhdCBu
ZXh0aG9wcyBzaG91bGQgYmUgaGFuZGxlZCBzZXBhcmF0ZWQgdG8gcm91dGVzLCBidXQgdGhhdCB3
YXNuJ3QgcmVmbGVjdGVkIGluIHRoZSBkcmFmdC48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rp
dj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9
ImZvbnQtZmFtaWx5OiZxdW90O1ZlcmRhbmEmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90OyI+
PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1z
b05vcm1hbCI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LWZhbWlseTomcXVvdDtWZXJk
YW5hJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDsiPkJlc3QgUmVnYXJkcyw8bzpwPjwvbzpw
Pjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBs
YW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O1ZlcmRhbmEmcXVvdDssJnF1b3Q7
c2Fucy1zZXJpZiZxdW90OyI+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8
L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBsYW5nPSJFTi1VUyI+PGJy
IGNsZWFyPSJhbGwiPg0KPG86cD48L286cD48L3NwYW4+PC9wPg0KPGRpdj4NCjxkaXY+DQo8ZGl2
Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0i
Zm9udC1mYW1pbHk6JnF1b3Q7VmVyZGFuYSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7Ij5F
ZHdpbiBDb3JkZWlybzwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyI+PG86cD48L286cD48L3NwYW4+
PC9wPg0KPC9kaXY+DQo8L2Rpdj4NCjwvZGl2Pg0KPC9kaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFs
Ij48c3BhbiBsYW5nPSJFTi1VUyI+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPg0KPGRpdj4N
CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIGxhbmc9IkVOLVVTIj5PbiBGcmksIEp1biAyNCwg
MjAxNiBhdCA1OjA4IEFNLCBNYWNoIENoZW4gJmx0OzxhIGhyZWY9Im1haWx0bzptYWNoLmNoZW5A
aHVhd2VpLmNvbSIgdGFyZ2V0PSJfYmxhbmsiPm1hY2guY2hlbkBodWF3ZWkuY29tPC9hPiZndDsg
d3JvdGU6PG86cD48L286cD48L3NwYW4+PC9wPg0KPGRpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNv
Tm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20t
YWx0OmF1dG8iPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjEwLjVwdDtmb250
LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6
IzFGNDk3RCI+SGkgRWR3aW4sPC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIj48bzpwPjwvbzpwPjwv
c3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0
OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHls
ZT0iZm9udC1zaXplOjEwLjVwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90
O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+Jm5ic3A7PC9zcGFuPjxzcGFuIGxhbmc9
IkVOLVVTIj48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHls
ZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPjxz
cGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjEwLjVwdDtmb250LWZhbWlseTomcXVv
dDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+VGhh
bmtzIGZvciB5b3VyIGdyZWF0IHF1ZXN0aW9uITwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyI+PG86
cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJn
aW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBsYW5nPSJF
Ti1VUyIgc3R5bGU9ImZvbnQtc2l6ZToxMC41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZx
dW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPiZuYnNwOzwvc3Bhbj48
c3BhbiBsYW5nPSJFTi1VUyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05v
cm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFs
dDphdXRvIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZToxMC41cHQ7Zm9udC1m
YW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMx
RjQ5N0QiPkkgdGhpbmsgdGhpcyBpcyBhIGJ1ZyBvZiB0aGUgY3VycmVudCBtb2RlbCwgdGhlcmUg
c2hvdWxkIGJlIGEgbGlzdCBpbiBhIHJpYiB0byBtYWludGFpbg0KIHRoZSBuZXh0aG9wcyBvZiB0
aGUgcmliLiA8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4N
CjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28t
bWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNp
emU6MTAuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJp
ZiZxdW90Oztjb2xvcjojMUY0OTdEIj4mbmJzcDs8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiPjxv
OnA+PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFy
Z2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0i
RU4tVVMiIHN0eWxlPSJmb250LXNpemU6MTAuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkm
cXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj5SZWdhcmRpbmcgeW91
ciBxdWVzdGlvbjo8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41
cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7VmVyZGFuYSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7
Ij4NCiDigJxIb3cgY2FuIHdlIGFkZCBhIE5leHRob3Agd2l0aG91dCBpbmZvcm1pbmcgdGhlIHBh
cmVudCBSb3V0ZT/igJ0gPC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXpl
OjEwLjVwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYm
cXVvdDs7Y29sb3I6IzFGNDk3RCI+WWVzLCBhIG5leHRob3AgY2FuIGJlIGNyZWF0ZWQgd2l0aG91
dCBpbmZvcm1pbmcgdGhlIHBhcmVudCByb3V0ZXMuIEluIHRoZSBjdXJyZW50IGRlc2lnbiwgdGhl
DQogbmV4dGhvcCBpcyBkZWNvdXBsZWQgZnJvbSB0aGUgcm91dGVzLiBBIG5leHRob3AgY2FuIGJl
IHNoYXJlZCBieSBtdWx0aXBsZSByb3V0ZXMgb3IgaXMgZGVkaWNhdGVkIHRvIGEgc2luZ2xlIHJv
dXRlLg0KPC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIj48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8
cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1h
cmdpbi1ib3R0b20tYWx0OmF1dG8iPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXpl
OjEwLjVwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYm
cXVvdDs7Y29sb3I6IzFGNDk3RCI+Jm5ic3A7PC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIj48bzpw
PjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdp
bi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPjxzcGFuIGxhbmc9IkVO
LVVTIiBzdHlsZT0iZm9udC1zaXplOjEwLjVwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1
b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+QmVzdCByZWdhcmRzLDwv
c3Bhbj48c3BhbiBsYW5nPSJFTi1VUyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9
Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90
dG9tLWFsdDphdXRvIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZToxMC41cHQ7
Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2Nv
bG9yOiMxRjQ5N0QiPk1hY2gNCjwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyI+PG86cD48L286cD48
L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFs
dDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5
bGU9ImZvbnQtc2l6ZToxMC41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVv
dDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPiZuYnNwOzwvc3Bhbj48c3BhbiBsYW5n
PSJFTi1VUyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPGRpdiBzdHlsZT0iYm9yZGVyOm5vbmU7
Ym9yZGVyLWxlZnQ6c29saWQgYmx1ZSAxLjVwdDtwYWRkaW5nOjBjbSAwY20gMGNtIDQuMHB0Ij4N
CjxkaXY+DQo8ZGl2IHN0eWxlPSJib3JkZXI6bm9uZTtib3JkZXItdG9wOnNvbGlkICNCNUM0REYg
MS4wcHQ7cGFkZGluZzozLjBwdCAwY20gMGNtIDBjbSI+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBz
dHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8i
PjxiPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjEwLjBwdDtmb250LWZhbWls
eTomcXVvdDtUYWhvbWEmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90OyI+RnJvbTo8L3NwYW4+
PC9iPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjEwLjBwdDtmb250LWZhbWls
eTomcXVvdDtUYWhvbWEmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90OyI+IGkycnMNCiBbbWFp
bHRvOjxhIGhyZWY9Im1haWx0bzppMnJzLWJvdW5jZXNAaWV0Zi5vcmciIHRhcmdldD0iX2JsYW5r
Ij5pMnJzLWJvdW5jZXNAaWV0Zi5vcmc8L2E+XQ0KPGI+T24gQmVoYWxmIE9mIDwvYj5FZHdpbiBD
b3JkZWlybzxicj4NCjxiPlNlbnQ6PC9iPiBXZWRuZXNkYXksIEp1bmUgMjIsIDIwMTYgMzo0NCBQ
TTxicj4NCjxiPlRvOjwvYj4gaTJyczxicj4NCjxiPlN1YmplY3Q6PC9iPiBbaTJyc10gUHJvYmxl
bSB1c2luZyByaWItZGF0YS1tb2RlbCBSUEMgd2l0aCByaWItaW5mby1tb2RlbCBJbmZvcm1hdGlv
biAoZHJhZnQtaWV0Zi1pMnJzLXJpYi1kYXRhLW1vZGVsLTA1ICYjNDM7IGRyYWZ0LWlldGYtaTJy
cy1yaWItaW5mby1tb2RlbC0wOCk8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9vOnA+
PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPC9kaXY+DQo8ZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29O
b3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1h
bHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4tVVMiPiZuYnNwOzxvOnA+PC9vOnA+PC9zcGFuPjwvcD4N
CjxkaXY+DQo8ZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFy
Z2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0i
RU4tVVMiIHN0eWxlPSJmb250LWZhbWlseTomcXVvdDtWZXJkYW5hJnF1b3Q7LCZxdW90O3NhbnMt
c2VyaWYmcXVvdDsiPkhlbGxvIGFsbCw8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9v
OnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxl
PSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNw
YW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LWZhbWlseTomcXVvdDtWZXJkYW5hJnF1b3Q7LCZx
dW90O3NhbnMtc2VyaWYmcXVvdDsiPiZuYnNwOzwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyI+PG86
cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIg
c3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRv
Ij48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTom
cXVvdDtWZXJkYW5hJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDsiPldoZW4gdHJ5aW5nIHRv
IGltcGxlbWVudCBJMlJTIHdlIGFyZSBmYWNlZCB0aGUgZm9sbG93aW5nIHByb2JsZW06PC9zcGFu
PjxzcGFuIGxhbmc9IkVOLVVTIj48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+
DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNv
LW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1z
aXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0FyaWFsJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYm
cXVvdDsiPiZuYnNwOzwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyI+PG86cD48L286cD48L3NwYW4+
PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJn
aW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBsYW5nPSJF
Ti1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtWZXJkYW5hJnF1
b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDsiPkluJm5ic3A7ZHJhZnQtaWV0Zi1pMnJzLXJpYi1k
YXRhLW1vZGVsLTA1I3NlY3Rpb24tMi41IHRoZSBSUEMgb2ZmZXIgdGhlIGZvbGxvd2luZyBOZXh0
aG9wIG9wZXJhdGlvbnM6PC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIj48bzpwPjwvbzpwPjwvc3Bh
bj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9
Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3Bh
biBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtD
b3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJiM0MzstLS14IG5oLWFkZDwv
c3Bhbj48c3BhbiBsYW5nPSJFTi1VUyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8
ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRv
O21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZv
bnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7
ICZuYnNwOyAmbmJzcDsgfCAmbmJzcDsmIzQzOy0tLXcgaW5wdXQ8L3NwYW4+PHNwYW4gbGFuZz0i
RU4tVVMiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJN
c29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRv
bS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9u
dC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7IHwg
Jm5ic3A7fCAmbmJzcDsmIzQzOy0tLXcgcmliLW5hbWUgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i
c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7c3RyaW5nPC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIj48
bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFs
IiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1
dG8iPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5
OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyB8ICZuYnNwO3wg
Jm5ic3A7JiM0MzstLS13IG5leHRob3AtaWQ/ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAm
bmJzcDsgdWludDMyPC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIj48bzpwPjwvbzpwPjwvc3Bhbj48
L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdp
bi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPjxzcGFuIGxhbmc9IkVO
LVVTIiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3
JnF1b3Q7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyB8ICZuYnNwO3wgJm5ic3A7JiM0MzstLS13IHNo
YXJpbmctZmxhZz8gJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IGJvb2xlYW48L3NwYW4+PHNw
YW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxw
IGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFy
Z2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6
OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsiPiZuYnNwOyAmbmJzcDsg
Jm5ic3A7IHwgJm5ic3A7fCAmbmJzcDsmIzQzOy0tLXcgKG5leHRob3AtdHlwZSk/PC9zcGFuPjxz
cGFuIGxhbmc9IkVOLVVTIj48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8
cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1h
cmdpbi1ib3R0b20tYWx0OmF1dG8iPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXpl
OjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij4mbmJzcDsgJm5ic3A7
ICZuYnNwOyB8ICZuYnNwO3wgJm5ic3A7ICZuYnNwOyAuLi48L3NwYW4+PHNwYW4gbGFuZz0iRU4t
VVMiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29O
b3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1h
bHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1m
YW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7IHwgJm5i
c3A7JiM0MzstLXJvIG91dHB1dDwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyI+PG86cD48L286cD48
L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1z
by1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBs
YW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtDb3Vy
aWVyIE5ldyZxdW90OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgfCAmbmJzcDsgJm5ic3A7ICYjNDM7
LS1ybyByZXN1bHQgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7dWludDMyPC9zcGFuPjxzcGFu
IGxhbmc9IkVOLVVTIj48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBj
bGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdp
bi1ib3R0b20tYWx0OmF1dG8iPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjku
NXB0O2ZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij4mbmJzcDsgJm5ic3A7ICZu
YnNwOyB8ICZuYnNwOyAmbmJzcDsgJiM0MzstLXJvIHJlYXNvbj8gJm5ic3A7ICZuYnNwOyAmbmJz
cDsgc3RyaW5nPC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIj48bzpwPjwvbzpwPjwvc3Bhbj48L3A+
DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10
b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPjxzcGFuIGxhbmc9IkVOLVVT
IiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1
b3Q7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyB8ICZuYnNwOyAmbmJzcDsgJiM0MzstLXJvIG5leHRo
b3AtaWQ/ICZuYnNwOyB1aW50MzI8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9vOnA+
PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJt
c28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4g
bGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291
cmllciBOZXcmcXVvdDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICYjNDM7LS0teCBuaC1kZWxldGU8
L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0K
PGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0
bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJm
b250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsiPiZuYnNw
OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsmIzQzOy0tLXcgaW5wdXQ8L3NwYW4+PHNwYW4g
bGFuZz0iRU4tVVMiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNs
YXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2lu
LWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41
cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsiPiZuYnNwOyAmbmJzcDsgJm5i
c3A7ICZuYnNwOyAmbmJzcDt8ICZuYnNwOyYjNDM7LS0tdyByaWItbmFtZSAmbmJzcDsgJm5ic3A7
ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDtzdHJpbmc8L3NwYW4+PHNwYW4gbGFu
Zz0iRU4tVVMiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNz
PSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJv
dHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7
Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7
ICZuYnNwOyAmbmJzcDt8ICZuYnNwOyYjNDM7LS0tdyBuZXh0aG9wLWlkPyAmbmJzcDsgJm5ic3A7
ICZuYnNwOyAmbmJzcDsgJm5ic3A7IHVpbnQzMjwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyI+PG86
cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIg
c3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRv
Ij48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTom
cXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw
O3wgJm5ic3A7JiM0MzstLS13IHNoYXJpbmctZmxhZz8gJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i
c3A7IGJvb2xlYW48L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9vOnA+PC9zcGFuPjwv
cD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2lu
LXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4t
VVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcm
cXVvdDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDt8ICZuYnNwOyYjNDM7LS0t
dyAobmV4dGhvcC10eXBlKT88L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9vOnA+PC9z
cGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28t
bWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFu
Zz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmll
ciBOZXcmcXVvdDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDt8ICZuYnNwOyAm
bmJzcDsgLi4uPC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIj48bzpwPjwvbzpwPjwvc3Bhbj48L3A+
DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10
b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPjxzcGFuIGxhbmc9IkVOLVVT
IiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1
b3Q7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7JiM0MzstLXJvIG91dHB1dDwv
c3Bhbj48c3BhbiBsYW5nPSJFTi1VUyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8
ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRv
O21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZv
bnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7
ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJiM0MzstLXJvIHJlc3VsdCB1aW50
MzI8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2
Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6
YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxl
PSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsiPiZu
YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICYjNDM7LS1ybyByZWFzb24/
IHN0cmluZzwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyI+PG86cD48L286cD48L3NwYW4+PC9wPg0K
PC9kaXY+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1h
cmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPjxzcGFuIGxhbmc9
IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0FyaWFsJnF1
b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDsiPiZuYnNwOzwvc3Bhbj48c3BhbiBsYW5nPSJFTi1V
UyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05v
cm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFs
dDphdXRvIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZh
bWlseTomcXVvdDtWZXJkYW5hJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDsiPkluIHRoZXNl
IG9wZXJhdGlvbnMgdGhlIE5leHRob3AgaXMgZGlyZWN0bHkgY29ubmVjdGVkIHRvIGEgUklCLCBi
dXQgaW4mbmJzcDtkcmFmdC1pZXRmLWkycnMtcmliLWluZm8tbW9kZWwtMDgjc2VjdGlvbi0yOiZu
YnNwO1JJQihzKQ0KIGNvbnRhaW5zIFJvdXRlKHMpIGFuZCBSb3V0ZShzKSBjb250YWlucyBOZXh0
aG9wKHMpOjwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyI+PG86cD48L286cD48L3NwYW4+PC9wPg0K
PC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9w
LWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBsYW5nPSJFTi1VUyIg
c3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtBcmlhbCZxdW90OywmcXVv
dDtzYW5zLXNlcmlmJnF1b3Q7Ij4mbmJzcDs8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+
PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9y
bWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0
OmF1dG8iPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFt
aWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg
Jm5ic3A7ICZuYnNwOyByb3V0aW5nLWluc3RhbmNlPC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIj48
bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFs
IiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1
dG8iPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5
OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i
c3A7ICZuYnNwOyB8ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IHw8
L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0K
PGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0
bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJm
b250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsiPiZuYnNw
OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IHwgJm5ic3A7ICZuYnNwOyAmbmJz
cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgfDwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyI+PG86cD48
L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5
bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48
c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVv
dDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgMC4uTiAmbmJzcDt8ICZu
YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IHwgMS4uTjwvc3Bhbj48c3Bh
biBsYW5nPSJFTi1VUyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAg
Y2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJn
aW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5
LjVwdDtmb250LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7ICZuYnNwOyAm
bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgfCAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg
Jm5ic3A7ICZuYnNwOyB8PC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIj48bzpwPjwvbzpwPjwvc3Bh
bj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1h
cmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPjxzcGFuIGxhbmc9
IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIg
TmV3JnF1b3Q7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgaW50ZXJmYWNlKHMpICZuYnNw
OyAmbmJzcDsgUklCKHMpPC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIj48bzpwPjwvbzpwPjwvc3Bh
bj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1h
cmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPjxzcGFuIGxhbmc9
IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIg
TmV3JnF1b3Q7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz
cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgfDwvc3Bhbj48c3Bh
biBsYW5nPSJFTi1VUyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAg
Y2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJn
aW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5
LjVwdDtmb250LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7ICZuYnNwOyAm
bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu
YnNwOyAmbmJzcDsgJm5ic3A7IHw8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9vOnA+
PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJt
c28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4g
bGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291
cmllciBOZXcmcXVvdDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7
ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyB8IDAuLk48
L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0K
PGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0
bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJm
b250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsiPiZuYnNw
OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7
ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyB8PC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIj48
bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFs
IiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1
dG8iPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5
OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i
c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyByb3V0
ZShzKTwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9k
aXY+DQo8ZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2lu
LXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4t
VVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcm
cXVvdDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAm
bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IHwgfCB8PC9zcGFuPjxzcGFuIGxhbmc9
IkVOLVVTIj48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0i
TXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0
b20tYWx0OmF1dG8iPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2Zv
bnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAm
bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJiM0MzstLS0tLS0tLS0mIzQzOyB8ICYjNDM7LS0t
LS0tLS0tLSYjNDM7PC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIj48bzpwPjwvbzpwPjwvc3Bhbj48
L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdp
bi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPjxzcGFuIGxhbmc9IkVO
LVVTIiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3
JnF1b3Q7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg
fCAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IHwgJm5ic3A7ICZuYnNwOyAmbmJz
cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDt8PC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIj48bzpwPjwv
bzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHls
ZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPjxz
cGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90
O0NvdXJpZXIgTmV3JnF1b3Q7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7MC4u
TiB8ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgfCAmbmJzcDsgJm5ic3A7ICZu
YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwO3w8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+
PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0
eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+
PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1
b3Q7Q291cmllciBOZXcmcXVvdDsiPnJvdXRlLWF0dHJpYnV0ZSAmbmJzcDsgJm5ic3A7ICZuYnNw
OyAmbmJzcDsgbWF0Y2ggJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IG5leHRob3A8L3NwYW4+
PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4N
CjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28t
bWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNp
emU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsiPiZuYnNwOyAmbmJz
cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw
OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyB8PC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIj48bzpwPjwv
bzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHls
ZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPjxz
cGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90
O0NvdXJpZXIgTmV3JnF1b3Q7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu
YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsuLi48
L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0K
PGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0
bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJm
b250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsiPiZuYnNw
OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDs8L3NwYW4+
PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPC9kaXY+
DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10
b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPjxzcGFuIGxhbmc9IkVOLVVT
IiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O1ZlcmRhbmEmcXVvdDss
JnF1b3Q7c2Fucy1zZXJpZiZxdW90OyI+T3VyIHF1ZXN0aW9ucyBhcmU6PC9zcGFuPjxzcGFuIGxh
bmc9IkVOLVVTIj48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFz
cz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1i
b3R0b20tYWx0OmF1dG8iPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjkuNXB0
O2ZvbnQtZmFtaWx5OiZxdW90O1ZlcmRhbmEmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90OyI+
LSBIb3cgY2FuIHdlIGFkZCBhIE5leHRob3Agd2l0aG91dCBpbmZvcm1pbmcgdGhlIHBhcmVudCBS
b3V0ZT88L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwv
ZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1h
bHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0
eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7VmVyZGFuYSZxdW90OywmcXVv
dDtzYW5zLXNlcmlmJnF1b3Q7Ij4tIExvb2tpbmcgYXQgdGhlIFJJQiBncmFtbWFyIChkcmFmdC1p
ZXRmLWkycnMtcmliLWluZm8tbW9kZWwtMDgjc2VjdGlvbi02KSB0aGUgTmV4dGhvcCBpcyBhbHNv
IGF0dGFjaGVkDQogdG8gYSBSb3V0ZS4gU2hvdWxkbid0IE5leHRob3AgYmUgcGFydCBvZiBSSUI/
IE1heWJlIHNvbWV0aGluZyBsaWtlOjwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyI+PG86cD48L286
cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9
Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3Bh
biBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtB
cmlhbCZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7Ij4mbmJzcDs8L3NwYW4+PHNwYW4gbGFu
Zz0iRU4tVVMiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxkaXY+DQo8
ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRv
O21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZv
bnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7
ICZsdDtyaWImZ3Q7IDo6PSAmbHQ7UklCX05BTUUmZ3Q7ICZsdDtyaWItZmFtaWx5Jmd0Ozwvc3Bh
bj48c3BhbiBsYW5nPSJFTi1VUyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2
Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21z
by1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQt
c2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7ICZu
YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i
c3A7ICZuYnNwOyBbJmx0O3JvdXRlJmd0OyAuLi4gXTwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyI+
PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1h
bCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDph
dXRvIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWls
eTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu
YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBbJmx0O25leHRo
b3AmZ3Q7IC4uLl08L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9vOnA+PC9zcGFuPjwv
cD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2lu
LXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4t
VVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcm
cXVvdDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAm
bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgW0VOQUJMRV9JUF9SUEZfQ0hFQ0tdPC9zcGFuPjxz
cGFuIGxhbmc9IkVOLVVTIj48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjwvZGl2Pg0K
PGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0
bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJm
b250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7QXJpYWwmcXVvdDssJnF1b3Q7c2Fucy1z
ZXJpZiZxdW90OyI+Jm5ic3A7PC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIj48bzpwPjwvbzpwPjwv
c3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNv
LW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPjxzcGFuIGxh
bmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0NvdXJp
ZXIgTmV3JnF1b3Q7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBy
b3V0aW5nLWluc3RhbmNlPC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIj48bzpwPjwvbzpwPjwvc3Bh
bj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1h
cmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPjxzcGFuIGxhbmc9
IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIg
TmV3JnF1b3Q7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyB8ICZu
YnNwOyAmbmJzcDsgJm5ic3A7fCAmbmJzcDsgJm5ic3A7ICZuYnNwOzwvc3Bhbj48c3BhbiBsYW5n
PSJFTi1VUyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9
Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90
dG9tLWFsdDphdXRvIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtm
b250LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsg
Jm5ic3A7ICZuYnNwOyAmbmJzcDsgfCAmbmJzcDsgJm5ic3A7ICZuYnNwO3wgJm5ic3A7ICZuYnNw
OyAmbmJzcDs8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4N
CjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRv
cC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4tVVMi
IHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVv
dDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7IDAuLk4gJm5ic3A7fCAmbmJzcDsgJm5ic3A7ICZuYnNw
O3wmbmJzcDsxLi5OJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i
c3A7ICZuYnNwOyZuYnNwOzwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyI+PG86cD48L286cD48L3Nw
YW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1t
YXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBsYW5n
PSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtDb3VyaWVy
IE5ldyZxdW90OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgfCAm
bmJzcDsgJm5ic3A7ICZuYnNwO3wmbmJzcDsmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i
c3A7ICZuYnNwOyZuYnNwOzwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyI+PG86cD48L286cD48L3Nw
YW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1t
YXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBsYW5n
PSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtDb3VyaWVy
IE5ldyZxdW90OyI+Jm5ic3A7ICZuYnNwOyBpbnRlcmZhY2UocykgJm5ic3A7UklCKHMpICZuYnNw
OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOzwvc3Bhbj48c3BhbiBs
YW5nPSJFTi1VUyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xh
c3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4t
Ym90dG9tLWFsdDphdXRvIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVw
dDtmb250LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7ICZuYnNwOyAmbmJz
cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7fCAmbmJz
cDt8Jm5ic3A7MC4uTiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu
YnNwOyAmbmJzcDs8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9vOnA+PC9zcGFuPjwv
cD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2lu
LXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4t
VVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcm
cXVvdDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAm
bmJzcDsgJm5ic3A7ICZuYnNwO3wgJm5ic3A7JiM0MzstLS0tLS0tLS0tLS0tLSYjNDM7PC9zcGFu
PjxzcGFuIGxhbmc9IkVOLVVTIj48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+
DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNv
LW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1z
aXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij4mbmJzcDsgJm5i
c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsmbmJzcDswLi5OJm5ic3A7fCAm
bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7Jm5i
c3A7fDwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9k
aXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFs
dDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5
bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+
Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAm
bmJzcDsgJm5ic3A7fCAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAm
bmJzcDsgJm5ic3A7Jm5ic3A7fDwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyI+PG86cD48L286cD48
L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1z
by1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBs
YW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtDb3Vy
aWVyIE5ldyZxdW90OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg
Jm5ic3A7ICZuYnNwOyAmbmJzcDtyb3V0ZShzKSAtLS0tLS0mZ3Q7Jm5ic3A7bmV4dGhvcChzKTwv
c3Bhbj48c3BhbiBsYW5nPSJFTi1VUyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8
ZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1h
bHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0
eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsi
PiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg
Jm5ic3A7fCB8ICZuYnNwOyAmbmJzcDsgJm5ic3A7IDEuLk48L3NwYW4+PHNwYW4gbGFuZz0iRU4t
VVMiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29O
b3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1h
bHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1m
YW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw
OyYjNDM7LS0tLS0tLS0tJiM0MzsgfCZuYnNwOzwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyI+PG86
cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIg
c3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRv
Ij48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTom
cXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7fCAmbmJz
cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IHwmbmJzcDs8L3NwYW4+PHNwYW4gbGFuZz0i
RU4tVVMiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJN
c29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRv
bS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9u
dC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsiPiZuYnNwOyAwLi5OIHwgJm5ic3A7ICZu
YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyB8Jm5ic3A7PC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVT
Ij48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9y
bWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0
OmF1dG8iPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFt
aWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij5yb3V0ZS1hdHRyaWJ1dGUgJm5ic3A7bWF0Y2gm
bmJzcDs8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwv
ZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1h
bHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0
eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsi
PiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg
Jm5ic3A7ICZuYnNwO3w8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9vOnA+PC9zcGFu
PjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFy
Z2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0i
RU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBO
ZXcmcXVvdDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw
OyAmbmJzcDsgJm5ic3A7IC4uLjwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyI+PG86cD48L286cD48
L3NwYW4+PC9wPg0KPC9kaXY+DQo8L2Rpdj4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29O
b3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1h
bHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1m
YW1pbHk6JnF1b3Q7VmVyZGFuYSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7Ij4mbmJzcDsm
bmJzcDs8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwv
ZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1h
bHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0
eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7VmVyZGFuYSZxdW90OywmcXVv
dDtzYW5zLXNlcmlmJnF1b3Q7Ij5JZiB3ZSBtaXN1bmRlcnN0b29kIHRoZSBtb2RlbCwgY291bGQg
c29tZW9uZSBwbGVhc2UgZXhwbGFpbiB3aHkgb3VyIHVuZGVyc3RhbmRpbmcgaXMgaW5jb3JyZWN0
Pzwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+
DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDph
dXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9
ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtBcmlhbCZxdW90OywmcXVvdDtzYW5z
LXNlcmlmJnF1b3Q7Ij4mbmJzcDs8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9vOnA+
PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJt
c28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4g
bGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7VmVy
ZGFuYSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7Ij5CZXN0IFJlZ2FyZHMsPC9zcGFuPjxz
cGFuIGxhbmc9IkVOLVVTIj48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjwvZGl2Pg0K
PHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1t
YXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBsYW5nPSJFTi1VUyI+PGJyIGNsZWFyPSJhbGwi
Pg0KPG86cD48L286cD48L3NwYW4+PC9wPg0KPGRpdj4NCjxkaXY+DQo8ZGl2Pg0KPGRpdj4NCjxw
IGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFy
Z2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LWZhbWls
eTomcXVvdDtWZXJkYW5hJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDsiPkVkd2luIENvcmRl
aXJvPC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIj48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rp
dj4NCjwvZGl2Pg0KPC9kaXY+DQo8L2Rpdj4NCjwvZGl2Pg0KPC9kaXY+DQo8L2Rpdj4NCjwvZGl2
Pg0KPC9kaXY+DQo8L2Rpdj4NCjwvZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gbGFu
Zz0iRU4tVVMiPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPC9kaXY+DQo8
L2Rpdj4NCjwvYm9keT4NCjwvaHRtbD4NCg==

--_000_F73A3CB31E8BE34FA1BBE3C8F0CB2AE28CC874DASZXEMA510MBXchi_--


From nobody Mon Jun 27 01:02:47 2016
Return-Path: <edwinsc@gmail.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 6987B12D08F for <i2rs@ietfa.amsl.com>; Mon, 27 Jun 2016 01:02:46 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.699
X-Spam-Level: 
X-Spam-Status: No, score=-2.699 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
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 pdsY4EYDBC2X for <i2rs@ietfa.amsl.com>; Mon, 27 Jun 2016 01:02:44 -0700 (PDT)
Received: from mail-wm0-x22a.google.com (mail-wm0-x22a.google.com [IPv6:2a00:1450:400c:c09::22a]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 66CB612D08C for <i2rs@ietf.org>; Mon, 27 Jun 2016 01:02:43 -0700 (PDT)
Received: by mail-wm0-x22a.google.com with SMTP id v199so88919521wmv.0 for <i2rs@ietf.org>; Mon, 27 Jun 2016 01:02:43 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;  h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=23RKFLEU8oe1KX+/R52rofVlQ0QLB8hnzC0sCYD9dr0=; b=bel0zZRVjmJDrjIRb0IW/DEYeBjF8v0jH+mGPvNDFISMIFLmkgL2Ra+QDkXQOfJtRi 6jSfAPWeikljac2RJOmx29gkxsFk3lO6rvpofV38x6eN/qLGzZZAiUpfAE4dIed1/haR 8cNy1Wmy0kVurzChqkdDa/loX0qUdcKIZ2F9juCMiNbGdsERtB8NB1tFc4JswxLSP0Hq KXSilzFEMPuL0jLYC4+4bdVnWnxELaGNsVsk8AtvH8H0FfKNWTamonOuwLrwFUllhnKi qrZKi5dnkGOGJgkreRvbKlQH4OBGqvu6zfWXwlqzgLuFKQpdf5qaO3tX9QXT8GApl5Eh cYLA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=23RKFLEU8oe1KX+/R52rofVlQ0QLB8hnzC0sCYD9dr0=; b=eARPOhhaTz+QvJ7ku80ygvE7LPn34r1IOEc51wE5V7/gaYM0nMp+xylWrGPsMU+5/s 6RGJLhrxqiKTFq1OUkIjGGpQcT/yQT6eDaJWX0hhcj3vRnwz25zG8HESQ1jM5B+6/6aG frAo7It29yJg4GL6jM0W3Hdf5wUqTxdlTJ8FV6XWvF7edsFr5apboqusD1hLPddJ5Sj/ X0lEM1/5jre8gnoHgO+qrNWj/RCpCd21alAzESYbeyqhsdoTbOAH3ROT3fLgAiIhc/xE 8z3WdXl7zdjgrJkjuFic9s5ESunZ/l5bYzRl7v02JUELJxw7EVGjedDshApGGJ6VM+ws 4Log==
X-Gm-Message-State: ALyK8tJt3jgeypRjcAV8o1sBi8KYxkDl59Jg+1R6D4fER2HRwXRKEFIIrx9KljvrqNR1psAwprJKzlONGHQQUA==
X-Received: by 10.194.134.230 with SMTP id pn6mr14384164wjb.165.1467014561721;  Mon, 27 Jun 2016 01:02:41 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.28.113.74 with HTTP; Mon, 27 Jun 2016 01:02:12 -0700 (PDT)
In-Reply-To: <F73A3CB31E8BE34FA1BBE3C8F0CB2AE28CC874DA@SZXEMA510-MBX.china.huawei.com>
References: <CAERpkxAbLVf5OkGPOkixGh9xi3qMutqp1puJzTbZzvn+VhOhqg@mail.gmail.com> <F73A3CB31E8BE34FA1BBE3C8F0CB2AE28CC869E0@SZXEMA510-MBX.china.huawei.com> <CAERpkxBM+UgN-Y2nq=xQ1qRxUVtS0F0QrZDj9WNy9FWyf6TWbA@mail.gmail.com> <F73A3CB31E8BE34FA1BBE3C8F0CB2AE28CC874DA@SZXEMA510-MBX.china.huawei.com>
From: Edwin Cordeiro <edwinsc@gmail.com>
Date: Mon, 27 Jun 2016 10:02:12 +0200
Message-ID: <CAERpkxD_LA1qQXqaVgFkG18CPoBVYLwU1u8Wak8nSoh7BQBTYQ@mail.gmail.com>
To: Mach Chen <mach.chen@huawei.com>
Content-Type: multipart/alternative; boundary=089e01175e81d4f47605363df1f5
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/WbrHIgCh92LApZWLYjcPkHEQKsw>
Cc: i2rs <i2rs@ietf.org>
Subject: Re: [i2rs] Problem using rib-data-model RPC with rib-info-model Information (draft-ietf-i2rs-rib-data-model-05 + draft-ietf-i2rs-rib-info-model-08)
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Mon, 27 Jun 2016 08:02:46 -0000

--089e01175e81d4f47605363df1f5
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

Hi Mach,

I mean the RIB should have a group of a nexthops and a group of routes and
while the draft stated nexthop as part of the route.

I my understanding each route would indicate which of the existing nexthops
it uses, allowing a nexthop to be shared by multiple routes without having
multiple copies of the same next hop.

I don't think my statement contradicts your understand.

Best Regards,


Edwin Cordeiro

On Mon, Jun 27, 2016 at 4:22 AM, Mach Chen <mach.chen@huawei.com> wrote:

> Hi Edwin,
>
>
>
> Could you elaborate more about the mean of =E2=80=9Cnexthops should be ha=
ndled
> separated to routes=E2=80=9D ?
>
>
>
> In my understanding, the nexthop-add/delete RPC s are designed to operate
> the nexthop separately.  Of cause, a nexthop list node should be added to
> the rib, hence to maintain the added nexthops.
>
>
>
> Best regards,
>
> Mach
>
>
>
> *From:* Edwin Cordeiro [mailto:edwinsc@gmail.com]
> *Sent:* Saturday, June 25, 2016 3:25 PM
> *To:* Mach Chen
> *Cc:* i2rs
> *Subject:* Re: [i2rs] Problem using rib-data-model RPC with
> rib-info-model Information (draft-ietf-i2rs-rib-data-model-05 +
> draft-ietf-i2rs-rib-info-model-08)
>
>
>
> Hi Mach,
>
>
>
> Thanks for the explanation. We thought that nexthops should be handled
> separated to routes, but that wasn't reflected in the draft.
>
>
>
> Best Regards,
>
>
>
>
> Edwin Cordeiro
>
>
>
> On Fri, Jun 24, 2016 at 5:08 AM, Mach Chen <mach.chen@huawei.com> wrote:
>
> Hi Edwin,
>
>
>
> Thanks for your great question!
>
>
>
> I think this is a bug of the current model, there should be a list in a
> rib to maintain the nexthops of the rib.
>
>
>
> Regarding your question: =E2=80=9CHow can we add a Nexthop without inform=
ing the
> parent Route?=E2=80=9D Yes, a nexthop can be created without informing th=
e parent
> routes. In the current design, the nexthop is decoupled from the routes. =
A
> nexthop can be shared by multiple routes or is dedicated to a single rout=
e.
>
>
>
> Best regards,
>
> Mach
>
>
>
> *From:* i2rs [mailto:i2rs-bounces@ietf.org] *On Behalf Of *Edwin Cordeiro
> *Sent:* Wednesday, June 22, 2016 3:44 PM
> *To:* i2rs
> *Subject:* [i2rs] Problem using rib-data-model RPC with rib-info-model
> Information (draft-ietf-i2rs-rib-data-model-05 +
> draft-ietf-i2rs-rib-info-model-08)
>
>
>
> Hello all,
>
>
>
> When trying to implement I2RS we are faced the following problem:
>
>
>
> In draft-ietf-i2rs-rib-data-model-05#section-2.5 the RPC offer the
> following Nexthop operations:
>
>       +---x nh-add
>
>       |  +---w input
>
>       |  |  +---w rib-name              string
>
>       |  |  +---w nexthop-id?           uint32
>
>       |  |  +---w sharing-flag?         boolean
>
>       |  |  +---w (nexthop-type)?
>
>       |  |     ...
>
>       |  +--ro output
>
>       |     +--ro result        uint32
>
>       |     +--ro reason?       string
>
>       |     +--ro nexthop-id?   uint32
>
>       +---x nh-delete
>
>          +---w input
>
>          |  +---w rib-name              string
>
>          |  +---w nexthop-id?           uint32
>
>          |  +---w sharing-flag?         boolean
>
>          |  +---w (nexthop-type)?
>
>          |     ...
>
>          +--ro output
>
>             +--ro result uint32
>
>             +--ro reason? string
>
>
>
> In these operations the Nexthop is directly connected to a RIB, but
> in draft-ietf-i2rs-rib-info-model-08#section-2: RIB(s) contains Route(s)
> and Route(s) contains Nexthop(s):
>
>
>
>             routing-instance
>
>             |             |
>
>             |             |
>
>       0..N  |             | 1..N
>
>             |             |
>
>         interface(s)     RIB(s)
>
>                           |
>
>                           |
>
>                           | 0..N
>
>                           |
>
>                         route(s)
>
>                         | | |
>
>               +---------+ | +----------+
>
>               |           |            |
>
>          0..N |           |            |
>
> route-attribute         match         nexthop
>
>                           |
>
>                          ...
>
>
>
> Our questions are:
>
> - How can we add a Nexthop without informing the parent Route?
>
> - Looking at the RIB grammar (draft-ietf-i2rs-rib-info-model-08#section-6=
)
> the Nexthop is also attached to a Route. Shouldn't Nexthop be part of RIB=
?
> Maybe something like:
>
>
>
>   <rib> ::=3D <RIB_NAME> <rib-family>
>
>                       [<route> ... ]
>
>                       [<nexthop> ...]
>
>                       [ENABLE_IP_RPF_CHECK]
>
>
>
>             routing-instance
>
>             |      |
>
>             |      |
>
>       0..N  |      | 1..N
>
>             |      |
>
>     interface(s)  RIB(s)
>
>                    |  | 0..N
>
>                    |  +--------------+
>
>               0..N |                 |
>
>                    |                 |
>
>                  route(s) ------> nexthop(s)
>
>                  | |       1..N
>
>        +---------+ |
>
>        |           |
>
>   0..N |           |
>
> route-attribute  match
>
>                    |
>
>                   ...
>
>
>
> If we misunderstood the model, could someone please explain why our
> understanding is incorrect?
>
>
>
> Best Regards,
>
>
> Edwin Cordeiro
>
>
>

--089e01175e81d4f47605363df1f5
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div class=3D"gmail_default" style=3D"font-family:verdana,=
sans-serif;font-size:small">Hi Mach,</div><div class=3D"gmail_default" styl=
e=3D"font-family:verdana,sans-serif;font-size:small"><br></div><div class=
=3D"gmail_default" style=3D"font-family:verdana,sans-serif;font-size:small"=
>I mean the RIB should have a group of a nexthops and a group of routes and=
 while the draft stated nexthop as part of the route.=C2=A0</div><div class=
=3D"gmail_default" style=3D"font-family:verdana,sans-serif;font-size:small"=
><br></div><div class=3D"gmail_default" style=3D"font-family:verdana,sans-s=
erif;font-size:small">I my understanding each route would indicate which of=
 the existing nexthops it uses, allowing a nexthop to be shared by multiple=
 routes without having multiple copies of the same next hop.</div><div clas=
s=3D"gmail_default" style=3D"font-family:verdana,sans-serif;font-size:small=
"><br></div><div class=3D"gmail_default" style=3D"font-family:verdana,sans-=
serif;font-size:small">I don&#39;t think my statement contradicts your unde=
rstand.</div><div class=3D"gmail_default" style=3D"font-family:verdana,sans=
-serif;font-size:small"><br></div><div class=3D"gmail_default" style=3D"fon=
t-family:verdana,sans-serif;font-size:small">Best Regards,</div><div class=
=3D"gmail_default" style=3D"font-family:verdana,sans-serif;font-size:small"=
><br></div></div><div class=3D"gmail_extra"><br clear=3D"all"><div><div cla=
ss=3D"gmail_signature" data-smartmail=3D"gmail_signature"><div dir=3D"ltr">=
<div><font face=3D"verdana, sans-serif">Edwin Cordeiro</font></div></div></=
div></div>
<br><div class=3D"gmail_quote">On Mon, Jun 27, 2016 at 4:22 AM, Mach Chen <=
span dir=3D"ltr">&lt;<a href=3D"mailto:mach.chen@huawei.com" target=3D"_bla=
nk">mach.chen@huawei.com</a>&gt;</span> wrote:<br><blockquote class=3D"gmai=
l_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left=
:1ex">





<div lang=3D"ZH-CN" link=3D"blue" vlink=3D"purple">
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.5pt;font-=
family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">Hi Edwin,<=
u></u><u></u></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.5pt;font-=
family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d"><u></u>=C2=
=A0<u></u></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.5pt;font-=
family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">Could you =
elaborate more about the mean of =E2=80=9C</span><span lang=3D"EN-US" style=
=3D"font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;">nexthops should=
 be handled separated
 to routes</span><span lang=3D"EN-US" style=3D"font-size:10.5pt;font-family=
:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">=E2=80=9D ?
<u></u><u></u></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.5pt;font-=
family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d"><u></u>=C2=
=A0<u></u></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.5pt;font-=
family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">In my unde=
rstanding, the nexthop-add/delete RPC s are designed to operate the nexthop=
 separately.=C2=A0 Of cause, a nexthop list node should be added
 to the rib, hence to maintain the added nexthops. <u></u><u></u></span></p=
>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.5pt;font-=
family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d"><u></u>=C2=
=A0<u></u></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.5pt;font-=
family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">Best regar=
ds,<u></u><u></u></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.5pt;font-=
family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">Mach<u></u=
><u></u></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.5pt;font-=
family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d"><u></u>=C2=
=A0<u></u></span></p>
<div style=3D"border:none;border-left:solid blue 1.5pt;padding:0cm 0cm 0cm =
4.0pt">
<div>
<div style=3D"border:none;border-top:solid #b5c4df 1.0pt;padding:3.0pt 0cm =
0cm 0cm">
<p class=3D"MsoNormal"><b><span lang=3D"EN-US" style=3D"font-size:10.0pt;fo=
nt-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;">From:</span></b><span =
lang=3D"EN-US" style=3D"font-size:10.0pt;font-family:&quot;Tahoma&quot;,&qu=
ot;sans-serif&quot;"> Edwin Cordeiro [mailto:<a href=3D"mailto:edwinsc@gmai=
l.com" target=3D"_blank">edwinsc@gmail.com</a>]
<br>
<b>Sent:</b> Saturday, June 25, 2016 3:25 PM<br>
<b>To:</b> Mach Chen<br>
<b>Cc:</b> i2rs<br>
<b>Subject:</b> Re: [i2rs] Problem using rib-data-model RPC with rib-info-m=
odel Information (draft-ietf-i2rs-rib-data-model-05 + draft-ietf-i2rs-rib-i=
nfo-model-08)<u></u><u></u></span></p>
</div>
</div><div><div class=3D"h5">
<p class=3D"MsoNormal"><span lang=3D"EN-US"><u></u>=C2=A0<u></u></span></p>
<div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-family:&quot;Verd=
ana&quot;,&quot;sans-serif&quot;">Hi Mach,<u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-family:&quot;Verd=
ana&quot;,&quot;sans-serif&quot;"><u></u>=C2=A0<u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-family:&quot;Verd=
ana&quot;,&quot;sans-serif&quot;">Thanks for the explanation. We thought th=
at nexthops should be handled separated to routes, but that wasn&#39;t refl=
ected in the draft.<u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-family:&quot;Verd=
ana&quot;,&quot;sans-serif&quot;"><u></u>=C2=A0<u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-family:&quot;Verd=
ana&quot;,&quot;sans-serif&quot;">Best Regards,<u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-family:&quot;Verd=
ana&quot;,&quot;sans-serif&quot;"><u></u>=C2=A0<u></u></span></p>
</div>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US"><br clear=3D"all">
<u></u><u></u></span></p>
<div>
<div>
<div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-family:&quot;Verd=
ana&quot;,&quot;sans-serif&quot;">Edwin Cordeiro</span><span lang=3D"EN-US"=
><u></u><u></u></span></p>
</div>
</div>
</div>
</div>
<p class=3D"MsoNormal"><span lang=3D"EN-US"><u></u>=C2=A0<u></u></span></p>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US">On Fri, Jun 24, 2016 at 5:08 AM=
, Mach Chen &lt;<a href=3D"mailto:mach.chen@huawei.com" target=3D"_blank">m=
ach.chen@huawei.com</a>&gt; wrote:<u></u><u></u></span></p>
<div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.5pt;font-=
family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">Hi Edwin,<=
/span><span lang=3D"EN-US"><u></u><u></u></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.5pt;font-=
family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">=C2=A0</sp=
an><span lang=3D"EN-US"><u></u><u></u></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.5pt;font-=
family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">Thanks for=
 your great question!</span><span lang=3D"EN-US"><u></u><u></u></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.5pt;font-=
family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">=C2=A0</sp=
an><span lang=3D"EN-US"><u></u><u></u></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.5pt;font-=
family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">I think th=
is is a bug of the current model, there should be a list in a rib to mainta=
in
 the nexthops of the rib. </span><span lang=3D"EN-US"><u></u><u></u></span>=
</p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.5pt;font-=
family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">=C2=A0</sp=
an><span lang=3D"EN-US"><u></u><u></u></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.5pt;font-=
family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">Regarding =
your question:</span><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-fam=
ily:&quot;Verdana&quot;,&quot;sans-serif&quot;">
 =E2=80=9CHow can we add a Nexthop without informing the parent Route?=E2=
=80=9D </span><span lang=3D"EN-US" style=3D"font-size:10.5pt;font-family:&q=
uot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">Yes, a nexthop can =
be created without informing the parent routes. In the current design, the
 nexthop is decoupled from the routes. A nexthop can be shared by multiple =
routes or is dedicated to a single route.
</span><span lang=3D"EN-US"><u></u><u></u></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.5pt;font-=
family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">=C2=A0</sp=
an><span lang=3D"EN-US"><u></u><u></u></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.5pt;font-=
family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">Best regar=
ds,</span><span lang=3D"EN-US"><u></u><u></u></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.5pt;font-=
family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">Mach
</span><span lang=3D"EN-US"><u></u><u></u></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.5pt;font-=
family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">=C2=A0</sp=
an><span lang=3D"EN-US"><u></u><u></u></span></p>
<div style=3D"border:none;border-left:solid blue 1.5pt;padding:0cm 0cm 0cm =
4.0pt">
<div>
<div style=3D"border:none;border-top:solid #b5c4df 1.0pt;padding:3.0pt 0cm =
0cm 0cm">
<p class=3D"MsoNormal"><b><span lang=3D"EN-US" style=3D"font-size:10.0pt;fo=
nt-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;">From:</span></b><span =
lang=3D"EN-US" style=3D"font-size:10.0pt;font-family:&quot;Tahoma&quot;,&qu=
ot;sans-serif&quot;"> i2rs
 [mailto:<a href=3D"mailto:i2rs-bounces@ietf.org" target=3D"_blank">i2rs-bo=
unces@ietf.org</a>]
<b>On Behalf Of </b>Edwin Cordeiro<br>
<b>Sent:</b> Wednesday, June 22, 2016 3:44 PM<br>
<b>To:</b> i2rs<br>
<b>Subject:</b> [i2rs] Problem using rib-data-model RPC with rib-info-model=
 Information (draft-ietf-i2rs-rib-data-model-05 + draft-ietf-i2rs-rib-info-=
model-08)</span><span lang=3D"EN-US"><u></u><u></u></span></p>
</div>
</div>
<div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US">=C2=A0<u></u><u></u></span></p>
<div>
<div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-family:&quot;Verd=
ana&quot;,&quot;sans-serif&quot;">Hello all,</span><span lang=3D"EN-US"><u>=
</u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-family:&quot;Verd=
ana&quot;,&quot;sans-serif&quot;">=C2=A0</span><span lang=3D"EN-US"><u></u>=
<u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Verdana&quot;,&quot;sans-serif&quot;">When trying to implement =
I2RS we are faced the following problem:</span><span lang=3D"EN-US"><u></u>=
<u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Arial&quot;,&quot;sans-serif&quot;">=C2=A0</span><span lang=3D"=
EN-US"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Verdana&quot;,&quot;sans-serif&quot;">In=C2=A0draft-ietf-i2rs-r=
ib-data-model-05#section-2.5 the RPC offer the following Nexthop operations=
:</span><span lang=3D"EN-US"><u></u><u></u></span></p>
</div>
<div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 +---x nh-add</span><spa=
n lang=3D"EN-US"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 | =C2=A0+---w input</sp=
an><span lang=3D"EN-US"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 | =C2=A0| =C2=A0+---w r=
ib-name =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0string</span><span =
lang=3D"EN-US"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 | =C2=A0| =C2=A0+---w n=
exthop-id? =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 uint32</span><span lang=3D"EN=
-US"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 | =C2=A0| =C2=A0+---w s=
haring-flag? =C2=A0 =C2=A0 =C2=A0 =C2=A0 boolean</span><span lang=3D"EN-US"=
><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 | =C2=A0| =C2=A0+---w (=
nexthop-type)?</span><span lang=3D"EN-US"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 | =C2=A0| =C2=A0 =C2=A0=
 ...</span><span lang=3D"EN-US"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 | =C2=A0+--ro output</s=
pan><span lang=3D"EN-US"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 | =C2=A0 =C2=A0 +--ro r=
esult =C2=A0 =C2=A0 =C2=A0 =C2=A0uint32</span><span lang=3D"EN-US"><u></u><=
u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 | =C2=A0 =C2=A0 +--ro r=
eason? =C2=A0 =C2=A0 =C2=A0 string</span><span lang=3D"EN-US"><u></u><u></u=
></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 | =C2=A0 =C2=A0 +--ro n=
exthop-id? =C2=A0 uint32</span><span lang=3D"EN-US"><u></u><u></u></span></=
p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 +---x nh-delete</span><=
span lang=3D"EN-US"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0+---w inpu=
t</span><span lang=3D"EN-US"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0| =C2=A0+-=
--w rib-name =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0string</span><=
span lang=3D"EN-US"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0| =C2=A0+-=
--w nexthop-id? =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 uint32</span><span lang=
=3D"EN-US"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0| =C2=A0+-=
--w sharing-flag? =C2=A0 =C2=A0 =C2=A0 =C2=A0 boolean</span><span lang=3D"E=
N-US"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0| =C2=A0+-=
--w (nexthop-type)?</span><span lang=3D"EN-US"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0| =C2=A0 =
=C2=A0 ...</span><span lang=3D"EN-US"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0+--ro outp=
ut</span><span lang=3D"EN-US"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 +-=
-ro result uint32</span><span lang=3D"EN-US"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 +-=
-ro reason? string</span><span lang=3D"EN-US"><u></u><u></u></span></p>
</div>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Arial&quot;,&quot;sans-serif&quot;">=C2=A0</span><span lang=3D"=
EN-US"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Verdana&quot;,&quot;sans-serif&quot;">In these operations the N=
exthop is directly connected to a RIB, but in=C2=A0draft-ietf-i2rs-rib-info=
-model-08#section-2:=C2=A0RIB(s)
 contains Route(s) and Route(s) contains Nexthop(s):</span><span lang=3D"EN=
-US"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Arial&quot;,&quot;sans-serif&quot;">=C2=A0</span><span lang=3D"=
EN-US"><u></u><u></u></span></p>
</div>
<div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 ro=
uting-instance</span><span lang=3D"EN-US"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 | =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |</span><span lang=3D"EN-US"><u><=
/u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 | =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |</span><span lang=3D"EN-US"><u><=
/u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 0..N =C2=A0| =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 | 1..N</span><span lang=3D"EN-US"><u></u><u=
></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 | =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |</span><span lang=3D"EN-US"><u><=
/u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 interface(s) =C2=
=A0 =C2=A0 RIB(s)</span><span lang=3D"EN-US"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |</span><span lang=3D"EN-U=
S"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |</span><span lang=3D"EN-U=
S"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 | 0..N</span><span lang=3D=
"EN-US"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |</span><span lang=3D"EN-U=
S"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 route(s)</span><span lang=3D"EN-U=
S"><u></u><u></u></span></p>
</div>
<div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 | | |</span><span lang=3D"EN-US">=
<u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 +---------+ | +----------+</span><span lang=3D"EN-US"><u></u><u></u>=
</span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 | =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 | =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0|</span><span lang=3D"EN-US"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A00..N | =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 | =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0=
|</span><span lang=3D"EN-US"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">route-attribute =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
match =C2=A0 =C2=A0 =C2=A0 =C2=A0 nexthop</span><span lang=3D"EN-US"><u></u=
><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |</span><span lang=3D"EN-U=
S"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0...</span><span lang=3D"EN-=
US"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0</span><span lang=3D"EN-US"><u></u><u></u></span></p>
</div>
</div>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Verdana&quot;,&quot;sans-serif&quot;">Our questions are:</span>=
<span lang=3D"EN-US"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Verdana&quot;,&quot;sans-serif&quot;">- How can we add a Nextho=
p without informing the parent Route?</span><span lang=3D"EN-US"><u></u><u>=
</u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Verdana&quot;,&quot;sans-serif&quot;">- Looking at the RIB gram=
mar (draft-ietf-i2rs-rib-info-model-08#section-6) the Nexthop is also attac=
hed
 to a Route. Shouldn&#39;t Nexthop be part of RIB? Maybe something like:</s=
pan><span lang=3D"EN-US"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Arial&quot;,&quot;sans-serif&quot;">=C2=A0</span><span lang=3D"=
EN-US"><u></u><u></u></span></p>
</div>
<div>
<div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 &lt;rib&gt; ::=3D &lt;RIB_NAME&gt; &l=
t;rib-family&gt;</span><span lang=3D"EN-US"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 [&lt;route&gt; ... ]</span><span lang=3D=
"EN-US"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 [&lt;nexthop&gt; ...]</span><span lang=
=3D"EN-US"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 [ENABLE_IP_RPF_CHECK]</span><span lang=
=3D"EN-US"><u></u><u></u></span></p>
</div>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Arial&quot;,&quot;sans-serif&quot;">=C2=A0</span><span lang=3D"=
EN-US"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 ro=
uting-instance</span><span lang=3D"EN-US"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 | =
=C2=A0 =C2=A0 =C2=A0| =C2=A0 =C2=A0 =C2=A0</span><span lang=3D"EN-US"><u></=
u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 | =
=C2=A0 =C2=A0 =C2=A0| =C2=A0 =C2=A0 =C2=A0</span><span lang=3D"EN-US"><u></=
u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 0..N =C2=A0| =C2=A0 =C2=
=A0 =C2=A0|=C2=A01..N=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0=C2=A0</span><span lang=3D"EN-US"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 | =
=C2=A0 =C2=A0 =C2=A0|=C2=A0=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0=C2=A0<=
/span><span lang=3D"EN-US"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 interface(s) =C2=A0RIB(s) =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0</span><span lang=3D"EN-US"><u=
></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0| =C2=A0|=C2=A00..N=C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0</span><span lang=3D"EN-US"><u></u><u></u></span=
></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0| =C2=A0+--------------+</span><span lang=3D"EN-=
US"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0=C2=A00..N=C2=A0| =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0=C2=A0|</span><span lang=3D"EN-US"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0| =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0=C2=A0|</span><span lang=3D"EN-US"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0route(s) ------&gt;=C2=A0nexthop(s)</span><span lang=3D=
"EN-US"><u></u><u></u></span></p>
</div>
<div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0| | =C2=A0 =C2=A0 =C2=A0 1..N</span><span lang=3D"EN-US=
"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0+---------+ |=C2=
=A0</span><span lang=3D"EN-US"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0| =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 |=C2=A0</span><span lang=3D"EN-US"><u></u><u></u></spa=
n></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 0..N | =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 |=C2=A0</span><span lang=3D"EN-US"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">route-attribute =C2=A0match=C2=A0</span><spa=
n lang=3D"EN-US"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0|</span><span lang=3D"EN-US"><u></u><u></u></spa=
n></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Courier New&quot;">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 ...</span><span lang=3D"EN-US"><u></u><u></u></span></=
p>
</div>
</div>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Verdana&quot;,&quot;sans-serif&quot;">=C2=A0=C2=A0</span><span =
lang=3D"EN-US"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Verdana&quot;,&quot;sans-serif&quot;">If we misunderstood the m=
odel, could someone please explain why our understanding is incorrect?</spa=
n><span lang=3D"EN-US"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Arial&quot;,&quot;sans-serif&quot;">=C2=A0</span><span lang=3D"=
EN-US"><u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:9.5pt;font-f=
amily:&quot;Verdana&quot;,&quot;sans-serif&quot;">Best Regards,</span><span=
 lang=3D"EN-US"><u></u><u></u></span></p>
</div>
</div>
<p class=3D"MsoNormal"><span lang=3D"EN-US"><br clear=3D"all">
<u></u><u></u></span></p>
<div>
<div>
<div>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-family:&quot;Verd=
ana&quot;,&quot;sans-serif&quot;">Edwin Cordeiro</span><span lang=3D"EN-US"=
><u></u><u></u></span></p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<p class=3D"MsoNormal"><span lang=3D"EN-US"><u></u>=C2=A0<u></u></span></p>
</div>
</div></div></div>
</div>
</div>

</blockquote></div><br></div>

--089e01175e81d4f47605363df1f5--


From nobody Mon Jun 27 01:38:34 2016
Return-Path: <mach.chen@huawei.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 8621512B050 for <i2rs@ietfa.amsl.com>; Mon, 27 Jun 2016 01:38:33 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.646
X-Spam-Level: 
X-Spam-Status: No, score=-5.646 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-1.426, SPF_PASS=-0.001] autolearn=ham autolearn_force=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 IMIIizfnnGsS for <i2rs@ietfa.amsl.com>; Mon, 27 Jun 2016 01:38:30 -0700 (PDT)
Received: from lhrrgout.huawei.com (lhrrgout.huawei.com [194.213.3.17]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 858A512B014 for <i2rs@ietf.org>; Mon, 27 Jun 2016 01:38:29 -0700 (PDT)
Received: from 172.18.7.190 (EHLO lhreml703-cah.china.huawei.com) ([172.18.7.190]) by lhrrg01-dlp.huawei.com (MOS 4.3.7-GA FastPath queued) with ESMTP id CRO46776; Mon, 27 Jun 2016 08:38:26 +0000 (GMT)
Received: from SZXEMA417-HUB.china.huawei.com (10.82.72.34) by lhreml703-cah.china.huawei.com (10.201.5.104) with Microsoft SMTP Server (TLS) id 14.3.235.1; Mon, 27 Jun 2016 09:38:25 +0100
Received: from SZXEMA510-MBX.china.huawei.com ([169.254.3.42]) by SZXEMA417-HUB.china.huawei.com ([10.82.72.34]) with mapi id 14.03.0235.001; Mon, 27 Jun 2016 16:38:19 +0800
From: Mach Chen <mach.chen@huawei.com>
To: Edwin Cordeiro <edwinsc@gmail.com>
Thread-Topic: [i2rs] Problem using rib-data-model RPC with rib-info-model Information (draft-ietf-i2rs-rib-data-model-05 + draft-ietf-i2rs-rib-info-model-08)
Thread-Index: AQHRzFpn2C0gJVAqEEO0WgKgn0ozkp/31qRQgAFvz4CAA1NscP//27sAgACKo3A=
Date: Mon, 27 Jun 2016 08:38:19 +0000
Message-ID: <F73A3CB31E8BE34FA1BBE3C8F0CB2AE28CC876C4@SZXEMA510-MBX.china.huawei.com>
References: <CAERpkxAbLVf5OkGPOkixGh9xi3qMutqp1puJzTbZzvn+VhOhqg@mail.gmail.com> <F73A3CB31E8BE34FA1BBE3C8F0CB2AE28CC869E0@SZXEMA510-MBX.china.huawei.com> <CAERpkxBM+UgN-Y2nq=xQ1qRxUVtS0F0QrZDj9WNy9FWyf6TWbA@mail.gmail.com> <F73A3CB31E8BE34FA1BBE3C8F0CB2AE28CC874DA@SZXEMA510-MBX.china.huawei.com> <CAERpkxD_LA1qQXqaVgFkG18CPoBVYLwU1u8Wak8nSoh7BQBTYQ@mail.gmail.com>
In-Reply-To: <CAERpkxD_LA1qQXqaVgFkG18CPoBVYLwU1u8Wak8nSoh7BQBTYQ@mail.gmail.com>
Accept-Language: en-US, zh-CN
Content-Language: zh-CN
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-originating-ip: [10.111.102.135]
Content-Type: multipart/alternative; boundary="_000_F73A3CB31E8BE34FA1BBE3C8F0CB2AE28CC876C4SZXEMA510MBXchi_"
MIME-Version: 1.0
X-CFilter-Loop: Reflected
X-Mirapoint-Virus-RAPID-Raw: score=unknown(0), refid=str=0001.0A020204.5770E603.00B9, ss=1, re=0.000, recu=0.000, reip=0.000,  cl=1, cld=1, fgs=0, ip=169.254.3.42, so=2013-06-18 04:22:30, dmn=2013-03-21 17:37:32
X-Mirapoint-Loop-Id: 85887bbc74ddfac191c856d165953bcf
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/ozfOU2xWDuun6fdOvSDk6eeafQo>
Cc: i2rs <i2rs@ietf.org>
Subject: Re: [i2rs] Problem using rib-data-model RPC with rib-info-model Information (draft-ietf-i2rs-rib-data-model-05 + draft-ietf-i2rs-rib-info-model-08)
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Mon, 27 Jun 2016 08:38:33 -0000

--_000_F73A3CB31E8BE34FA1BBE3C8F0CB2AE28CC876C4SZXEMA510MBXchi_
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64

SGkgRWR3aW4sDQoNCk9LLCB0aGFua3MgZm9yIHRoZSBjbGFyaWZpY2F0aW9uIQ0KDQpXZSB3aWxs
IGFkZCBhIG5leHRob3AgbGlzdCB1bmRlciB0aGUgcmliIG5vZGUgaW4gdGhlIG5leHQgcmV2aXNp
b24uICBUaGVuIHdpdGggdGhlIG5oLWFkZC9kZWxldGUgLCByb3V0ZS1hZGQvZGVsZXRlLCBhbmQg
cm91dGUtdXBkYXRlIFJQQ3MsIGFuIGltcGxlbWVudGF0aW9uIGNhbiBmbGV4aWJseSBvcGVyYXRl
IHRoZSByb3V0ZSBhbmQgbmV4dGhvcC4NCg0KSG9wZSB0aGlzIGFkZHJlc3NlcyB5b3VyIGNvbmNl
cm4uDQoNCkJlc3QgcmVnYXJkcywNCk1hY2gNCg0KRnJvbTogRWR3aW4gQ29yZGVpcm8gW21haWx0
bzplZHdpbnNjQGdtYWlsLmNvbV0NClNlbnQ6IE1vbmRheSwgSnVuZSAyNywgMjAxNiA0OjAyIFBN
DQpUbzogTWFjaCBDaGVuDQpDYzogaTJycw0KU3ViamVjdDogUmU6IFtpMnJzXSBQcm9ibGVtIHVz
aW5nIHJpYi1kYXRhLW1vZGVsIFJQQyB3aXRoIHJpYi1pbmZvLW1vZGVsIEluZm9ybWF0aW9uIChk
cmFmdC1pZXRmLWkycnMtcmliLWRhdGEtbW9kZWwtMDUgKyBkcmFmdC1pZXRmLWkycnMtcmliLWlu
Zm8tbW9kZWwtMDgpDQoNCkhpIE1hY2gsDQoNCkkgbWVhbiB0aGUgUklCIHNob3VsZCBoYXZlIGEg
Z3JvdXAgb2YgYSBuZXh0aG9wcyBhbmQgYSBncm91cCBvZiByb3V0ZXMgYW5kIHdoaWxlIHRoZSBk
cmFmdCBzdGF0ZWQgbmV4dGhvcCBhcyBwYXJ0IG9mIHRoZSByb3V0ZS4NCg0KSSBteSB1bmRlcnN0
YW5kaW5nIGVhY2ggcm91dGUgd291bGQgaW5kaWNhdGUgd2hpY2ggb2YgdGhlIGV4aXN0aW5nIG5l
eHRob3BzIGl0IHVzZXMsIGFsbG93aW5nIGEgbmV4dGhvcCB0byBiZSBzaGFyZWQgYnkgbXVsdGlw
bGUgcm91dGVzIHdpdGhvdXQgaGF2aW5nIG11bHRpcGxlIGNvcGllcyBvZiB0aGUgc2FtZSBuZXh0
IGhvcC4NCg0KSSBkb24ndCB0aGluayBteSBzdGF0ZW1lbnQgY29udHJhZGljdHMgeW91ciB1bmRl
cnN0YW5kLg0KDQpCZXN0IFJlZ2FyZHMsDQoNCg0KRWR3aW4gQ29yZGVpcm8NCg0KT24gTW9uLCBK
dW4gMjcsIDIwMTYgYXQgNDoyMiBBTSwgTWFjaCBDaGVuIDxtYWNoLmNoZW5AaHVhd2VpLmNvbTxt
YWlsdG86bWFjaC5jaGVuQGh1YXdlaS5jb20+PiB3cm90ZToNCkhpIEVkd2luLA0KDQpDb3VsZCB5
b3UgZWxhYm9yYXRlIG1vcmUgYWJvdXQgdGhlIG1lYW4gb2Yg4oCcbmV4dGhvcHMgc2hvdWxkIGJl
IGhhbmRsZWQgc2VwYXJhdGVkIHRvIHJvdXRlc+KAnSA/DQoNCkluIG15IHVuZGVyc3RhbmRpbmcs
IHRoZSBuZXh0aG9wLWFkZC9kZWxldGUgUlBDIHMgYXJlIGRlc2lnbmVkIHRvIG9wZXJhdGUgdGhl
IG5leHRob3Agc2VwYXJhdGVseS4gIE9mIGNhdXNlLCBhIG5leHRob3AgbGlzdCBub2RlIHNob3Vs
ZCBiZSBhZGRlZCB0byB0aGUgcmliLCBoZW5jZSB0byBtYWludGFpbiB0aGUgYWRkZWQgbmV4dGhv
cHMuDQoNCkJlc3QgcmVnYXJkcywNCk1hY2gNCg0KRnJvbTogRWR3aW4gQ29yZGVpcm8gW21haWx0
bzplZHdpbnNjQGdtYWlsLmNvbTxtYWlsdG86ZWR3aW5zY0BnbWFpbC5jb20+XQ0KU2VudDogU2F0
dXJkYXksIEp1bmUgMjUsIDIwMTYgMzoyNSBQTQ0KVG86IE1hY2ggQ2hlbg0KQ2M6IGkycnMNClN1
YmplY3Q6IFJlOiBbaTJyc10gUHJvYmxlbSB1c2luZyByaWItZGF0YS1tb2RlbCBSUEMgd2l0aCBy
aWItaW5mby1tb2RlbCBJbmZvcm1hdGlvbiAoZHJhZnQtaWV0Zi1pMnJzLXJpYi1kYXRhLW1vZGVs
LTA1ICsgZHJhZnQtaWV0Zi1pMnJzLXJpYi1pbmZvLW1vZGVsLTA4KQ0KDQpIaSBNYWNoLA0KDQpU
aGFua3MgZm9yIHRoZSBleHBsYW5hdGlvbi4gV2UgdGhvdWdodCB0aGF0IG5leHRob3BzIHNob3Vs
ZCBiZSBoYW5kbGVkIHNlcGFyYXRlZCB0byByb3V0ZXMsIGJ1dCB0aGF0IHdhc24ndCByZWZsZWN0
ZWQgaW4gdGhlIGRyYWZ0Lg0KDQpCZXN0IFJlZ2FyZHMsDQoNCg0KRWR3aW4gQ29yZGVpcm8NCg0K
T24gRnJpLCBKdW4gMjQsIDIwMTYgYXQgNTowOCBBTSwgTWFjaCBDaGVuIDxtYWNoLmNoZW5AaHVh
d2VpLmNvbTxtYWlsdG86bWFjaC5jaGVuQGh1YXdlaS5jb20+PiB3cm90ZToNCkhpIEVkd2luLA0K
DQpUaGFua3MgZm9yIHlvdXIgZ3JlYXQgcXVlc3Rpb24hDQoNCkkgdGhpbmsgdGhpcyBpcyBhIGJ1
ZyBvZiB0aGUgY3VycmVudCBtb2RlbCwgdGhlcmUgc2hvdWxkIGJlIGEgbGlzdCBpbiBhIHJpYiB0
byBtYWludGFpbiB0aGUgbmV4dGhvcHMgb2YgdGhlIHJpYi4NCg0KUmVnYXJkaW5nIHlvdXIgcXVl
c3Rpb246IOKAnEhvdyBjYW4gd2UgYWRkIGEgTmV4dGhvcCB3aXRob3V0IGluZm9ybWluZyB0aGUg
cGFyZW50IFJvdXRlP+KAnSBZZXMsIGEgbmV4dGhvcCBjYW4gYmUgY3JlYXRlZCB3aXRob3V0IGlu
Zm9ybWluZyB0aGUgcGFyZW50IHJvdXRlcy4gSW4gdGhlIGN1cnJlbnQgZGVzaWduLCB0aGUgbmV4
dGhvcCBpcyBkZWNvdXBsZWQgZnJvbSB0aGUgcm91dGVzLiBBIG5leHRob3AgY2FuIGJlIHNoYXJl
ZCBieSBtdWx0aXBsZSByb3V0ZXMgb3IgaXMgZGVkaWNhdGVkIHRvIGEgc2luZ2xlIHJvdXRlLg0K
DQpCZXN0IHJlZ2FyZHMsDQpNYWNoDQoNCkZyb206IGkycnMgW21haWx0bzppMnJzLWJvdW5jZXNA
aWV0Zi5vcmc8bWFpbHRvOmkycnMtYm91bmNlc0BpZXRmLm9yZz5dIE9uIEJlaGFsZiBPZiBFZHdp
biBDb3JkZWlybw0KU2VudDogV2VkbmVzZGF5LCBKdW5lIDIyLCAyMDE2IDM6NDQgUE0NClRvOiBp
MnJzDQpTdWJqZWN0OiBbaTJyc10gUHJvYmxlbSB1c2luZyByaWItZGF0YS1tb2RlbCBSUEMgd2l0
aCByaWItaW5mby1tb2RlbCBJbmZvcm1hdGlvbiAoZHJhZnQtaWV0Zi1pMnJzLXJpYi1kYXRhLW1v
ZGVsLTA1ICsgZHJhZnQtaWV0Zi1pMnJzLXJpYi1pbmZvLW1vZGVsLTA4KQ0KDQpIZWxsbyBhbGws
DQoNCldoZW4gdHJ5aW5nIHRvIGltcGxlbWVudCBJMlJTIHdlIGFyZSBmYWNlZCB0aGUgZm9sbG93
aW5nIHByb2JsZW06DQoNCkluIGRyYWZ0LWlldGYtaTJycy1yaWItZGF0YS1tb2RlbC0wNSNzZWN0
aW9uLTIuNSB0aGUgUlBDIG9mZmVyIHRoZSBmb2xsb3dpbmcgTmV4dGhvcCBvcGVyYXRpb25zOg0K
ICAgICAgKy0tLXggbmgtYWRkDQogICAgICB8ICArLS0tdyBpbnB1dA0KICAgICAgfCAgfCAgKy0t
LXcgcmliLW5hbWUgICAgICAgICAgICAgIHN0cmluZw0KICAgICAgfCAgfCAgKy0tLXcgbmV4dGhv
cC1pZD8gICAgICAgICAgIHVpbnQzMg0KICAgICAgfCAgfCAgKy0tLXcgc2hhcmluZy1mbGFnPyAg
ICAgICAgIGJvb2xlYW4NCiAgICAgIHwgIHwgICstLS13IChuZXh0aG9wLXR5cGUpPw0KICAgICAg
fCAgfCAgICAgLi4uDQogICAgICB8ICArLS1ybyBvdXRwdXQNCiAgICAgIHwgICAgICstLXJvIHJl
c3VsdCAgICAgICAgdWludDMyDQogICAgICB8ICAgICArLS1ybyByZWFzb24/ICAgICAgIHN0cmlu
Zw0KICAgICAgfCAgICAgKy0tcm8gbmV4dGhvcC1pZD8gICB1aW50MzINCiAgICAgICstLS14IG5o
LWRlbGV0ZQ0KICAgICAgICAgKy0tLXcgaW5wdXQNCiAgICAgICAgIHwgICstLS13IHJpYi1uYW1l
ICAgICAgICAgICAgICBzdHJpbmcNCiAgICAgICAgIHwgICstLS13IG5leHRob3AtaWQ/ICAgICAg
ICAgICB1aW50MzINCiAgICAgICAgIHwgICstLS13IHNoYXJpbmctZmxhZz8gICAgICAgICBib29s
ZWFuDQogICAgICAgICB8ICArLS0tdyAobmV4dGhvcC10eXBlKT8NCiAgICAgICAgIHwgICAgIC4u
Lg0KICAgICAgICAgKy0tcm8gb3V0cHV0DQogICAgICAgICAgICArLS1ybyByZXN1bHQgdWludDMy
DQogICAgICAgICAgICArLS1ybyByZWFzb24/IHN0cmluZw0KDQpJbiB0aGVzZSBvcGVyYXRpb25z
IHRoZSBOZXh0aG9wIGlzIGRpcmVjdGx5IGNvbm5lY3RlZCB0byBhIFJJQiwgYnV0IGluIGRyYWZ0
LWlldGYtaTJycy1yaWItaW5mby1tb2RlbC0wOCNzZWN0aW9uLTI6IFJJQihzKSBjb250YWlucyBS
b3V0ZShzKSBhbmQgUm91dGUocykgY29udGFpbnMgTmV4dGhvcChzKToNCg0KICAgICAgICAgICAg
cm91dGluZy1pbnN0YW5jZQ0KICAgICAgICAgICAgfCAgICAgICAgICAgICB8DQogICAgICAgICAg
ICB8ICAgICAgICAgICAgIHwNCiAgICAgIDAuLk4gIHwgICAgICAgICAgICAgfCAxLi5ODQogICAg
ICAgICAgICB8ICAgICAgICAgICAgIHwNCiAgICAgICAgaW50ZXJmYWNlKHMpICAgICBSSUIocykN
CiAgICAgICAgICAgICAgICAgICAgICAgICAgfA0KICAgICAgICAgICAgICAgICAgICAgICAgICB8
DQogICAgICAgICAgICAgICAgICAgICAgICAgIHwgMC4uTg0KICAgICAgICAgICAgICAgICAgICAg
ICAgICB8DQogICAgICAgICAgICAgICAgICAgICAgICByb3V0ZShzKQ0KICAgICAgICAgICAgICAg
ICAgICAgICAgfCB8IHwNCiAgICAgICAgICAgICAgKy0tLS0tLS0tLSsgfCArLS0tLS0tLS0tLSsN
CiAgICAgICAgICAgICAgfCAgICAgICAgICAgfCAgICAgICAgICAgIHwNCiAgICAgICAgIDAuLk4g
fCAgICAgICAgICAgfCAgICAgICAgICAgIHwNCnJvdXRlLWF0dHJpYnV0ZSAgICAgICAgIG1hdGNo
ICAgICAgICAgbmV4dGhvcA0KICAgICAgICAgICAgICAgICAgICAgICAgICB8DQogICAgICAgICAg
ICAgICAgICAgICAgICAgLi4uDQoNCk91ciBxdWVzdGlvbnMgYXJlOg0KLSBIb3cgY2FuIHdlIGFk
ZCBhIE5leHRob3Agd2l0aG91dCBpbmZvcm1pbmcgdGhlIHBhcmVudCBSb3V0ZT8NCi0gTG9va2lu
ZyBhdCB0aGUgUklCIGdyYW1tYXIgKGRyYWZ0LWlldGYtaTJycy1yaWItaW5mby1tb2RlbC0wOCNz
ZWN0aW9uLTYpIHRoZSBOZXh0aG9wIGlzIGFsc28gYXR0YWNoZWQgdG8gYSBSb3V0ZS4gU2hvdWxk
bid0IE5leHRob3AgYmUgcGFydCBvZiBSSUI/IE1heWJlIHNvbWV0aGluZyBsaWtlOg0KDQogIDxy
aWI+IDo6PSA8UklCX05BTUU+IDxyaWItZmFtaWx5Pg0KICAgICAgICAgICAgICAgICAgICAgIFs8
cm91dGU+IC4uLiBdDQogICAgICAgICAgICAgICAgICAgICAgWzxuZXh0aG9wPiAuLi5dDQogICAg
ICAgICAgICAgICAgICAgICAgW0VOQUJMRV9JUF9SUEZfQ0hFQ0tdDQoNCiAgICAgICAgICAgIHJv
dXRpbmctaW5zdGFuY2UNCiAgICAgICAgICAgIHwgICAgICB8DQogICAgICAgICAgICB8ICAgICAg
fA0KICAgICAgMC4uTiAgfCAgICAgIHwgMS4uTg0KICAgICAgICAgICAgfCAgICAgIHwNCiAgICBp
bnRlcmZhY2UocykgIFJJQihzKQ0KICAgICAgICAgICAgICAgICAgIHwgIHwgMC4uTg0KICAgICAg
ICAgICAgICAgICAgIHwgICstLS0tLS0tLS0tLS0tLSsNCiAgICAgICAgICAgICAgMC4uTiB8ICAg
ICAgICAgICAgICAgICB8DQogICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgfA0K
ICAgICAgICAgICAgICAgICByb3V0ZShzKSAtLS0tLS0+IG5leHRob3AocykNCiAgICAgICAgICAg
ICAgICAgfCB8ICAgICAgIDEuLk4NCiAgICAgICArLS0tLS0tLS0tKyB8DQogICAgICAgfCAgICAg
ICAgICAgfA0KICAwLi5OIHwgICAgICAgICAgIHwNCnJvdXRlLWF0dHJpYnV0ZSAgbWF0Y2gNCiAg
ICAgICAgICAgICAgICAgICB8DQogICAgICAgICAgICAgICAgICAuLi4NCg0KSWYgd2UgbWlzdW5k
ZXJzdG9vZCB0aGUgbW9kZWwsIGNvdWxkIHNvbWVvbmUgcGxlYXNlIGV4cGxhaW4gd2h5IG91ciB1
bmRlcnN0YW5kaW5nIGlzIGluY29ycmVjdD8NCg0KQmVzdCBSZWdhcmRzLA0KDQpFZHdpbiBDb3Jk
ZWlybw0KDQoNCg==

--_000_F73A3CB31E8BE34FA1BBE3C8F0CB2AE28CC876C4SZXEMA510MBXchi_
Content-Type: text/html; charset="utf-8"
Content-Transfer-Encoding: base64

PGh0bWwgeG1sbnM6dj0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTp2bWwiIHhtbG5zOm89InVy
bjpzY2hlbWFzLW1pY3Jvc29mdC1jb206b2ZmaWNlOm9mZmljZSIgeG1sbnM6dz0idXJuOnNjaGVt
YXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6d29yZCIgeG1sbnM6bT0iaHR0cDovL3NjaGVtYXMubWlj
cm9zb2Z0LmNvbS9vZmZpY2UvMjAwNC8xMi9vbW1sIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
VFIvUkVDLWh0bWw0MCI+DQo8aGVhZD4NCjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIg
Y29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4NCjxtZXRhIG5hbWU9IkdlbmVyYXRv
ciIgY29udGVudD0iTWljcm9zb2Z0IFdvcmQgMTIgKGZpbHRlcmVkIG1lZGl1bSkiPg0KPHN0eWxl
PjwhLS0NCi8qIEZvbnQgRGVmaW5pdGlvbnMgKi8NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6
5a6L5L2TOw0KCXBhbm9zZS0xOjIgMSA2IDAgMyAxIDEgMSAxIDE7fQ0KQGZvbnQtZmFjZQ0KCXtm
b250LWZhbWlseToiQ2FtYnJpYSBNYXRoIjsNCglwYW5vc2UtMToyIDQgNSAzIDUgNCA2IDMgMiA0
O30NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6Q2FsaWJyaTsNCglwYW5vc2UtMToyIDE1IDUg
MiAyIDIgNCAzIDIgNDt9DQpAZm9udC1mYWNlDQoJe2ZvbnQtZmFtaWx5OiJcQOWui+S9kyI7DQoJ
cGFub3NlLTE6MiAxIDYgMCAzIDEgMSAxIDEgMTt9DQpAZm9udC1mYWNlDQoJe2ZvbnQtZmFtaWx5
OlRhaG9tYTsNCglwYW5vc2UtMToyIDExIDYgNCAzIDUgNCA0IDIgNDt9DQpAZm9udC1mYWNlDQoJ
e2ZvbnQtZmFtaWx5OlZlcmRhbmE7DQoJcGFub3NlLTE6MiAxMSA2IDQgMyA1IDQgNCAyIDQ7fQ0K
LyogU3R5bGUgRGVmaW5pdGlvbnMgKi8NCnAuTXNvTm9ybWFsLCBsaS5Nc29Ob3JtYWwsIGRpdi5N
c29Ob3JtYWwNCgl7bWFyZ2luOjBjbTsNCgltYXJnaW4tYm90dG9tOi4wMDAxcHQ7DQoJZm9udC1z
aXplOjEyLjBwdDsNCglmb250LWZhbWlseTrlrovkvZM7fQ0KYTpsaW5rLCBzcGFuLk1zb0h5cGVy
bGluaw0KCXttc28tc3R5bGUtcHJpb3JpdHk6OTk7DQoJY29sb3I6Ymx1ZTsNCgl0ZXh0LWRlY29y
YXRpb246dW5kZXJsaW5lO30NCmE6dmlzaXRlZCwgc3Bhbi5Nc29IeXBlcmxpbmtGb2xsb3dlZA0K
CXttc28tc3R5bGUtcHJpb3JpdHk6OTk7DQoJY29sb3I6cHVycGxlOw0KCXRleHQtZGVjb3JhdGlv
bjp1bmRlcmxpbmU7fQ0KcC5Nc29BY2V0YXRlLCBsaS5Nc29BY2V0YXRlLCBkaXYuTXNvQWNldGF0
ZQ0KCXttc28tc3R5bGUtcHJpb3JpdHk6OTk7DQoJbXNvLXN0eWxlLWxpbms6IuaJueazqOahhuaW
h+acrCBDaGFyIjsNCgltYXJnaW46MGNtOw0KCW1hcmdpbi1ib3R0b206LjAwMDFwdDsNCglmb250
LXNpemU6OS4wcHQ7DQoJZm9udC1mYW1pbHk65a6L5L2TO30NCnNwYW4uQ2hhcg0KCXttc28tc3R5
bGUtbmFtZToi5om55rOo5qGG5paH5pysIENoYXIiOw0KCW1zby1zdHlsZS1wcmlvcml0eTo5OTsN
Cgltc28tc3R5bGUtbGluazrmibnms6jmoYbmlofmnKw7DQoJZm9udC1mYW1pbHk65a6L5L2TO30N
CnNwYW4uRW1haWxTdHlsZTE5DQoJe21zby1zdHlsZS10eXBlOnBlcnNvbmFsLXJlcGx5Ow0KCWZv
bnQtZmFtaWx5OiJDYWxpYnJpIiwic2Fucy1zZXJpZiI7DQoJY29sb3I6IzFGNDk3RDt9DQouTXNv
Q2hwRGVmYXVsdA0KCXttc28tc3R5bGUtdHlwZTpleHBvcnQtb25seTt9DQpAcGFnZSBXb3JkU2Vj
dGlvbjENCgl7c2l6ZTo2MTIuMHB0IDc5Mi4wcHQ7DQoJbWFyZ2luOjcyLjBwdCA5MC4wcHQgNzIu
MHB0IDkwLjBwdDt9DQpkaXYuV29yZFNlY3Rpb24xDQoJe3BhZ2U6V29yZFNlY3Rpb24xO30NCi0t
Pjwvc3R5bGU+PCEtLVtpZiBndGUgbXNvIDldPjx4bWw+DQo8bzpzaGFwZWRlZmF1bHRzIHY6ZXh0
PSJlZGl0IiBzcGlkbWF4PSIxMDI2IiAvPg0KPC94bWw+PCFbZW5kaWZdLS0+PCEtLVtpZiBndGUg
bXNvIDldPjx4bWw+DQo8bzpzaGFwZWxheW91dCB2OmV4dD0iZWRpdCI+DQo8bzppZG1hcCB2OmV4
dD0iZWRpdCIgZGF0YT0iMSIgLz4NCjwvbzpzaGFwZWxheW91dD48L3htbD48IVtlbmRpZl0tLT4N
CjwvaGVhZD4NCjxib2R5IGxhbmc9IlpILUNOIiBsaW5rPSJibHVlIiB2bGluaz0icHVycGxlIj4N
CjxkaXYgY2xhc3M9IldvcmRTZWN0aW9uMSI+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBs
YW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZToxMC41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2Fs
aWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPkhpIEVkd2lu
LDxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIGxhbmc9
IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjEwLjVwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJp
JnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+PG86cD4mbmJzcDs8
L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gbGFuZz0iRU4tVVMi
IHN0eWxlPSJmb250LXNpemU6MTAuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDss
JnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj5PSywgdGhhbmtzIGZvciB0aGUg
Y2xhcmlmaWNhdGlvbiE8bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFs
Ij48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZToxMC41cHQ7Zm9udC1mYW1pbHk6
JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0Qi
PjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFu
IGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjEwLjVwdDtmb250LWZhbWlseTomcXVvdDtD
YWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+V2Ugd2ls
bCBhZGQgYSBuZXh0aG9wIGxpc3QgdW5kZXIgdGhlIHJpYiBub2RlIGluIHRoZSBuZXh0IHJldmlz
aW9uLiAmbmJzcDtUaGVuIHdpdGggdGhlIG5oLWFkZC9kZWxldGUgLCByb3V0ZS1hZGQvZGVsZXRl
LCBhbmQgcm91dGUtdXBkYXRlIFJQQ3MsIGFuDQogaW1wbGVtZW50YXRpb24gY2FuIGZsZXhpYmx5
IG9wZXJhdGUgdGhlIHJvdXRlIGFuZCBuZXh0aG9wLiA8bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8
cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTox
MC41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1
b3Q7O2NvbG9yOiMxRjQ5N0QiPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNz
PSJNc29Ob3JtYWwiPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjEwLjVwdDtm
b250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29s
b3I6IzFGNDk3RCI+SG9wZSB0aGlzIGFkZHJlc3NlcyB5b3VyIGNvbmNlcm4uPG86cD48L286cD48
L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxl
PSJmb250LXNpemU6MTAuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7
c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48
L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQt
c2l6ZToxMC41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNl
cmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPkJlc3QgcmVnYXJkcyw8bzpwPjwvbzpwPjwvc3Bhbj48
L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQt
c2l6ZToxMC41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNl
cmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPk1hY2g8bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBj
bGFzcz0iTXNvTm9ybWFsIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZToxMC41
cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7
O2NvbG9yOiMxRjQ5N0QiPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4NCjxkaXYgc3R5bGU9
ImJvcmRlcjpub25lO2JvcmRlci1sZWZ0OnNvbGlkIGJsdWUgMS41cHQ7cGFkZGluZzowY20gMGNt
IDBjbSA0LjBwdCI+DQo8ZGl2Pg0KPGRpdiBzdHlsZT0iYm9yZGVyOm5vbmU7Ym9yZGVyLXRvcDpz
b2xpZCAjQjVDNERGIDEuMHB0O3BhZGRpbmc6My4wcHQgMGNtIDBjbSAwY20iPg0KPHAgY2xhc3M9
Ik1zb05vcm1hbCI+PGI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6MTAuMHB0
O2ZvbnQtZmFtaWx5OiZxdW90O1RhaG9tYSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7Ij5G
cm9tOjwvc3Bhbj48L2I+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6MTAuMHB0
O2ZvbnQtZmFtaWx5OiZxdW90O1RhaG9tYSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7Ij4g
RWR3aW4gQ29yZGVpcm8gW21haWx0bzplZHdpbnNjQGdtYWlsLmNvbV0NCjxicj4NCjxiPlNlbnQ6
PC9iPiBNb25kYXksIEp1bmUgMjcsIDIwMTYgNDowMiBQTTxicj4NCjxiPlRvOjwvYj4gTWFjaCBD
aGVuPGJyPg0KPGI+Q2M6PC9iPiBpMnJzPGJyPg0KPGI+U3ViamVjdDo8L2I+IFJlOiBbaTJyc10g
UHJvYmxlbSB1c2luZyByaWItZGF0YS1tb2RlbCBSUEMgd2l0aCByaWItaW5mby1tb2RlbCBJbmZv
cm1hdGlvbiAoZHJhZnQtaWV0Zi1pMnJzLXJpYi1kYXRhLW1vZGVsLTA1ICYjNDM7IGRyYWZ0LWll
dGYtaTJycy1yaWItaW5mby1tb2RlbC0wOCk8bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4N
CjwvZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+Jm5i
c3A7PC9vOnA+PC9zcGFuPjwvcD4NCjxkaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+
PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LWZhbWlseTomcXVvdDtWZXJkYW5hJnF1b3Q7
LCZxdW90O3NhbnMtc2VyaWYmcXVvdDsiPkhpIE1hY2gsPG86cD48L286cD48L3NwYW4+PC9wPg0K
PC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0
eWxlPSJmb250LWZhbWlseTomcXVvdDtWZXJkYW5hJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVv
dDsiPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNz
PSJNc29Ob3JtYWwiPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1mYW1pbHk6JnF1b3Q7
VmVyZGFuYSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7Ij5JIG1lYW4gdGhlIFJJQiBzaG91
bGQgaGF2ZSBhIGdyb3VwIG9mIGEgbmV4dGhvcHMgYW5kIGEgZ3JvdXAgb2Ygcm91dGVzIGFuZCB3
aGlsZSB0aGUgZHJhZnQgc3RhdGVkIG5leHRob3AgYXMgcGFydCBvZiB0aGUgcm91dGUuJm5ic3A7
PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1h
bCI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LWZhbWlseTomcXVvdDtWZXJkYW5hJnF1
b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDsiPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4N
CjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIGxhbmc9IkVOLVVTIiBz
dHlsZT0iZm9udC1mYW1pbHk6JnF1b3Q7VmVyZGFuYSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1
b3Q7Ij5JIG15IHVuZGVyc3RhbmRpbmcgZWFjaCByb3V0ZSB3b3VsZCBpbmRpY2F0ZSB3aGljaCBv
ZiB0aGUgZXhpc3RpbmcgbmV4dGhvcHMgaXQgdXNlcywgYWxsb3dpbmcgYSBuZXh0aG9wIHRvIGJl
IHNoYXJlZCBieSBtdWx0aXBsZSByb3V0ZXMgd2l0aG91dCBoYXZpbmcgbXVsdGlwbGUgY29waWVz
IG9mIHRoZQ0KIHNhbWUgbmV4dCBob3AuPG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8
ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250
LWZhbWlseTomcXVvdDtWZXJkYW5hJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDsiPjxvOnA+
Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3Jt
YWwiPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1mYW1pbHk6JnF1b3Q7VmVyZGFuYSZx
dW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7Ij5JIGRvbid0IHRoaW5rIG15IHN0YXRlbWVudCBj
b250cmFkaWN0cyB5b3VyIHVuZGVyc3RhbmQuPG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+
DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJm
b250LWZhbWlseTomcXVvdDtWZXJkYW5hJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDsiPjxv
OnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29O
b3JtYWwiPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1mYW1pbHk6JnF1b3Q7VmVyZGFu
YSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7Ij5CZXN0IFJlZ2FyZHMsPG86cD48L286cD48
L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gbGFu
Zz0iRU4tVVMiIHN0eWxlPSJmb250LWZhbWlseTomcXVvdDtWZXJkYW5hJnF1b3Q7LCZxdW90O3Nh
bnMtc2VyaWYmcXVvdDsiPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPC9k
aXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gbGFuZz0iRU4tVVMiPjxiciBj
bGVhcj0iYWxsIj4NCjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjxkaXY+DQo8ZGl2Pg0KPGRpdj4N
CjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZv
bnQtZmFtaWx5OiZxdW90O1ZlcmRhbmEmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90OyI+RWR3
aW4gQ29yZGVpcm88L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9vOnA+PC9zcGFuPjwv
cD4NCjwvZGl2Pg0KPC9kaXY+DQo8L2Rpdj4NCjwvZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+
PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4NCjxkaXY+DQo8
cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBsYW5nPSJFTi1VUyI+T24gTW9uLCBKdW4gMjcsIDIw
MTYgYXQgNDoyMiBBTSwgTWFjaCBDaGVuICZsdDs8YSBocmVmPSJtYWlsdG86bWFjaC5jaGVuQGh1
YXdlaS5jb20iIHRhcmdldD0iX2JsYW5rIj5tYWNoLmNoZW5AaHVhd2VpLmNvbTwvYT4mZ3Q7IHdy
b3RlOjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjxkaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05v
cm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFs
dDphdXRvIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZToxMC41cHQ7Zm9udC1m
YW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMx
RjQ5N0QiPkhpIEVkd2luLDwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyI+PG86cD48L286cD48L3Nw
YW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDph
dXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9
ImZvbnQtc2l6ZToxMC41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtz
YW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPiZuYnNwOzwvc3Bhbj48c3BhbiBsYW5nPSJF
Ti1VUyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9
Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3Bh
biBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZToxMC41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7
Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPkNvdWxk
IHlvdSBlbGFib3JhdGUgbW9yZSBhYm91dCB0aGUgbWVhbiBvZiDigJw8L3NwYW4+PHNwYW4gbGFu
Zz0iRU4tVVMiIHN0eWxlPSJmb250LWZhbWlseTomcXVvdDtWZXJkYW5hJnF1b3Q7LCZxdW90O3Nh
bnMtc2VyaWYmcXVvdDsiPm5leHRob3BzDQogc2hvdWxkIGJlIGhhbmRsZWQgc2VwYXJhdGVkIHRv
IHJvdXRlczwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZToxMC41cHQ7
Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2Nv
bG9yOiMxRjQ5N0QiPuKAnSA/DQo8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9vOnA+
PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1h
bHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0
eWxlPSJmb250LXNpemU6MTAuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1
b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj4mbmJzcDs8L3NwYW4+PHNwYW4gbGFu
Zz0iRU4tVVMiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0
eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+
PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6MTAuNXB0O2ZvbnQtZmFtaWx5OiZx
dW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj5J
biBteSB1bmRlcnN0YW5kaW5nLCB0aGUgbmV4dGhvcC1hZGQvZGVsZXRlIFJQQyBzIGFyZSBkZXNp
Z25lZCB0byBvcGVyYXRlIHRoZSBuZXh0aG9wDQogc2VwYXJhdGVseS4mbmJzcDsgT2YgY2F1c2Us
IGEgbmV4dGhvcCBsaXN0IG5vZGUgc2hvdWxkIGJlIGFkZGVkIHRvIHRoZSByaWIsIGhlbmNlIHRv
IG1haW50YWluIHRoZSBhZGRlZCBuZXh0aG9wcy4NCjwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyI+
PG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1t
YXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBsYW5n
PSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZToxMC41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJy
aSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPiZuYnNwOzwvc3Bh
bj48c3BhbiBsYW5nPSJFTi1VUyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1z
b05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9t
LWFsdDphdXRvIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZToxMC41cHQ7Zm9u
dC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9y
OiMxRjQ5N0QiPkJlc3QgcmVnYXJkcyw8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9v
OnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRv
cC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4tVVMi
IHN0eWxlPSJmb250LXNpemU6MTAuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDss
JnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj5NYWNoPC9zcGFuPjxzcGFuIGxh
bmc9IkVOLVVTIj48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBz
dHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8i
PjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjEwLjVwdDtmb250LWZhbWlseTom
cXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+
Jm5ic3A7PC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIj48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8
ZGl2IHN0eWxlPSJib3JkZXI6bm9uZTtib3JkZXItbGVmdDpzb2xpZCBibHVlIDEuNXB0O3BhZGRp
bmc6MGNtIDBjbSAwY20gNC4wcHQiPg0KPGRpdj4NCjxkaXYgc3R5bGU9ImJvcmRlcjpub25lO2Jv
cmRlci10b3A6c29saWQgI0I1QzRERiAxLjBwdDtwYWRkaW5nOjMuMHB0IDBjbSAwY20gMGNtIj4N
CjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28t
bWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PGI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250
LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O1RhaG9tYSZxdW90OywmcXVvdDtzYW5zLXNl
cmlmJnF1b3Q7Ij5Gcm9tOjwvc3Bhbj48L2I+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250
LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O1RhaG9tYSZxdW90OywmcXVvdDtzYW5zLXNl
cmlmJnF1b3Q7Ij4gRWR3aW4NCiBDb3JkZWlybyBbbWFpbHRvOjxhIGhyZWY9Im1haWx0bzplZHdp
bnNjQGdtYWlsLmNvbSIgdGFyZ2V0PSJfYmxhbmsiPmVkd2luc2NAZ21haWwuY29tPC9hPl0NCjxi
cj4NCjxiPlNlbnQ6PC9iPiBTYXR1cmRheSwgSnVuZSAyNSwgMjAxNiAzOjI1IFBNPGJyPg0KPGI+
VG86PC9iPiBNYWNoIENoZW48YnI+DQo8Yj5DYzo8L2I+IGkycnM8YnI+DQo8Yj5TdWJqZWN0Ojwv
Yj4gUmU6IFtpMnJzXSBQcm9ibGVtIHVzaW5nIHJpYi1kYXRhLW1vZGVsIFJQQyB3aXRoIHJpYi1p
bmZvLW1vZGVsIEluZm9ybWF0aW9uIChkcmFmdC1pZXRmLWkycnMtcmliLWRhdGEtbW9kZWwtMDUg
JiM0MzsgZHJhZnQtaWV0Zi1pMnJzLXJpYi1pbmZvLW1vZGVsLTA4KTwvc3Bhbj48c3BhbiBsYW5n
PSJFTi1VUyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8L2Rpdj4NCjxkaXY+DQo8
ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRv
O21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBsYW5nPSJFTi1VUyI+Jm5ic3A7PG86
cD48L286cD48L3NwYW4+PC9wPg0KPGRpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBz
dHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8i
PjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1mYW1pbHk6JnF1b3Q7VmVyZGFuYSZxdW90
OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7Ij5IaSBNYWNoLDwvc3Bhbj48c3BhbiBsYW5nPSJFTi1V
UyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05v
cm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFs
dDphdXRvIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O1ZlcmRh
bmEmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90OyI+Jm5ic3A7PC9zcGFuPjxzcGFuIGxhbmc9
IkVOLVVTIj48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0i
TXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0
b20tYWx0OmF1dG8iPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1mYW1pbHk6JnF1b3Q7
VmVyZGFuYSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7Ij5UaGFua3MgZm9yIHRoZSBleHBs
YW5hdGlvbi4gV2UgdGhvdWdodCB0aGF0IG5leHRob3BzIHNob3VsZCBiZSBoYW5kbGVkIHNlcGFy
YXRlZCB0byByb3V0ZXMsIGJ1dCB0aGF0IHdhc24ndCByZWZsZWN0ZWQNCiBpbiB0aGUgZHJhZnQu
PC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIj48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4N
CjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1
dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0i
Zm9udC1mYW1pbHk6JnF1b3Q7VmVyZGFuYSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7Ij4m
bmJzcDs8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwv
ZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1h
bHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0
eWxlPSJmb250LWZhbWlseTomcXVvdDtWZXJkYW5hJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVv
dDsiPkJlc3QgUmVnYXJkcyw8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9vOnA+PC9z
cGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28t
bWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFu
Zz0iRU4tVVMiIHN0eWxlPSJmb250LWZhbWlseTomcXVvdDtWZXJkYW5hJnF1b3Q7LCZxdW90O3Nh
bnMtc2VyaWYmcXVvdDsiPiZuYnNwOzwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyI+PG86cD48L286
cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFs
IiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1
dG8iPjxzcGFuIGxhbmc9IkVOLVVTIj48YnIgY2xlYXI9ImFsbCI+DQo8bzpwPjwvbzpwPjwvc3Bh
bj48L3A+DQo8ZGl2Pg0KPGRpdj4NCjxkaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIg
c3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRv
Ij48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O1ZlcmRhbmEmcXVv
dDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90OyI+RWR3aW4gQ29yZGVpcm88L3NwYW4+PHNwYW4gbGFu
Zz0iRU4tVVMiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPC9kaXY+DQo8L2Rpdj4N
CjwvZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDph
dXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBsYW5nPSJFTi1VUyI+Jm5ic3A7
PG86cD48L286cD48L3NwYW4+PC9wPg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxl
PSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNw
YW4gbGFuZz0iRU4tVVMiPk9uIEZyaSwgSnVuIDI0LCAyMDE2IGF0IDU6MDggQU0sIE1hY2ggQ2hl
biAmbHQ7PGEgaHJlZj0ibWFpbHRvOm1hY2guY2hlbkBodWF3ZWkuY29tIiB0YXJnZXQ9Il9ibGFu
ayI+bWFjaC5jaGVuQGh1YXdlaS5jb208L2E+Jmd0OyB3cm90ZTo8bzpwPjwvbzpwPjwvc3Bhbj48
L3A+DQo8ZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2lu
LXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4t
VVMiIHN0eWxlPSJmb250LXNpemU6MTAuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVv
dDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj5IaSBFZHdpbiw8L3NwYW4+
PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29O
b3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1h
bHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6MTAuNXB0O2ZvbnQt
ZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjoj
MUY0OTdEIj4mbmJzcDs8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9vOnA+PC9zcGFu
PjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0
bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJm
b250LXNpemU6MTAuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fu
cy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj5UaGFua3MgZm9yIHlvdXIgZ3JlYXQgcXVlc3Rp
b24hPC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIj48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBj
bGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdp
bi1ib3R0b20tYWx0OmF1dG8iPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjEw
LjVwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVv
dDs7Y29sb3I6IzFGNDk3RCI+Jm5ic3A7PC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIj48bzpwPjwv
bzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10
b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPjxzcGFuIGxhbmc9IkVOLVVT
IiBzdHlsZT0iZm9udC1zaXplOjEwLjVwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7
LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+SSB0aGluayB0aGlzIGlzIGEg
YnVnIG9mIHRoZSBjdXJyZW50IG1vZGVsLCB0aGVyZSBzaG91bGQgYmUgYSBsaXN0IGluIGEgcmli
IHRvIG1haW50YWluDQogdGhlIG5leHRob3BzIG9mIHRoZSByaWIuIDwvc3Bhbj48c3BhbiBsYW5n
PSJFTi1VUyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5
bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48
c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZToxMC41cHQ7Zm9udC1mYW1pbHk6JnF1
b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPiZu
YnNwOzwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPHAg
Y2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJn
aW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTox
MC41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1
b3Q7O2NvbG9yOiMxRjQ5N0QiPlJlZ2FyZGluZyB5b3VyIHF1ZXN0aW9uOjwvc3Bhbj48c3BhbiBs
YW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtWZXJk
YW5hJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDsiPg0KIOKAnEhvdyBjYW4gd2UgYWRkIGEg
TmV4dGhvcCB3aXRob3V0IGluZm9ybWluZyB0aGUgcGFyZW50IFJvdXRlP+KAnSA8L3NwYW4+PHNw
YW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6MTAuNXB0O2ZvbnQtZmFtaWx5OiZxdW90
O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj5ZZXMs
IGEgbmV4dGhvcCBjYW4gYmUgY3JlYXRlZCB3aXRob3V0IGluZm9ybWluZyB0aGUgcGFyZW50IHJv
dXRlcy4gSW4gdGhlIGN1cnJlbnQgZGVzaWduLCB0aGUNCiBuZXh0aG9wIGlzIGRlY291cGxlZCBm
cm9tIHRoZSByb3V0ZXMuIEEgbmV4dGhvcCBjYW4gYmUgc2hhcmVkIGJ5IG11bHRpcGxlIHJvdXRl
cyBvciBpcyBkZWRpY2F0ZWQgdG8gYSBzaW5nbGUgcm91dGUuDQo8L3NwYW4+PHNwYW4gbGFuZz0i
RU4tVVMiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxl
PSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNw
YW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6MTAuNXB0O2ZvbnQtZmFtaWx5OiZxdW90
O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj4mbmJz
cDs8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNs
YXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2lu
LWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6MTAu
NXB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90
Oztjb2xvcjojMUY0OTdEIj5CZXN0IHJlZ2FyZHMsPC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIj48
bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1h
cmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPjxzcGFuIGxhbmc9
IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjEwLjVwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJp
JnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+TWFjaA0KPC9zcGFu
PjxzcGFuIGxhbmc9IkVOLVVTIj48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNv
Tm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20t
YWx0OmF1dG8iPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjEwLjVwdDtmb250
LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6
IzFGNDk3RCI+Jm5ic3A7PC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIj48bzpwPjwvbzpwPjwvc3Bh
bj48L3A+DQo8ZGl2IHN0eWxlPSJib3JkZXI6bm9uZTtib3JkZXItbGVmdDpzb2xpZCBibHVlIDEu
NXB0O3BhZGRpbmc6MGNtIDBjbSAwY20gNC4wcHQiPg0KPGRpdj4NCjxkaXYgc3R5bGU9ImJvcmRl
cjpub25lO2JvcmRlci10b3A6c29saWQgI0I1QzRERiAxLjBwdDtwYWRkaW5nOjMuMHB0IDBjbSAw
Y20gMGNtIj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6
YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PGI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0
eWxlPSJmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O1RhaG9tYSZxdW90OywmcXVv
dDtzYW5zLXNlcmlmJnF1b3Q7Ij5Gcm9tOjwvc3Bhbj48L2I+PHNwYW4gbGFuZz0iRU4tVVMiIHN0
eWxlPSJmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O1RhaG9tYSZxdW90OywmcXVv
dDtzYW5zLXNlcmlmJnF1b3Q7Ij4gaTJycw0KIFttYWlsdG86PGEgaHJlZj0ibWFpbHRvOmkycnMt
Ym91bmNlc0BpZXRmLm9yZyIgdGFyZ2V0PSJfYmxhbmsiPmkycnMtYm91bmNlc0BpZXRmLm9yZzwv
YT5dDQo8Yj5PbiBCZWhhbGYgT2YgPC9iPkVkd2luIENvcmRlaXJvPGJyPg0KPGI+U2VudDo8L2I+
IFdlZG5lc2RheSwgSnVuZSAyMiwgMjAxNiAzOjQ0IFBNPGJyPg0KPGI+VG86PC9iPiBpMnJzPGJy
Pg0KPGI+U3ViamVjdDo8L2I+IFtpMnJzXSBQcm9ibGVtIHVzaW5nIHJpYi1kYXRhLW1vZGVsIFJQ
QyB3aXRoIHJpYi1pbmZvLW1vZGVsIEluZm9ybWF0aW9uIChkcmFmdC1pZXRmLWkycnMtcmliLWRh
dGEtbW9kZWwtMDUgJiM0MzsgZHJhZnQtaWV0Zi1pMnJzLXJpYi1pbmZvLW1vZGVsLTA4KTwvc3Bh
bj48c3BhbiBsYW5nPSJFTi1VUyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8L2Rp
dj4NCjxkaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4t
dG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBsYW5nPSJFTi1V
UyI+Jm5ic3A7PG86cD48L286cD48L3NwYW4+PC9wPg0KPGRpdj4NCjxkaXY+DQo8ZGl2Pg0KPHAg
Y2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJn
aW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtZmFtaWx5
OiZxdW90O1ZlcmRhbmEmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90OyI+SGVsbG8gYWxsLDwv
c3Bhbj48c3BhbiBsYW5nPSJFTi1VUyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8
ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRv
O21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZv
bnQtZmFtaWx5OiZxdW90O1ZlcmRhbmEmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90OyI+Jm5i
c3A7PC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIj48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rp
dj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0
OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHls
ZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O1ZlcmRhbmEmcXVvdDssJnF1b3Q7
c2Fucy1zZXJpZiZxdW90OyI+V2hlbiB0cnlpbmcgdG8gaW1wbGVtZW50IEkyUlMgd2UgYXJlIGZh
Y2VkIHRoZSBmb2xsb3dpbmcgcHJvYmxlbTo8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+
PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0
eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+
PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1
b3Q7QXJpYWwmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90OyI+Jm5ic3A7PC9zcGFuPjxzcGFu
IGxhbmc9IkVOLVVTIj48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBj
bGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdp
bi1ib3R0b20tYWx0OmF1dG8iPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjku
NXB0O2ZvbnQtZmFtaWx5OiZxdW90O1ZlcmRhbmEmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90
OyI+SW4mbmJzcDtkcmFmdC1pZXRmLWkycnMtcmliLWRhdGEtbW9kZWwtMDUjc2VjdGlvbi0yLjUg
dGhlIFJQQyBvZmZlciB0aGUgZm9sbG93aW5nIE5leHRob3Agb3BlcmF0aW9uczo8L3NwYW4+PHNw
YW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxk
aXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87
bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9u
dC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij4mbmJzcDsg
Jm5ic3A7ICZuYnNwOyAmIzQzOy0tLXggbmgtYWRkPC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIj48
bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFs
IiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1
dG8iPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5
OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyB8ICZuYnNwOyYj
NDM7LS0tdyBpbnB1dDwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyI+PG86cD48L286cD48L3NwYW4+
PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJn
aW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBsYW5nPSJF
Ti1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtDb3VyaWVyIE5l
dyZxdW90OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgfCAmbmJzcDt8ICZuYnNwOyYjNDM7LS0tdyBy
aWItbmFtZSAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDtz
dHJpbmc8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwv
ZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1h
bHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0
eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsi
PiZuYnNwOyAmbmJzcDsgJm5ic3A7IHwgJm5ic3A7fCAmbmJzcDsmIzQzOy0tLXcgbmV4dGhvcC1p
ZD8gJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyB1aW50MzI8L3NwYW4+PHNwYW4g
bGFuZz0iRU4tVVMiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNs
YXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2lu
LWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41
cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsiPiZuYnNwOyAmbmJzcDsgJm5i
c3A7IHwgJm5ic3A7fCAmbmJzcDsmIzQzOy0tLXcgc2hhcmluZy1mbGFnPyAmbmJzcDsgJm5ic3A7
ICZuYnNwOyAmbmJzcDsgYm9vbGVhbjwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyI+PG86cD48L286
cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9
Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3Bh
biBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtD
b3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgfCAmbmJzcDt8ICZuYnNwOyYj
NDM7LS0tdyAobmV4dGhvcC10eXBlKT88L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9v
OnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxl
PSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNw
YW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7
Q291cmllciBOZXcmcXVvdDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7IHwgJm5ic3A7fCAmbmJzcDsg
Jm5ic3A7IC4uLjwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyI+PG86cD48L286cD48L3NwYW4+PC9w
Pg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4t
dG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBsYW5nPSJFTi1V
UyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZx
dW90OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgfCAmbmJzcDsmIzQzOy0tcm8gb3V0cHV0PC9zcGFu
PjxzcGFuIGxhbmc9IkVOLVVTIj48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+
DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNv
LW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1z
aXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij4mbmJzcDsgJm5i
c3A7ICZuYnNwOyB8ICZuYnNwOyAmbmJzcDsgJiM0MzstLXJvIHJlc3VsdCAmbmJzcDsgJm5ic3A7
ICZuYnNwOyAmbmJzcDt1aW50MzI8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9vOnA+
PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJt
c28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4g
bGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291
cmllciBOZXcmcXVvdDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7IHwgJm5ic3A7ICZuYnNwOyAmIzQz
Oy0tcm8gcmVhc29uPyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBzdHJpbmc8L3NwYW4+PHNwYW4gbGFu
Zz0iRU4tVVMiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNz
PSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJv
dHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7
Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7
IHwgJm5ic3A7ICZuYnNwOyAmIzQzOy0tcm8gbmV4dGhvcC1pZD8gJm5ic3A7IHVpbnQzMjwvc3Bh
bj48c3BhbiBsYW5nPSJFTi1VUyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2
Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21z
by1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQt
c2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7ICZu
YnNwOyAmbmJzcDsgJiM0MzstLS14IG5oLWRlbGV0ZTwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyI+
PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1h
bCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDph
dXRvIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWls
eTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu
YnNwOyYjNDM7LS0tdyBpbnB1dDwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyI+PG86cD48L286cD48
L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1z
by1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBs
YW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtDb3Vy
aWVyIE5ldyZxdW90OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwO3wgJm5ic3A7
JiM0MzstLS13IHJpYi1uYW1lICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i
c3A7ICZuYnNwO3N0cmluZzwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyI+PG86cD48L286cD48L3Nw
YW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1t
YXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBsYW5n
PSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtDb3VyaWVy
IE5ldyZxdW90OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwO3wgJm5ic3A7JiM0
MzstLS13IG5leHRob3AtaWQ/ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgdWlu
dDMyPC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIj48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rp
dj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0
OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHls
ZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij4m
bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7fCAmbmJzcDsmIzQzOy0tLXcgc2hhcmlu
Zy1mbGFnPyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgYm9vbGVhbjwvc3Bhbj48c3BhbiBs
YW5nPSJFTi1VUyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xh
c3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4t
Ym90dG9tLWFsdDphdXRvIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVw
dDtmb250LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7ICZuYnNwOyAmbmJz
cDsgJm5ic3A7ICZuYnNwO3wgJm5ic3A7JiM0MzstLS13IChuZXh0aG9wLXR5cGUpPzwvc3Bhbj48
c3BhbiBsYW5nPSJFTi1VUyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0K
PHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1t
YXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6
ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7ICZuYnNw
OyAmbmJzcDsgJm5ic3A7ICZuYnNwO3wgJm5ic3A7ICZuYnNwOyAuLi48L3NwYW4+PHNwYW4gbGFu
Zz0iRU4tVVMiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNz
PSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJv
dHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7
Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7
ICZuYnNwOyAmbmJzcDsmIzQzOy0tcm8gb3V0cHV0PC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIj48
bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFs
IiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1
dG8iPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5
OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i
c3A7ICZuYnNwOyAmIzQzOy0tcm8gcmVzdWx0IHVpbnQzMjwvc3Bhbj48c3BhbiBsYW5nPSJFTi1V
UyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05v
cm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFs
dDphdXRvIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZh
bWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7
ICZuYnNwOyAmbmJzcDsgJiM0MzstLXJvIHJlYXNvbj8gc3RyaW5nPC9zcGFuPjxzcGFuIGxhbmc9
IkVOLVVTIj48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjwvZGl2Pg0KPGRpdj4NCjxw
IGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFy
Z2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6
OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7QXJpYWwmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90
OyI+Jm5ic3A7PC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIj48bzpwPjwvbzpwPjwvc3Bhbj48L3A+
DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10
b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPjxzcGFuIGxhbmc9IkVOLVVT
IiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O1ZlcmRhbmEmcXVvdDss
JnF1b3Q7c2Fucy1zZXJpZiZxdW90OyI+SW4gdGhlc2Ugb3BlcmF0aW9ucyB0aGUgTmV4dGhvcCBp
cyBkaXJlY3RseSBjb25uZWN0ZWQgdG8gYSBSSUIsIGJ1dCBpbiZuYnNwO2RyYWZ0LWlldGYtaTJy
cy1yaWItaW5mby1tb2RlbC0wOCNzZWN0aW9uLTI6Jm5ic3A7UklCKHMpDQogY29udGFpbnMgUm91
dGUocykgYW5kIFJvdXRlKHMpIGNvbnRhaW5zIE5leHRob3Aocyk6PC9zcGFuPjxzcGFuIGxhbmc9
IkVOLVVTIj48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0i
TXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0
b20tYWx0OmF1dG8iPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2Zv
bnQtZmFtaWx5OiZxdW90O0FyaWFsJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDsiPiZuYnNw
Ozwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+
DQo8ZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRv
cC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4tVVMi
IHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVv
dDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IHJvdXRpbmctaW5z
dGFuY2U8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwv
ZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1h
bHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0
eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsi
PiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IHwgJm5ic3A7ICZuYnNw
OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgfDwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyI+
PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1h
bCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDph
dXRvIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWls
eTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu
YnNwOyAmbmJzcDsgfCAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyB8
PC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIj48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4N
CjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1
dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0i
Zm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij4mbmJz
cDsgJm5ic3A7ICZuYnNwOyAwLi5OICZuYnNwO3wgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7
ICZuYnNwOyAmbmJzcDsgfCAxLi5OPC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIj48bzpwPjwvbzpw
Pjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0i
bXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPjxzcGFu
IGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0Nv
dXJpZXIgTmV3JnF1b3Q7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw
OyB8ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IHw8L3NwYW4+PHNw
YW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxw
IGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFy
Z2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6
OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsiPiZuYnNwOyAmbmJzcDsg
Jm5ic3A7ICZuYnNwOyBpbnRlcmZhY2UocykgJm5ic3A7ICZuYnNwOyBSSUIocyk8L3NwYW4+PHNw
YW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxw
IGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFy
Z2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6
OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsiPiZuYnNwOyAmbmJzcDsg
Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAm
bmJzcDsgJm5ic3A7ICZuYnNwOyB8PC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIj48bzpwPjwvbzpw
Pjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0i
bXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPjxzcGFu
IGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0Nv
dXJpZXIgTmV3JnF1b3Q7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw
OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgfDwvc3Bh
bj48c3BhbiBsYW5nPSJFTi1VUyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2
Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21z
by1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQt
c2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7ICZu
YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i
c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IHwgMC4uTjwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyI+
PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1h
bCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDph
dXRvIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWls
eTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu
YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i
c3A7IHw8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwv
ZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1h
bHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0
eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsi
PiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg
Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IHJvdXRlKHMpPC9zcGFuPjxzcGFuIGxhbmc9IkVO
LVVTIj48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8ZGl2Pg0KPHAgY2xh
c3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4t
Ym90dG9tLWFsdDphdXRvIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVw
dDtmb250LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7ICZuYnNwOyAmbmJz
cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw
OyAmbmJzcDsgfCB8IHw8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9vOnA+PC9zcGFu
PjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFy
Z2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0i
RU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBO
ZXcmcXVvdDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw
OyAmIzQzOy0tLS0tLS0tLSYjNDM7IHwgJiM0MzstLS0tLS0tLS0tJiM0Mzs8L3NwYW4+PHNwYW4g
bGFuZz0iRU4tVVMiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNs
YXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2lu
LWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41
cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsiPiZuYnNwOyAmbmJzcDsgJm5i
c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyB8ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu
YnNwOyAmbmJzcDsgfCAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwO3w8
L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0K
PGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0
bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJm
b250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsiPiZuYnNw
OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDswLi5OIHwgJm5ic3A7ICZuYnNwOyAmbmJzcDsg
Jm5ic3A7ICZuYnNwOyB8ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7
fDwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+
DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDph
dXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9
ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+cm91
dGUtYXR0cmlidXRlICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBtYXRjaCAmbmJzcDsgJm5i
c3A7ICZuYnNwOyAmbmJzcDsgbmV4dGhvcDwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyI+PG86cD48
L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5
bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48
c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVv
dDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAm
bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IHw8
L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0K
PGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0
bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJm
b250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsiPiZuYnNw
OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7
ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOy4uLjwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyI+
PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1h
bCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDph
dXRvIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWls
eTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu
YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOzwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyI+PG86cD48
L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8L2Rpdj4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNz
PSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJv
dHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7
Zm9udC1mYW1pbHk6JnF1b3Q7VmVyZGFuYSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7Ij5P
dXIgcXVlc3Rpb25zIGFyZTo8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9vOnA+PC9z
cGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28t
bWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFu
Zz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7VmVyZGFu
YSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7Ij4tIEhvdyBjYW4gd2UgYWRkIGEgTmV4dGhv
cCB3aXRob3V0IGluZm9ybWluZyB0aGUgcGFyZW50IFJvdXRlPzwvc3Bhbj48c3BhbiBsYW5nPSJF
Ti1VUyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1z
b05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9t
LWFsdDphdXRvIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250
LWZhbWlseTomcXVvdDtWZXJkYW5hJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDsiPi0gTG9v
a2luZyBhdCB0aGUgUklCIGdyYW1tYXIgKGRyYWZ0LWlldGYtaTJycy1yaWItaW5mby1tb2RlbC0w
OCNzZWN0aW9uLTYpIHRoZSBOZXh0aG9wIGlzIGFsc28gYXR0YWNoZWQNCiB0byBhIFJvdXRlLiBT
aG91bGRuJ3QgTmV4dGhvcCBiZSBwYXJ0IG9mIFJJQj8gTWF5YmUgc29tZXRoaW5nIGxpa2U6PC9z
cGFuPjxzcGFuIGxhbmc9IkVOLVVTIj48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxk
aXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87
bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9u
dC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0FyaWFsJnF1b3Q7LCZxdW90O3NhbnMtc2Vy
aWYmcXVvdDsiPiZuYnNwOzwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyI+PG86cD48L286cD48L3Nw
YW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPGRpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFs
IiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1
dG8iPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5
OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij4mbmJzcDsgJmx0O3JpYiZndDsgOjo9ICZsdDtSSUJf
TkFNRSZndDsgJmx0O3JpYi1mYW1pbHkmZ3Q7PC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIj48bzpw
PjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBz
dHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8i
PjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZx
dW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7
ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IFsmbHQ7cm91dGUmZ3Q7
IC4uLiBdPC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIj48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8
L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3At
YWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPjxzcGFuIGxhbmc9IkVOLVVTIiBz
dHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7
Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7
ICZuYnNwOyAmbmJzcDsgJm5ic3A7IFsmbHQ7bmV4dGhvcCZndDsgLi4uXTwvc3Bhbj48c3BhbiBs
YW5nPSJFTi1VUyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xh
c3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4t
Ym90dG9tLWFsdDphdXRvIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVw
dDtmb250LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7ICZuYnNwOyAmbmJz
cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw
OyBbRU5BQkxFX0lQX1JQRl9DSEVDS108L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9v
OnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1h
bCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDph
dXRvIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWls
eTomcXVvdDtBcmlhbCZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7Ij4mbmJzcDs8L3NwYW4+
PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4N
CjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28t
bWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNp
emU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsiPiZuYnNwOyAmbmJz
cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IHJvdXRpbmctaW5zdGFuY2U8L3NwYW4+PHNw
YW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxw
IGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFy
Z2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6
OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsiPiZuYnNwOyAmbmJzcDsg
Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IHwgJm5ic3A7ICZuYnNwOyAmbmJzcDt8ICZuYnNw
OyAmbmJzcDsgJm5ic3A7PC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIj48bzpwPjwvbzpwPjwvc3Bh
bj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1h
cmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPjxzcGFuIGxhbmc9
IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIg
TmV3JnF1b3Q7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyB8ICZu
YnNwOyAmbmJzcDsgJm5ic3A7fCAmbmJzcDsgJm5ic3A7ICZuYnNwOzwvc3Bhbj48c3BhbiBsYW5n
PSJFTi1VUyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9
Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90
dG9tLWFsdDphdXRvIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtm
b250LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsg
MC4uTiAmbmJzcDt8ICZuYnNwOyAmbmJzcDsgJm5ic3A7fCZuYnNwOzEuLk4mbmJzcDsgJm5ic3A7
ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7Jm5ic3A7PC9zcGFuPjxz
cGFuIGxhbmc9IkVOLVVTIj48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8
cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1h
cmdpbi1ib3R0b20tYWx0OmF1dG8iPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXpl
OjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij4mbmJzcDsgJm5ic3A7
ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyB8ICZuYnNwOyAmbmJzcDsgJm5ic3A7fCZuYnNw
OyZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7Jm5ic3A7PC9zcGFuPjxz
cGFuIGxhbmc9IkVOLVVTIj48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8
cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1h
cmdpbi1ib3R0b20tYWx0OmF1dG8iPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXpl
OjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij4mbmJzcDsgJm5ic3A7
IGludGVyZmFjZShzKSAmbmJzcDtSSUIocykgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu
YnNwOyAmbmJzcDsgJm5ic3A7PC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIj48bzpwPjwvbzpwPjwv
c3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNv
LW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPjxzcGFuIGxh
bmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0NvdXJp
ZXIgTmV3JnF1b3Q7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAm
bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDt8ICZuYnNwO3wmbmJzcDswLi5OJm5ic3A7ICZuYnNw
OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOzwvc3Bhbj48c3BhbiBs
YW5nPSJFTi1VUyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xh
c3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4t
Ym90dG9tLWFsdDphdXRvIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVw
dDtmb250LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7ICZuYnNwOyAmbmJz
cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7fCAmbmJz
cDsmIzQzOy0tLS0tLS0tLS0tLS0tJiM0Mzs8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+
PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0
eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+
PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1
b3Q7Q291cmllciBOZXcmcXVvdDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg
Jm5ic3A7ICZuYnNwOyZuYnNwOzAuLk4mbmJzcDt8ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw
OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsmbmJzcDt8PC9zcGFuPjxzcGFuIGxhbmc9IkVO
LVVTIj48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNv
Tm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20t
YWx0OmF1dG8iPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQt
ZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz
cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDt8ICZuYnNwOyAmbmJz
cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsmbmJzcDt8PC9zcGFu
PjxzcGFuIGxhbmc9IkVOLVVTIj48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+
DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNv
LW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1z
aXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij4mbmJzcDsgJm5i
c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwO3JvdXRl
KHMpIC0tLS0tLSZndDsmbmJzcDtuZXh0aG9wKHMpPC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIj48
bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1z
b05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9t
LWFsdDphdXRvIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250
LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i
c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDt8IHwgJm5ic3A7ICZuYnNwOyAm
bmJzcDsgMS4uTjwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyI+PG86cD48L286cD48L3NwYW4+PC9w
Pg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4t
dG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBsYW5nPSJFTi1V
UyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZx
dW90OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7JiM0MzstLS0tLS0tLS0mIzQzOyB8Jm5i
c3A7PC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIj48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rp
dj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0
OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHls
ZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij4m
bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDt8ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAm
bmJzcDsgfCZuYnNwOzwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyI+PG86cD48L286cD48L3NwYW4+
PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJn
aW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBsYW5nPSJF
Ti1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtDb3VyaWVyIE5l
dyZxdW90OyI+Jm5ic3A7IDAuLk4gfCAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7
IHwmbmJzcDs8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4N
CjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRv
cC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gbGFuZz0iRU4tVVMi
IHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVv
dDsiPnJvdXRlLWF0dHJpYnV0ZSAmbmJzcDttYXRjaCZuYnNwOzwvc3Bhbj48c3BhbiBsYW5nPSJF
Ti1VUyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1z
b05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9t
LWFsdDphdXRvIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250
LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i
c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7fDwvc3Bhbj48c3Bh
biBsYW5nPSJFTi1VUyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAg
Y2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJn
aW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5
LjVwdDtmb250LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7ICZuYnNwOyAm
bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgLi4uPC9zcGFu
PjxzcGFuIGxhbmc9IkVOLVVTIj48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjwvZGl2
Pg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4t
dG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBsYW5nPSJFTi1V
UyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtWZXJkYW5hJnF1b3Q7
LCZxdW90O3NhbnMtc2VyaWYmcXVvdDsiPiZuYnNwOyZuYnNwOzwvc3Bhbj48c3BhbiBsYW5nPSJF
Ti1VUyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1z
b05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9t
LWFsdDphdXRvIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTo5LjVwdDtmb250
LWZhbWlseTomcXVvdDtWZXJkYW5hJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDsiPklmIHdl
IG1pc3VuZGVyc3Rvb2QgdGhlIG1vZGVsLCBjb3VsZCBzb21lb25lIHBsZWFzZSBleHBsYWluIHdo
eSBvdXIgdW5kZXJzdGFuZGluZyBpcyBpbmNvcnJlY3Q/PC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVT
Ij48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9y
bWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0
OmF1dG8iPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjkuNXB0O2ZvbnQtZmFt
aWx5OiZxdW90O0FyaWFsJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDsiPiZuYnNwOzwvc3Bh
bj48c3BhbiBsYW5nPSJFTi1VUyI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2
Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21z
by1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQt
c2l6ZTo5LjVwdDtmb250LWZhbWlseTomcXVvdDtWZXJkYW5hJnF1b3Q7LCZxdW90O3NhbnMtc2Vy
aWYmcXVvdDsiPkJlc3QgUmVnYXJkcyw8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiPjxvOnA+PC9v
OnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPC9kaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHls
ZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPjxz
cGFuIGxhbmc9IkVOLVVTIj48YnIgY2xlYXI9ImFsbCI+DQo8bzpwPjwvbzpwPjwvc3Bhbj48L3A+
DQo8ZGl2Pg0KPGRpdj4NCjxkaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9
Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3Bh
biBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O1ZlcmRhbmEmcXVvdDssJnF1
b3Q7c2Fucy1zZXJpZiZxdW90OyI+RWR3aW4gQ29yZGVpcm88L3NwYW4+PHNwYW4gbGFuZz0iRU4t
VVMiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPC9kaXY+DQo8L2Rpdj4NCjwvZGl2
Pg0KPC9kaXY+DQo8L2Rpdj4NCjwvZGl2Pg0KPC9kaXY+DQo8L2Rpdj4NCjwvZGl2Pg0KPC9kaXY+
DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNv
LW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPjxzcGFuIGxhbmc9IkVOLVVTIj4mbmJzcDs8bzpwPjwv
bzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjwvZGl2Pg0KPC9kaXY+DQo8L2Rpdj4NCjwvZGl2Pg0K
PC9kaXY+DQo8L2Rpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIGxhbmc9IkVOLVVTIj48
bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjwvZGl2Pg0KPC9kaXY+DQo8L2Jv
ZHk+DQo8L2h0bWw+DQo=

--_000_F73A3CB31E8BE34FA1BBE3C8F0CB2AE28CC876C4SZXEMA510MBXchi_--


From nobody Mon Jun 27 08:33:24 2016
Return-Path: <rwilton@cisco.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 A165912D77E for <i2rs@ietfa.amsl.com>; Mon, 27 Jun 2016 08:33:21 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -15.947
X-Spam-Level: 
X-Spam-Status: No, score=-15.947 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-1.426, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.com
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 i3A-0Pp9zwPa for <i2rs@ietfa.amsl.com>; Mon, 27 Jun 2016 08:33:18 -0700 (PDT)
Received: from aer-iport-1.cisco.com (aer-iport-1.cisco.com [173.38.203.51]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id EC2C412D779 for <i2rs@ietf.org>; Mon, 27 Jun 2016 08:30:05 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=30374; q=dns/txt; s=iport; t=1467041406; x=1468251006; h=from:subject:to:message-id:date:mime-version; bh=4Z5pxLSBlXAwfMVhpCj+8EbOOnIsJRoQPPlMNUYmt9Y=; b=Xaol40fsMpvaOM3ZjmyX5BZ2ZXv32axMtWfPi7jKKsuDIWcZzdDrPiJt JNXyNSKwSnuu0xfHsd5K5TyoOCFsaPETFG2+wOA9KvfKoClGt5AgQXj5K f6N0yAbXKuxxMY5MCmG0uXQtWLsRoFvJ3ntSlHaxb2X7JhIaC6yR9K39M c=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0DRAQBfRXFX/xbLJq1bgnCBT7p9gXuIA?= =?us-ascii?q?RQBAQEBAQEBZSeEdoEDExMBCQJLIQgBAReIFaINj2KQQYYogXeCVodBgloFmQG?= =?us-ascii?q?BMY0GgWmHX4VchlSJKx42g3E7iikBAQE?=
X-IronPort-AV: E=Sophos;i="5.26,537,1459814400";  d="scan'208,217";a="677952336"
Received: from aer-iport-nat.cisco.com (HELO aer-core-1.cisco.com) ([173.38.203.22]) by aer-iport-1.cisco.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 27 Jun 2016 15:30:03 +0000
Received: from [10.63.23.64] (dhcp-ensft1-uk-vla370-10-63-23-64.cisco.com [10.63.23.64]) by aer-core-1.cisco.com (8.14.5/8.14.5) with ESMTP id u5RFU3I4015055 for <i2rs@ietf.org>; Mon, 27 Jun 2016 15:30:03 GMT
From: Robert Wilton <rwilton@cisco.com>
To: i2rs@ietf.org
Message-ID: <4f70e94d-f73b-73a7-c41b-9ab5ffeeda6f@cisco.com>
Date: Mon, 27 Jun 2016 16:30:03 +0100
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.1.1
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="------------2DDBCBF0E88477DF8E12FDA9"
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/bLIo7tDqs6fx4aZElszMgVsmL-w>
Subject: [i2rs] Review of draft-ietf-i2rs-ephemeral-state-11
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Mon, 27 Jun 2016 15:33:21 -0000

This is a multi-part message in MIME format.
--------------2DDBCBF0E88477DF8E12FDA9
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

I've reviewed draft-ietf-i2rs-ephemeral-state-11 and given a few minor 
comments below.  Generally I think that I understand the requirements 
stated in this document.

Minors comments:

1) Ephemeral-REQ-01 (page 5):

    Ephemeral-REQ-01: I2RS requires ephemeral state; i.e. state that does
    not persist across reboots.  If state must be restored, it should be
    done solely by replay actions from the I2RS client via the I2RS
    agent.

The architecture document indicates that the ephemeral state would (or 
is that may) also be lost on other circumstances such as process restart 
of the I2RS agent.  Does this need to be clarified in the requirement?  E.g.

    Ephemeral-REQ-01: I2RS requires ephemeral state; i.e. state that MUST
    NOT persist across reboots of the device or I2RS Agent subsystem. If
    state must be restored, it should be done solely by replay actions
    from the I2RS client via the I2RS agent.


2) Hierarchy: (page 5)
Based on the previous description, I would possibly split 
Ephemeral-REQ-06 up into the following requirements:

Old (from ephemeral-state:10):

    Ephemeral-REQ-06: The ability to augment an object with appropriate
    YANG structures that have the property of being ephemeral.  An object
    defined as any one of the following: yang module, submodule or
    components of submodule, or schema node.

Old (from ephemeral-state-11):

    Ephemeral-REQ-06: The ability to augment Yang schema nodes with
    additional Yang Schema nodes that have the property of being
    ephemeral.

Proposed:

    Ephemeral-REQ-06:
  
    1. The ability to define a YANG module or submodule schema that
    only contains data nodes with the property of being ephemeral.

    2. The ability to augment a YANG data model with additional YANG
    schema nodes that have the property of being ephemeral.


3) Ephemeral-REQ-07: (page 6):

    Ephemeral-REQ-07: Ephemeral configuration state could override
    overlapping local configuration state, or vice-versa.
    Implementations MUST provide a mechanism to choose which takes
    precedence.  This mechanism MUST include local configuration (policy)
    and MAY be provided via the I2RS protocol mechanisms.

I note that this requirement doesn't specify the scope of whether the 
override mechanism should operate globally or on a per data node basis.  
I'm not sure whether this needs to be clarified - since the text in the 
architecture document makes it pretty clear that a global level 
resolution is sufficient.


4) Ephemeral-REQ-08: (page 6):
Similar to Juergen's comments, I'm concerned about the 
writable/non-writable requirement.


    Ephemeral-REQ-08: Yang MUST have a way to indicate in a data model
    that schema nodes have the following properties: ephemeral, writable/
    not-writable, and status/configuration.

I'm somewhat adverse to writable operational state, and hence I would 
prefer if this requirement was watered down to something like:

    Ephemeral-REQ-08: In addition to config true/false, there MUST be a
    way to indicate that YANG schema nodes represent ephemeral state.
    It is desirable to allow for, and have to way to indicate, config
    false YANG schema nodes that are writable operational state.


5) Ephemeral-Req-12, page 7:
Presumably the requirement is that the notification must indicate the 
node that we involved in the collision?  I.e. it isn't sufficient to 
just signal to the client that there has been a collision with some of 
their configuration?

    Ephemeral-REQ-12: When a collision occurs as two clients are trying
    to write the same data node, this collision is considered an error
    and priorities were created to give a deterministic result.  When
    there is a collision, a notification MUST BE sent to the original
    client to give the original client a chance to deal with the issues
    surrounding the collision.  The original client may need to fix their
    state.

Should this be made explicit?  E.g. perhaps:

    Ephemeral-REQ-12: When a collision occurs as two clients are trying
    to write the same data node, this collision is considered an error
    and priorities were created to give a deterministic result.  When
    there is a collision, a notification (indicating which data node the
    collision occurred on) MUST BE sent to the original client to give
    the original client a chance to deal with the issues surrounding
    the collision.  The original client may need to fix their state.


6) Ephemeral-REQ-14, page 7:
I would suggest potentially rewording this to make the requirement and 
leeway on the solution more explicit.

    Ephemeral-REQ-14: If two clients have the same priority, the
    architecture says the first one wins.  The I2RS protocol has this
    requirement to prevent oscillations between clients.  If one uses the
    last wins scenario, you may oscillate.  That was our opinion, but a
    design which prevents oscillation is the key point.

Proposed alternative text:

    Ephemeral-REQ-14: A deterministic conflict resolution mechanism MUST
    be provided to handle the error scenario that two clients, with
    the same priority, update the same configuration data node.  The I2RS
    architecture gives one way that this could be achieved, by
    specifying that the first update wins.  Other solutions, that prevent
    oscillation of the config data node, are also acceptable.


Cosmetic comments:

7) Section 1. Introduction.  The requirements are no longer version 
specific, hence perhaps update the following text from:


    1.  select features from YANG, NETCONF, and RESTCONF per version of
        the I2RS protocol (See sections 4, 5, and 6)

    2.  propose additions to YANG, NETCONF, and RESTCONF per version of
        the I2RS protocol for key functions (ephemeral state, protocol
        security, publication/subscription service, traceability),

to:

    1.  select features from YANG, NETCONF, and RESTCONF for the initial
        I2RS protocol version (See sections 4, 5, and 6).

    2.  propose additions to YANG, NETCONF, and RESTCONF for the initial
        I2RS protocol version for key functions (ephemeral state, protocol
        security, publication/subscription service, traceability).


8) Section 1. introduction.  I'm not sure that this 3rd bullet is 
relevant, and possibly could be removed, although equally it doesn't 
seem to do any harm:

    3.  suggest protocol strawman as ideas for the NETCONF, RESTCONF, and
        YANG changes.



9) The document uses a mix of "Yang" and "YANG", probably should just 
use "YANG".


10) Section 3. Ephemeral State Requirements:

The document refers to "ephemeral configured state" here, but elsewhere 
(e.g. 3.4) "ephemeral configuration" or "ephemeral configuration state" 
is used.  It might be helpful for use of these terms to be consistent, I 
would suggest "ephemeral configuration" is sufficient.


11) Ephemeral-REQ-13, page 7:

Minor omission in the last sentence.

   Ephemeral-REQ-13: The requirement to support multi-headed control is
    required for collisions and the priority resolution of collisions.
    Multi-headed control is not tied to ephemeral state.  I2RS is not
    mandating how AAA supports priority.  Mechanisms which prevent
    collisions of two clients trying the same node of data are the focus.

Proposed:

   Ephemeral-REQ-13: The requirement to support multi-headed control is
    required for collisions and the priority resolution of collisions.
    Multi-headed control is not tied to ephemeral state.  I2RS is not
    mandating how AAA supports priority.  Mechanisms which prevent
    collisions of two clients trying to modify the same node of data
    are the focus.


12) Ephemeral-REQ-15, page 7:
I would suggest that it might be better to refer to "Ephemeral state" 
rather than the I2RS ephemeral data-store.

    Ephemeral-REQ-15: Section 7.9 of the [I-D.ietf-i2rs-architecture]
    states the I2RS architecture does not include multi-message atomicity
    and roll-back mechanisms.  I2RS notes multiple operations in one or
    more messages handling can handle errors within the set of operations
    in many ways.  No multi-message commands SHOULD cause errors to be
    inserted into the I2RS ephemeral data-store.

Proposed:

    Ephemeral-REQ-15: Section 7.9 of the [I-D.ietf-i2rs-architecture]
    states the I2RS architecture does not include multi-message atomicity
    and roll-back mechanisms.  I2RS notes multiple operations in one or
    more messages handling can handle errors within the set of operations
    in many ways.  No multi-message commands SHOULD cause errors to be
    inserted into the ephemeral state.


Thanks,
Rob


--------------2DDBCBF0E88477DF8E12FDA9
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: 8bit

<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=utf-8">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <p>Hi,</p>
    <p>I've reviewed draft-ietf-i2rs-ephemeral-state-11 and given a few
      minor comments below.Â  Generally I think that I understand the
      requirements stated in this document.</p>
    <p>Minors comments:<br>
    </p>
    <p>1) Ephemeral-REQ-01 (page 5):</p>
    <pre style="box-sizing: border-box; overflow: auto; font-family: &quot;PT Mono&quot;, Monaco, monospace; font-size: 14px; display: block; padding: 10px; margin: 0px 0px 10.5px; line-height: 1.214; color: rgb(0, 0, 0); word-break: break-all; word-wrap: break-word; border: 1px solid rgb(204, 204, 204); border-radius: 4px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; widows: 1; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 253, 245);">   Ephemeral-REQ-01: I2RS requires ephemeral state; i.e. state that does
   not persist across reboots.  If state must be restored, it should be
   done solely by replay actions from the I2RS client via the I2RS
   agent.</pre>
    <p>The architecture document indicates that the ephemeral state
      would (or is that may) also be lost on other circumstances such as
      process restart of the I2RS agent.Â  Does this need to be clarified
      in the requirement?Â  E.g.</p>
    <pre style="box-sizing: border-box; overflow: auto; font-family: &quot;PT Mono&quot;, Monaco, monospace; font-size: 14px; display: block; padding: 10px; margin: 0px 0px 10.5px; line-height: 1.214; color: rgb(0, 0, 0); word-break: break-all; word-wrap: break-word; border: 1px solid rgb(204, 204, 204); border-radius: 4px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; widows: 1; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 253, 245);">   Ephemeral-REQ-01: I2RS requires ephemeral state; i.e. state that MUST
   NOT persist across reboots of the device or I2RS Agent subsystem. If
   state must be restored, it should be done solely by replay actions
   from the I2RS client via the I2RS agent.</pre>
    <p><br>
    </p>
    <p>2) Hierarchy: (page 5)<br>
      Based on the previous description, I would possibly split
      Ephemeral-REQ-06 up into the following requirements: <br>
    </p>
    <p>Old (from ephemeral-state:10):</p>
    <pre style="box-sizing: border-box; overflow: auto; font-family: &quot;PT Mono&quot;, Monaco, monospace; font-size: 14px; display: block; padding: 10px; margin: 0px 0px 10.5px; line-height: 1.214; color: rgb(0, 0, 0); word-break: break-all; word-wrap: break-word; border: 1px solid rgb(204, 204, 204); border-radius: 4px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; widows: 1; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 253, 245);">   Ephemeral-REQ-06: The ability to augment an object with appropriate
   YANG structures that have the property of being ephemeral.  An object
   defined as any one of the following: yang module, submodule or
   components of submodule, or schema node.</pre>
    <p>Old (from ephemeral-state-11):<br>
    </p>
    <pre style="box-sizing: border-box; overflow: auto; font-family: &quot;PT Mono&quot;, Monaco, monospace; font-size: 14px; display: block; padding: 10px; margin: 0px 0px 10.5px; line-height: 1.214; color: rgb(0, 0, 0); word-break: break-all; word-wrap: break-word; border: 1px solid rgb(204, 204, 204); border-radius: 4px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; widows: 1; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 253, 245);">   Ephemeral-REQ-06: The ability to augment Yang schema nodes with
   additional Yang Schema nodes that have the property of being
   ephemeral.</pre>
    <p>Proposed:<br>
    </p>
    <pre style="box-sizing: border-box; overflow: auto; font-family: &quot;PT Mono&quot;, Monaco, monospace; font-size: 14px; display: block; padding: 10px; margin: 0px 0px 10.5px; line-height: 1.214; color: rgb(0, 0, 0); word-break: break-all; word-wrap: break-word; border: 1px solid rgb(204, 204, 204); border-radius: 4px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; widows: 1; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 253, 245);">   Ephemeral-REQ-06:
 
   1. The ability to define a YANG module or submodule schema that
   only contains data nodes with the property of being ephemeral.

   2. The ability to augment a YANG data model with additional YANG
   schema nodes that have the property of being ephemeral.
</pre>
    <p><br>
    </p>
    <p>3) Ephemeral-REQ-07: (page 6):</p>
    <pre style="box-sizing: border-box; overflow: auto; font-family: &quot;PT Mono&quot;, Monaco, monospace; font-size: 14px; display: block; padding: 10px; margin: 0px 0px 10.5px; line-height: 1.214; color: rgb(0, 0, 0); word-break: break-all; word-wrap: break-word; border: 1px solid rgb(204, 204, 204); border-radius: 4px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; widows: 1; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 253, 245);">   Ephemeral-REQ-07: Ephemeral configuration state could override
   overlapping local configuration state, or vice-versa.
   Implementations MUST provide a mechanism to choose which takes
   precedence.  This mechanism MUST include local configuration (policy)
   and MAY be provided via the I2RS protocol mechanisms.</pre>
    <p>I note that this requirement doesn't specify the scope of whether
      the override mechanism should operate globally or on a per data
      node basis.Â  I'm not sure whether this needs to be clarified -
      since the text in the architecture document makes it pretty clear
      that a global level resolution is sufficient.<br>
    </p>
    <p><br>
    </p>
    <p>4) Ephemeral-REQ-08: (page 6):<br>
      Similar to Juergen's comments, I'm concerned about the
      writable/non-writable requirement.<br>
    </p>
    <pre style="box-sizing: border-box; overflow: auto; font-family: &quot;PT Mono&quot;, Monaco, monospace; font-size: 14px; display: block; padding: 10px; margin: 0px 0px 10.5px; line-height: 1.214; color: rgb(0, 0, 0); word-break: break-all; word-wrap: break-word; border: 1px solid rgb(204, 204, 204); border-radius: 4px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; widows: 1; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 253, 245);">

   Ephemeral-REQ-08: Yang MUST have a way to indicate in a data model
   that schema nodes have the following properties: ephemeral, writable/
   not-writable, and status/configuration.</pre>
    <p>I'm somewhat adverse to writable operational state, and hence I
      would prefer if this requirement was watered down to something
      like:</p>
    <pre style="box-sizing: border-box; overflow: auto; font-family: &quot;PT Mono&quot;, Monaco, monospace; font-size: 14px; display: block; padding: 10px; margin: 0px 0px 10.5px; line-height: 1.214; color: rgb(0, 0, 0); word-break: break-all; word-wrap: break-word; border: 1px solid rgb(204, 204, 204); border-radius: 4px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; widows: 1; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 253, 245);">   Ephemeral-REQ-08: In addition to config true/false, there MUST be a
   way to indicate that YANG schema nodes represent ephemeral state.
   It is desirable to allow for, and have to way to indicate, config
   false YANG schema nodes that are writable operational state.
</pre>
    <p><br>
    </p>
    <p>5) Ephemeral-Req-12, page 7:<br>
      Presumably the requirement is that the notification must indicate
      the node that we involved in the collision?Â  I.e. it isn't
      sufficient to just signal to the client that there has been a
      collision with some of their configuration?
    </p>
    <pre style="box-sizing: border-box; overflow: auto; font-family: &quot;PT Mono&quot;, Monaco, monospace; font-size: 14px; display: block; padding: 10px; margin: 0px 0px 10.5px; line-height: 1.214; color: rgb(0, 0, 0); word-break: break-all; word-wrap: break-word; border: 1px solid rgb(204, 204, 204); border-radius: 4px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; widows: 1; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 253, 245);">   Ephemeral-REQ-12: When a collision occurs as two clients are trying
   to write the same data node, this collision is considered an error
   and priorities were created to give a deterministic result.  When
   there is a collision, a notification MUST BE sent to the original
   client to give the original client a chance to deal with the issues
   surrounding the collision.  The original client may need to fix their
   state.</pre>
    <p>Should this be made explicit?Â  E.g. perhaps:<br>
    </p>
    <pre style="box-sizing: border-box; overflow: auto; font-family: &quot;PT Mono&quot;, Monaco, monospace; font-size: 14px; display: block; padding: 10px; margin: 0px 0px 10.5px; line-height: 1.214; color: rgb(0, 0, 0); word-break: break-all; word-wrap: break-word; border: 1px solid rgb(204, 204, 204); border-radius: 4px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; widows: 1; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 253, 245);">   Ephemeral-REQ-12: When a collision occurs as two clients are trying
   to write the same data node, this collision is considered an error
   and priorities were created to give a deterministic result.  When
   there is a collision, a notification (indicating which data node the
   collision occurred on) MUST BE sent to the original client to give
   the original client a chance to deal with the issues surrounding
   the collision.  The original client may need to fix their state.</pre>
    <p><br>
    </p>
    <p>6) Ephemeral-REQ-14, page 7:<br>
      I would suggest potentially rewording this to make the requirement
      and leeway on the solution more explicit.
    </p>
    <pre style="box-sizing: border-box; overflow: auto; font-family: &quot;PT Mono&quot;, Monaco, monospace; font-size: 14px; display: block; padding: 10px; margin: 0px 0px 10.5px; line-height: 1.214; color: rgb(0, 0, 0); word-break: break-all; word-wrap: break-word; border: 1px solid rgb(204, 204, 204); border-radius: 4px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; widows: 1; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 253, 245);">   Ephemeral-REQ-14: If two clients have the same priority, the
   architecture says the first one wins.  The I2RS protocol has this
   requirement to prevent oscillations between clients.  If one uses the
   last wins scenario, you may oscillate.  That was our opinion, but a
   design which prevents oscillation is the key point.</pre>
    <p>Proposed alternative text:</p>
    <pre style="box-sizing: border-box; overflow: auto; font-family: &quot;PT Mono&quot;, Monaco, monospace; font-size: 14px; display: block; padding: 10px; margin: 0px 0px 10.5px; line-height: 1.214; color: rgb(0, 0, 0); word-break: break-all; word-wrap: break-word; border: 1px solid rgb(204, 204, 204); border-radius: 4px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; widows: 1; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 253, 245);">   Ephemeral-REQ-14: A deterministic conflict resolution mechanism MUST
   be provided to handle the error scenario that two clients, with
   the same priority, update the same configuration data node.  The I2RS
   architecture gives one way that this could be achieved, by
   specifying that the first update wins.  Other solutions, that prevent
   oscillation of the config data node, are also acceptable.
</pre>
    <p><br>
    </p>
    <p>Cosmetic comments:</p>
    <p>7) Section 1. Introduction.Â  The requirements are no longer
      version specific, hence perhaps update the following text from:</p>
    <pre style="box-sizing: border-box; overflow: auto; font-family: &quot;PT Mono&quot;, Monaco, monospace; font-size: 14px; display: block; padding: 10px; margin: 0px 0px 10.5px; line-height: 1.214; color: rgb(0, 0, 0); word-break: break-all; word-wrap: break-word; border: 1px solid rgb(204, 204, 204); border-radius: 4px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; widows: 1; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 253, 245);">

   1.  select features from YANG, NETCONF, and RESTCONF per version of
       the I2RS protocol (See sections 4, 5, and 6)

   2.  propose additions to YANG, NETCONF, and RESTCONF per version of
       the I2RS protocol for key functions (ephemeral state, protocol
       security, publication/subscription service, traceability),</pre>
    <p>to:</p>
    <pre style="box-sizing: border-box; overflow: auto; font-family: &quot;PT Mono&quot;, Monaco, monospace; font-size: 14px; display: block; padding: 10px; margin: 0px 0px 10.5px; line-height: 1.214; color: rgb(0, 0, 0); word-break: break-all; word-wrap: break-word; border: 1px solid rgb(204, 204, 204); border-radius: 4px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; widows: 1; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 253, 245);">   1.  select features from YANG, NETCONF, and RESTCONF for the initial
       I2RS protocol version (See sections 4, 5, and 6).

   2.  propose additions to YANG, NETCONF, and RESTCONF for the initial
       I2RS protocol version for key functions (ephemeral state, protocol
       security, publication/subscription service, traceability).</pre>
    <p><br>
    </p>
    <p>8) Section 1. introduction.Â  I'm not sure that this 3rd bullet is
      relevant, and possibly could be removed, although equally it
      doesn't seem to do any harm:</p>
    <pre style="box-sizing: border-box; overflow: auto; font-family: &quot;PT Mono&quot;, Monaco, monospace; font-size: 14px; display: block; padding: 10px; margin: 0px 0px 10.5px; line-height: 1.214; color: rgb(0, 0, 0); word-break: break-all; word-wrap: break-word; border: 1px solid rgb(204, 204, 204); border-radius: 4px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; widows: 1; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 253, 245);">   3.  suggest protocol strawman as ideas for the NETCONF, RESTCONF, and
       YANG changes.
</pre>
    <br>
    <br>
    9) The document uses a mix of "Yang" and "YANG", probably should
    just use "YANG".<br class="Apple-interchange-newline">
    <p><br>
    </p>
    <p>10) Section 3. Ephemeral State Requirements:</p>
    <p>The document refers to "ephemeral configured state" here, but
      elsewhere (e.g. 3.4) "ephemeral configuration" or "ephemeral
      configuration state" is used.Â  It might be helpful for use of
      these terms to be consistent, I would suggest "ephemeral
      configuration" is sufficient.<br>
    </p>
    <p><br>
    </p>
    <p>11) Ephemeral-REQ-13, page 7:</p>
    <p>Minor omission in the last sentence.</p>
    <pre style="box-sizing: border-box; overflow: auto; font-family: &quot;PT Mono&quot;, Monaco, monospace; font-size: 14px; display: block; padding: 10px; margin: 0px 0px 10.5px; line-height: 1.214; color: rgb(0, 0, 0); word-break: break-all; word-wrap: break-word; border: 1px solid rgb(204, 204, 204); border-radius: 4px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; widows: 1; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 253, 245);">  Ephemeral-REQ-13: The requirement to support multi-headed control is
   required for collisions and the priority resolution of collisions.
   Multi-headed control is not tied to ephemeral state.  I2RS is not
   mandating how AAA supports priority.  Mechanisms which prevent
   collisions of two clients trying the same node of data are the focus.</pre>
    <p>Proposed:</p>
    <pre style="box-sizing: border-box; overflow: auto; font-family: &quot;PT Mono&quot;, Monaco, monospace; font-size: 14px; display: block; padding: 10px; margin: 0px 0px 10.5px; line-height: 1.214; color: rgb(0, 0, 0); word-break: break-all; word-wrap: break-word; border: 1px solid rgb(204, 204, 204); border-radius: 4px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; widows: 1; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 253, 245);">  Ephemeral-REQ-13: The requirement to support multi-headed control is
   required for collisions and the priority resolution of collisions.
   Multi-headed control is not tied to ephemeral state.  I2RS is not
   mandating how AAA supports priority.  Mechanisms which prevent
   collisions of two clients trying to modify the same node of data
   are the focus.</pre>
    <p><br>
    </p>
    <p>12) Ephemeral-REQ-15, page 7:<br>
      I would suggest that it might be better to refer to "Ephemeral
      state" rather than the I2RS ephemeral data-store.<br>
    </p>
    <pre style="box-sizing: border-box; overflow: auto; font-family: &quot;PT Mono&quot;, Monaco, monospace; font-size: 14px; display: block; padding: 10px; margin: 0px 0px 10.5px; line-height: 1.214; color: rgb(0, 0, 0); word-break: break-all; word-wrap: break-word; border: 1px solid rgb(204, 204, 204); border-radius: 4px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; widows: 1; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 253, 245);">   Ephemeral-REQ-15: Section 7.9 of the [I-D.ietf-i2rs-architecture]
   states the I2RS architecture does not include multi-message atomicity
   and roll-back mechanisms.  I2RS notes multiple operations in one or
   more messages handling can handle errors within the set of operations
   in many ways.  No multi-message commands SHOULD cause errors to be
   inserted into the I2RS ephemeral data-store.
</pre>
    Proposed:<br>
    <pre style="box-sizing: border-box; overflow: auto; font-family: &quot;PT Mono&quot;, Monaco, monospace; font-size: 14px; display: block; padding: 10px; margin: 0px 0px 10.5px; line-height: 1.214; color: rgb(0, 0, 0); word-break: break-all; word-wrap: break-word; border: 1px solid rgb(204, 204, 204); border-radius: 4px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; widows: 1; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 253, 245);">   Ephemeral-REQ-15: Section 7.9 of the [I-D.ietf-i2rs-architecture]
   states the I2RS architecture does not include multi-message atomicity
   and roll-back mechanisms.  I2RS notes multiple operations in one or
   more messages handling can handle errors within the set of operations
   in many ways.  No multi-message commands SHOULD cause errors to be
   inserted into the ephemeral state.</pre>
    <br>
    <p>Thanks,<br>
      Rob<br>
    </p>
  </body>
</html>

--------------2DDBCBF0E88477DF8E12FDA9--


From nobody Wed Jun 29 03:49:27 2016
Return-Path: <mbj@tail-f.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 C9CCA12DB49 for <i2rs@ietfa.amsl.com>; Wed, 29 Jun 2016 03:49:25 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.327
X-Spam-Level: 
X-Spam-Status: No, score=-3.327 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RP_MATCHES_RCVD=-1.426, SPF_PASS=-0.001] autolearn=ham autolearn_force=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 xFq-5xJIcaUZ for <i2rs@ietfa.amsl.com>; Wed, 29 Jun 2016 03:49:24 -0700 (PDT)
Received: from mail.tail-f.com (mail.tail-f.com [46.21.102.45]) by ietfa.amsl.com (Postfix) with ESMTP id 3297E12DA5B for <i2rs@ietf.org>; Wed, 29 Jun 2016 03:49:24 -0700 (PDT)
Received: from localhost (unknown [173.38.220.44]) by mail.tail-f.com (Postfix) with ESMTPSA id C55231AE02EF for <i2rs@ietf.org>; Wed, 29 Jun 2016 12:49:21 +0200 (CEST)
Date: Wed, 29 Jun 2016 12:49:46 +0200 (CEST)
Message-Id: <20160629.124946.1123239025236388287.mbj@tail-f.com>
To: i2rs@ietf.org
From: Martin Bjorklund <mbj@tail-f.com>
In-Reply-To: <004901d1cbf1$85b87430$91295c90$@ndzh.com>
References: <004901d1cbf1$85b87430$91295c90$@ndzh.com>
X-Mailer: Mew version 6.5 on Emacs 24.3 / Mule 6.0 (HANACHIRUSATO)
Mime-Version: 1.0
Content-Type: Text/Plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/fijtngvwWH2Abo8vg_VAX3RlsBM>
Subject: Re: [i2rs] FW: I-D Action: draft-ietf-i2rs-ephemeral-state-10.txt- 2 week WG LC (6/21 to 7/5/2016)
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 29 Jun 2016 10:49:26 -0000

"Susan Hares" <shares@ndzh.com> wrote:
> This begins a 2 WG LC last call on the text of
> draft-ietf-i2rs-ephemeral-state-10.txt.

Hi,

I have reviewed draft-ietf-i2rs-ephemeral-state-11, and here are my
comments.


o  Ephemeral-REQ-02

   I suggest you remove the text:

     it SHALL be considered a validation error if it does.

   The requirement is clear as it is without this.  And maybe the
   solution will make sure it is not even syntactially possible to
   define such constraints.


o  Ephemeral-REQ-03

   I think you need to define what you mean with "constraint".  For
   normal config, YANG has very detailed rules about when constraints
   are checked and what a server MUST do when a constraint becomes
   false.

   Since this requirement says that constraints can refer to fast
   changing state, you need to say what should happen if such a
   constraint suddenly becomes false due.


o  Ephemeral-REQ-04

   The requirement says that ephemeral state can refer to
   non-ephemeral state in constraints.  Does the term "non-ephemeral
   state" include configuration?  If so, does this mean that if an
   operator tries to delete some config, the existance of some
   ephemeral state may reject the config change request?


o  Ephemeral-REQ-07

   This requirement says:

     "Implementations MUST provide a mechanism..."

   Does this mean that this mechanism should not be standardized;
   rather implementations are required to invent some vendor-specific
   mechanism?


o  Ephemeral-REQ-08

   I understand "ephemeral" and "read/write".  But what does
   "status/configuration" mean in this context?  Can I have
   "ephemeral, read-only, configuration"?  Can I have
   "ephemeral, write, status"?


o  Ephemeral-REQ-09

   This requirement is fine, but why is it labeled *changes* to
   NETCONF?  NETCONF already supports this requirement.


o  Ephemeral-REQ-10

   This requirement is fine, but why is it labeled *changes* to
   RESTCONF?  RESTCONF already supports this requirement.


o  Ephemeral-REQ-13

   I do not understand what this requirement means.

   (BTW, the text should be rephrased; it now says "the requirement
   ... is required ...")


o  Ephemeral-REQ-14

   If this is not a new requirement, does it need to be part of this
   document?

   If the answer is yes, are there other things from the architecture
   document that should be listed here, e.g., details about priority
   interaction w/ local config?


o  Ephemeral-REQ-15

   I do not understand what this requirement means.


o  general

   s/Yang/YANG/g



/martin


From nobody Wed Jun 29 16:21:02 2016
Return-Path: <linda.dunbar@huawei.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 A6E3B12D913 for <i2rs@ietfa.amsl.com>; Wed, 29 Jun 2016 16:21:00 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.646
X-Spam-Level: 
X-Spam-Status: No, score=-5.646 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-1.426, SPF_PASS=-0.001] autolearn=ham autolearn_force=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 UT-7rZbL9GrF for <i2rs@ietfa.amsl.com>; Wed, 29 Jun 2016 16:20:58 -0700 (PDT)
Received: from lhrrgout.huawei.com (lhrrgout.huawei.com [194.213.3.17]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id DEEA912D86D for <i2rs@ietf.org>; Wed, 29 Jun 2016 16:20:57 -0700 (PDT)
Received: from 172.18.7.190 (EHLO lhreml708-cah.china.huawei.com) ([172.18.7.190]) by lhrrg02-dlp.huawei.com (MOS 4.3.7-GA FastPath queued) with ESMTP id CMX15709; Wed, 29 Jun 2016 23:20:55 +0000 (GMT)
Received: from DFWEML703-CAH.china.huawei.com (10.193.5.177) by lhreml708-cah.china.huawei.com (10.201.5.202) with Microsoft SMTP Server (TLS) id 14.3.235.1; Thu, 30 Jun 2016 00:20:54 +0100
Received: from DFWEML501-MBB.china.huawei.com ([10.193.5.179]) by DFWEML703-CAH.china.huawei.com ([10.193.5.177]) with mapi id 14.03.0235.001; Wed, 29 Jun 2016 16:20:50 -0700
From: Linda Dunbar <linda.dunbar@huawei.com>
To: Susan Hares <shares@ndzh.com>
Thread-Topic: relationship between "draft-ietf-i2rs-pkt-eca-data-model-00.txt" and "draft-ietf-i2rs-fb-rib-data-model-00"?
Thread-Index: AdHSXNyx59TLVxWvQ8i98HJYWSAu6Q==
Date: Wed, 29 Jun 2016 23:20:49 +0000
Message-ID: <4A95BA014132FF49AE685FAB4B9F17F657ED8E6F@dfweml501-mbb>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-originating-ip: [10.47.128.193]
Content-Type: multipart/alternative; boundary="_000_4A95BA014132FF49AE685FAB4B9F17F657ED8E6Fdfweml501mbb_"
MIME-Version: 1.0
X-CFilter-Loop: Reflected
X-Mirapoint-Virus-RAPID-Raw: score=unknown(0), refid=str=0001.0A020202.577457D7.01D0, ss=1, re=0.000, recu=0.000, reip=0.000,  cl=1, cld=1, fgs=0, ip=0.0.0.0, so=2013-06-18 04:22:30, dmn=2013-03-21 17:37:32
X-Mirapoint-Loop-Id: 6652fb17f4f49fe1aebb39e9630e2ed6
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/QP0n28LggUpB0W7QUxcuxola75s>
Cc: "i2rs@ietf.org" <i2rs@ietf.org>
Subject: [i2rs] relationship between "draft-ietf-i2rs-pkt-eca-data-model-00.txt" and "draft-ietf-i2rs-fb-rib-data-model-00"?
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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, 29 Jun 2016 23:21:01 -0000

--_000_4A95BA014132FF49AE685FAB4B9F17F657ED8E6Fdfweml501mbb_
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

Sue, qin and Russ,

It seems to me that there are a lot of overlap between the following two dr=
afts:


-        draft-ietf-i2rs-pkt-eca-data-model-00.txt

-        draft-ietf-i2rs-fb-rib-data-model-00

they are all on forwarding packets based on matching criteria of various pa=
cket headers (L2/L3/L4).

Why need two separate IDs?
Can we merge them?

Just curious.

Linda

--_000_4A95BA014132FF49AE685FAB4B9F17F657ED8E6Fdfweml501mbb_
Content-Type: text/html; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" xmlns:o=3D"urn:schemas-micr=
osoft-com:office:office" xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" xmlns=3D"http:=
//www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3Dus-ascii"=
>
<meta name=3D"Generator" content=3D"Microsoft Word 12 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
	{font-family:Wingdings;
	panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
	{font-family:SimSun;
	panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
	{font-family:"\@SimSun";
	panose-1:2 1 6 0 3 1 1 1 1 1;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0in;
	margin-bottom:.0001pt;
	font-size:11.0pt;
	font-family:"Calibri","sans-serif";}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:blue;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:purple;
	text-decoration:underline;}
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
	{mso-style-priority:34;
	margin-top:0in;
	margin-right:0in;
	margin-bottom:0in;
	margin-left:.5in;
	margin-bottom:.0001pt;
	font-size:11.0pt;
	font-family:"Calibri","sans-serif";}
span.EmailStyle17
	{mso-style-type:personal-compose;
	font-family:"Calibri","sans-serif";
	color:windowtext;}
.MsoChpDefault
	{mso-style-type:export-only;}
@page WordSection1
	{size:8.5in 11.0in;
	margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
	{page:WordSection1;}
/* List Definitions */
@list l0
	{mso-list-id:1351177674;
	mso-list-type:hybrid;
	mso-list-template-ids:1865419534 1915669136 67698691 67698693 67698689 676=
98691 67698693 67698689 67698691 67698693;}
@list l0:level1
	{mso-level-start-at:0;
	mso-level-number-format:bullet;
	mso-level-text:-;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;
	font-family:"Calibri","sans-serif";
	mso-fareast-font-family:SimSun;
	mso-bidi-font-family:"Times New Roman";}
ol
	{margin-bottom:0in;}
ul
	{margin-bottom:0in;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang=3D"EN-US" link=3D"blue" vlink=3D"purple">
<div class=3D"WordSection1">
<p class=3D"MsoNormal">Sue, qin and Russ, <o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">It seems to me that there are a lot of overlap betwe=
en the following two drafts:<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoListParagraph" style=3D"text-indent:-.25in;mso-list:l0 level=
1 lfo1"><![if !supportLists]><span style=3D"mso-list:Ignore">-<span style=
=3D"font:7.0pt &quot;Times New Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;
</span></span><![endif]>draft-ietf-i2rs-pkt-eca-data-model-00.txt<o:p></o:p=
></p>
<p class=3D"MsoListParagraph" style=3D"text-indent:-.25in;mso-list:l0 level=
1 lfo1"><![if !supportLists]><span style=3D"mso-list:Ignore">-<span style=
=3D"font:7.0pt &quot;Times New Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;
</span></span><![endif]>draft-ietf-i2rs-fb-rib-data-model-00<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">they are all on forwarding packets based on matching=
 criteria of various packet headers (L2/L3/L4).
<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">Why need two separate IDs? <o:p></o:p></p>
<p class=3D"MsoNormal">Can we merge them? <o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">Just curious. <o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">Linda <o:p></o:p></p>
</div>
</body>
</html>

--_000_4A95BA014132FF49AE685FAB4B9F17F657ED8E6Fdfweml501mbb_--


From nobody Thu Jun 30 07:12:59 2016
Return-Path: <shares@ndzh.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 7E8F012D0DA for <i2rs@ietfa.amsl.com>; Thu, 30 Jun 2016 07:12:57 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 3.139
X-Spam-Level: ***
X-Spam-Status: No, score=3.139 tagged_above=-999 required=5 tests=[BAYES_05=-0.5, DOS_OUTLOOK_TO_MX=2.845, HTML_MESSAGE=0.001, RDNS_NONE=0.793] autolearn=no autolearn_force=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 kEC8-6T8tK27 for <i2rs@ietfa.amsl.com>; Thu, 30 Jun 2016 07:12:56 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id E3695128E19 for <i2rs@ietf.org>; Thu, 30 Jun 2016 07:12:55 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=174.124.195.80; 
From: "Susan Hares" <shares@ndzh.com>
To: "'Linda Dunbar'" <linda.dunbar@huawei.com>
References: <4A95BA014132FF49AE685FAB4B9F17F657ED8E6F@dfweml501-mbb>
In-Reply-To: <4A95BA014132FF49AE685FAB4B9F17F657ED8E6F@dfweml501-mbb>
Date: Thu, 30 Jun 2016 10:12:20 -0400
Message-ID: <49ba01d1d2d9$6a616900$3f243b00$@ndzh.com>
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="----=_NextPart_000_49BB_01D1D2B7.E351EBE0"
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQHncFAgf84dghdL2BTfsUw/dGlBUJ/WzK2A
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/lJ5mL5a45BVSTh0v7lVXGpqMs1E>
Cc: i2rs@ietf.org
Subject: Re: [i2rs] relationship between "draft-ietf-i2rs-pkt-eca-data-model-00.txt" and "draft-ietf-i2rs-fb-rib-data-model-00"?
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 30 Jun 2016 14:12:57 -0000

This is a multipart message in MIME format.

------=_NextPart_000_49BB_01D1D2B7.E351EBE0
Content-Type: text/plain;
	charset="us-ascii"
Content-Transfer-Encoding: 7bit

Linda: 

 

The English text may be similar, but the yang data modules are different in
the drafts.  Since filters are still under consideration, I wanted to handle
draft-ietf-i2rs-pkt-eca-data-model separately from the FB-RIB.  The drafts
can be merged or left separate.  

 

Is there a reason to merge these drafts?

 

Sue 

 

 

From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Linda Dunbar
Sent: Wednesday, June 29, 2016 7:21 PM
To: Susan Hares
Cc: i2rs@ietf.org
Subject: [i2rs] relationship between
"draft-ietf-i2rs-pkt-eca-data-model-00.txt" and
"draft-ietf-i2rs-fb-rib-data-model-00"?

 

Sue, qin and Russ, 

 

It seems to me that there are a lot of overlap between the following two
drafts:

 

-          draft-ietf-i2rs-pkt-eca-data-model-00.txt

-          draft-ietf-i2rs-fb-rib-data-model-00

 

they are all on forwarding packets based on matching criteria of various
packet headers (L2/L3/L4). 

 

Why need two separate IDs? 

Can we merge them? 

 

Just curious. 

 

Linda 


------=_NextPart_000_49BB_01D1D2B7.E351EBE0
Content-Type: text/html;
	charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" =
xmlns:o=3D"urn:schemas-microsoft-com:office:office" =
xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" =
xmlns=3D"http://www.w3.org/TR/REC-html40"><head><meta =
http-equiv=3DContent-Type content=3D"text/html; =
charset=3Dus-ascii"><meta name=3DGenerator content=3D"Microsoft Word 14 =
(filtered medium)"><style><!--
/* Font Definitions */
@font-face
	{font-family:SimSun;
	panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
	{font-family:Tahoma;
	panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
	{font-family:"\@SimSun";
	panose-1:2 1 6 0 3 1 1 1 1 1;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0in;
	margin-bottom:.0001pt;
	font-size:11.0pt;
	font-family:"Calibri","sans-serif";}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:blue;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:purple;
	text-decoration:underline;}
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
	{mso-style-priority:34;
	margin-top:0in;
	margin-right:0in;
	margin-bottom:0in;
	margin-left:.5in;
	margin-bottom:.0001pt;
	font-size:11.0pt;
	font-family:"Calibri","sans-serif";}
span.EmailStyle18
	{mso-style-type:personal;
	font-family:"Calibri","sans-serif";
	color:windowtext;}
span.EmailStyle19
	{mso-style-type:personal-reply;
	font-family:"Calibri","sans-serif";
	color:#1F497D;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-size:10.0pt;}
@page WordSection1
	{size:8.5in 11.0in;
	margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
	{page:WordSection1;}
/* List Definitions */
@list l0
	{mso-list-id:1351177674;
	mso-list-type:hybrid;
	mso-list-template-ids:1865419534 1915669136 67698691 67698693 67698689 =
67698691 67698693 67698689 67698691 67698693;}
@list l0:level1
	{mso-level-start-at:0;
	mso-level-number-format:bullet;
	mso-level-text:-;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;
	font-family:"Calibri","sans-serif";
	mso-fareast-font-family:SimSun;
	mso-bidi-font-family:"Times New Roman";}
@list l0:level2
	{mso-level-tab-stop:1.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l0:level3
	{mso-level-tab-stop:1.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l0:level4
	{mso-level-tab-stop:2.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l0:level5
	{mso-level-tab-stop:2.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l0:level6
	{mso-level-tab-stop:3.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l0:level7
	{mso-level-tab-stop:3.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l0:level8
	{mso-level-tab-stop:4.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l0:level9
	{mso-level-tab-stop:4.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
ol
	{margin-bottom:0in;}
ul
	{margin-bottom:0in;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]--></head><body lang=3DEN-US link=3Dblue =
vlink=3Dpurple><div class=3DWordSection1><p class=3DMsoNormal><span =
style=3D'color:#1F497D'>Linda: <o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'color:#1F497D'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span style=3D'color:#1F497D'>The English text may be =
similar, but the yang data modules are different in the drafts.&nbsp; =
Since filters are still under consideration, I wanted to handle =
draft-ietf-i2rs-pkt-eca-data-model separately from the FB-RIB. &nbsp;The =
drafts can be merged or left separate.&nbsp; <o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'color:#1F497D'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span style=3D'color:#1F497D'>Is there a reason to =
merge these drafts?<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#1F497D'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span style=3D'color:#1F497D'>Sue =
<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#1F497D'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'color:#1F497D'><o:p>&nbsp;</o:p></span></p><div><div =
style=3D'border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in =
0in 0in'><p class=3DMsoNormal><b><span =
style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span>=
</b><span style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif"'> =
i2rs [mailto:i2rs-bounces@ietf.org] <b>On Behalf Of </b>Linda =
Dunbar<br><b>Sent:</b> Wednesday, June 29, 2016 7:21 PM<br><b>To:</b> =
Susan Hares<br><b>Cc:</b> i2rs@ietf.org<br><b>Subject:</b> [i2rs] =
relationship between =
&quot;draft-ietf-i2rs-pkt-eca-data-model-00.txt&quot; and =
&quot;draft-ietf-i2rs-fb-rib-data-model-00&quot;?<o:p></o:p></span></p></=
div></div><p class=3DMsoNormal><o:p>&nbsp;</o:p></p><p =
class=3DMsoNormal>Sue, qin and Russ, <o:p></o:p></p><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p><p class=3DMsoNormal>It seems to =
me that there are a lot of overlap between the following two =
drafts:<o:p></o:p></p><p class=3DMsoNormal><o:p>&nbsp;</o:p></p><p =
class=3DMsoListParagraph style=3D'text-indent:-.25in;mso-list:l0 level1 =
lfo2'><![if !supportLists]><span style=3D'mso-list:Ignore'>-<span =
style=3D'font:7.0pt "Times New =
Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
</span></span><![endif]>draft-ietf-i2rs-pkt-eca-data-model-00.txt<o:p></o=
:p></p><p class=3DMsoListParagraph =
style=3D'text-indent:-.25in;mso-list:l0 level1 lfo2'><![if =
!supportLists]><span style=3D'mso-list:Ignore'>-<span =
style=3D'font:7.0pt "Times New =
Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
</span></span><![endif]>draft-ietf-i2rs-fb-rib-data-model-00<o:p></o:p></=
p><p class=3DMsoNormal><o:p>&nbsp;</o:p></p><p class=3DMsoNormal>they =
are all on forwarding packets based on matching criteria of various =
packet headers (L2/L3/L4). <o:p></o:p></p><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p><p class=3DMsoNormal>Why need two =
separate IDs? <o:p></o:p></p><p class=3DMsoNormal>Can we merge them? =
<o:p></o:p></p><p class=3DMsoNormal><o:p>&nbsp;</o:p></p><p =
class=3DMsoNormal>Just curious. <o:p></o:p></p><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p><p class=3DMsoNormal>Linda =
<o:p></o:p></p></div></body></html>
------=_NextPart_000_49BB_01D1D2B7.E351EBE0--


From nobody Thu Jun 30 08:39:15 2016
Return-Path: <shares@ndzh.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 2D4FD12D193 for <i2rs@ietfa.amsl.com>; Thu, 30 Jun 2016 08:39:13 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.738
X-Spam-Level: *
X-Spam-Status: No, score=1.738 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, RDNS_NONE=0.793] autolearn=no autolearn_force=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 ha4F7K9dorEg for <i2rs@ietfa.amsl.com>; Thu, 30 Jun 2016 08:39:11 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 3953F12D185 for <i2rs@ietf.org>; Thu, 30 Jun 2016 08:39:11 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=174.124.195.80; 
From: "Susan Hares" <shares@ndzh.com>
To: "'Martin Bjorklund'" <mbj@tail-f.com>, <i2rs@ietf.org>
References: <004901d1cbf1$85b87430$91295c90$@ndzh.com> <20160629.124946.1123239025236388287.mbj@tail-f.com>
In-Reply-To: <20160629.124946.1123239025236388287.mbj@tail-f.com>
Date: Thu, 30 Jun 2016 11:38:34 -0400
Message-ID: <4a3b01d1d2e5$76dca350$6495e9f0$@ndzh.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQEY5e8iHcIwDPPcBwyla1FJlV/FqgKm8o93oV69BFA=
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/fbFUWGfxWEuKG-8MchjfR87P2HA>
Cc: 'Jeffrey Haas' <jhaas@pfrc.org>
Subject: Re: [i2rs] FW: I-D Action: draft-ietf-i2rs-ephemeral-state-10.txt- 2 week WG LC (6/21 to 7/5/2016)
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 30 Jun 2016 15:39:13 -0000

Martin: 

Thank you for the comments.  Please see the responses inline. 

One bit of background may help in Ephemeral-REQ-11 through Ephemeral-REQ-14.
While NETCONF/RESTCONF is specified in this version the ephemeral
requirements, other protocols may be included in the future (PROTOBUF, etc).
At that point, this document would be expanded to include these other
protocols. 

Summary:  Changes limited to /Yang/YANG/ change.  Other changes may occur
upon further details. 

Sue 


-----Original Message-----
From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Martin Bjorklund
Sent: Wednesday, June 29, 2016 6:50 AM
To: i2rs@ietf.org
Subject: Re: [i2rs] FW: I-D Action: draft-ietf-i2rs-ephemeral-state-10.txt-
2 week WG LC (6/21 to 7/5/2016)

"Susan Hares" <shares@ndzh.com> wrote:
> This begins a 2 WG LC last call on the text of 
> draft-ietf-i2rs-ephemeral-state-10.txt.

Hi,

I have reviewed draft-ietf-i2rs-ephemeral-state-11, and here are my
comments.


>o  Ephemeral-REQ-02
>
> I suggest you remove the text:
>
 >   it SHALL be considered a validation error if it does.
>
 > The requirement is clear as it is without this.  And maybe the
>   solution will make sure it is not even syntactially possible to
 >  define such constraints.

Sue: Since the I2RS debate requested this be added for clarity and 
 you have stated the requirement is clear - it will be left in the
requirements. 
It would be wonderful if the solution prevented this syntax. 

Summary: No change here 

>o  Ephemeral-REQ-03
>
 > I think you need to define what you mean with "constraint".  For
  > normal config, YANG has very detailed rules about when constraints
 >are checked and what a server MUST do when a constraint becomes
  > false.

 >  Since this requirement says that constraints can refer to fast
 > changing state, you need to say what should happen if such a
  > constraint suddenly becomes false due.

For the I2RS state which is ephemeral configuration state, the 
constraints may have all of 8.3 in yang 1.1 or part of the yang 1.1
constraint. 
The final definition of the ephemeral configuration state
depends on the design of operational state modules. 
Every effort we have made to tie this down has resulted in cycles of 
unproductive discussion.  Therefore, this portion will not be re-opened. 

For operational state listed in ephemeral constraints going quickly from
TRUE to FALSE, please note that an event notification will be sent to the 
I2RS Client.   See the event-notification draft for specifics. 

Summary: No change here. 

> o  Ephemeral-REQ-04
>  The requirement says that ephemeral state can refer to
> non-ephemeral state in constraints.  Does the term "non-ephemeral
> state" include configuration?  If so, does this mean that if an
> operator tries to delete some config, the existance of some
>  ephemeral state may reject the config change request?

Sue: Please refer to the sentence in the top of this section: 
  In requirements Ephemeral-REQ-01 to Ephemeral-05, Ephemeral state is
   defined as potentially including both ephemeral configured state and
   operational state.

Non-ephemeral state can be configuration or operational state (e.g. MPLS
LSP-ID
or BGP RIB).    

If the operator deletes some "local configuration" (in I2RS terms), and the
I2RS 
Ephemeral state depends on the local configuration - the I2RS agent will 
Provide a notification that the ephemeral configuration state or the 
Operational state defined in an ephemeral model is no longer valid.  
The I2RS client must handle this one. 

Summary: No change 


o  Ephemeral-REQ-07

 >This requirement says:
>
>    "Implementations MUST provide a mechanism..."
>
>  Does this mean that this mechanism should not be standardized;
> rather implementations are required to invent some vendor-specific
> mechanism?

Sue:  Previous netconf/netmod reviewers have cautioned the I2RS WG on
defining a solutions.  If the NETCONF/NETMOD does not 
define a solution - then the implementation should provide a solution. 
Of course, a standardized solution would be preferred. 

>o  Ephemeral-REQ-08
>
 > I understand "ephemeral" and "read/write".  But what does
 > "status/configuration" mean in this context?  Can I have
 >  "ephemeral, read-only, configuration"?  Can I have
 > "ephemeral, write, status"?
>
> Ephemeral-REQ-08: Yang MUST have a way to indicate in a data model
> that schema nodes have the following properties: ephemeral, writable/
>  not-writable, and status/configuration.

Here we are indicating that Ephemeral state may be Ephemeral configuration
state or 
Operational state.  Every time we have not used "ephemeral", "read/write", 
"status/configuration"  - we have bumped into someone's operational data
model. 
Unless the netmod group has a finalized version of operational state, it
will 
Remain this way. 

o  Ephemeral-REQ-09

>   This requirement is fine, but why is it labeled *changes* to
> NETCONF?  NETCONF already supports this requirement.

Do you really support the following: 

   1.  Support for communication mechanisms to enable an I2RS client to
       determine that an I2RS agent supports the mechanisms needed for
     I2RS operation.

   2.  The ephemeral state must support notification of write conflicts
      using the priority requirements defined in section 7 below in
      requirements Ephemeral-REQ-11 through Ephemeral-REQ-14).

This is not what other netconf/netmod people have indicated. 

Summary: Need response on -09 and -10 before changing.

>o  Ephemeral-REQ-10
>
>   This requirement is fine, but why is it labeled *changes* to
> RESTCONF?  RESTCONF already supports this requirement.

Are you really sure you support priority requirements as 
specified in items Ephemeral-REQ-11 through Ephemeral-REQ-14? 
Not what other people have said.  Does not hurt if you do? 

Summary: Need response on -09 and -10 before changing. 

>o  Ephemeral-REQ-13
>
 >  I do not understand what this requirement means.
>
>   (BTW, the text should be rephrased; it now says "the requirement
> ... is required ...")

   Ephemeral-REQ-13: The requirement to support multi-headed control is
   required for collisions and the priority resolution of collisions.
   Multi-headed control is not tied to ephemeral state.  I2RS is not
   mandating how AAA supports priority.  Mechanisms which prevent
   collisions of two clients trying the same node of data are the focus.

I believe this text refines the requirement to support multi-headed control
to only be required for collisions and priority resolution of collisions. 
Perhaps you understood the English in a different manner. 

This text is terse, and assumes you understand the I2RS architecture. 
Rather than repeat that text here, perhaps you will review it and see if you
then understand this text. 
We have been terse based on feedback from netconf/netmod reviewers. 

>o  Ephemeral-REQ-14
>
> If this is not a new requirement, does it need to be part of this
>  document?
> If the answer is yes, are there other things from the architecture
> document that should be listed here, e.g., details about priority
>  interaction w/ local config?

Again, we were cautioned in our early discussions not to define the solution
or to assume a solution in I2RS requirements. 

Summary: No change 

>o  Ephemeral-REQ-15
> I do not understand what this requirement means.

Example: 

I2RS client                I2RS Agent 
===========          =============
Message 0 [query to see if eth0 is up] 
                                 [response eth0 is up ] 
Message 1 [install I2RS Static route associated with eth0 ]  
Message 2 [install BGP I2RS route dependent on I2RS static route]
                                [Message 1-reply success]
                                [Message 2-reply success]

Message 1 and Message 2 are individual actions but linked.  However, 
Message 2 will not work if the I2RS static route has not be installed. 

I2RS does not include roll-back or atomicity of Message 1 and Message 2. 
It requires that the I2RS client know the status of each action. 

None of these multiple message sequences should allow the 
I2RS agent to insert errors into the Ephemeral Configuration state or 
Ephemeral operational state. 

Does this example help? 

Summary: No changes 

o  general

   s/Yang/YANG/g

Thank you - I will change this after other revisions have been suggested. 


/martin

_______________________________________________
i2rs mailing list
i2rs@ietf.org
https://www.ietf.org/mailman/listinfo/i2rs


From nobody Thu Jun 30 09:16:06 2016
Return-Path: <shares@ndzh.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 B108312DADB for <i2rs@ietfa.amsl.com>; Thu, 30 Jun 2016 09:16:04 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.749
X-Spam-Level: *
X-Spam-Status: No, score=1.749 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, HTML_MESSAGE=0.001, RDNS_NONE=0.793, T_KAM_HTML_FONT_INVALID=0.01] autolearn=no autolearn_force=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 GAWnLeDZL5R2 for <i2rs@ietfa.amsl.com>; Thu, 30 Jun 2016 09:16:03 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id A151612D53B for <i2rs@ietf.org>; Thu, 30 Jun 2016 09:16:02 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=174.124.195.80; 
From: "Susan Hares" <shares@ndzh.com>
To: "'Robert Wilton'" <rwilton@cisco.com>, <i2rs@ietf.org>
References: <4f70e94d-f73b-73a7-c41b-9ab5ffeeda6f@cisco.com>
In-Reply-To: <4f70e94d-f73b-73a7-c41b-9ab5ffeeda6f@cisco.com>
Date: Thu, 30 Jun 2016 12:15:29 -0400
Message-ID: <4a5201d1d2ea$9eef05e0$dccd11a0$@ndzh.com>
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="----=_NextPart_000_4A53_01D1D2C9.17E18490"
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQLFTksMOMokz5ko+uSOkEHfh/xdsp4bLnKw
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/8JpOeex3ocuENWQCPGKxqWomU6M>
Subject: Re: [i2rs] Review of draft-ietf-i2rs-ephemeral-state-11
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 30 Jun 2016 16:16:05 -0000

This is a multipart message in MIME format.

------=_NextPart_000_4A53_01D1D2C9.17E18490
Content-Type: text/plain;
	charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Robert:=20

=20

Thank you for your comments.  See resolution of comments below.  Version =
-12 will be sent to the list to handle most of these comments.=20

=20

Sue=20

=20

From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Robert Wilton
Sent: Monday, June 27, 2016 11:30 AM
To: i2rs@ietf.org
Subject: [i2rs] Review of draft-ietf-i2rs-ephemeral-state-11

=20

Hi,

I've reviewed draft-ietf-i2rs-ephemeral-state-11 and given a few minor =
comments below.  Generally I think that I understand the requirements =
stated in this document.

Minors comments:

1) Ephemeral-REQ-01 (page 5):

   Ephemeral-REQ-01: I2RS requires ephemeral state; i.e. state that does
   not persist across reboots.  If state must be restored, it should be
   done solely by replay actions from the I2RS client via the I2RS
   agent.

The architecture document indicates that the ephemeral state would (or =
is that may) also be lost on other circumstances such as process restart =
of the I2RS agent.  Does this need to be clarified in the requirement?  =
E.g.

Sue: In our previous discussions,  other people suggest that =
=E2=80=9Creboots=E2=80=9D covered hardware and software reboot of the =
I2RS agent.   And that the specific nature of the reboot was too-much =
information for the requirement.=20

=20

   Ephemeral-REQ-01: I2RS requires ephemeral state; i.e. state that MUST
   NOT persist across reboots of the device or I2RS Agent subsystem. If
   state must be restored, it should be done solely by replay actions
   from the I2RS client via the I2RS agent.

=20

2) Hierarchy: (page 5)
Based on the previous description, I would possibly split =
Ephemeral-REQ-06 up into the following requirements:=20

Old (from ephemeral-state:10):

   Ephemeral-REQ-06: The ability to augment an object with appropriate
   YANG structures that have the property of being ephemeral.  An object
   defined as any one of the following: yang module, submodule or
   components of submodule, or schema node.

Old (from ephemeral-state-11):

   Ephemeral-REQ-06: The ability to augment Yang schema nodes with
   additional Yang Schema nodes that have the property of being
   ephemeral.

Proposed:

   Ephemeral-REQ-06:
=20
   1. The ability to define a YANG module or submodule schema that
   only contains data nodes with the property of being ephemeral.
=20
   2. The ability to augment a YANG data model with additional YANG
   schema nodes that have the property of being ephemeral.

I will accept this change and release in it version-12. =20

=20

3) Ephemeral-REQ-07: (page 6):

   Ephemeral-REQ-07: Ephemeral configuration state could override
   overlapping local configuration state, or vice-versa.
   Implementations MUST provide a mechanism to choose which takes
   precedence.  This mechanism MUST include local configuration (policy)
   and MAY be provided via the I2RS protocol mechanisms.

I note that this requirement doesn't specify the scope of whether the =
override mechanism should operate globally or on a per data node basis.  =
I'm not sure whether this needs to be clarified - since the text in the =
architecture document makes it pretty clear that a global level =
resolution is sufficient.

Sue:  Again, we were cautioned to not specify the design, but only =
provide a result.  The global is sufficient.=20

4) Ephemeral-REQ-08: (page 6):
Similar to Juergen's comments, I'm concerned about the =
writable/non-writable requirement.

   Ephemeral-REQ-08: Yang MUST have a way to indicate in a data model
   that schema nodes have the following properties: ephemeral, writable/
   not-writable, and status/configuration.

I'm somewhat adverse to writable operational state, and hence I would =
prefer if this requirement was watered down to something like:

   Ephemeral-REQ-08: In addition to config true/false, there MUST be a
   way to indicate that YANG schema nodes represent ephemeral state.
   It is desirable to allow for, and have to way to indicate, config
   false YANG schema nodes that are writable operational state.

Sue: You are Juergen are concerned about writeable/non-writeable.   =
Martin is concerned about status/configuration.  The I2RS authors =
believe we are running into the different operational state models.  =
Each time we change this requirement we get another response.   The =
requirement will stay for now.  I suspect the we will be working on the =
design of the solution after we have settled on the operational state =
models.=20

5) Ephemeral-Req-12, page 7:
Presumably the requirement is that the notification must indicate the =
node that we involved in the collision?  I.e. it isn't sufficient to =
just signal to the client that there has been a collision with some of =
their configuration?=20

   Ephemeral-REQ-12: When a collision occurs as two clients are trying
   to write the same data node, this collision is considered an error
   and priorities were created to give a deterministic result.  When
   there is a collision, a notification MUST BE sent to the original
   client to give the original client a chance to deal with the issues
   surrounding the collision.  The original client may need to fix their
   state.

Should this be made explicit?  E.g. perhaps:

   Ephemeral-REQ-12: When a collision occurs as two clients are trying
   to write the same data node, this collision is considered an error
   and priorities were created to give a deterministic result.  When
   there is a collision, a notification (indicating which data node the
   collision occurred on) MUST BE sent to the original client to give
   the original client a chance to deal with the issues surrounding
   the collision.  The original client may need to fix their state.

Sue:  For some data models, it may be important to provide more than =
just that.  How about:=20

  When there is a collision, a notification  (which includes an =
indication of the data node the collision occurred on)

MUST BE sent to the original client to give the original client a chance =
to deal with the issues surrounding the collision. =20

6) Ephemeral-REQ-14, page 7:
I would suggest potentially rewording this to make the requirement and =
leeway on the solution more explicit.=20

   Ephemeral-REQ-14: If two clients have the same priority, the
   architecture says the first one wins.  The I2RS protocol has this
   requirement to prevent oscillations between clients.  If one uses the
   last wins scenario, you may oscillate.  That was our opinion, but a
   design which prevents oscillation is the key point.

Proposed alternative text:

   Ephemeral-REQ-14: A deterministic conflict resolution mechanism MUST
   be provided to handle the error scenario that two clients, with
   the same priority, update the same configuration data node.  The I2RS
   architecture gives one way that this could be achieved, by
   specifying that the first update wins.  Other solutions, that prevent
   oscillation of the config data node, are also acceptable.

Sue: Accepted =E2=80=93 this will be released with version 2.=20

Cosmetic comments:

7) Section 1. Introduction.  The requirements are no longer version =
specific, hence perhaps update the following text from:

=20
=20
   1.  select features from YANG, NETCONF, and RESTCONF per version of
       the I2RS protocol (See sections 4, 5, and 6)
=20
   2.  propose additions to YANG, NETCONF, and RESTCONF per version of
       the I2RS protocol for key functions (ephemeral state, protocol
       security, publication/subscription service, traceability),

to:

   1.  select features from YANG, NETCONF, and RESTCONF for the initial
       I2RS protocol version (See sections 4, 5, and 6).
=20
   2.  propose additions to YANG, NETCONF, and RESTCONF for the initial
       I2RS protocol version for key functions (ephemeral state, =
protocol
       security, publication/subscription service, traceability).

Sue: We will probably have a subsequent version of the I2RS protocol.  I =
would prefer to leave this as stated so this is clear. =20

8) Section 1. introduction.  I'm not sure that this 3rd bullet is =
relevant, and possibly could be removed, although equally it doesn't =
seem to do any harm:

   3.  suggest protocol strawman as ideas for the NETCONF, RESTCONF, and
       YANG changes.

Sue: There is a protocol strawman that will be submitted based on =
experience. =20

=20


9) The document uses a mix of "Yang" and "YANG", probably should just =
use "YANG".

Fixed in version 12.=20

10) Section 3. Ephemeral State Requirements:

>The document refers to "ephemeral configured state" here, but elsewhere =
(e.g. 3.4) "ephemeral configuration" or "ephemeral configuration state" =
is used.  It might be helpful for use of these terms to be consistent, I =
would suggest "ephemeral configuration" is >sufficient.

Sue: Ephemeral state is defined as ephemeral configuration state and =
operational state in the=20


 =
<https://tools.ietf.org/html/draft-ietf-i2rs-ephemeral-state-11#section-3=
> 3.  Ephemeral State Requirements

=20
=20
   In requirements Ephemeral-REQ-01 to Ephemeral-05, Ephemeral state is
   defined as potentially including both ephemeral configured state and
   operational state.

11) Ephemeral-REQ-13, page 7:

Minor omission in the last sentence.

  Ephemeral-REQ-13: The requirement to support multi-headed control is
   required for collisions and the priority resolution of collisions.
   Multi-headed control is not tied to ephemeral state.  I2RS is not
   mandating how AAA supports priority.  Mechanisms which prevent
   collisions of two clients trying the same node of data are the focus.

Proposed:

  Ephemeral-REQ-13: The requirement to support multi-headed control is
   required for collisions and the priority resolution of collisions.
   Multi-headed control is not tied to ephemeral state.  I2RS is not
   mandating how AAA supports priority.  Mechanisms which prevent
   collisions of two clients trying to modify the same node of data
   are the focus.

Sue: Thank you.  Version -12 will have this change.=20

=20

12) Ephemeral-REQ-15, page 7:
I would suggest that it might be better to refer to "Ephemeral state" =
rather than the I2RS ephemeral data-store.

   Ephemeral-REQ-15: Section 7.9 of the [I-D.ietf-i2rs-architecture]
   states the I2RS architecture does not include multi-message atomicity
   and roll-back mechanisms.  I2RS notes multiple operations in one or
   more messages handling can handle errors within the set of operations
   in many ways.  No multi-message commands SHOULD cause errors to be
   inserted into the I2RS ephemeral data-store.

Proposed:



   Ephemeral-REQ-15: Section 7.9 of the [I-D.ietf-i2rs-architecture]
   states the I2RS architecture does not include multi-message atomicity
   and roll-back mechanisms.  I2RS notes multiple operations in one or
   more messages handling can handle errors within the set of operations
   in many ways.  No multi-message commands SHOULD cause errors to be
   inserted into the ephemeral state.

=20

Accepted change for -15.=20

=20

Thanks,
Rob


------=_NextPart_000_4A53_01D1D2C9.17E18490
Content-Type: text/html;
	charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" =
xmlns:o=3D"urn:schemas-microsoft-com:office:office" =
xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" =
xmlns=3D"http://www.w3.org/TR/REC-html40"><head><meta =
http-equiv=3DContent-Type content=3D"text/html; charset=3Dutf-8"><meta =
name=3DGenerator content=3D"Microsoft Word 14 (filtered =
medium)"><style><!--
/* Font Definitions */
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
	{font-family:Tahoma;
	panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
	{font-family:Consolas;
	panose-1:2 11 6 9 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0in;
	margin-bottom:.0001pt;
	font-size:12.0pt;
	font-family:"Times New Roman","serif";
	color:black;}
h2
	{mso-style-priority:9;
	mso-style-link:"Heading 2 Char";
	mso-margin-top-alt:auto;
	margin-right:0in;
	mso-margin-bottom-alt:auto;
	margin-left:0in;
	font-size:18.0pt;
	font-family:"Times New Roman","serif";
	color:windowtext;
	font-weight:bold;}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:blue;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:purple;
	text-decoration:underline;}
p
	{mso-style-priority:99;
	mso-margin-top-alt:auto;
	margin-right:0in;
	mso-margin-bottom-alt:auto;
	margin-left:0in;
	font-size:12.0pt;
	font-family:"Times New Roman","serif";
	color:black;}
pre
	{mso-style-priority:99;
	mso-style-link:"HTML Preformatted Char";
	margin:0in;
	margin-bottom:.0001pt;
	font-size:10.0pt;
	font-family:"Courier New";
	color:black;}
span.HTMLPreformattedChar
	{mso-style-name:"HTML Preformatted Char";
	mso-style-priority:99;
	mso-style-link:"HTML Preformatted";
	font-family:Consolas;
	color:black;}
span.EmailStyle20
	{mso-style-type:personal-reply;
	font-family:"Calibri","sans-serif";
	color:#1F497D;}
span.Heading2Char
	{mso-style-name:"Heading 2 Char";
	mso-style-priority:9;
	mso-style-link:"Heading 2";
	font-weight:bold;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-size:10.0pt;}
@page WordSection1
	{size:8.5in 11.0in;
	margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
	{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]--></head><body bgcolor=3Dwhite =
lang=3DEN-US link=3Dblue vlink=3Dpurple><div class=3DWordSection1><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Robert: <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Thank you for your comments.=C2=A0 See resolution of comments =
below.=C2=A0 Version -12 will be sent to the list to handle most of =
these comments. <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Sue <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><div><div =
style=3D'border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in =
0in 0in'><p class=3DMsoNormal><b><span =
style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif";color:windowt=
ext'>From:</span></b><span =
style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif";color:windowt=
ext'> i2rs [mailto:i2rs-bounces@ietf.org] <b>On Behalf Of </b>Robert =
Wilton<br><b>Sent:</b> Monday, June 27, 2016 11:30 AM<br><b>To:</b> =
i2rs@ietf.org<br><b>Subject:</b> [i2rs] Review of =
draft-ietf-i2rs-ephemeral-state-11<o:p></o:p></span></p></div></div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p><p>Hi,<o:p></o:p></p><p>I've =
reviewed draft-ietf-i2rs-ephemeral-state-11 and given a few minor =
comments below.&nbsp; Generally I think that I understand the =
requirements stated in this document.<o:p></o:p></p><p>Minors =
comments:<o:p></o:p></p><p>1) Ephemeral-REQ-01 (page =
5):<o:p></o:p></p><div style=3D'mso-element:para-border-div;border:solid =
#CCCCCC 1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FFFDF5'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in;box-sizing: border-box;word-wrap: =
break-word;border-radius: 4px;orphans: auto;text-align:start;widows: =
1;-webkit-text-stroke-width: 0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>=C2=A0=C2=A0 Ephemeral-REQ-01: I2RS requires =
ephemeral state; i.e. state that does<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 not =
persist across reboots.=C2=A0 If state must be restored, it should =
be<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 done =
solely by replay actions from the I2RS client via the =
I2RS<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 =
agent.<o:p></o:p></span></pre></div><p>The architecture document =
indicates that the ephemeral state would (or is that may) also be lost =
on other circumstances such as process restart of the I2RS agent.&nbsp; =
Does this need to be clarified in the requirement?&nbsp; =
E.g.<o:p></o:p></p><p><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Sue: In our previous discussions,=C2=A0 other people suggest that =
=E2=80=9Creboots=E2=80=9D covered hardware and software reboot of the =
I2RS agent. =C2=A0=C2=A0And that the specific nature of the reboot was =
too-much information for the requirement. <o:p></o:p></span></p><p><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><div =
style=3D'mso-element:para-border-div;border:solid #CCCCCC =
1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FFFDF5'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in;box-sizing: border-box;word-wrap: =
break-word;border-radius: 4px;orphans: auto;text-align:start;widows: =
1;-webkit-text-stroke-width: 0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>=C2=A0=C2=A0 Ephemeral-REQ-01: I2RS requires =
ephemeral state; i.e. state that MUST<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 NOT =
persist across reboots of the device or I2RS Agent subsystem. =
If<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 state =
must be restored, it should be done solely by replay =
actions<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 from =
the I2RS client via the I2RS =
agent.<o:p></o:p></span></pre></div><p><o:p>&nbsp;</o:p></p><p>2) =
Hierarchy: (page 5)<br>Based on the previous description, I would =
possibly split Ephemeral-REQ-06 up into the following requirements: =
<o:p></o:p></p><p>Old (from ephemeral-state:10):<o:p></o:p></p><div =
style=3D'mso-element:para-border-div;border:solid #CCCCCC =
1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FFFDF5'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in;box-sizing: border-box;word-wrap: =
break-word;border-radius: 4px;orphans: auto;text-align:start;widows: =
1;-webkit-text-stroke-width: 0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>=C2=A0=C2=A0 Ephemeral-REQ-06: The ability to =
augment an object with appropriate<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 YANG =
structures that have the property of being ephemeral.=C2=A0 An =
object<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 =
defined as any one of the following: yang module, submodule =
or<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 =
components of submodule, or schema =
node.<o:p></o:p></span></pre></div><p>Old (from =
ephemeral-state-11):<o:p></o:p></p><div =
style=3D'mso-element:para-border-div;border:solid #CCCCCC =
1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FFFDF5'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in;box-sizing: border-box;word-wrap: =
break-word;border-radius: 4px;orphans: auto;text-align:start;widows: =
1;-webkit-text-stroke-width: 0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>=C2=A0=C2=A0 Ephemeral-REQ-06: The ability to =
augment Yang schema nodes with<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 =
additional Yang Schema nodes that have the property of =
being<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 =
ephemeral.<o:p></o:p></span></pre></div><p>Proposed:<o:p></o:p></p><div =
style=3D'mso-element:para-border-div;border:solid #CCCCCC =
1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FFFDF5'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in;box-sizing: border-box;word-wrap: =
break-word;border-radius: 4px;orphans: auto;text-align:start;widows: =
1;-webkit-text-stroke-width: 0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>=C2=A0=C2=A0 =
Ephemeral-REQ-06:<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'> =
<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span =
style=3D'font-size:10.5pt'>=C2=A0=C2=A0=C2=A01. The ability to define a =
YANG module or submodule schema that<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 only =
contains data nodes with the property of being =
ephemeral.<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span =
style=3D'font-size:10.5pt'><o:p>&nbsp;</o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 2. =
The ability to augment a YANG data model with additional =
YANG<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 =
schema nodes that have the property of being =
ephemeral.<o:p></o:p></span></pre></div><p><span =
style=3D'color:#1F497D'> I will accept this change and release in it =
version-12. =C2=A0<o:p></o:p></span></p><p><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p>3) Ephemeral-REQ-07: (page =
6):<o:p></o:p></p><div style=3D'mso-element:para-border-div;border:solid =
#CCCCCC 1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FFFDF5'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in;box-sizing: border-box;word-wrap: =
break-word;border-radius: 4px;orphans: auto;text-align:start;widows: =
1;-webkit-text-stroke-width: 0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>=C2=A0=C2=A0 Ephemeral-REQ-07: Ephemeral =
configuration state could override<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 =
overlapping local configuration state, or =
vice-versa.<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 =
Implementations MUST provide a mechanism to choose which =
takes<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 =
precedence.=C2=A0 This mechanism MUST include local configuration =
(policy)<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 and =
MAY be provided via the I2RS protocol =
mechanisms.<o:p></o:p></span></pre></div><p>I note that this requirement =
doesn't specify the scope of whether the override mechanism should =
operate globally or on a per data node basis.&nbsp; I'm not sure whether =
this needs to be clarified - since the text in the architecture document =
makes it pretty clear that a global level resolution is sufficient.<span =
style=3D'color:#1F497D'><o:p></o:p></span></p><p><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Sue: =C2=A0Again, we were cautioned to not specify the design, but =
only provide a result.=C2=A0 The global is sufficient. =
<o:p></o:p></span></p><p>4) Ephemeral-REQ-08: (page 6):<br>Similar to =
Juergen's comments, I'm concerned about the writable/non-writable =
requirement.<span style=3D'color:#1F497D'><o:p></o:p></span></p><div =
style=3D'mso-element:para-border-div;border:solid #CCCCCC =
1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FFFDF5'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 =
Ephemeral-REQ-08: Yang MUST have a way to indicate in a data =
model<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 that =
schema nodes have the following properties: ephemeral, =
writable/<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 =
not-writable, and =
status/configuration.<o:p></o:p></span></pre></div><p>I'm somewhat =
adverse to writable operational state, and hence I would prefer if this =
requirement was watered down to something like:<o:p></o:p></p><div =
style=3D'mso-element:para-border-div;border:solid #CCCCCC =
1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FFFDF5'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in;box-sizing: border-box;word-wrap: =
break-word;border-radius: 4px;orphans: auto;text-align:start;widows: =
1;-webkit-text-stroke-width: 0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>=C2=A0=C2=A0 Ephemeral-REQ-08: In addition to =
config true/false, there MUST be a<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 way =
to indicate that YANG schema nodes represent ephemeral =
state.<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 It is =
desirable to allow for, and have to way to indicate, =
config<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 false =
YANG schema nodes that are writable operational =
state.<o:p></o:p></span></pre></div><p><span =
style=3D'color:#1F497D'>Sue: You are Juergen are concerned about =
writeable/non-writeable.=C2=A0 =C2=A0Martin is concerned about =
status/configuration. =C2=A0The I2RS authors believe we are running into =
the different operational state models. =C2=A0Each time we change this =
requirement we get another response.=C2=A0=C2=A0 The requirement will =
stay for now.=C2=A0 I suspect the we will be working on the design of =
the solution after we have settled on the operational state models. =
<o:p></o:p></span></p><p>5) Ephemeral-Req-12, page 7:<br>Presumably the =
requirement is that the notification must indicate the node that we =
involved in the collision?&nbsp; I.e. it isn't sufficient to just signal =
to the client that there has been a collision with some of their =
configuration? <o:p></o:p></p><div =
style=3D'mso-element:para-border-div;border:solid #CCCCCC =
1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FFFDF5'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in;box-sizing: border-box;word-wrap: =
break-word;border-radius: 4px;orphans: auto;text-align:start;widows: =
1;-webkit-text-stroke-width: 0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>=C2=A0=C2=A0=C2=A0Ephemeral-REQ-12: When a =
collision occurs as two clients are trying<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 to =
write the same data node, this collision is considered an =
error<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 and =
priorities were created to give a deterministic result.=C2=A0 =
When<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 there =
is a collision, a notification MUST BE sent to the =
original<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 =
client to give the original client a chance to deal with the =
issues<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 =
surrounding the collision.=C2=A0 The original client may need to fix =
their<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 =
state.<o:p></o:p></span></pre></div><p>Should this be made =
explicit?&nbsp; E.g. perhaps:<o:p></o:p></p><div =
style=3D'mso-element:para-border-div;border:solid #CCCCCC =
1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FFFDF5'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in;box-sizing: border-box;word-wrap: =
break-word;border-radius: 4px;orphans: auto;text-align:start;widows: =
1;-webkit-text-stroke-width: 0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>=C2=A0=C2=A0 Ephemeral-REQ-12: When a =
collision occurs as two clients are trying<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 to =
write the same data node, this collision is considered an =
error<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 and =
priorities were created to give a deterministic result.=C2=A0 =
When<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 there =
is a collision, a notification (indicating which data node =
the<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 =
collision occurred on) MUST BE sent to the original client to =
give<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 the =
original client a chance to deal with the issues =
surrounding<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 the =
collision.=C2=A0 The original client may need to fix their =
state.<o:p></o:p></span></pre></div><p><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Sue:=C2=A0 For some data models, it may be important to provide more =
than just that.=C2=A0 How about: <o:p></o:p></span></p><p><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>=C2=A0=C2=A0When there is a collision, a notification=C2=A0 (which =
includes an indication of the data node the collision occurred =
on)<o:p></o:p></span></p><p><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'> MUST BE sent to the original client to give the original client a =
chance to deal with the issues surrounding the collision.=C2=A0 =
<o:p></o:p></span></p><p>6) Ephemeral-REQ-14, page 7:<br>I would suggest =
potentially rewording this to make the requirement and leeway on the =
solution more explicit. <o:p></o:p></p><div =
style=3D'mso-element:para-border-div;border:solid #CCCCCC =
1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FFFDF5'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in;box-sizing: border-box;word-wrap: =
break-word;border-radius: 4px;orphans: auto;text-align:start;widows: =
1;-webkit-text-stroke-width: 0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>=C2=A0=C2=A0=C2=A0Ephemeral-REQ-14: If two =
clients have the same priority, the<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 =
architecture says the first one wins.=C2=A0 The I2RS protocol has =
this<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 =
requirement to prevent oscillations between clients.=C2=A0 If one uses =
the<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 last =
wins scenario, you may oscillate.=C2=A0 That was our opinion, but =
a<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 =
design which prevents oscillation is the key =
point.<o:p></o:p></span></pre></div><p>Proposed alternative =
text:<o:p></o:p></p><div =
style=3D'mso-element:para-border-div;border:solid #CCCCCC =
1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FFFDF5'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in;box-sizing: border-box;word-wrap: =
break-word;border-radius: 4px;orphans: auto;text-align:start;widows: =
1;-webkit-text-stroke-width: 0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>=C2=A0=C2=A0 Ephemeral-REQ-14: A =
deterministic conflict resolution mechanism =
MUST<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 be =
provided to handle the error scenario that two clients, =
with<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 the =
same priority, update the same configuration data node.=C2=A0 The =
I2RS<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 =
architecture gives one way that this could be achieved, =
by<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 =
specifying that the first update wins.=C2=A0 Other solutions, that =
prevent<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 =
oscillation of the config data node, are also =
acceptable.<o:p></o:p></span></pre></div><p><span =
style=3D'color:#1F497D'>Sue: Accepted =E2=80=93 this will be released =
with version 2. </span><o:p></o:p></p><p>Cosmetic =
comments:<o:p></o:p></p><p>7) Section 1. Introduction.&nbsp; The =
requirements are no longer version specific, hence perhaps update the =
following text from:<o:p></o:p></p><div =
style=3D'mso-element:para-border-div;border:solid #CCCCCC =
1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FFFDF5'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in;box-sizing: border-box;word-wrap: =
break-word;border-radius: 4px;orphans: auto;text-align:start;widows: =
1;-webkit-text-stroke-width: 0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'><o:p>&nbsp;</o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span =
style=3D'font-size:10.5pt'><o:p>&nbsp;</o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 =
1.=C2=A0 select features from YANG, NETCONF, and RESTCONF per version =
of<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span =
style=3D'font-size:10.5pt'>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 the I2RS =
protocol (See sections 4, 5, and 6)<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span =
style=3D'font-size:10.5pt'><o:p>&nbsp;</o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 =
2.=C2=A0 propose additions to YANG, NETCONF, and RESTCONF per version =
of<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span =
style=3D'font-size:10.5pt'>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 the I2RS =
protocol for key functions (ephemeral state, =
protocol<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span =
style=3D'font-size:10.5pt'>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =
security, publication/subscription service, =
traceability),<o:p></o:p></span></pre></div><p>to:<o:p></o:p></p><div =
style=3D'mso-element:para-border-div;border:solid #CCCCCC =
1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FFFDF5'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in;box-sizing: border-box;word-wrap: =
break-word;border-radius: 4px;orphans: auto;text-align:start;widows: =
1;-webkit-text-stroke-width: 0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>=C2=A0=C2=A0 1.=C2=A0 select features from =
YANG, NETCONF, and RESTCONF for the initial<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span =
style=3D'font-size:10.5pt'>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 I2RS =
protocol version (See sections 4, 5, and 6).<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span =
style=3D'font-size:10.5pt'><o:p>&nbsp;</o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 =
2.=C2=A0 propose additions to YANG, NETCONF, and RESTCONF for the =
initial<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span =
style=3D'font-size:10.5pt'>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 I2RS =
protocol version for key functions (ephemeral state, =
protocol<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0=C2=A0 =
=C2=A0=C2=A0=C2=A0security, publication/subscription service, =
traceability).<o:p></o:p></span></pre></div><p><span =
style=3D'color:#1F497D'>Sue: We will probably have a subsequent version =
of the I2RS protocol. =C2=A0I would prefer to leave this as stated so =
this is clear. =C2=A0<o:p></o:p></span></p><p>8) Section 1. =
introduction.&nbsp; I'm not sure that this 3rd bullet is relevant, and =
possibly could be removed, although equally it doesn't seem to do any =
harm:<o:p></o:p></p><div =
style=3D'mso-element:para-border-div;border:solid #CCCCCC =
1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FFFDF5'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in;box-sizing: border-box;word-wrap: =
break-word;border-radius: 4px;orphans: auto;text-align:start;widows: =
1;-webkit-text-stroke-width: 0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>=C2=A0=C2=A0 3.=C2=A0 suggest protocol =
strawman as ideas for the NETCONF, RESTCONF, =
and<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span =
style=3D'font-size:10.5pt'>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 YANG =
changes.<o:p></o:p></span></pre></div><p class=3DMsoNormal><span =
style=3D'color:#1F497D'>Sue: There is a protocol strawman that will be =
submitted based on experience.=C2=A0 <o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><br>9) The document =
uses a mix of &quot;Yang&quot; and &quot;YANG&quot;, probably should =
just use &quot;YANG&quot;.<span =
style=3D'color:#1F497D'><o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Fixed in version 12. <o:p></o:p></span></p><p>10) Section 3. =
Ephemeral State Requirements:<o:p></o:p></p><p><span =
style=3D'color:#1F497D'>&gt;</span>The document refers to =
&quot;ephemeral configured state&quot; here, but elsewhere (e.g. 3.4) =
&quot;ephemeral configuration&quot; or &quot;ephemeral configuration =
state&quot; is used.&nbsp; It might be helpful for use of these terms to =
be consistent, I would suggest &quot;ephemeral configuration&quot; is =
<span =
style=3D'color:#1F497D'>&gt;</span>sufficient.<o:p></o:p></p><p><span =
style=3D'color:#1F497D'>Sue: Ephemeral state is defined as ephemeral =
configuration state and operational state in the =
<o:p></o:p></span></p><h2 style=3D'mso-line-height-alt:0pt'><a =
name=3Dsection-3></a><a =
href=3D"https://tools.ietf.org/html/draft-ietf-i2rs-ephemeral-state-11#se=
ction-3"><span style=3D'font-size:10.0pt;font-family:"Courier =
New";color:black;text-decoration:none'>3</span></a><span =
style=3D'font-size:10.0pt;font-family:"Courier New";color:black'>.=C2=A0 =
Ephemeral State =
Requirements<o:p></o:p></span></h2><pre><o:p>&nbsp;</o:p></pre><pre><o:p>=
&nbsp;</o:p></pre><pre>=C2=A0=C2=A0 In requirements Ephemeral-REQ-01 to =
Ephemeral-05, Ephemeral state is<o:p></o:p></pre><pre> =
=C2=A0=C2=A0defined as potentially including both ephemeral configured =
state and<o:p></o:p></pre><pre>=C2=A0=C2=A0 operational =
state.<o:p></o:p></pre><p>11) Ephemeral-REQ-13, page =
7:<o:p></o:p></p><p>Minor omission in the last =
sentence.<o:p></o:p></p><div =
style=3D'mso-element:para-border-div;border:solid #CCCCCC =
1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FFFDF5'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in;box-sizing: border-box;word-wrap: =
break-word;border-radius: 4px;orphans: auto;text-align:start;widows: =
1;-webkit-text-stroke-width: 0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>=C2=A0 Ephemeral-REQ-13: The requirement to =
support multi-headed control is<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 =
required for collisions and the priority resolution of =
collisions.<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 =
Multi-headed control is not tied to ephemeral state.=C2=A0 I2RS is =
not<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 =
mandating how AAA supports priority.=C2=A0 Mechanisms which =
prevent<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 =
collisions of two clients trying the same node of data are the =
focus.<o:p></o:p></span></pre></div><p>Proposed:<o:p></o:p></p><div =
style=3D'mso-element:para-border-div;border:solid #CCCCCC =
1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FFFDF5'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in;box-sizing: border-box;word-wrap: =
break-word;border-radius: 4px;orphans: auto;text-align:start;widows: =
1;-webkit-text-stroke-width: 0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>=C2=A0 Ephemeral-REQ-13: The requirement to =
support multi-headed control is<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 =
required for collisions and the priority resolution of =
collisions.<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 =
Multi-headed control is not tied to ephemeral state.=C2=A0 I2RS is =
not<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 =
mandating how AAA supports priority.=C2=A0 Mechanisms which =
prevent<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 =
collisions of two clients trying to modify the same node of =
data<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 are =
the focus.<o:p></o:p></span></pre></div><p><span =
style=3D'color:#1F497D'>Sue: Thank you.=C2=A0 Version -12 will have this =
change. <o:p></o:p></span></p><p><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p>12) Ephemeral-REQ-15, page 7:<br>I =
would suggest that it might be better to refer to &quot;Ephemeral =
state&quot; rather than the I2RS ephemeral =
data-store.<o:p></o:p></p><div =
style=3D'mso-element:para-border-div;border:solid #CCCCCC =
1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FFFDF5'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in;box-sizing: border-box;word-wrap: =
break-word;border-radius: 4px;orphans: auto;text-align:start;widows: =
1;-webkit-text-stroke-width: 0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>=C2=A0=C2=A0 Ephemeral-REQ-15: Section 7.9 of =
the [I-D.ietf-i2rs-architecture]<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 =
states the I2RS architecture does not include multi-message =
atomicity<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 and =
roll-back mechanisms.=C2=A0 I2RS notes multiple operations in one =
or<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 more =
messages handling can handle errors within the set of =
operations<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 in =
many ways.=C2=A0 No multi-message commands SHOULD cause errors to =
be<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 =
inserted into the I2RS ephemeral =
data-store.<o:p></o:p></span></pre></div><p =
class=3DMsoNormal>Proposed:<br><br><o:p></o:p></p><div =
style=3D'mso-element:para-border-div;border:solid #CCCCCC =
1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FFFDF5'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 =
Ephemeral-REQ-15: Section 7.9 of the =
[I-D.ietf-i2rs-architecture]<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 =
states the I2RS architecture does not include multi-message =
atomicity<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 and =
roll-back mechanisms.=C2=A0 I2RS notes multiple operations in one =
or<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 more =
messages handling can handle errors within the set of =
operations<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 in =
many ways.=C2=A0 No multi-message commands SHOULD cause errors to =
be<o:p></o:p></span></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;bord=
er:none;padding:0in'><span style=3D'font-size:10.5pt'>=C2=A0=C2=A0 =
inserted into the ephemeral state.<o:p></o:p></span></pre></div><p =
class=3DMsoNormal><span =
style=3D'color:#1F497D'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Accepted change for -15. <o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p>Thanks,<br>Rob<o:p></o:p></p></div></bo=
dy></html>
------=_NextPart_000_4A53_01D1D2C9.17E18490--


From nobody Thu Jun 30 09:39:21 2016
Return-Path: <rwilton@cisco.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 3A04C12D1E0 for <i2rs@ietfa.amsl.com>; Thu, 30 Jun 2016 09:39:20 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -15.937
X-Spam-Level: 
X-Spam-Status: No, score=-15.937 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H4=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-1.426, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_KAM_HTML_FONT_INVALID=0.01, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.com
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 VPFOnIJVtTI9 for <i2rs@ietfa.amsl.com>; Thu, 30 Jun 2016 09:39:16 -0700 (PDT)
Received: from aer-iport-1.cisco.com (aer-iport-1.cisco.com [173.38.203.51]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id C56241288B8 for <i2rs@ietf.org>; Thu, 30 Jun 2016 09:39:15 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=56610; q=dns/txt; s=iport; t=1467304755; x=1468514355; h=subject:to:references:from:message-id:date:mime-version: in-reply-to; bh=3gRGvO4WIBxSqMtkAfs4/aZCRES4QDvBZlX/sojP5WQ=; b=ADoOFpveWoKhxXiIeb1+09NG0+q29EPyr+O2a8UjnQk5GBTzg5TVAIuw +oYZD8ceRxzr/KwZ9FDS0iYqxxznnIo+lMyFT64oOxjvA6g3cLQ4XOgEZ 6PCgUeP18b6cfyyP5/Clu0UVYWVzllBPtA0k6Jy9szrIEciDlkDOaNQxY 8=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0CvAgASSnVX/xbLJq1bgnCBJCtSuU2Bf?= =?us-ascii?q?CSCPIM3AoFzFAEBAQEBAQFlJ4RMAQEBAwEaCQpRCwkCDgMBAwEBAQ0TAQYDAgJ?= =?us-ascii?q?GAwYIBgEMBgIBAReIDQgOlhWdHZAXAQEBAQEBAQEBAQEBAQEBAQEBAQEBFwWGK?= =?us-ascii?q?IF3glaEdoJLgloFiHWKYIU2hgiIOYFqh2GFX4ZViTAeNoNxOzKJQQEBAQ?=
X-IronPort-AV: E=Sophos;i="5.26,553,1459814400";  d="scan'208,217";a="678010653"
Received: from aer-iport-nat.cisco.com (HELO aer-core-3.cisco.com) ([173.38.203.22]) by aer-iport-1.cisco.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 30 Jun 2016 16:39:13 +0000
Received: from [10.63.23.64] (dhcp-ensft1-uk-vla370-10-63-23-64.cisco.com [10.63.23.64]) by aer-core-3.cisco.com (8.14.5/8.14.5) with ESMTP id u5UGdDIm013506; Thu, 30 Jun 2016 16:39:13 GMT
To: Susan Hares <shares@ndzh.com>, i2rs@ietf.org
References: <4f70e94d-f73b-73a7-c41b-9ab5ffeeda6f@cisco.com> <4a5201d1d2ea$9eef05e0$dccd11a0$@ndzh.com>
From: Robert Wilton <rwilton@cisco.com>
Message-ID: <33da1b11-f55a-b1ac-2b44-d376ccf4dd9f@cisco.com>
Date: Thu, 30 Jun 2016 17:39:13 +0100
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.1.1
MIME-Version: 1.0
In-Reply-To: <4a5201d1d2ea$9eef05e0$dccd11a0$@ndzh.com>
Content-Type: multipart/alternative; boundary="------------69DE85A7ABD813380121EBDD"
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/clqmg-qeT0j1PJKl4l2HqMTksuU>
Subject: Re: [i2rs] Review of draft-ietf-i2rs-ephemeral-state-11
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 30 Jun 2016 16:39:20 -0000

This is a multi-part message in MIME format.
--------------69DE85A7ABD813380121EBDD
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi Sue,

All fine with me.  A couple of comments inline ...


On 30/06/2016 17:15, Susan Hares wrote:
>
> Robert:
>
> Thank you for your comments.  See resolution of comments below. 
> Version -12 will be sent to the list to handle most of these comments.
>
> Sue
>
> *From:*i2rs [mailto:i2rs-bounces@ietf.org] *On Behalf Of *Robert Wilton
> *Sent:* Monday, June 27, 2016 11:30 AM
> *To:* i2rs@ietf.org
> *Subject:* [i2rs] Review of draft-ietf-i2rs-ephemeral-state-11
>
> Hi,
>
> I've reviewed draft-ietf-i2rs-ephemeral-state-11 and given a few minor 
> comments below.  Generally I think that I understand the requirements 
> stated in this document.
>
> Minors comments:
>
> 1) Ephemeral-REQ-01 (page 5):
>
>    Ephemeral-REQ-01: I2RS requires ephemeral state; i.e. state that does
>    not persist across reboots.  If state must be restored, it should be
>    done solely by replay actions from the I2RS client via the I2RS
>    agent.
>
> The architecture document indicates that the ephemeral state would (or 
> is that may) also be lost on other circumstances such as process 
> restart of the I2RS agent.  Does this need to be clarified in the 
> requirement?  E.g.
>
> Sue: In our previous discussions,  other people suggest that â€œrebootsâ€ 
> covered hardware and software reboot of the I2RS agent.   And that the 
> specific nature of the reboot was too-much information for the 
> requirement.
>
Rob: OK.

>    Ephemeral-REQ-01: I2RS requires ephemeral state; i.e. state that MUST
>    NOT persist across reboots of the device or I2RS Agent subsystem. If
>    state must be restored, it should be done solely by replay actions
>    from the I2RS client via the I2RS agent.
>
> 2) Hierarchy: (page 5)
> Based on the previous description, I would possibly split 
> Ephemeral-REQ-06 up into the following requirements:
>
> Old (from ephemeral-state:10):
>
>    Ephemeral-REQ-06: The ability to augment an object with appropriate
>    YANG structures that have the property of being ephemeral.  An object
>    defined as any one of the following: yang module, submodule or
>    components of submodule, or schema node.
>
> Old (from ephemeral-state-11):
>
>    Ephemeral-REQ-06: The ability to augment Yang schema nodes with
>    additional Yang Schema nodes that have the property of being
>    ephemeral.
>
> Proposed:
>
>    Ephemeral-REQ-06:
>    1. The ability to define a YANG module or submodule schema that
>    only contains data nodes with the property of being ephemeral.
>    2. The ability to augment a YANG data model with additional YANG
>    schema nodes that have the property of being ephemeral.
>
> I will accept this change and release in it version-12.
>
> 3) Ephemeral-REQ-07: (page 6):
>
>    Ephemeral-REQ-07: Ephemeral configuration state could override
>    overlapping local configuration state, or vice-versa.
>    Implementations MUST provide a mechanism to choose which takes
>    precedence.  This mechanism MUST include local configuration (policy)
>    and MAY be provided via the I2RS protocol mechanisms.
>
> I note that this requirement doesn't specify the scope of whether the 
> override mechanism should operate globally or on a per data node 
> basis.  I'm not sure whether this needs to be clarified - since the 
> text in the architecture document makes it pretty clear that a global 
> level resolution is sufficient.
>
> Sue:  Again, we were cautioned to not specify the design, but only 
> provide a result.  The global is sufficient.
>
Rob: OK

> 4) Ephemeral-REQ-08: (page 6):
> Similar to Juergen's comments, I'm concerned about the 
> writable/non-writable requirement.
>
>    Ephemeral-REQ-08: Yang MUST have a way to indicate in a data model
>    that schema nodes have the following properties: ephemeral, writable/
>    not-writable, and status/configuration.
>
> I'm somewhat adverse to writable operational state, and hence I would 
> prefer if this requirement was watered down to something like:
>
>    Ephemeral-REQ-08: In addition to config true/false, there MUST be a
>    way to indicate that YANG schema nodes represent ephemeral state.
>    It is desirable to allow for, and have to way to indicate, config
>    false YANG schema nodes that are writable operational state.
>
> Sue: You are Juergen are concerned about writeable/non-writeable.  
>  Martin is concerned about status/configuration.  The I2RS authors 
> believe we are running into the different operational state models. 
>  Each time we change this requirement we get another response.   The 
> requirement will stay for now.  I suspect the we will be working on 
> the design of the solution after we have settled on the operational 
> state models.
>
Rob:
My actual concern is that what I have proposed as a datastore solution 
cannot meet this requirement, because I think that only configuration 
should be writable, and hence the writable/non-writable property is 
implicit.


> 5) Ephemeral-Req-12, page 7:
> Presumably the requirement is that the notification must indicate the 
> node that we involved in the collision?  I.e. it isn't sufficient to 
> just signal to the client that there has been a collision with some of 
> their configuration?
>
>    Ephemeral-REQ-12: When a collision occurs as two clients are trying
>    to write the same data node, this collision is considered an error
>    and priorities were created to give a deterministic result.  When
>    there is a collision, a notification MUST BE sent to the original
>    client to give the original client a chance to deal with the issues
>    surrounding the collision.  The original client may need to fix their
>    state.
>
> Should this be made explicit?  E.g. perhaps:
>
>    Ephemeral-REQ-12: When a collision occurs as two clients are trying
>    to write the same data node, this collision is considered an error
>    and priorities were created to give a deterministic result.  When
>    there is a collision, a notification (indicating which data node the
>    collision occurred on) MUST BE sent to the original client to give
>    the original client a chance to deal with the issues surrounding
>    the collision.  The original client may need to fix their state.
>
> Sue: For some data models, it may be important to provide more than 
> just that.  How about:
>
>   When there is a collision, a notification  (which includes an 
> indication of the data node the collision occurred on)
>
> MUST BE sent to the original client to give the original client a 
> chance to deal with the issues surrounding the collision.
>
Rob: Yes, OK.


> 6) Ephemeral-REQ-14, page 7:
> I would suggest potentially rewording this to make the requirement and 
> leeway on the solution more explicit.
>
>    Ephemeral-REQ-14: If two clients have the same priority, the
>    architecture says the first one wins.  The I2RS protocol has this
>    requirement to prevent oscillations between clients.  If one uses the
>    last wins scenario, you may oscillate.  That was our opinion, but a
>    design which prevents oscillation is the key point.
>
> Proposed alternative text:
>
>    Ephemeral-REQ-14: A deterministic conflict resolution mechanism MUST
>    be provided to handle the error scenario that two clients, with
>    the same priority, update the same configuration data node.  The I2RS
>    architecture gives one way that this could be achieved, by
>    specifying that the first update wins.  Other solutions, that prevent
>    oscillation of the config data node, are also acceptable.
>
> Sue: Accepted â€“ this will be released with version 2.
>
> Cosmetic comments:
>
> 7) Section 1. Introduction.  The requirements are no longer version 
> specific, hence perhaps update the following text from:
>
>    1.  select features from YANG, NETCONF, and RESTCONF per version of
>        the I2RS protocol (See sections 4, 5, and 6)
>    2.  propose additions to YANG, NETCONF, and RESTCONF per version of
>        the I2RS protocol for key functions (ephemeral state, protocol
>        security, publication/subscription service, traceability),
>
> to:
>
>    1.  select features from YANG, NETCONF, and RESTCONF for the initial
>        I2RS protocol version (See sections 4, 5, and 6).
>    2.  propose additions to YANG, NETCONF, and RESTCONF for the initial
>        I2RS protocol version for key functions (ephemeral state, protocol
>        security, publication/subscription service, traceability).
>
> Sue: We will probably have a subsequent version of the I2RS protocol. 
>  I would prefer to leave this as stated so this is clear.
>
> 8) Section 1. introduction.  I'm not sure that this 3rd bullet is 
> relevant, and possibly could be removed, although equally it doesn't 
> seem to do any harm:
>
>    3.  suggest protocol strawman as ideas for the NETCONF, RESTCONF, and
>        YANG changes.
>
> Sue: There is a protocol strawman that will be submitted based on 
> experience.
>
>
> 9) The document uses a mix of "Yang" and "YANG", probably should just 
> use "YANG".
>
> Fixed in version 12.
>
> 10) Section 3. Ephemeral State Requirements:
>
> >The document refers to "ephemeral configured state" here, but 
> elsewhere (e.g. 3.4) "ephemeral configuration" or "ephemeral 
> configuration state" is used.  It might be helpful for use of these 
> terms to be consistent, I would suggest "ephemeral configuration" is 
> >sufficient.
>
> Sue: Ephemeral state is defined as ephemeral configuration state and 
> operational state in the
>
Rob: It was only a minor nit, I was suggesting consistency of the term, 
perhaps change "ephemeral configuration"and "ephemeral configuration 
state"  to "ephemeral configured state".

Thanks,
Rob

>
>     3
>     <https://tools.ietf.org/html/draft-ietf-i2rs-ephemeral-state-11#section-3>. 
>     Ephemeral State Requirements
>
>     In requirements Ephemeral-REQ-01 to Ephemeral-05, Ephemeral state is
>     defined as potentially including both ephemeral configured state and
>     operational state.
>
> 11) Ephemeral-REQ-13, page 7:
>
> Minor omission in the last sentence.
>
>   Ephemeral-REQ-13: The requirement to support multi-headed control is
>    required for collisions and the priority resolution of collisions.
>    Multi-headed control is not tied to ephemeral state.  I2RS is not
>    mandating how AAA supports priority.  Mechanisms which prevent
>    collisions of two clients trying the same node of data are the focus.
>
> Proposed:
>
>   Ephemeral-REQ-13: The requirement to support multi-headed control is
>    required for collisions and the priority resolution of collisions.
>    Multi-headed control is not tied to ephemeral state.  I2RS is not
>    mandating how AAA supports priority.  Mechanisms which prevent
>    collisions of two clients trying to modify the same node of data
>    are the focus.
>
> Sue: Thank you.  Version -12 will have this change.
>
> 12) Ephemeral-REQ-15, page 7:
> I would suggest that it might be better to refer to "Ephemeral state" 
> rather than the I2RS ephemeral data-store.
>
>    Ephemeral-REQ-15: Section 7.9 of the [I-D.ietf-i2rs-architecture]
>    states the I2RS architecture does not include multi-message atomicity
>    and roll-back mechanisms.  I2RS notes multiple operations in one or
>    more messages handling can handle errors within the set of operations
>    in many ways.  No multi-message commands SHOULD cause errors to be
>    inserted into the I2RS ephemeral data-store.
>
> Proposed:
>
>    Ephemeral-REQ-15: Section 7.9 of the [I-D.ietf-i2rs-architecture]
>    states the I2RS architecture does not include multi-message atomicity
>    and roll-back mechanisms.  I2RS notes multiple operations in one or
>    more messages handling can handle errors within the set of operations
>    in many ways.  No multi-message commands SHOULD cause errors to be
>    inserted into the ephemeral state.
>
> Accepted change for -15.
>
> Thanks,
> Rob
>


--------------69DE85A7ABD813380121EBDD
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: 8bit

<html>
  <head>
    <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <p>Hi Sue,</p>
    <p>All fine with me.Â  A couple of comments inline ...<br>
    </p>
    <br>
    <div class="moz-cite-prefix">On 30/06/2016 17:15, Susan Hares wrote:<br>
    </div>
    <blockquote cite="mid:4a5201d1d2ea$9eef05e0$dccd11a0$@ndzh.com"
      type="cite">
      <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
      <meta name="Generator" content="Microsoft Word 14 (filtered
        medium)">
      <style><!--
/* Font Definitions */
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
	{font-family:Tahoma;
	panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
	{font-family:Consolas;
	panose-1:2 11 6 9 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0in;
	margin-bottom:.0001pt;
	font-size:12.0pt;
	font-family:"Times New Roman","serif";
	color:black;}
h2
	{mso-style-priority:9;
	mso-style-link:"Heading 2 Char";
	mso-margin-top-alt:auto;
	margin-right:0in;
	mso-margin-bottom-alt:auto;
	margin-left:0in;
	font-size:18.0pt;
	font-family:"Times New Roman","serif";
	color:windowtext;
	font-weight:bold;}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:blue;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:purple;
	text-decoration:underline;}
p
	{mso-style-priority:99;
	mso-margin-top-alt:auto;
	margin-right:0in;
	mso-margin-bottom-alt:auto;
	margin-left:0in;
	font-size:12.0pt;
	font-family:"Times New Roman","serif";
	color:black;}
pre
	{mso-style-priority:99;
	mso-style-link:"HTML Preformatted Char";
	margin:0in;
	margin-bottom:.0001pt;
	font-size:10.0pt;
	font-family:"Courier New";
	color:black;}
span.HTMLPreformattedChar
	{mso-style-name:"HTML Preformatted Char";
	mso-style-priority:99;
	mso-style-link:"HTML Preformatted";
	font-family:Consolas;
	color:black;}
span.EmailStyle20
	{mso-style-type:personal-reply;
	font-family:"Calibri","sans-serif";
	color:#1F497D;}
span.Heading2Char
	{mso-style-name:"Heading 2 Char";
	mso-style-priority:9;
	mso-style-link:"Heading 2";
	font-weight:bold;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-size:10.0pt;}
@page WordSection1
	{size:8.5in 11.0in;
	margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
	{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
      <div class="WordSection1">
        <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">Robert:
            <o:p></o:p></span></p>
        <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D"><o:p>Â </o:p></span></p>
        <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">Thank
            you for your comments.Â  See resolution of comments below.Â 
            Version -12 will be sent to the list to handle most of these
            comments. <o:p></o:p></span></p>
        <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D"><o:p>Â </o:p></span></p>
        <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">Sue
            <o:p></o:p></span></p>
        <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D"><o:p>Â </o:p></span></p>
        <div>
          <div style="border:none;border-top:solid #B5C4DF
            1.0pt;padding:3.0pt 0in 0in 0in">
            <p class="MsoNormal"><b><span
style="font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;;color:windowtext">From:</span></b><span
style="font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;;color:windowtext">
                i2rs [<a class="moz-txt-link-freetext" href="mailto:i2rs-bounces@ietf.org">mailto:i2rs-bounces@ietf.org</a>] <b>On Behalf Of </b>Robert
                Wilton<br>
                <b>Sent:</b> Monday, June 27, 2016 11:30 AM<br>
                <b>To:</b> <a class="moz-txt-link-abbreviated" href="mailto:i2rs@ietf.org">i2rs@ietf.org</a><br>
                <b>Subject:</b> [i2rs] Review of
                draft-ietf-i2rs-ephemeral-state-11<o:p></o:p></span></p>
          </div>
        </div>
        <p class="MsoNormal"><o:p>Â </o:p></p>
        <p>Hi,<o:p></o:p></p>
        <p>I've reviewed draft-ietf-i2rs-ephemeral-state-11 and given a
          few minor comments below.Â  Generally I think that I understand
          the requirements stated in this document.<o:p></o:p></p>
        <p>Minors comments:<o:p></o:p></p>
        <p>1) Ephemeral-REQ-01 (page 5):<o:p></o:p></p>
        <div style="mso-element:para-border-div;border:solid #CCCCCC
          1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FFFDF5">
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in;box-sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: auto;text-align:start;widows: 1;-webkit-text-stroke-width: 0px;overflow:auto;word-spacing:0px"><span style="font-size:10.5pt">Â Â  Ephemeral-REQ-01: I2RS requires ephemeral state; i.e. state that does<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  not persist across reboots.Â  If state must be restored, it should be<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  done solely by replay actions from the I2RS client via the I2RS<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  agent.<o:p></o:p></span></pre>
        </div>
        <p>The architecture document indicates that the ephemeral state
          would (or is that may) also be lost on other circumstances
          such as process restart of the I2RS agent.Â  Does this need to
          be clarified in the requirement?Â  E.g.<o:p></o:p></p>
        <p><span
style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">Sue:
            In our previous discussions,Â  other people suggest that
            â€œrebootsâ€ covered hardware and software reboot of the I2RS
            agent. Â Â And that the specific nature of the reboot was
            too-much information for the requirement. </span></p>
      </div>
    </blockquote>
    Rob: OK.<br>
    <br>
    <blockquote cite="mid:4a5201d1d2ea$9eef05e0$dccd11a0$@ndzh.com"
      type="cite">
      <div class="WordSection1">
        <p><span
style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D"><o:p></o:p></span></p>
        <p><span
style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D"><o:p>Â </o:p></span></p>
        <div style="mso-element:para-border-div;border:solid #CCCCCC
          1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FFFDF5">
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in;box-sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: auto;text-align:start;widows: 1;-webkit-text-stroke-width: 0px;overflow:auto;word-spacing:0px"><span style="font-size:10.5pt">Â Â  Ephemeral-REQ-01: I2RS requires ephemeral state; i.e. state that MUST<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  NOT persist across reboots of the device or I2RS Agent subsystem. If<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  state must be restored, it should be done solely by replay actions<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  from the I2RS client via the I2RS agent.<o:p></o:p></span></pre>
        </div>
        <p><o:p>Â </o:p></p>
        <p>2) Hierarchy: (page 5)<br>
          Based on the previous description, I would possibly split
          Ephemeral-REQ-06 up into the following requirements: <o:p></o:p></p>
        <p>Old (from ephemeral-state:10):<o:p></o:p></p>
        <div style="mso-element:para-border-div;border:solid #CCCCCC
          1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FFFDF5">
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in;box-sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: auto;text-align:start;widows: 1;-webkit-text-stroke-width: 0px;overflow:auto;word-spacing:0px"><span style="font-size:10.5pt">Â Â  Ephemeral-REQ-06: The ability to augment an object with appropriate<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  YANG structures that have the property of being ephemeral.Â  An object<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  defined as any one of the following: yang module, submodule or<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  components of submodule, or schema node.<o:p></o:p></span></pre>
        </div>
        <p>Old (from ephemeral-state-11):<o:p></o:p></p>
        <div style="mso-element:para-border-div;border:solid #CCCCCC
          1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FFFDF5">
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in;box-sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: auto;text-align:start;widows: 1;-webkit-text-stroke-width: 0px;overflow:auto;word-spacing:0px"><span style="font-size:10.5pt">Â Â  Ephemeral-REQ-06: The ability to augment Yang schema nodes with<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  additional Yang Schema nodes that have the property of being<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  ephemeral.<o:p></o:p></span></pre>
        </div>
        <p>Proposed:<o:p></o:p></p>
        <div style="mso-element:para-border-div;border:solid #CCCCCC
          1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FFFDF5">
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in;box-sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: auto;text-align:start;widows: 1;-webkit-text-stroke-width: 0px;overflow:auto;word-spacing:0px"><span style="font-size:10.5pt">Â Â  Ephemeral-REQ-06:<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt"> <o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â Â 1. The ability to define a YANG module or submodule schema that<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  only contains data nodes with the property of being ephemeral.<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt"><o:p>Â </o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  2. The ability to augment a YANG data model with additional YANG<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  schema nodes that have the property of being ephemeral.<o:p></o:p></span></pre>
        </div>
        <p><span style="color:#1F497D"> I will accept this change and
            release in it version-12. Â <o:p></o:p></span></p>
        <p><span
style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D"><o:p>Â </o:p></span></p>
        <p>3) Ephemeral-REQ-07: (page 6):<o:p></o:p></p>
        <div style="mso-element:para-border-div;border:solid #CCCCCC
          1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FFFDF5">
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in;box-sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: auto;text-align:start;widows: 1;-webkit-text-stroke-width: 0px;overflow:auto;word-spacing:0px"><span style="font-size:10.5pt">Â Â  Ephemeral-REQ-07: Ephemeral configuration state could override<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  overlapping local configuration state, or vice-versa.<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  Implementations MUST provide a mechanism to choose which takes<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  precedence.Â  This mechanism MUST include local configuration (policy)<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  and MAY be provided via the I2RS protocol mechanisms.<o:p></o:p></span></pre>
        </div>
        <p>I note that this requirement doesn't specify the scope of
          whether the override mechanism should operate globally or on a
          per data node basis.Â  I'm not sure whether this needs to be
          clarified - since the text in the architecture document makes
          it pretty clear that a global level resolution is sufficient.<span
            style="color:#1F497D"><o:p></o:p></span></p>
        <p><span
style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">Sue:
            Â Again, we were cautioned to not specify the design, but
            only provide a result.Â  The global is sufficient. </span></p>
      </div>
    </blockquote>
    Rob: OK<br>
    <br>
    <blockquote cite="mid:4a5201d1d2ea$9eef05e0$dccd11a0$@ndzh.com"
      type="cite">
      <div class="WordSection1">
        <p><span
style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D"><o:p></o:p></span></p>
        <p>4) Ephemeral-REQ-08: (page 6):<br>
          Similar to Juergen's comments, I'm concerned about the
          writable/non-writable requirement.<span style="color:#1F497D"><o:p></o:p></span></p>
        <div style="mso-element:para-border-div;border:solid #CCCCCC
          1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FFFDF5">
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  Ephemeral-REQ-08: Yang MUST have a way to indicate in a data model<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  that schema nodes have the following properties: ephemeral, writable/<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  not-writable, and status/configuration.<o:p></o:p></span></pre>
        </div>
        <p>I'm somewhat adverse to writable operational state, and hence
          I would prefer if this requirement was watered down to
          something like:<o:p></o:p></p>
        <div style="mso-element:para-border-div;border:solid #CCCCCC
          1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FFFDF5">
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in;box-sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: auto;text-align:start;widows: 1;-webkit-text-stroke-width: 0px;overflow:auto;word-spacing:0px"><span style="font-size:10.5pt">Â Â  Ephemeral-REQ-08: In addition to config true/false, there MUST be a<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  way to indicate that YANG schema nodes represent ephemeral state.<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  It is desirable to allow for, and have to way to indicate, config<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  false YANG schema nodes that are writable operational state.<o:p></o:p></span></pre>
        </div>
        <p><span style="color:#1F497D">Sue: You are Juergen are
            concerned about writeable/non-writeable.Â  Â Martin is
            concerned about status/configuration. Â The I2RS authors
            believe we are running into the different operational state
            models. Â Each time we change this requirement we get another
            response.Â Â  The requirement will stay for now.Â  I suspect
            the we will be working on the design of the solution after
            we have settled on the operational state models.</span></p>
      </div>
    </blockquote>
    Rob:<br>
    My actual concern is that what I have proposed as a datastore
    solution cannot meet this requirement, because I think that only
    configuration should be writable, and hence the
    writable/non-writable property is implicit.<br>
    <br>
    <br>
    <blockquote cite="mid:4a5201d1d2ea$9eef05e0$dccd11a0$@ndzh.com"
      type="cite">
      <div class="WordSection1">
        <p><span style="color:#1F497D"><o:p></o:p></span></p>
        <p>5) Ephemeral-Req-12, page 7:<br>
          Presumably the requirement is that the notification must
          indicate the node that we involved in the collision?Â  I.e. it
          isn't sufficient to just signal to the client that there has
          been a collision with some of their configuration? <o:p></o:p></p>
        <div style="mso-element:para-border-div;border:solid #CCCCCC
          1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FFFDF5">
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in;box-sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: auto;text-align:start;widows: 1;-webkit-text-stroke-width: 0px;overflow:auto;word-spacing:0px"><span style="font-size:10.5pt">Â Â Â Ephemeral-REQ-12: When a collision occurs as two clients are trying<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  to write the same data node, this collision is considered an error<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  and priorities were created to give a deterministic result.Â  When<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  there is a collision, a notification MUST BE sent to the original<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  client to give the original client a chance to deal with the issues<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  surrounding the collision.Â  The original client may need to fix their<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  state.<o:p></o:p></span></pre>
        </div>
        <p>Should this be made explicit?Â  E.g. perhaps:<o:p></o:p></p>
        <div style="mso-element:para-border-div;border:solid #CCCCCC
          1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FFFDF5">
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in;box-sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: auto;text-align:start;widows: 1;-webkit-text-stroke-width: 0px;overflow:auto;word-spacing:0px"><span style="font-size:10.5pt">Â Â  Ephemeral-REQ-12: When a collision occurs as two clients are trying<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  to write the same data node, this collision is considered an error<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  and priorities were created to give a deterministic result.Â  When<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  there is a collision, a notification (indicating which data node the<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  collision occurred on) MUST BE sent to the original client to give<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  the original client a chance to deal with the issues surrounding<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  the collision.Â  The original client may need to fix their state.<o:p></o:p></span></pre>
        </div>
        <p><span
style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">Sue:Â 
            For some data models, it may be important to provide more
            than just that.Â  How about: <o:p></o:p></span></p>
        <p><span
style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">Â Â When
            there is a collision, a notificationÂ  (which includes an
            indication of the data node the collision occurred on)<o:p></o:p></span></p>
        <p><span
style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">
            MUST BE sent to the original client to give the original
            client a chance to deal with the issues surrounding the
            collision.Â  </span></p>
      </div>
    </blockquote>
    Rob: Yes, OK.<br>
    <br>
    <br>
    <blockquote cite="mid:4a5201d1d2ea$9eef05e0$dccd11a0$@ndzh.com"
      type="cite">
      <div class="WordSection1">
        <p><span
style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D"><o:p></o:p></span></p>
        <p>6) Ephemeral-REQ-14, page 7:<br>
          I would suggest potentially rewording this to make the
          requirement and leeway on the solution more explicit. <o:p></o:p></p>
        <div style="mso-element:para-border-div;border:solid #CCCCCC
          1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FFFDF5">
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in;box-sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: auto;text-align:start;widows: 1;-webkit-text-stroke-width: 0px;overflow:auto;word-spacing:0px"><span style="font-size:10.5pt">Â Â Â Ephemeral-REQ-14: If two clients have the same priority, the<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  architecture says the first one wins.Â  The I2RS protocol has this<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  requirement to prevent oscillations between clients.Â  If one uses the<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  last wins scenario, you may oscillate.Â  That was our opinion, but a<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  design which prevents oscillation is the key point.<o:p></o:p></span></pre>
        </div>
        <p>Proposed alternative text:<o:p></o:p></p>
        <div style="mso-element:para-border-div;border:solid #CCCCCC
          1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FFFDF5">
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in;box-sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: auto;text-align:start;widows: 1;-webkit-text-stroke-width: 0px;overflow:auto;word-spacing:0px"><span style="font-size:10.5pt">Â Â  Ephemeral-REQ-14: A deterministic conflict resolution mechanism MUST<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  be provided to handle the error scenario that two clients, with<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  the same priority, update the same configuration data node.Â  The I2RS<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  architecture gives one way that this could be achieved, by<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  specifying that the first update wins.Â  Other solutions, that prevent<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  oscillation of the config data node, are also acceptable.<o:p></o:p></span></pre>
        </div>
        <p><span style="color:#1F497D">Sue: Accepted â€“ this will be
            released with version 2. </span><o:p></o:p></p>
        <p>Cosmetic comments:<o:p></o:p></p>
        <p>7) Section 1. Introduction.Â  The requirements are no longer
          version specific, hence perhaps update the following text
          from:<o:p></o:p></p>
        <div style="mso-element:para-border-div;border:solid #CCCCCC
          1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FFFDF5">
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in;box-sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: auto;text-align:start;widows: 1;-webkit-text-stroke-width: 0px;overflow:auto;word-spacing:0px"><span style="font-size:10.5pt"><o:p>Â </o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt"><o:p>Â </o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  1.Â  select features from YANG, NETCONF, and RESTCONF per version of<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â Â Â Â Â  the I2RS protocol (See sections 4, 5, and 6)<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt"><o:p>Â </o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  2.Â  propose additions to YANG, NETCONF, and RESTCONF per version of<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â Â Â Â Â  the I2RS protocol for key functions (ephemeral state, protocol<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â Â Â Â Â  security, publication/subscription service, traceability),<o:p></o:p></span></pre>
        </div>
        <p>to:<o:p></o:p></p>
        <div style="mso-element:para-border-div;border:solid #CCCCCC
          1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FFFDF5">
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in;box-sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: auto;text-align:start;widows: 1;-webkit-text-stroke-width: 0px;overflow:auto;word-spacing:0px"><span style="font-size:10.5pt">Â Â  1.Â  select features from YANG, NETCONF, and RESTCONF for the initial<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â Â Â Â Â  I2RS protocol version (See sections 4, 5, and 6).<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt"><o:p>Â </o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  2.Â  propose additions to YANG, NETCONF, and RESTCONF for the initial<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â Â Â Â Â  I2RS protocol version for key functions (ephemeral state, protocol<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â Â  Â Â Â security, publication/subscription service, traceability).<o:p></o:p></span></pre>
        </div>
        <p><span style="color:#1F497D">Sue: We will probably have a
            subsequent version of the I2RS protocol. Â I would prefer to
            leave this as stated so this is clear. Â <o:p></o:p></span></p>
        <p>8) Section 1. introduction.Â  I'm not sure that this 3rd
          bullet is relevant, and possibly could be removed, although
          equally it doesn't seem to do any harm:<o:p></o:p></p>
        <div style="mso-element:para-border-div;border:solid #CCCCCC
          1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FFFDF5">
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in;box-sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: auto;text-align:start;widows: 1;-webkit-text-stroke-width: 0px;overflow:auto;word-spacing:0px"><span style="font-size:10.5pt">Â Â  3.Â  suggest protocol strawman as ideas for the NETCONF, RESTCONF, and<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â Â Â Â Â  YANG changes.<o:p></o:p></span></pre>
        </div>
        <p class="MsoNormal"><span style="color:#1F497D">Sue: There is a
            protocol strawman that will be submitted based on
            experience.Â  <o:p></o:p></span></p>
        <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D"><o:p>Â </o:p></span></p>
        <p class="MsoNormal"><br>
          9) The document uses a mix of "Yang" and "YANG", probably
          should just use "YANG".<span style="color:#1F497D"><o:p></o:p></span></p>
        <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">Fixed
            in version 12. <o:p></o:p></span></p>
        <p>10) Section 3. Ephemeral State Requirements:<o:p></o:p></p>
        <p><span style="color:#1F497D">&gt;</span>The document refers to
          "ephemeral configured state" here, but elsewhere (e.g. 3.4)
          "ephemeral configuration" or "ephemeral configuration state"
          is used.Â  It might be helpful for use of these terms to be
          consistent, I would suggest "ephemeral configuration" is <span
            style="color:#1F497D">&gt;</span>sufficient.<o:p></o:p></p>
        <p><span style="color:#1F497D">Sue: Ephemeral state is defined
            as ephemeral configuration state and operational state in
            the </span></p>
      </div>
    </blockquote>
    Rob: It was only a minor nit, I was suggesting consistency of the
    term, perhaps change "ephemeral configuration"and "ephemeral
    configuration state"Â  to "ephemeral configured state".<br>
    <br>
    Thanks,<br>
    Rob<br>
    <br>
    <blockquote cite="mid:4a5201d1d2ea$9eef05e0$dccd11a0$@ndzh.com"
      type="cite">
      <div class="WordSection1">
        <p><span style="color:#1F497D"><o:p></o:p></span></p>
        <h2 style="mso-line-height-alt:0pt"><a moz-do-not-send="true"
            name="section-3"></a><a moz-do-not-send="true"
href="https://tools.ietf.org/html/draft-ietf-i2rs-ephemeral-state-11#section-3"><span
              style="font-size:10.0pt;font-family:&quot;Courier
              New&quot;;color:black;text-decoration:none">3</span></a><span
            style="font-size:10.0pt;font-family:&quot;Courier
            New&quot;;color:black">.Â  Ephemeral State Requirements<o:p></o:p></span></h2>
        <pre><o:p>Â </o:p></pre>
        <pre><o:p>Â </o:p></pre>
        <pre>Â Â  In requirements Ephemeral-REQ-01 to Ephemeral-05, Ephemeral state is<o:p></o:p></pre>
        <pre> Â Â defined as potentially including both ephemeral configured state and<o:p></o:p></pre>
        <pre>Â Â  operational state.<o:p></o:p></pre>
        <p>11) Ephemeral-REQ-13, page 7:<o:p></o:p></p>
        <p>Minor omission in the last sentence.<o:p></o:p></p>
        <div style="mso-element:para-border-div;border:solid #CCCCCC
          1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FFFDF5">
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in;box-sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: auto;text-align:start;widows: 1;-webkit-text-stroke-width: 0px;overflow:auto;word-spacing:0px"><span style="font-size:10.5pt">Â  Ephemeral-REQ-13: The requirement to support multi-headed control is<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  required for collisions and the priority resolution of collisions.<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  Multi-headed control is not tied to ephemeral state.Â  I2RS is not<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  mandating how AAA supports priority.Â  Mechanisms which prevent<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  collisions of two clients trying the same node of data are the focus.<o:p></o:p></span></pre>
        </div>
        <p>Proposed:<o:p></o:p></p>
        <div style="mso-element:para-border-div;border:solid #CCCCCC
          1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FFFDF5">
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in;box-sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: auto;text-align:start;widows: 1;-webkit-text-stroke-width: 0px;overflow:auto;word-spacing:0px"><span style="font-size:10.5pt">Â  Ephemeral-REQ-13: The requirement to support multi-headed control is<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  required for collisions and the priority resolution of collisions.<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  Multi-headed control is not tied to ephemeral state.Â  I2RS is not<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  mandating how AAA supports priority.Â  Mechanisms which prevent<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  collisions of two clients trying to modify the same node of data<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  are the focus.<o:p></o:p></span></pre>
        </div>
        <p><span style="color:#1F497D">Sue: Thank you.Â  Version -12 will
            have this change. <o:p></o:p></span></p>
        <p><span
style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D"><o:p>Â </o:p></span></p>
        <p>12) Ephemeral-REQ-15, page 7:<br>
          I would suggest that it might be better to refer to "Ephemeral
          state" rather than the I2RS ephemeral data-store.<o:p></o:p></p>
        <div style="mso-element:para-border-div;border:solid #CCCCCC
          1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FFFDF5">
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in;box-sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: auto;text-align:start;widows: 1;-webkit-text-stroke-width: 0px;overflow:auto;word-spacing:0px"><span style="font-size:10.5pt">Â Â  Ephemeral-REQ-15: Section 7.9 of the [I-D.ietf-i2rs-architecture]<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  states the I2RS architecture does not include multi-message atomicity<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  and roll-back mechanisms.Â  I2RS notes multiple operations in one or<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  more messages handling can handle errors within the set of operations<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  in many ways.Â  No multi-message commands SHOULD cause errors to be<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  inserted into the I2RS ephemeral data-store.<o:p></o:p></span></pre>
        </div>
        <p class="MsoNormal">Proposed:<br>
          <br>
          <o:p></o:p></p>
        <div style="mso-element:para-border-div;border:solid #CCCCCC
          1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FFFDF5">
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  Ephemeral-REQ-15: Section 7.9 of the [I-D.ietf-i2rs-architecture]<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  states the I2RS architecture does not include multi-message atomicity<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  and roll-back mechanisms.Â  I2RS notes multiple operations in one or<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  more messages handling can handle errors within the set of operations<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  in many ways.Â  No multi-message commands SHOULD cause errors to be<o:p></o:p></span></pre>
          <pre style="margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;border:none;padding:0in"><span style="font-size:10.5pt">Â Â  inserted into the ephemeral state.<o:p></o:p></span></pre>
        </div>
        <p class="MsoNormal"><span style="color:#1F497D"><o:p>Â </o:p></span></p>
        <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">Accepted
            change for -15. <o:p></o:p></span></p>
        <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D"><o:p>Â </o:p></span></p>
        <p>Thanks,<br>
          Rob<o:p></o:p></p>
      </div>
    </blockquote>
    <br>
  </body>
</html>

--------------69DE85A7ABD813380121EBDD--


From nobody Thu Jun 30 09:51:57 2016
Return-Path: <internet-drafts@ietf.org>
X-Original-To: i2rs@ietf.org
Delivered-To: i2rs@ietfa.amsl.com
Received: from ietfa.amsl.com (localhost [IPv6:::1]) by ietfa.amsl.com (Postfix) with ESMTP id 5218C12D52D; Thu, 30 Jun 2016 09:51:55 -0700 (PDT)
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
From: internet-drafts@ietf.org
To: <i-d-announce@ietf.org>
X-Test-IDTracker: no
X-IETF-IDTracker: 6.25.0
Auto-Submitted: auto-generated
Precedence: bulk
Message-ID: <20160630165155.29602.41769.idtracker@ietfa.amsl.com>
Date: Thu, 30 Jun 2016 09:51:55 -0700
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/i6YVWmac5D2AkrSKBboeEy2R5U8>
Cc: i2rs@ietf.org
Subject: [i2rs] I-D Action: draft-ietf-i2rs-ephemeral-state-12.txt
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 30 Jun 2016 16:51:55 -0000

A New Internet-Draft is available from the on-line Internet-Drafts directories.
This draft is a work item of the Interface to the Routing System of the IETF.

        Title           : I2RS Ephemeral State Requirements
        Authors         : Jeff Haas
                          Susan Hares
	Filename        : draft-ietf-i2rs-ephemeral-state-12.txt
	Pages           : 11
	Date            : 2016-06-30

Abstract:
   This document covers requests to the NETMOD and NETCONF Working
   Groups for functionality to support the ephemeral state requirements
   to implement the I2RS architecture.


The IETF datatracker status page for this draft is:
https://datatracker.ietf.org/doc/draft-ietf-i2rs-ephemeral-state/

There's also a htmlized version available at:
https://tools.ietf.org/html/draft-ietf-i2rs-ephemeral-state-12

A diff from the previous version is available at:
https://www.ietf.org/rfcdiff?url2=draft-ietf-i2rs-ephemeral-state-12


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/


From nobody Thu Jun 30 09:54:52 2016
Return-Path: <shares@ndzh.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 75FE712D885 for <i2rs@ietfa.amsl.com>; Thu, 30 Jun 2016 09:54:51 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.749
X-Spam-Level: *
X-Spam-Status: No, score=1.749 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, HTML_MESSAGE=0.001, RDNS_NONE=0.793, T_KAM_HTML_FONT_INVALID=0.01] autolearn=no autolearn_force=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 F-G2B-uJDqXd for <i2rs@ietfa.amsl.com>; Thu, 30 Jun 2016 09:54:48 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 14F1D12B053 for <i2rs@ietf.org>; Thu, 30 Jun 2016 09:54:48 -0700 (PDT)
X-Default-Received-SPF: pass (skip=forwardok (res=PASS)) x-ip-name=174.124.195.80; 
From: "Susan Hares" <shares@ndzh.com>
To: "'Robert Wilton'" <rwilton@cisco.com>, <i2rs@ietf.org>
References: <4f70e94d-f73b-73a7-c41b-9ab5ffeeda6f@cisco.com> <4a5201d1d2ea$9eef05e0$dccd11a0$@ndzh.com> <33da1b11-f55a-b1ac-2b44-d376ccf4dd9f@cisco.com>
In-Reply-To: <33da1b11-f55a-b1ac-2b44-d376ccf4dd9f@cisco.com>
Date: Thu, 30 Jun 2016 12:54:15 -0400
Message-ID: <4acf01d1d2f0$09221e70$1b665b50$@ndzh.com>
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="----=_NextPart_000_4AD0_01D1D2CE.82156070"
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQLFTksMOMokz5ko+uSOkEHfh/xdsgG0QEYAApbOvHWd+OppIA==
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/WsXlpnPbi6MXJwgZeHltu4tAM0Q>
Subject: Re: [i2rs] Review of draft-ietf-i2rs-ephemeral-state-11
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 30 Jun 2016 16:54:51 -0000

This is a multipart message in MIME format.

------=_NextPart_000_4AD0_01D1D2CE.82156070
Content-Type: text/plain;
	charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Robert:

=20

Version-12 is uploaded.  =20

=20

On Ephemeral-REQ-08:=20

>Sue: You are Juergen are concerned about writeable/non-writeable.   =
Martin is concerned about status/configuration.  The I2RS authors =
believe we are running into the different operational state models.  =
Each time we change this requirement we get another >response.   The =
requirement will stay for now.  I suspect the we will be working on the =
design of the solution after we have settled on the operational state =
models.

>Rob:
>My actual concern is that what I have proposed as a datastore solution =
cannot meet this requirement, because I think that only configuration =
should be writable, and hence the writable/non-writable property is =
implicit.

=20

We have the case of the ephemeral topology data base that conflicts this =
work.   We will need to work this out at IETF 96 in Berlin.=20

=20

Sue=20



=20

From: Robert Wilton [mailto:rwilton@cisco.com]=20
Sent: Thursday, June 30, 2016 12:39 PM
To: Susan Hares; i2rs@ietf.org
Subject: Re: [i2rs] Review of draft-ietf-i2rs-ephemeral-state-11

=20

Hi Sue,

All fine with me.  A couple of comments inline ...

=20

On 30/06/2016 17:15, Susan Hares wrote:

Robert:=20

=20

Thank you for your comments.  See resolution of comments below.  Version =
-12 will be sent to the list to handle most of these comments.=20

=20

Sue=20

=20

From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Robert Wilton
Sent: Monday, June 27, 2016 11:30 AM
To: i2rs@ietf.org
Subject: [i2rs] Review of draft-ietf-i2rs-ephemeral-state-11

=20

Hi,

I've reviewed draft-ietf-i2rs-ephemeral-state-11 and given a few minor =
comments below.  Generally I think that I understand the requirements =
stated in this document.

Minors comments:

1) Ephemeral-REQ-01 (page 5):

   Ephemeral-REQ-01: I2RS requires ephemeral state; i.e. state that does
   not persist across reboots.  If state must be restored, it should be
   done solely by replay actions from the I2RS client via the I2RS
   agent.

The architecture document indicates that the ephemeral state would (or =
is that may) also be lost on other circumstances such as process restart =
of the I2RS agent.  Does this need to be clarified in the requirement?  =
E.g.

Sue: In our previous discussions,  other people suggest that =
=E2=80=9Creboots=E2=80=9D covered hardware and software reboot of the =
I2RS agent.   And that the specific nature of the reboot was too-much =
information for the requirement.=20

Rob: OK.




=20

   Ephemeral-REQ-01: I2RS requires ephemeral state; i.e. state that MUST
   NOT persist across reboots of the device or I2RS Agent subsystem. If
   state must be restored, it should be done solely by replay actions
   from the I2RS client via the I2RS agent.

=20

2) Hierarchy: (page 5)
Based on the previous description, I would possibly split =
Ephemeral-REQ-06 up into the following requirements:=20

Old (from ephemeral-state:10):

   Ephemeral-REQ-06: The ability to augment an object with appropriate
   YANG structures that have the property of being ephemeral.  An object
   defined as any one of the following: yang module, submodule or
   components of submodule, or schema node.

Old (from ephemeral-state-11):

   Ephemeral-REQ-06: The ability to augment Yang schema nodes with
   additional Yang Schema nodes that have the property of being
   ephemeral.

Proposed:

   Ephemeral-REQ-06:
=20
   1. The ability to define a YANG module or submodule schema that
   only contains data nodes with the property of being ephemeral.
=20
   2. The ability to augment a YANG data model with additional YANG
   schema nodes that have the property of being ephemeral.

I will accept this change and release in it version-12. =20

=20

3) Ephemeral-REQ-07: (page 6):

   Ephemeral-REQ-07: Ephemeral configuration state could override
   overlapping local configuration state, or vice-versa.
   Implementations MUST provide a mechanism to choose which takes
   precedence.  This mechanism MUST include local configuration (policy)
   and MAY be provided via the I2RS protocol mechanisms.

I note that this requirement doesn't specify the scope of whether the =
override mechanism should operate globally or on a per data node basis.  =
I'm not sure whether this needs to be clarified - since the text in the =
architecture document makes it pretty clear that a global level =
resolution is sufficient.

Sue:  Again, we were cautioned to not specify the design, but only =
provide a result.  The global is sufficient.=20

Rob: OK




4) Ephemeral-REQ-08: (page 6):
Similar to Juergen's comments, I'm concerned about the =
writable/non-writable requirement.

   Ephemeral-REQ-08: Yang MUST have a way to indicate in a data model
   that schema nodes have the following properties: ephemeral, writable/
   not-writable, and status/configuration.

I'm somewhat adverse to writable operational state, and hence I would =
prefer if this requirement was watered down to something like:

   Ephemeral-REQ-08: In addition to config true/false, there MUST be a
   way to indicate that YANG schema nodes represent ephemeral state.
   It is desirable to allow for, and have to way to indicate, config
   false YANG schema nodes that are writable operational state.

Sue: You are Juergen are concerned about writeable/non-writeable.   =
Martin is concerned about status/configuration.  The I2RS authors =
believe we are running into the different operational state models.  =
Each time we change this requirement we get another response.   The =
requirement will stay for now.  I suspect the we will be working on the =
design of the solution after we have settled on the operational state =
models.

Rob:
My actual concern is that what I have proposed as a datastore solution =
cannot meet this requirement, because I think that only configuration =
should be writable, and hence the writable/non-writable property is =
implicit.





5) Ephemeral-Req-12, page 7:
Presumably the requirement is that the notification must indicate the =
node that we involved in the collision?  I.e. it isn't sufficient to =
just signal to the client that there has been a collision with some of =
their configuration?=20

   Ephemeral-REQ-12: When a collision occurs as two clients are trying
   to write the same data node, this collision is considered an error
   and priorities were created to give a deterministic result.  When
   there is a collision, a notification MUST BE sent to the original
   client to give the original client a chance to deal with the issues
   surrounding the collision.  The original client may need to fix their
   state.

Should this be made explicit?  E.g. perhaps:

   Ephemeral-REQ-12: When a collision occurs as two clients are trying
   to write the same data node, this collision is considered an error
   and priorities were created to give a deterministic result.  When
   there is a collision, a notification (indicating which data node the
   collision occurred on) MUST BE sent to the original client to give
   the original client a chance to deal with the issues surrounding
   the collision.  The original client may need to fix their state.

Sue:  For some data models, it may be important to provide more than =
just that.  How about:=20

  When there is a collision, a notification  (which includes an =
indication of the data node the collision occurred on)

MUST BE sent to the original client to give the original client a chance =
to deal with the issues surrounding the collision. =20

Rob: Yes, OK.





6) Ephemeral-REQ-14, page 7:
I would suggest potentially rewording this to make the requirement and =
leeway on the solution more explicit.=20

   Ephemeral-REQ-14: If two clients have the same priority, the
   architecture says the first one wins.  The I2RS protocol has this
   requirement to prevent oscillations between clients.  If one uses the
   last wins scenario, you may oscillate.  That was our opinion, but a
   design which prevents oscillation is the key point.

Proposed alternative text:

   Ephemeral-REQ-14: A deterministic conflict resolution mechanism MUST
   be provided to handle the error scenario that two clients, with
   the same priority, update the same configuration data node.  The I2RS
   architecture gives one way that this could be achieved, by
   specifying that the first update wins.  Other solutions, that prevent
   oscillation of the config data node, are also acceptable.

Sue: Accepted =E2=80=93 this will be released with version 2.=20

Cosmetic comments:

7) Section 1. Introduction.  The requirements are no longer version =
specific, hence perhaps update the following text from:

=20
=20
   1.  select features from YANG, NETCONF, and RESTCONF per version of
       the I2RS protocol (See sections 4, 5, and 6)
=20
   2.  propose additions to YANG, NETCONF, and RESTCONF per version of
       the I2RS protocol for key functions (ephemeral state, protocol
       security, publication/subscription service, traceability),

to:

   1.  select features from YANG, NETCONF, and RESTCONF for the initial
       I2RS protocol version (See sections 4, 5, and 6).
=20
   2.  propose additions to YANG, NETCONF, and RESTCONF for the initial
       I2RS protocol version for key functions (ephemeral state, =
protocol
       security, publication/subscription service, traceability).

Sue: We will probably have a subsequent version of the I2RS protocol.  I =
would prefer to leave this as stated so this is clear. =20

8) Section 1. introduction.  I'm not sure that this 3rd bullet is =
relevant, and possibly could be removed, although equally it doesn't =
seem to do any harm:

   3.  suggest protocol strawman as ideas for the NETCONF, RESTCONF, and
       YANG changes.

Sue: There is a protocol strawman that will be submitted based on =
experience. =20

=20


9) The document uses a mix of "Yang" and "YANG", probably should just =
use "YANG".

Fixed in version 12.=20

10) Section 3. Ephemeral State Requirements:

>The document refers to "ephemeral configured state" here, but elsewhere =
(e.g. 3.4) "ephemeral configuration" or "ephemeral configuration state" =
is used.  It might be helpful for use of these terms to be consistent, I =
would suggest "ephemeral configuration" is >sufficient.

Sue: Ephemeral state is defined as ephemeral configuration state and =
operational state in the=20

Rob: It was only a minor nit, I was suggesting consistency of the term, =
perhaps change "ephemeral configuration"and "ephemeral configuration =
state"  to "ephemeral configured state".

Thanks,
Rob





 =
<https://tools.ietf.org/html/draft-ietf-i2rs-ephemeral-state-11#section-3=
> 3.  Ephemeral State Requirements

=20
=20
   In requirements Ephemeral-REQ-01 to Ephemeral-05, Ephemeral state is
   defined as potentially including both ephemeral configured state and
   operational state.

11) Ephemeral-REQ-13, page 7:

Minor omission in the last sentence.

  Ephemeral-REQ-13: The requirement to support multi-headed control is
   required for collisions and the priority resolution of collisions.
   Multi-headed control is not tied to ephemeral state.  I2RS is not
   mandating how AAA supports priority.  Mechanisms which prevent
   collisions of two clients trying the same node of data are the focus.

Proposed:

  Ephemeral-REQ-13: The requirement to support multi-headed control is
   required for collisions and the priority resolution of collisions.
   Multi-headed control is not tied to ephemeral state.  I2RS is not
   mandating how AAA supports priority.  Mechanisms which prevent
   collisions of two clients trying to modify the same node of data
   are the focus.

Sue: Thank you.  Version -12 will have this change.=20

=20

12) Ephemeral-REQ-15, page 7:
I would suggest that it might be better to refer to "Ephemeral state" =
rather than the I2RS ephemeral data-store.

   Ephemeral-REQ-15: Section 7.9 of the [I-D.ietf-i2rs-architecture]
   states the I2RS architecture does not include multi-message atomicity
   and roll-back mechanisms.  I2RS notes multiple operations in one or
   more messages handling can handle errors within the set of operations
   in many ways.  No multi-message commands SHOULD cause errors to be
   inserted into the I2RS ephemeral data-store.

Proposed:




   Ephemeral-REQ-15: Section 7.9 of the [I-D.ietf-i2rs-architecture]
   states the I2RS architecture does not include multi-message atomicity
   and roll-back mechanisms.  I2RS notes multiple operations in one or
   more messages handling can handle errors within the set of operations
   in many ways.  No multi-message commands SHOULD cause errors to be
   inserted into the ephemeral state.

=20

Accepted change for -15.=20

=20

Thanks,
Rob

=20


------=_NextPart_000_4AD0_01D1D2CE.82156070
Content-Type: text/html;
	charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" =
xmlns:o=3D"urn:schemas-microsoft-com:office:office" =
xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" =
xmlns=3D"http://www.w3.org/TR/REC-html40"><head><meta =
http-equiv=3DContent-Type content=3D"text/html; charset=3Dutf-8"><meta =
name=3DGenerator content=3D"Microsoft Word 14 (filtered =
medium)"><style><!--
/* Font Definitions */
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
	{font-family:Tahoma;
	panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
	{font-family:Consolas;
	panose-1:2 11 6 9 2 2 4 3 2 4;}
@font-face
	{font-family:"Courier New \;color\:black";
	panose-1:0 0 0 0 0 0 0 0 0 0;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0in;
	margin-bottom:.0001pt;
	font-size:12.0pt;
	font-family:"Times New Roman","serif";
	color:black;}
h2
	{mso-style-priority:9;
	mso-style-link:"Heading 2 Char";
	mso-margin-top-alt:auto;
	margin-right:0in;
	mso-margin-bottom-alt:auto;
	margin-left:0in;
	font-size:18.0pt;
	font-family:"Times New Roman","serif";
	color:windowtext;
	font-weight:bold;}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:blue;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:purple;
	text-decoration:underline;}
p
	{mso-style-priority:99;
	mso-margin-top-alt:auto;
	margin-right:0in;
	mso-margin-bottom-alt:auto;
	margin-left:0in;
	font-size:12.0pt;
	font-family:"Times New Roman","serif";
	color:black;}
pre
	{mso-style-priority:99;
	mso-style-link:"HTML Preformatted Char";
	margin:0in;
	margin-bottom:.0001pt;
	font-size:10.0pt;
	font-family:"Courier New";
	color:black;}
p.MsoAcetate, li.MsoAcetate, div.MsoAcetate
	{mso-style-priority:99;
	mso-style-link:"Balloon Text Char";
	margin:0in;
	margin-bottom:.0001pt;
	font-size:8.0pt;
	font-family:"Tahoma","sans-serif";
	color:black;}
span.Heading2Char
	{mso-style-name:"Heading 2 Char";
	mso-style-priority:9;
	mso-style-link:"Heading 2";
	font-weight:bold;}
span.HTMLPreformattedChar
	{mso-style-name:"HTML Preformatted Char";
	mso-style-priority:99;
	mso-style-link:"HTML Preformatted";
	font-family:Consolas;
	color:black;}
span.EmailStyle21
	{mso-style-type:personal;
	font-family:"Calibri","sans-serif";
	color:#1F497D;}
span.BalloonTextChar
	{mso-style-name:"Balloon Text Char";
	mso-style-priority:99;
	mso-style-link:"Balloon Text";
	font-family:"Tahoma","sans-serif";
	color:black;}
span.EmailStyle24
	{mso-style-type:personal-reply;
	font-family:"Calibri","sans-serif";
	color:#1F497D;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-size:10.0pt;}
@page WordSection1
	{size:8.5in 11.0in;
	margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
	{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]--></head><body bgcolor=3Dwhite =
lang=3DEN-US link=3Dblue vlink=3Dpurple><div class=3DWordSection1><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Robert:<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Version-12 is uploaded.=C2=A0 =C2=A0<o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>On Ephemeral-REQ-08: <o:p></o:p></span></p><p><span =
style=3D'color:#1F497D'>&gt;Sue: You are Juergen are concerned about =
writeable/non-writeable.&nbsp; &nbsp;Martin is concerned about =
status/configuration. &nbsp;The I2RS authors believe we are running into =
the different operational state models. &nbsp;Each time we change this =
requirement we get another &gt;response.&nbsp;&nbsp; The requirement =
will stay for now.&nbsp; I suspect the we will be working on the design =
of the solution after we have settled on the operational state =
models.</span><o:p></o:p></p><p class=3DMsoNormal>&gt;Rob:<br>&gt;My =
actual concern is that what I have proposed as a datastore solution =
cannot meet this requirement, because I think that only configuration =
should be writable, and hence the writable/non-writable property is =
implicit.<o:p></o:p></p><p class=3DMsoNormal><o:p>&nbsp;</o:p></p><p =
class=3DMsoNormal>We have the case of the ephemeral topology data base =
that conflicts this work.=C2=A0=C2=A0 We will need to work this out at =
IETF 96 in Berlin. <o:p></o:p></p><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p><p class=3DMsoNormal>Sue =
<br><br><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><div><div =
style=3D'border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in =
0in 0in'><p class=3DMsoNormal><b><span =
style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif";color:windowt=
ext'>From:</span></b><span =
style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif";color:windowt=
ext'> Robert Wilton [mailto:rwilton@cisco.com] <br><b>Sent:</b> =
Thursday, June 30, 2016 12:39 PM<br><b>To:</b> Susan Hares; =
i2rs@ietf.org<br><b>Subject:</b> Re: [i2rs] Review of =
draft-ietf-i2rs-ephemeral-state-11<o:p></o:p></span></p></div></div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p><p>Hi Sue,<o:p></o:p></p><p>All =
fine with me.&nbsp; A couple of comments inline ...<o:p></o:p></p><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p><div><p class=3DMsoNormal>On =
30/06/2016 17:15, Susan Hares wrote:<o:p></o:p></p></div><blockquote =
style=3D'margin-top:5.0pt;margin-bottom:5.0pt'><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Robert: </span><o:p></o:p></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&nbsp;</span><o:p></o:p></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Thank you for your comments.&nbsp; See resolution of comments =
below.&nbsp; Version -12 will be sent to the list to handle most of =
these comments. </span><o:p></o:p></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&nbsp;</span><o:p></o:p></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Sue </span><o:p></o:p></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&nbsp;</span><o:p></o:p></p><div><div =
style=3D'border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in =
0in 0in'><p class=3DMsoNormal><b><span =
style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif";color:windowt=
ext'>From:</span></b><span =
style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif";color:windowt=
ext'> i2rs [<a =
href=3D"mailto:i2rs-bounces@ietf.org">mailto:i2rs-bounces@ietf.org</a>] =
<b>On Behalf Of </b>Robert Wilton<br><b>Sent:</b> Monday, June 27, 2016 =
11:30 AM<br><b>To:</b> <a =
href=3D"mailto:i2rs@ietf.org">i2rs@ietf.org</a><br><b>Subject:</b> =
[i2rs] Review of =
draft-ietf-i2rs-ephemeral-state-11</span><o:p></o:p></p></div></div><p =
class=3DMsoNormal>&nbsp;<o:p></o:p></p><p>Hi,<o:p></o:p></p><p>I've =
reviewed draft-ietf-i2rs-ephemeral-state-11 and given a few minor =
comments below.&nbsp; Generally I think that I understand the =
requirements stated in this document.<o:p></o:p></p><p>Minors =
comments:<o:p></o:p></p><p>1) Ephemeral-REQ-01 (page =
5):<o:p></o:p></p><div style=3D'border:solid #CCCCCC 1.0pt;padding:8.0pt =
8.0pt 8.0pt 8.0pt'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;box-=
sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: =
auto;text-align:start;widows: 1;-webkit-text-stroke-width: =
0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>&nbsp;&nbsp; Ephemeral-REQ-01: I2RS requires =
ephemeral state; i.e. state that does</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; not persist across =
reboots.&nbsp; If state must be restored, it should =
be</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; done solely by replay actions =
from the I2RS client via the I2RS</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; =
agent.</span><o:p></o:p></pre></div><p>The architecture document =
indicates that the ephemeral state would (or is that may) also be lost =
on other circumstances such as process restart of the I2RS agent.&nbsp; =
Does this need to be clarified in the requirement?&nbsp; =
E.g.<o:p></o:p></p><p><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Sue: In our previous discussions,&nbsp; other people suggest that =
=E2=80=9Creboots=E2=80=9D covered hardware and software reboot of the =
I2RS agent. &nbsp;&nbsp;And that the specific nature of the reboot was =
too-much information for the requirement. =
</span><o:p></o:p></p></blockquote><p class=3DMsoNormal>Rob: =
OK.<br><br><br><o:p></o:p></p><p><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&nbsp;</span><o:p></o:p></p><div style=3D'border:solid #CCCCCC =
1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;box-=
sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: =
auto;text-align:start;widows: 1;-webkit-text-stroke-width: =
0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>&nbsp;&nbsp; Ephemeral-REQ-01: I2RS requires =
ephemeral state; i.e. state that MUST</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; NOT persist across reboots of =
the device or I2RS Agent subsystem. If</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; state must be restored, it =
should be done solely by replay actions</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; from the I2RS client via the =
I2RS agent.</span><o:p></o:p></pre></div><p>&nbsp;<o:p></o:p></p><p>2) =
Hierarchy: (page 5)<br>Based on the previous description, I would =
possibly split Ephemeral-REQ-06 up into the following requirements: =
<o:p></o:p></p><p>Old (from ephemeral-state:10):<o:p></o:p></p><div =
style=3D'border:solid #CCCCCC 1.0pt;padding:8.0pt 8.0pt 8.0pt =
8.0pt'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;box-=
sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: =
auto;text-align:start;widows: 1;-webkit-text-stroke-width: =
0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>&nbsp;&nbsp; Ephemeral-REQ-06: The ability to =
augment an object with appropriate</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; YANG structures that have the =
property of being ephemeral.&nbsp; An object</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; defined as any one of the =
following: yang module, submodule or</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; components of submodule, or =
schema node.</span><o:p></o:p></pre></div><p>Old (from =
ephemeral-state-11):<o:p></o:p></p><div style=3D'border:solid #CCCCCC =
1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;box-=
sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: =
auto;text-align:start;widows: 1;-webkit-text-stroke-width: =
0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>&nbsp;&nbsp; Ephemeral-REQ-06: The ability to =
augment Yang schema nodes with</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; additional Yang Schema nodes =
that have the property of being</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; =
ephemeral.</span><o:p></o:p></pre></div><p>Proposed:<o:p></o:p></p><div =
style=3D'border:solid #CCCCCC 1.0pt;padding:8.0pt 8.0pt 8.0pt =
8.0pt'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;box-=
sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: =
auto;text-align:start;widows: 1;-webkit-text-stroke-width: =
0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>&nbsp;&nbsp; =
Ephemeral-REQ-06:</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'> </span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp;&nbsp;1. The ability to define =
a YANG module or submodule schema that</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; only contains data nodes with =
the property of being ephemeral.</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; 2. The ability to augment a =
YANG data model with additional YANG</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; schema nodes that have the =
property of being ephemeral.</span><o:p></o:p></pre></div><p><span =
style=3D'color:#1F497D'>I will accept this change and release in it =
version-12. &nbsp;</span><o:p></o:p></p><p><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&nbsp;</span><o:p></o:p></p><p>3) Ephemeral-REQ-07: (page =
6):<o:p></o:p></p><div style=3D'border:solid #CCCCCC 1.0pt;padding:8.0pt =
8.0pt 8.0pt 8.0pt'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;box-=
sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: =
auto;text-align:start;widows: 1;-webkit-text-stroke-width: =
0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>&nbsp;&nbsp; Ephemeral-REQ-07: Ephemeral =
configuration state could override</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; overlapping local =
configuration state, or vice-versa.</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; Implementations MUST provide =
a mechanism to choose which takes</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; precedence.&nbsp; This =
mechanism MUST include local configuration =
(policy)</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; and MAY be provided via the =
I2RS protocol mechanisms.</span><o:p></o:p></pre></div><p>I note that =
this requirement doesn't specify the scope of whether the override =
mechanism should operate globally or on a per data node basis.&nbsp; I'm =
not sure whether this needs to be clarified - since the text in the =
architecture document makes it pretty clear that a global level =
resolution is sufficient.<o:p></o:p></p><p><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Sue: &nbsp;Again, we were cautioned to not specify the design, but =
only provide a result.&nbsp; The global is sufficient. =
</span><o:p></o:p></p><p class=3DMsoNormal>Rob: =
OK<br><br><br><o:p></o:p></p><p>4) Ephemeral-REQ-08: (page =
6):<br>Similar to Juergen's comments, I'm concerned about the =
writable/non-writable requirement.<o:p></o:p></p><div =
style=3D'border:solid #CCCCCC 1.0pt;padding:8.0pt 8.0pt 8.0pt =
8.0pt'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; Ephemeral-REQ-08: Yang MUST =
have a way to indicate in a data model</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; that schema nodes have the =
following properties: ephemeral, writable/</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; not-writable, and =
status/configuration.</span><o:p></o:p></pre></div><p>I'm somewhat =
adverse to writable operational state, and hence I would prefer if this =
requirement was watered down to something like:<o:p></o:p></p><div =
style=3D'border:solid #CCCCCC 1.0pt;padding:8.0pt 8.0pt 8.0pt =
8.0pt'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;box-=
sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: =
auto;text-align:start;widows: 1;-webkit-text-stroke-width: =
0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>&nbsp;&nbsp; Ephemeral-REQ-08: In addition to =
config true/false, there MUST be a</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; way to indicate that YANG =
schema nodes represent ephemeral state.</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; It is desirable to allow for, =
and have to way to indicate, config</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; false YANG schema nodes that =
are writable operational state.</span><o:p></o:p></pre></div><p><span =
style=3D'color:#1F497D'>Sue: You are Juergen are concerned about =
writeable/non-writeable.&nbsp; &nbsp;Martin is concerned about =
status/configuration. &nbsp;The I2RS authors believe we are running into =
the different operational state models. &nbsp;Each time we change this =
requirement we get another response.&nbsp;&nbsp; The requirement will =
stay for now.&nbsp; I suspect the we will be working on the design of =
the solution after we have settled on the operational state =
models.</span><o:p></o:p></p><p class=3DMsoNormal>Rob:<br>My actual =
concern is that what I have proposed as a datastore solution cannot meet =
this requirement, because I think that only configuration should be =
writable, and hence the writable/non-writable property is =
implicit.<br><br><br><br><o:p></o:p></p><p>5) Ephemeral-Req-12, page =
7:<br>Presumably the requirement is that the notification must indicate =
the node that we involved in the collision?&nbsp; I.e. it isn't =
sufficient to just signal to the client that there has been a collision =
with some of their configuration? <o:p></o:p></p><div =
style=3D'border:solid #CCCCCC 1.0pt;padding:8.0pt 8.0pt 8.0pt =
8.0pt'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;box-=
sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: =
auto;text-align:start;widows: 1;-webkit-text-stroke-width: =
0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>&nbsp;&nbsp;&nbsp;Ephemeral-REQ-12: When a =
collision occurs as two clients are trying</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; to write the same data node, =
this collision is considered an error</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; and priorities were created =
to give a deterministic result.&nbsp; When</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; there is a collision, a =
notification MUST BE sent to the original</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; client to give the original =
client a chance to deal with the issues</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; surrounding the =
collision.&nbsp; The original client may need to fix =
their</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; =
state.</span><o:p></o:p></pre></div><p>Should this be made =
explicit?&nbsp; E.g. perhaps:<o:p></o:p></p><div style=3D'border:solid =
#CCCCCC 1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;box-=
sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: =
auto;text-align:start;widows: 1;-webkit-text-stroke-width: =
0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>&nbsp;&nbsp; Ephemeral-REQ-12: When a =
collision occurs as two clients are trying</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; to write the same data node, =
this collision is considered an error</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; and priorities were created =
to give a deterministic result.&nbsp; When</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; there is a collision, a =
notification (indicating which data node the</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; collision occurred on) MUST =
BE sent to the original client to give</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; the original client a chance =
to deal with the issues surrounding</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; the collision.&nbsp; The =
original client may need to fix their =
state.</span><o:p></o:p></pre></div><p><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Sue:&nbsp; For some data models, it may be important to provide more =
than just that.&nbsp; How about: </span><o:p></o:p></p><p><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&nbsp;&nbsp;When there is a collision, a notification&nbsp; (which =
includes an indication of the data node the collision occurred =
on)</span><o:p></o:p></p><p><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>MUST BE sent to the original client to give the original client a =
chance to deal with the issues surrounding the collision.&nbsp; =
</span><o:p></o:p></p><p class=3DMsoNormal>Rob: Yes, =
OK.<br><br><br><br><o:p></o:p></p><p>6) Ephemeral-REQ-14, page 7:<br>I =
would suggest potentially rewording this to make the requirement and =
leeway on the solution more explicit. <o:p></o:p></p><div =
style=3D'border:solid #CCCCCC 1.0pt;padding:8.0pt 8.0pt 8.0pt =
8.0pt'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;box-=
sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: =
auto;text-align:start;widows: 1;-webkit-text-stroke-width: =
0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>&nbsp;&nbsp;&nbsp;Ephemeral-REQ-14: If two =
clients have the same priority, the</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; architecture says the first =
one wins.&nbsp; The I2RS protocol has this</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; requirement to prevent =
oscillations between clients.&nbsp; If one uses =
the</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; last wins scenario, you may =
oscillate.&nbsp; That was our opinion, but a</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; design which prevents =
oscillation is the key point.</span><o:p></o:p></pre></div><p>Proposed =
alternative text:<o:p></o:p></p><div style=3D'border:solid #CCCCCC =
1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;box-=
sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: =
auto;text-align:start;widows: 1;-webkit-text-stroke-width: =
0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>&nbsp;&nbsp; Ephemeral-REQ-14: A =
deterministic conflict resolution mechanism =
MUST</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; be provided to handle the =
error scenario that two clients, with</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; the same priority, update the =
same configuration data node.&nbsp; The I2RS</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; architecture gives one way =
that this could be achieved, by</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; specifying that the first =
update wins.&nbsp; Other solutions, that =
prevent</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; oscillation of the config =
data node, are also acceptable.</span><o:p></o:p></pre></div><p><span =
style=3D'color:#1F497D'>Sue: Accepted =E2=80=93 this will be released =
with version 2. </span><o:p></o:p></p><p>Cosmetic =
comments:<o:p></o:p></p><p>7) Section 1. Introduction.&nbsp; The =
requirements are no longer version specific, hence perhaps update the =
following text from:<o:p></o:p></p><div style=3D'border:solid #CCCCCC =
1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;box-=
sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: =
auto;text-align:start;widows: 1;-webkit-text-stroke-width: =
0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>&nbsp;</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; 1.&nbsp; select features from =
YANG, NETCONF, and RESTCONF per version of</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; the =
I2RS protocol (See sections 4, 5, and 6)</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; 2.&nbsp; propose additions to =
YANG, NETCONF, and RESTCONF per version of</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; the =
I2RS protocol for key functions (ephemeral state, =
protocol</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
security, publication/subscription service, =
traceability),</span><o:p></o:p></pre></div><p>to:<o:p></o:p></p><div =
style=3D'border:solid #CCCCCC 1.0pt;padding:8.0pt 8.0pt 8.0pt =
8.0pt'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;box-=
sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: =
auto;text-align:start;widows: 1;-webkit-text-stroke-width: =
0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>&nbsp;&nbsp; 1.&nbsp; select features from =
YANG, NETCONF, and RESTCONF for the initial</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; I2RS =
protocol version (See sections 4, 5, and 6).</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; 2.&nbsp; propose additions to =
YANG, NETCONF, and RESTCONF for the initial</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; I2RS =
protocol version for key functions (ephemeral state, =
protocol</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp;&nbsp; =
&nbsp;&nbsp;&nbsp;security, publication/subscription service, =
traceability).</span><o:p></o:p></pre></div><p><span =
style=3D'color:#1F497D'>Sue: We will probably have a subsequent version =
of the I2RS protocol. &nbsp;I would prefer to leave this as stated so =
this is clear. &nbsp;</span><o:p></o:p></p><p>8) Section 1. =
introduction.&nbsp; I'm not sure that this 3rd bullet is relevant, and =
possibly could be removed, although equally it doesn't seem to do any =
harm:<o:p></o:p></p><div style=3D'border:solid #CCCCCC =
1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;box-=
sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: =
auto;text-align:start;widows: 1;-webkit-text-stroke-width: =
0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>&nbsp;&nbsp; 3.&nbsp; suggest protocol =
strawman as ideas for the NETCONF, RESTCONF, =
and</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; YANG =
changes.</span><o:p></o:p></pre></div><p class=3DMsoNormal><span =
style=3D'color:#1F497D'>Sue: There is a protocol strawman that will be =
submitted based on experience.&nbsp; </span><o:p></o:p></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&nbsp;</span><o:p></o:p></p><p class=3DMsoNormal><br>9) The document =
uses a mix of &quot;Yang&quot; and &quot;YANG&quot;, probably should =
just use &quot;YANG&quot;.<o:p></o:p></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Fixed in version 12. </span><o:p></o:p></p><p>10) Section 3. =
Ephemeral State Requirements:<o:p></o:p></p><p><span =
style=3D'color:#1F497D'>&gt;</span>The document refers to =
&quot;ephemeral configured state&quot; here, but elsewhere (e.g. 3.4) =
&quot;ephemeral configuration&quot; or &quot;ephemeral configuration =
state&quot; is used.&nbsp; It might be helpful for use of these terms to =
be consistent, I would suggest &quot;ephemeral configuration&quot; is =
<span =
style=3D'color:#1F497D'>&gt;</span>sufficient.<o:p></o:p></p><p><span =
style=3D'color:#1F497D'>Sue: Ephemeral state is defined as ephemeral =
configuration state and operational state in the =
</span><o:p></o:p></p><p class=3DMsoNormal>Rob: It was only a minor nit, =
I was suggesting consistency of the term, perhaps change &quot;ephemeral =
configuration&quot;and &quot;ephemeral configuration state&quot;&nbsp; =
to &quot;ephemeral configured =
state&quot;.<br><br>Thanks,<br>Rob<br><br><br><o:p></o:p></p><h2 =
style=3D'mso-line-height-alt:0pt'><a name=3Dsection-3></a><a =
href=3D"https://tools.ietf.org/html/draft-ietf-i2rs-ephemeral-state-11#se=
ction-3"><span style=3D'font-size:10.0pt'>3</span></a><span =
style=3D'font-size:10.0pt;font-family:"Courier New =
;color:black","serif"'>.&nbsp; Ephemeral State =
Requirements</span><o:p></o:p></h2><pre>&nbsp;<o:p></o:p></pre><pre>&nbsp=
;<o:p></o:p></pre><pre>&nbsp;&nbsp; In requirements Ephemeral-REQ-01 to =
Ephemeral-05, Ephemeral state is<o:p></o:p></pre><pre> =
&nbsp;&nbsp;defined as potentially including both ephemeral configured =
state and<o:p></o:p></pre><pre>&nbsp;&nbsp; operational =
state.<o:p></o:p></pre><p>11) Ephemeral-REQ-13, page =
7:<o:p></o:p></p><p>Minor omission in the last =
sentence.<o:p></o:p></p><div style=3D'border:solid #CCCCCC =
1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;box-=
sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: =
auto;text-align:start;widows: 1;-webkit-text-stroke-width: =
0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>&nbsp; Ephemeral-REQ-13: The requirement to =
support multi-headed control is</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; required for collisions and =
the priority resolution of collisions.</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; Multi-headed control is not =
tied to ephemeral state.&nbsp; I2RS is not</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; mandating how AAA supports =
priority.&nbsp; Mechanisms which prevent</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; collisions of two clients =
trying the same node of data are the =
focus.</span><o:p></o:p></pre></div><p>Proposed:<o:p></o:p></p><div =
style=3D'border:solid #CCCCCC 1.0pt;padding:8.0pt 8.0pt 8.0pt =
8.0pt'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;box-=
sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: =
auto;text-align:start;widows: 1;-webkit-text-stroke-width: =
0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>&nbsp; Ephemeral-REQ-13: The requirement to =
support multi-headed control is</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; required for collisions and =
the priority resolution of collisions.</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; Multi-headed control is not =
tied to ephemeral state.&nbsp; I2RS is not</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; mandating how AAA supports =
priority.&nbsp; Mechanisms which prevent</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; collisions of two clients =
trying to modify the same node of data</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; are the =
focus.</span><o:p></o:p></pre></div><p><span =
style=3D'color:#1F497D'>Sue: Thank you.&nbsp; Version -12 will have this =
change. </span><o:p></o:p></p><p><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&nbsp;</span><o:p></o:p></p><p>12) Ephemeral-REQ-15, page 7:<br>I =
would suggest that it might be better to refer to &quot;Ephemeral =
state&quot; rather than the I2RS ephemeral =
data-store.<o:p></o:p></p><div style=3D'border:solid #CCCCCC =
1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;box-=
sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: =
auto;text-align:start;widows: 1;-webkit-text-stroke-width: =
0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>&nbsp;&nbsp; Ephemeral-REQ-15: Section 7.9 of =
the [I-D.ietf-i2rs-architecture]</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; states the I2RS architecture =
does not include multi-message atomicity</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; and roll-back =
mechanisms.&nbsp; I2RS notes multiple operations in one =
or</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; more messages handling can =
handle errors within the set of operations</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; in many ways.&nbsp; No =
multi-message commands SHOULD cause errors to =
be</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; inserted into the I2RS =
ephemeral data-store.</span><o:p></o:p></pre></div><p =
class=3DMsoNormal>Proposed:<br><br><br><o:p></o:p></p><div =
style=3D'border:solid #CCCCCC 1.0pt;padding:8.0pt 8.0pt 8.0pt =
8.0pt'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; Ephemeral-REQ-15: Section 7.9 =
of the [I-D.ietf-i2rs-architecture]</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; states the I2RS architecture =
does not include multi-message atomicity</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; and roll-back =
mechanisms.&nbsp; I2RS notes multiple operations in one =
or</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; more messages handling can =
handle errors within the set of operations</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; in many ways.&nbsp; No =
multi-message commands SHOULD cause errors to =
be</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; inserted into the ephemeral =
state.</span><o:p></o:p></pre></div><p class=3DMsoNormal><span =
style=3D'color:#1F497D'>&nbsp;</span><o:p></o:p></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Accepted change for -15. </span><o:p></o:p></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&nbsp;</span><o:p></o:p></p><p>Thanks,<br>Rob<o:p></o:p></p><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div></body></html>
------=_NextPart_000_4AD0_01D1D2CE.82156070--


From nobody Thu Jun 30 10:44:09 2016
Return-Path: <wwwrun@rfc-editor.org>
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 CC1C512D935; Thu, 30 Jun 2016 10:44:08 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -108.328
X-Spam-Level: 
X-Spam-Status: No, score=-108.328 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_HI=-5, RP_MATCHES_RCVD=-1.426, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, USER_IN_WHITELIST=-100] autolearn=ham autolearn_force=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 Oc2TyKwZ8J3W; Thu, 30 Jun 2016 10:44:06 -0700 (PDT)
Received: from rfc-editor.org (rfc-editor.org [IPv6:2001:1900:3001:11::31]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 4C4FA12D89B; Thu, 30 Jun 2016 10:44:03 -0700 (PDT)
Received: by rfc-editor.org (Postfix, from userid 30) id 45A3FB80B9B; Thu, 30 Jun 2016 10:44:03 -0700 (PDT)
To: ietf-announce@ietf.org, rfc-dist@rfc-editor.org
X-PHP-Originating-Script: 1005:ams_util_lib.php
From: rfc-editor@rfc-editor.org
Message-Id: <20160630174403.45A3FB80B9B@rfc-editor.org>
Date: Thu, 30 Jun 2016 10:44:03 -0700 (PDT)
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/8g8kfu3kxVNCkG8klFm69Iq8Z7Y>
Cc: i2rs@ietf.org, rfc-editor@rfc-editor.org
Subject: [i2rs] RFC 7920 on Problem Statement for the Interface to the Routing System
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 30 Jun 2016 17:44:09 -0000

A new Request for Comments is now available in online RFC libraries.

        
        RFC 7920

        Title:      Problem Statement for the Interface 
                    to the Routing System 
        Author:     A. Atlas, Ed.,
                    T. Nadeau, Ed.,
                    D. Ward
        Status:     Informational
        Stream:     IETF
        Date:       June 2016
        Mailbox:    akatlas@juniper.net, 
                    tnadeau@lucidvision.com, 
                    wardd@cisco.com
        Pages:      
        Characters: 28441
        Updates/Obsoletes/SeeAlso:   None

        I-D Tag:    draft-ietf-i2rs-problem-statement-11.txt

        URL:        https://www.rfc-editor.org/info/rfc7920

        DOI:        http://dx.doi.org/10.17487/RFC7920

Traditionally, routing systems have implemented routing and signaling
(e.g., MPLS) to control traffic forwarding in a network.  Route
computation has been controlled by relatively static policies that
define link cost, route cost, or import and export routing policies.
Requirements have emerged to more dynamically manage and program
routing systems due to the advent of highly dynamic data-center
networking, on-demand WAN services, dynamic policy-driven traffic
steering and service chaining, the need for real-time security threat
responsiveness via traffic control, and a paradigm of separating
policy-based decision-making from the router itself.  These
requirements should allow controlling routing information and traffic
paths and extracting network topology information, traffic
statistics, and other network analytics from routing systems.

This document proposes meeting this need via an Interface to the
Routing System (I2RS).

This document is a product of the Interface to the Routing System Working Group of the IETF.


INFORMATIONAL: This memo provides information for the Internet community.
It does not specify an Internet standard of any kind. Distribution of
this memo is unlimited.

This announcement is sent to the IETF-Announce and rfc-dist lists.
To subscribe or unsubscribe, see
  https://www.ietf.org/mailman/listinfo/ietf-announce
  https://mailman.rfc-editor.org/mailman/listinfo/rfc-dist

For searching the RFC series, see https://www.rfc-editor.org/search
For downloading RFCs, see https://www.rfc-editor.org/retrieve/bulk

Requests for special distribution should be addressed to either the
author of the RFC in question, or to rfc-editor@rfc-editor.org.  Unless
specifically noted otherwise on the RFC itself, all RFCs are for
unlimited distribution.


The RFC Editor Team
Association Management Solutions, LLC



From nobody Thu Jun 30 10:44:41 2016
Return-Path: <wwwrun@rfc-editor.org>
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 CA3E312D89B; Thu, 30 Jun 2016 10:44:39 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -108.328
X-Spam-Level: 
X-Spam-Status: No, score=-108.328 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_HI=-5, RP_MATCHES_RCVD=-1.426, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, USER_IN_WHITELIST=-100] autolearn=ham autolearn_force=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 A2qy_GckERNN; Thu, 30 Jun 2016 10:44:36 -0700 (PDT)
Received: from rfc-editor.org (rfc-editor.org [IPv6:2001:1900:3001:11::31]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 075C212DABC; Thu, 30 Jun 2016 10:44:30 -0700 (PDT)
Received: by rfc-editor.org (Postfix, from userid 30) id 019B6B80BA7; Thu, 30 Jun 2016 10:44:29 -0700 (PDT)
To: ietf-announce@ietf.org, rfc-dist@rfc-editor.org
X-PHP-Originating-Script: 1005:ams_util_lib.php
From: rfc-editor@rfc-editor.org
Message-Id: <20160630174430.019B6B80BA7@rfc-editor.org>
Date: Thu, 30 Jun 2016 10:44:30 -0700 (PDT)
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/OGUCnPcaxThN1ZMsvWASgv5fJ44>
Cc: i2rs@ietf.org, rfc-editor@rfc-editor.org
Subject: [i2rs] RFC 7921 on An Architecture for the Interface to the Routing System
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 30 Jun 2016 17:44:40 -0000

A new Request for Comments is now available in online RFC libraries.

        
        RFC 7921

        Title:      An Architecture for the Interface 
                    to the Routing System 
        Author:     A. Atlas, J. Halpern,
                    S. Hares, D. Ward, T. Nadeau
        Status:     Informational
        Stream:     IETF
        Date:       June 2016
        Mailbox:    akatlas@juniper.net, 
                    joel.halpern@ericsson.com, 
                    shares@ndzh.com,
                    wardd@cisco.com, 
                    tnadeau@lucidvision.com
        Pages:      40
        Characters: 100699
        Updates/Obsoletes/SeeAlso:   None

        I-D Tag:    draft-ietf-i2rs-architecture-15.txt

        URL:        https://www.rfc-editor.org/info/rfc7921

        DOI:        http://dx.doi.org/10.17487/RFC7921

This document describes the IETF architecture for a standard,
programmatic interface for state transfer in and out of the Internet
routing system.  It describes the high-level architecture, the
building blocks of this high-level architecture, and their
interfaces, with particular focus on those to be standardized as part
of the Interface to the Routing System (I2RS).

This document is a product of the Interface to the Routing System Working Group of the IETF.


INFORMATIONAL: This memo provides information for the Internet community.
It does not specify an Internet standard of any kind. Distribution of
this memo is unlimited.

This announcement is sent to the IETF-Announce and rfc-dist lists.
To subscribe or unsubscribe, see
  https://www.ietf.org/mailman/listinfo/ietf-announce
  https://mailman.rfc-editor.org/mailman/listinfo/rfc-dist

For searching the RFC series, see https://www.rfc-editor.org/search
For downloading RFCs, see https://www.rfc-editor.org/retrieve/bulk

Requests for special distribution should be addressed to either the
author of the RFC in question, or to rfc-editor@rfc-editor.org.  Unless
specifically noted otherwise on the RFC itself, all RFCs are for
unlimited distribution.


The RFC Editor Team
Association Management Solutions, LLC



From nobody Thu Jun 30 10:45:20 2016
Return-Path: <wwwrun@rfc-editor.org>
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 19CCE12DB05; Thu, 30 Jun 2016 10:45:14 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -108.328
X-Spam-Level: 
X-Spam-Status: No, score=-108.328 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_HI=-5, RP_MATCHES_RCVD=-1.426, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, USER_IN_WHITELIST=-100] autolearn=ham autolearn_force=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 3MfYU9EpIu9W; Thu, 30 Jun 2016 10:45:09 -0700 (PDT)
Received: from rfc-editor.org (rfc-editor.org [IPv6:2001:1900:3001:11::31]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id E3B2612D110; Thu, 30 Jun 2016 10:44:58 -0700 (PDT)
Received: by rfc-editor.org (Postfix, from userid 30) id DECA4B80B9C; Thu, 30 Jun 2016 10:44:58 -0700 (PDT)
To: ietf-announce@ietf.org, rfc-dist@rfc-editor.org
X-PHP-Originating-Script: 1005:ams_util_lib.php
From: rfc-editor@rfc-editor.org
Message-Id: <20160630174458.DECA4B80B9C@rfc-editor.org>
Date: Thu, 30 Jun 2016 10:44:58 -0700 (PDT)
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/PuswYC5UYYauDo-tXlzZIz-7l5s>
Cc: i2rs@ietf.org, rfc-editor@rfc-editor.org
Subject: [i2rs] RFC 7922 on Interface to the Routing System (I2RS) Traceability: Framework and Information Model
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 30 Jun 2016 17:45:14 -0000

A new Request for Comments is now available in online RFC libraries.

        
        RFC 7922

        Title:      Interface to the Routing System (I2RS)
                    Traceability: Framework and Information Model 
        Author:     J. Clarke, G. Salgueiro, C. Pignataro
        Status:     Informational
        Stream:     IETF
        Date:       June 2016
        Mailbox:    jclarke@cisco.com, 
                    gsalguei@cisco.com, 
                    cpignata@cisco.com
        Pages:      17
        Characters: 36070
        Updates/Obsoletes/SeeAlso:   None

        I-D Tag:    draft-ietf-i2rs-traceability-11.txt

        URL:        https://www.rfc-editor.org/info/rfc7922

        DOI:        http://dx.doi.org/10.17487/RFC7922

This document describes a framework for traceability in the Interface
to the Routing System (I2RS) and the information model for that
framework.  It specifies the motivation, requirements, and use cases,
and defines an information model for recording interactions between
elements implementing the I2RS protocol.  This framework provides a
consistent tracing interface for components implementing the I2RS
architecture to record what was done, by which component, and when.
It aims to improve the management of I2RS implementations, and can be
used for troubleshooting, auditing, forensics, and accounting
purposes.

This document is a product of the Interface to the Routing System Working Group of the IETF.


INFORMATIONAL: This memo provides information for the Internet community.
It does not specify an Internet standard of any kind. Distribution of
this memo is unlimited.

This announcement is sent to the IETF-Announce and rfc-dist lists.
To subscribe or unsubscribe, see
  https://www.ietf.org/mailman/listinfo/ietf-announce
  https://mailman.rfc-editor.org/mailman/listinfo/rfc-dist

For searching the RFC series, see https://www.rfc-editor.org/search
For downloading RFCs, see https://www.rfc-editor.org/retrieve/bulk

Requests for special distribution should be addressed to either the
author of the RFC in question, or to rfc-editor@rfc-editor.org.  Unless
specifically noted otherwise on the RFC itself, all RFCs are for
unlimited distribution.


The RFC Editor Team
Association Management Solutions, LLC



From nobody Thu Jun 30 10:46:05 2016
Return-Path: <wwwrun@rfc-editor.org>
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 3609412DA0B; Thu, 30 Jun 2016 10:46:03 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -108.328
X-Spam-Level: 
X-Spam-Status: No, score=-108.328 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_HI=-5, RP_MATCHES_RCVD=-1.426, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, USER_IN_WHITELIST=-100] autolearn=ham autolearn_force=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 QLbttKjF7vqk; Thu, 30 Jun 2016 10:46:01 -0700 (PDT)
Received: from rfc-editor.org (rfc-editor.org [IPv6:2001:1900:3001:11::31]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 1474512DB37; Thu, 30 Jun 2016 10:45:27 -0700 (PDT)
Received: by rfc-editor.org (Postfix, from userid 30) id 9DFE7B80BB8; Thu, 30 Jun 2016 10:45:25 -0700 (PDT)
To: ietf-announce@ietf.org, rfc-dist@rfc-editor.org
X-PHP-Originating-Script: 1005:ams_util_lib.php
From: rfc-editor@rfc-editor.org
Message-Id: <20160630174525.9DFE7B80BB8@rfc-editor.org>
Date: Thu, 30 Jun 2016 10:45:25 -0700 (PDT)
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/F-kDpXWgJLS9mtqZ7SRDIpgAwyE>
Cc: i2rs@ietf.org, rfc-editor@rfc-editor.org
Subject: [i2rs] RFC 7923 on Requirements for Subscription to YANG Datastores
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 30 Jun 2016 17:46:03 -0000

A new Request for Comments is now available in online RFC libraries.

        
        RFC 7923

        Title:      Requirements for Subscription to YANG 
                    Datastores 
        Author:     E. Voit, A. Clemm,
                    A. Gonzalez Prieto
        Status:     Informational
        Stream:     IETF
        Date:       June 2016
        Mailbox:    evoit@cisco.com, 
                    alex@cisco.com, 
                    albertgo@cisco.com
        Pages:      18
        Characters: 37630
        Updates/Obsoletes/SeeAlso:   None

        I-D Tag:    draft-ietf-i2rs-pub-sub-requirements-09.txt

        URL:        https://www.rfc-editor.org/info/rfc7923

        DOI:        http://dx.doi.org/10.17487/RFC7923

This document provides requirements for a service that allows client
applications to subscribe to updates of a YANG datastore.  Based on
criteria negotiated as part of a subscription, updates will be pushed
to targeted recipients.  Such a capability eliminates the need for
periodic polling of YANG datastores by applications and fills a
functional gap in existing YANG transports (i.e., Network
Configuration Protocol (NETCONF) and RESTCONF).  Such a service can
be summarized as a "pub/sub" service for YANG datastore updates.
Beyond a set of basic requirements for the service, various
refinements are addressed.  These refinements include: periodicity of
object updates, filtering out of objects underneath a requested a
subtree, and delivery QoS guarantees.

This document is a product of the Interface to the Routing System Working Group of the IETF.


INFORMATIONAL: This memo provides information for the Internet community.
It does not specify an Internet standard of any kind. Distribution of
this memo is unlimited.

This announcement is sent to the IETF-Announce and rfc-dist lists.
To subscribe or unsubscribe, see
  https://www.ietf.org/mailman/listinfo/ietf-announce
  https://mailman.rfc-editor.org/mailman/listinfo/rfc-dist

For searching the RFC series, see https://www.rfc-editor.org/search
For downloading RFCs, see https://www.rfc-editor.org/retrieve/bulk

Requests for special distribution should be addressed to either the
author of the RFC in question, or to rfc-editor@rfc-editor.org.  Unless
specifically noted otherwise on the RFC itself, all RFCs are for
unlimited distribution.


The RFC Editor Team
Association Management Solutions, LLC



From nobody Thu Jun 30 11:52:23 2016
Return-Path: <evoit@cisco.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 8FA5412B048 for <i2rs@ietfa.amsl.com>; Thu, 30 Jun 2016 11:52:22 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -15.936
X-Spam-Level: 
X-Spam-Status: No, score=-15.936 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-1.426, SPF_PASS=-0.001, T_KAM_HTML_FONT_INVALID=0.01, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.com
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 Flj4cg1amGMC for <i2rs@ietfa.amsl.com>; Thu, 30 Jun 2016 11:52:19 -0700 (PDT)
Received: from alln-iport-3.cisco.com (alln-iport-3.cisco.com [173.37.142.90]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id EEFBC1288B8 for <i2rs@ietf.org>; Thu, 30 Jun 2016 11:52:18 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=86442; q=dns/txt; s=iport; t=1467312739; x=1468522339; h=from:to:cc:subject:date:message-id:references: in-reply-to:mime-version; bh=2wEtP0o0ufLKRsOIetPGJXXf2gaoxCO+QrrDHoH6xAU=; b=CNBEbLioX0FxGFBKrOC6QWkOZzqO6CinTPyLr7TE0XnlmarOz4/COqaj k91yYw9suJBV4qa+DPormzb5sTY6Mubm/NjCpJ7WrTbNyF3v4mi/fZFG2 ofAn0CNp3obEfYQ3DqULCgZwY9HsszCt9e1gHstZIJLu9Kt1VsO46Zhg+ I=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0AMAgBcaXVX/4wNJK1bgnBOVn0GuUeBf?= =?us-ascii?q?CSCPIM3AhyBIDgUAQEBAQEBAWUnhEwBAQEEGgkKQQsQAgEIDgMBAwEBDhMBBgM?= =?us-ascii?q?CAgIwFAMGCAIEDgUIE4gVDrNVkAwBAQEBAQEBAQEBAQEBAQEBAQEBAQEXBYYoh?= =?us-ascii?q?E2EHDsfgkuCWgWIdYpghTYBhgeIMoFxjUCGVYkvAR42gggcgUxuh31FfwEBAQ?=
X-IronPort-AV: E=Sophos;i="5.26,553,1459814400";  d="scan'208,217";a="291440865"
Received: from alln-core-7.cisco.com ([173.36.13.140]) by alln-iport-3.cisco.com with ESMTP/TLS/DHE-RSA-AES256-SHA; 30 Jun 2016 18:52:17 +0000
Received: from XCH-RTP-013.cisco.com (xch-rtp-013.cisco.com [64.101.220.153]) by alln-core-7.cisco.com (8.14.5/8.14.5) with ESMTP id u5UIqHmK023181 (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=FAIL); Thu, 30 Jun 2016 18:52:17 GMT
Received: from xch-rtp-013.cisco.com (64.101.220.153) by XCH-RTP-013.cisco.com (64.101.220.153) with Microsoft SMTP Server (TLS) id 15.0.1210.3; Thu, 30 Jun 2016 14:52:16 -0400
Received: from xch-rtp-013.cisco.com ([64.101.220.153]) by XCH-RTP-013.cisco.com ([64.101.220.153]) with mapi id 15.00.1210.000; Thu, 30 Jun 2016 14:52:16 -0400
From: "Eric Voit (evoit)" <evoit@cisco.com>
To: Susan Hares <shares@ndzh.com>
Thread-Topic: [i2rs] Review of draft-ietf-i2rs-ephemeral-state-11
Thread-Index: AQLFTksMOMokz5ko+uSOkEHfh/xdsgG0QEYAApbOvHWd+OppIIAAAQ+g
Date: Thu, 30 Jun 2016 18:52:15 +0000
Message-ID: <da139b3fdb4a4b54950459e810fcbb7b@XCH-RTP-013.cisco.com>
References: <4f70e94d-f73b-73a7-c41b-9ab5ffeeda6f@cisco.com> <4a5201d1d2ea$9eef05e0$dccd11a0$@ndzh.com> <33da1b11-f55a-b1ac-2b44-d376ccf4dd9f@cisco.com> <4acf01d1d2f0$09221e70$1b665b50$@ndzh.com>
In-Reply-To: <4acf01d1d2f0$09221e70$1b665b50$@ndzh.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-ms-exchange-transport-fromentityheader: Hosted
x-originating-ip: [10.118.56.231]
Content-Type: multipart/alternative; boundary="_000_da139b3fdb4a4b54950459e810fcbb7bXCHRTP013ciscocom_"
MIME-Version: 1.0
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/5Wg5rVYq2oEu2grJ42gY75cSkEs>
Cc: "i2rs@ietf.org" <i2rs@ietf.org>
Subject: Re: [i2rs] Review of draft-ietf-i2rs-ephemeral-state-11
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 30 Jun 2016 18:52:22 -0000

--_000_da139b3fdb4a4b54950459e810fcbb7bXCHRTP013ciscocom_
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64

SGkgU3VzYW4sDQoNCk15IHJlc3BvbnNlcyBiZWxvdyBhcmUgYmFzZWQgb24gdjEyLg0KDQpTZWN0
aW9uIDk6DQpQdWIvU3ViIFJlcXVpcmVtZW50cyBFeHBhbmRlZCBmb3IgRXBoZW1lcmFsIFN0YXRl
IC0tIFN1YnNjcmliaW5nIHRvIEVwaGVtZXJhbCBzdGF0ZSBtZWFucyB0aGF0IHRoZXJlIG11c3Qg
YmUgc29tZSBzdHJlYW0gb2YgRXBoZW1lcmFsIGluZm9ybWF0aW9uIGFnYWluc3Qgd2hpY2ggdGhl
IFN1YnNjcmlwdGlvbiBjYW4gYmUgYXBwbGllZC4gICBUaGlzIHdpbGwgYmUgYSBkaWZmZXJlbnQg
c3RyZWFtIHRoYW4gZm9yIHN0YXJ0dXAgY29uZmlnLCBhbmQgbWlnaHQgYmUgYSBkaWZmZXJlbnQg
c3RyZWFtIGZyb20gcnVubmluZyBjb25maWcuIEluIGFkZGl0aW9uLCBpdCBpcyBwb3NzaWJsZSB0
aGF0IHRoZXJlIHdpbGwgbm90IGJlIGEgc2luZ2xlIHN0cmVhbSB3aXRoIGluY2x1ZGVzIGJvdGgg
T3BlcmF0aW9uYWwgYW5kIENvbmZpZyBkYXRhLiAoTGlrZWx5IHRoZXNlIGFyZSBhbGwgZGlmZmVy
ZW50IGZyb20gYW55IE9wU3RhdGUgc3RyZWFtIHRvby4pICAgIFdpdGggdGhpcyBpbiBtaW5kOg0K
DQpQdWItU3ViLVJFUS0wMToNCkNvbW1lbnQgIzENCk11c3QgdGhlIHN1YnNjcmlwdGlvbiBzZXJ2
aWNlIHN1cHBvcnQgb3BlcmF0aW9uYWwgYW5kIGVwaGVtZXJhbCBjb25maWd1cmF0aW9uIGRhdGEg
d2l0aGluIGEgc2luZ2xlIHN1YnNjcmlwdGlvbj8gIE9yIGNhbiB0d28gc2VwYXJhdGUgc3Vic2Ny
aXB0aW9ucyBiZSB1c2VkPyAgQXBwbHlpbmcgYSBzaW5nbGUgc3Vic2NyaXB0aW9uIGFnYWluc3Qg
YSBzaW5nbGUgc3RyZWFtIGlzIHdoZXJlIHRoaW5ncyBhcmUgZ29pbmcgaW4gdGhlIE5FVENPTkYg
YXQgdGhpcyBwb2ludC4NCkNvbW1lbnQgIzINCklzbuKAmXQgYWxsIGRhdGEgaW4gT3BlcmF0aW9u
YWwgZGF0YSBzdG9yZXMgZXBoZW1lcmFsPyAgSSBzZWUgdGhlIG1haWxpbmcgbGlzdCBkaXNjdXNz
aW9ucyBvbiB0aGlzIHRlcm1pbm9sb2d5IHRvcGljIGZvciB0aGUgcmVxdWlyZW1lbnRzIGVhcmxp
ZXIgaW4gdGhlIGRvY3VtZW50LiAgVGhpcyBpcyB3aGVyZSB5b3Ugc2FpZDog4oCcRXBoZW1lcmFs
IHN0YXRlIGlzIGRlZmluZWQgYXMgImVwaGVtZXJhbCBjb25maWd1cmF0aW9uIHN0YXRlIiBhbmQg
b3BlcmF0aW9uYWwgc3RhdGUu4oCdICBCdXQgdGhlIHRlcm1pbm9sb2d5IGZpeCBkb2VzbuKAmXQg
c2VlbSB0byBoYXZlIG1hZGUgaXQgZG93biBoZXJlLg0KDQpQdWItU3ViLVJFUS0wMjoNCkNvbW1l
bnQgIzM6DQpCdWlsZGluZyBvZmYgQ29tbWVudCAjMiwgaXMgdGhlcmUgc3VjaCBhIHRoaW5nIGFz
IEVwaGVtZXJhbCBkYXRhIGluIE9wZXJhdGlvbmFsIGRhdGE/ICBPciBhcmUgeW91IHRhbGtpbmcg
ZmlsdGVyaW5nIHNvIHRoYXQgb25seSBjaGFuZ2VzIGluIE9wZXJhdGlvbmFsIGRhdGEgYXJlIHNl
bnQuICAgSSBiZWxpZXZlIHlvdSBhcmUgaW50ZW5kaW5nIHRoZSBzZWNvbmQuICAgSW4gdGhhdCBj
YXNlIHRoZXJlIG1pZ2h0IG5lZWQgdG8gYmUgc3BlY2lhbCB0eXBlcyBvZiBmaWx0ZXJzIG5lZWRl
ZC4gIEZpbHRlcnMgc3VjaCBhcyBhIGNvdW50IG9mIHRoZSBudW1iZXIgb2Ygb2JqZWN0cyB1bmRl
ciBhIHRyZWUgKGUuZy4sIG51bWJlciBvZiByb3V0ZXMpLCBvciByYW5nZSBiYXNlZCBmaWx0ZXJz
IGZvciBhbiBvcGVyYXRpb25hbCB2YWx1ZS4NCg0KDQpTZWN0aW9uIDIsIEJ1bGxldHMgNSAmIDkg
YW5kIFNlY3Rpb24gNzoNClByaW9yaXR5IENvbGxpc2lvbi4gIENvdWxkIHlvdSBleHBsaWNpdGx5
IHNheSB3aGVuIHRoZSBwcmlvcml0eSBvZiBvbmUgd3JpdGUgd2lsbCBwcmV2ZW50IGEgbG93ZXIg
cHJpb3JpdHkgd3JpdGUgZnJvbSBvY2N1cnJpbmc/ICBJcyBpdCB0aGUgY29tcGxldGlvbiBvZiBh
bmQgcmVzcG9uc2UgdG8gc29tZSBQT1NUPyAgSSBkb27igJl0IGtub3cgd2hhdCB0aW1lLW9mLXVz
ZSBtZWFucy4NCg0KRXJpYw0KDQoNCkZyb206IGkycnMgW21haWx0bzppMnJzLWJvdW5jZXNAaWV0
Zi5vcmddIE9uIEJlaGFsZiBPZiBTdXNhbiBIYXJlcw0KU2VudDogVGh1cnNkYXksIEp1bmUgMzAs
IDIwMTYgMTI6NTQgUE0NClRvOiBSb2JlcnQgV2lsdG9uIC1YIChyd2lsdG9uIC0gRU5TT0ZUIExJ
TUlURUQgYXQgQ2lzY28pOyBpMnJzQGlldGYub3JnDQpTdWJqZWN0OiBSZTogW2kycnNdIFJldmll
dyBvZiBkcmFmdC1pZXRmLWkycnMtZXBoZW1lcmFsLXN0YXRlLTExDQoNClJvYmVydDoNCg0KVmVy
c2lvbi0xMiBpcyB1cGxvYWRlZC4NCg0KT24gRXBoZW1lcmFsLVJFUS0wODoNCg0KPlN1ZTogWW91
IGFyZSBKdWVyZ2VuIGFyZSBjb25jZXJuZWQgYWJvdXQgd3JpdGVhYmxlL25vbi13cml0ZWFibGUu
ICAgTWFydGluIGlzIGNvbmNlcm5lZCBhYm91dCBzdGF0dXMvY29uZmlndXJhdGlvbi4gIFRoZSBJ
MlJTIGF1dGhvcnMgYmVsaWV2ZSB3ZSBhcmUgcnVubmluZyBpbnRvIHRoZSBkaWZmZXJlbnQgb3Bl
cmF0aW9uYWwgc3RhdGUgbW9kZWxzLiAgRWFjaCB0aW1lIHdlIGNoYW5nZSB0aGlzIHJlcXVpcmVt
ZW50IHdlIGdldCBhbm90aGVyID5yZXNwb25zZS4gICBUaGUgcmVxdWlyZW1lbnQgd2lsbCBzdGF5
IGZvciBub3cuICBJIHN1c3BlY3QgdGhlIHdlIHdpbGwgYmUgd29ya2luZyBvbiB0aGUgZGVzaWdu
IG9mIHRoZSBzb2x1dGlvbiBhZnRlciB3ZSBoYXZlIHNldHRsZWQgb24gdGhlIG9wZXJhdGlvbmFs
IHN0YXRlIG1vZGVscy4NCj5Sb2I6DQo+TXkgYWN0dWFsIGNvbmNlcm4gaXMgdGhhdCB3aGF0IEkg
aGF2ZSBwcm9wb3NlZCBhcyBhIGRhdGFzdG9yZSBzb2x1dGlvbiBjYW5ub3QgbWVldCB0aGlzIHJl
cXVpcmVtZW50LCBiZWNhdXNlIEkgdGhpbmsgdGhhdCBvbmx5IGNvbmZpZ3VyYXRpb24gc2hvdWxk
IGJlIHdyaXRhYmxlLCBhbmQgaGVuY2UgdGhlIHdyaXRhYmxlL25vbi13cml0YWJsZSBwcm9wZXJ0
eSBpcyBpbXBsaWNpdC4NCg0KV2UgaGF2ZSB0aGUgY2FzZSBvZiB0aGUgZXBoZW1lcmFsIHRvcG9s
b2d5IGRhdGEgYmFzZSB0aGF0IGNvbmZsaWN0cyB0aGlzIHdvcmsuICAgV2Ugd2lsbCBuZWVkIHRv
IHdvcmsgdGhpcyBvdXQgYXQgSUVURiA5NiBpbiBCZXJsaW4uDQoNClN1ZQ0KDQpGcm9tOiBSb2Jl
cnQgV2lsdG9uIFttYWlsdG86cndpbHRvbkBjaXNjby5jb21dDQpTZW50OiBUaHVyc2RheSwgSnVu
ZSAzMCwgMjAxNiAxMjozOSBQTQ0KVG86IFN1c2FuIEhhcmVzOyBpMnJzQGlldGYub3JnPG1haWx0
bzppMnJzQGlldGYub3JnPg0KU3ViamVjdDogUmU6IFtpMnJzXSBSZXZpZXcgb2YgZHJhZnQtaWV0
Zi1pMnJzLWVwaGVtZXJhbC1zdGF0ZS0xMQ0KDQoNCkhpIFN1ZSwNCg0KQWxsIGZpbmUgd2l0aCBt
ZS4gIEEgY291cGxlIG9mIGNvbW1lbnRzIGlubGluZSAuLi4NCg0KT24gMzAvMDYvMjAxNiAxNzox
NSwgU3VzYW4gSGFyZXMgd3JvdGU6DQpSb2JlcnQ6DQoNClRoYW5rIHlvdSBmb3IgeW91ciBjb21t
ZW50cy4gIFNlZSByZXNvbHV0aW9uIG9mIGNvbW1lbnRzIGJlbG93LiAgVmVyc2lvbiAtMTIgd2ls
bCBiZSBzZW50IHRvIHRoZSBsaXN0IHRvIGhhbmRsZSBtb3N0IG9mIHRoZXNlIGNvbW1lbnRzLg0K
DQpTdWUNCg0KRnJvbTogaTJycyBbbWFpbHRvOmkycnMtYm91bmNlc0BpZXRmLm9yZ10gT24gQmVo
YWxmIE9mIFJvYmVydCBXaWx0b24NClNlbnQ6IE1vbmRheSwgSnVuZSAyNywgMjAxNiAxMTozMCBB
TQ0KVG86IGkycnNAaWV0Zi5vcmc8bWFpbHRvOmkycnNAaWV0Zi5vcmc+DQpTdWJqZWN0OiBbaTJy
c10gUmV2aWV3IG9mIGRyYWZ0LWlldGYtaTJycy1lcGhlbWVyYWwtc3RhdGUtMTENCg0KDQpIaSwN
Cg0KSSd2ZSByZXZpZXdlZCBkcmFmdC1pZXRmLWkycnMtZXBoZW1lcmFsLXN0YXRlLTExIGFuZCBn
aXZlbiBhIGZldyBtaW5vciBjb21tZW50cyBiZWxvdy4gIEdlbmVyYWxseSBJIHRoaW5rIHRoYXQg
SSB1bmRlcnN0YW5kIHRoZSByZXF1aXJlbWVudHMgc3RhdGVkIGluIHRoaXMgZG9jdW1lbnQuDQoN
Ck1pbm9ycyBjb21tZW50czoNCg0KMSkgRXBoZW1lcmFsLVJFUS0wMSAocGFnZSA1KToNCg0KICAg
RXBoZW1lcmFsLVJFUS0wMTogSTJSUyByZXF1aXJlcyBlcGhlbWVyYWwgc3RhdGU7IGkuZS4gc3Rh
dGUgdGhhdCBkb2VzDQoNCiAgIG5vdCBwZXJzaXN0IGFjcm9zcyByZWJvb3RzLiAgSWYgc3RhdGUg
bXVzdCBiZSByZXN0b3JlZCwgaXQgc2hvdWxkIGJlDQoNCiAgIGRvbmUgc29sZWx5IGJ5IHJlcGxh
eSBhY3Rpb25zIGZyb20gdGhlIEkyUlMgY2xpZW50IHZpYSB0aGUgSTJSUw0KDQogICBhZ2VudC4N
Cg0KVGhlIGFyY2hpdGVjdHVyZSBkb2N1bWVudCBpbmRpY2F0ZXMgdGhhdCB0aGUgZXBoZW1lcmFs
IHN0YXRlIHdvdWxkIChvciBpcyB0aGF0IG1heSkgYWxzbyBiZSBsb3N0IG9uIG90aGVyIGNpcmN1
bXN0YW5jZXMgc3VjaCBhcyBwcm9jZXNzIHJlc3RhcnQgb2YgdGhlIEkyUlMgYWdlbnQuICBEb2Vz
IHRoaXMgbmVlZCB0byBiZSBjbGFyaWZpZWQgaW4gdGhlIHJlcXVpcmVtZW50PyAgRS5nLg0KDQpT
dWU6IEluIG91ciBwcmV2aW91cyBkaXNjdXNzaW9ucywgIG90aGVyIHBlb3BsZSBzdWdnZXN0IHRo
YXQg4oCccmVib290c+KAnSBjb3ZlcmVkIGhhcmR3YXJlIGFuZCBzb2Z0d2FyZSByZWJvb3Qgb2Yg
dGhlIEkyUlMgYWdlbnQuICAgQW5kIHRoYXQgdGhlIHNwZWNpZmljIG5hdHVyZSBvZiB0aGUgcmVi
b290IHdhcyB0b28tbXVjaCBpbmZvcm1hdGlvbiBmb3IgdGhlIHJlcXVpcmVtZW50Lg0KUm9iOiBP
Sy4NCg0KDQoNCg0KICAgRXBoZW1lcmFsLVJFUS0wMTogSTJSUyByZXF1aXJlcyBlcGhlbWVyYWwg
c3RhdGU7IGkuZS4gc3RhdGUgdGhhdCBNVVNUDQoNCiAgIE5PVCBwZXJzaXN0IGFjcm9zcyByZWJv
b3RzIG9mIHRoZSBkZXZpY2Ugb3IgSTJSUyBBZ2VudCBzdWJzeXN0ZW0uIElmDQoNCiAgIHN0YXRl
IG11c3QgYmUgcmVzdG9yZWQsIGl0IHNob3VsZCBiZSBkb25lIHNvbGVseSBieSByZXBsYXkgYWN0
aW9ucw0KDQogICBmcm9tIHRoZSBJMlJTIGNsaWVudCB2aWEgdGhlIEkyUlMgYWdlbnQuDQoNCg0K
DQoyKSBIaWVyYXJjaHk6IChwYWdlIDUpDQpCYXNlZCBvbiB0aGUgcHJldmlvdXMgZGVzY3JpcHRp
b24sIEkgd291bGQgcG9zc2libHkgc3BsaXQgRXBoZW1lcmFsLVJFUS0wNiB1cCBpbnRvIHRoZSBm
b2xsb3dpbmcgcmVxdWlyZW1lbnRzOg0KDQpPbGQgKGZyb20gZXBoZW1lcmFsLXN0YXRlOjEwKToN
Cg0KICAgRXBoZW1lcmFsLVJFUS0wNjogVGhlIGFiaWxpdHkgdG8gYXVnbWVudCBhbiBvYmplY3Qg
d2l0aCBhcHByb3ByaWF0ZQ0KDQogICBZQU5HIHN0cnVjdHVyZXMgdGhhdCBoYXZlIHRoZSBwcm9w
ZXJ0eSBvZiBiZWluZyBlcGhlbWVyYWwuICBBbiBvYmplY3QNCg0KICAgZGVmaW5lZCBhcyBhbnkg
b25lIG9mIHRoZSBmb2xsb3dpbmc6IHlhbmcgbW9kdWxlLCBzdWJtb2R1bGUgb3INCg0KICAgY29t
cG9uZW50cyBvZiBzdWJtb2R1bGUsIG9yIHNjaGVtYSBub2RlLg0KDQpPbGQgKGZyb20gZXBoZW1l
cmFsLXN0YXRlLTExKToNCg0KICAgRXBoZW1lcmFsLVJFUS0wNjogVGhlIGFiaWxpdHkgdG8gYXVn
bWVudCBZYW5nIHNjaGVtYSBub2RlcyB3aXRoDQoNCiAgIGFkZGl0aW9uYWwgWWFuZyBTY2hlbWEg
bm9kZXMgdGhhdCBoYXZlIHRoZSBwcm9wZXJ0eSBvZiBiZWluZw0KDQogICBlcGhlbWVyYWwuDQoN
ClByb3Bvc2VkOg0KDQogICBFcGhlbWVyYWwtUkVRLTA2Og0KDQoNCg0KICAgMS4gVGhlIGFiaWxp
dHkgdG8gZGVmaW5lIGEgWUFORyBtb2R1bGUgb3Igc3VibW9kdWxlIHNjaGVtYSB0aGF0DQoNCiAg
IG9ubHkgY29udGFpbnMgZGF0YSBub2RlcyB3aXRoIHRoZSBwcm9wZXJ0eSBvZiBiZWluZyBlcGhl
bWVyYWwuDQoNCg0KDQogICAyLiBUaGUgYWJpbGl0eSB0byBhdWdtZW50IGEgWUFORyBkYXRhIG1v
ZGVsIHdpdGggYWRkaXRpb25hbCBZQU5HDQoNCiAgIHNjaGVtYSBub2RlcyB0aGF0IGhhdmUgdGhl
IHByb3BlcnR5IG9mIGJlaW5nIGVwaGVtZXJhbC4NCg0KSSB3aWxsIGFjY2VwdCB0aGlzIGNoYW5n
ZSBhbmQgcmVsZWFzZSBpbiBpdCB2ZXJzaW9uLTEyLg0KDQoNCg0KMykgRXBoZW1lcmFsLVJFUS0w
NzogKHBhZ2UgNik6DQoNCiAgIEVwaGVtZXJhbC1SRVEtMDc6IEVwaGVtZXJhbCBjb25maWd1cmF0
aW9uIHN0YXRlIGNvdWxkIG92ZXJyaWRlDQoNCiAgIG92ZXJsYXBwaW5nIGxvY2FsIGNvbmZpZ3Vy
YXRpb24gc3RhdGUsIG9yIHZpY2UtdmVyc2EuDQoNCiAgIEltcGxlbWVudGF0aW9ucyBNVVNUIHBy
b3ZpZGUgYSBtZWNoYW5pc20gdG8gY2hvb3NlIHdoaWNoIHRha2VzDQoNCiAgIHByZWNlZGVuY2Uu
ICBUaGlzIG1lY2hhbmlzbSBNVVNUIGluY2x1ZGUgbG9jYWwgY29uZmlndXJhdGlvbiAocG9saWN5
KQ0KDQogICBhbmQgTUFZIGJlIHByb3ZpZGVkIHZpYSB0aGUgSTJSUyBwcm90b2NvbCBtZWNoYW5p
c21zLg0KDQpJIG5vdGUgdGhhdCB0aGlzIHJlcXVpcmVtZW50IGRvZXNuJ3Qgc3BlY2lmeSB0aGUg
c2NvcGUgb2Ygd2hldGhlciB0aGUgb3ZlcnJpZGUgbWVjaGFuaXNtIHNob3VsZCBvcGVyYXRlIGds
b2JhbGx5IG9yIG9uIGEgcGVyIGRhdGEgbm9kZSBiYXNpcy4gIEknbSBub3Qgc3VyZSB3aGV0aGVy
IHRoaXMgbmVlZHMgdG8gYmUgY2xhcmlmaWVkIC0gc2luY2UgdGhlIHRleHQgaW4gdGhlIGFyY2hp
dGVjdHVyZSBkb2N1bWVudCBtYWtlcyBpdCBwcmV0dHkgY2xlYXIgdGhhdCBhIGdsb2JhbCBsZXZl
bCByZXNvbHV0aW9uIGlzIHN1ZmZpY2llbnQuDQoNClN1ZTogIEFnYWluLCB3ZSB3ZXJlIGNhdXRp
b25lZCB0byBub3Qgc3BlY2lmeSB0aGUgZGVzaWduLCBidXQgb25seSBwcm92aWRlIGEgcmVzdWx0
LiAgVGhlIGdsb2JhbCBpcyBzdWZmaWNpZW50Lg0KUm9iOiBPSw0KDQoNCjQpIEVwaGVtZXJhbC1S
RVEtMDg6IChwYWdlIDYpOg0KU2ltaWxhciB0byBKdWVyZ2VuJ3MgY29tbWVudHMsIEknbSBjb25j
ZXJuZWQgYWJvdXQgdGhlIHdyaXRhYmxlL25vbi13cml0YWJsZSByZXF1aXJlbWVudC4NCg0KICAg
RXBoZW1lcmFsLVJFUS0wODogWWFuZyBNVVNUIGhhdmUgYSB3YXkgdG8gaW5kaWNhdGUgaW4gYSBk
YXRhIG1vZGVsDQoNCiAgIHRoYXQgc2NoZW1hIG5vZGVzIGhhdmUgdGhlIGZvbGxvd2luZyBwcm9w
ZXJ0aWVzOiBlcGhlbWVyYWwsIHdyaXRhYmxlLw0KDQogICBub3Qtd3JpdGFibGUsIGFuZCBzdGF0
dXMvY29uZmlndXJhdGlvbi4NCg0KSSdtIHNvbWV3aGF0IGFkdmVyc2UgdG8gd3JpdGFibGUgb3Bl
cmF0aW9uYWwgc3RhdGUsIGFuZCBoZW5jZSBJIHdvdWxkIHByZWZlciBpZiB0aGlzIHJlcXVpcmVt
ZW50IHdhcyB3YXRlcmVkIGRvd24gdG8gc29tZXRoaW5nIGxpa2U6DQoNCiAgIEVwaGVtZXJhbC1S
RVEtMDg6IEluIGFkZGl0aW9uIHRvIGNvbmZpZyB0cnVlL2ZhbHNlLCB0aGVyZSBNVVNUIGJlIGEN
Cg0KICAgd2F5IHRvIGluZGljYXRlIHRoYXQgWUFORyBzY2hlbWEgbm9kZXMgcmVwcmVzZW50IGVw
aGVtZXJhbCBzdGF0ZS4NCg0KICAgSXQgaXMgZGVzaXJhYmxlIHRvIGFsbG93IGZvciwgYW5kIGhh
dmUgdG8gd2F5IHRvIGluZGljYXRlLCBjb25maWcNCg0KICAgZmFsc2UgWUFORyBzY2hlbWEgbm9k
ZXMgdGhhdCBhcmUgd3JpdGFibGUgb3BlcmF0aW9uYWwgc3RhdGUuDQoNClN1ZTogWW91IGFyZSBK
dWVyZ2VuIGFyZSBjb25jZXJuZWQgYWJvdXQgd3JpdGVhYmxlL25vbi13cml0ZWFibGUuICAgTWFy
dGluIGlzIGNvbmNlcm5lZCBhYm91dCBzdGF0dXMvY29uZmlndXJhdGlvbi4gIFRoZSBJMlJTIGF1
dGhvcnMgYmVsaWV2ZSB3ZSBhcmUgcnVubmluZyBpbnRvIHRoZSBkaWZmZXJlbnQgb3BlcmF0aW9u
YWwgc3RhdGUgbW9kZWxzLiAgRWFjaCB0aW1lIHdlIGNoYW5nZSB0aGlzIHJlcXVpcmVtZW50IHdl
IGdldCBhbm90aGVyIHJlc3BvbnNlLiAgIFRoZSByZXF1aXJlbWVudCB3aWxsIHN0YXkgZm9yIG5v
dy4gIEkgc3VzcGVjdCB0aGUgd2Ugd2lsbCBiZSB3b3JraW5nIG9uIHRoZSBkZXNpZ24gb2YgdGhl
IHNvbHV0aW9uIGFmdGVyIHdlIGhhdmUgc2V0dGxlZCBvbiB0aGUgb3BlcmF0aW9uYWwgc3RhdGUg
bW9kZWxzLg0KUm9iOg0KTXkgYWN0dWFsIGNvbmNlcm4gaXMgdGhhdCB3aGF0IEkgaGF2ZSBwcm9w
b3NlZCBhcyBhIGRhdGFzdG9yZSBzb2x1dGlvbiBjYW5ub3QgbWVldCB0aGlzIHJlcXVpcmVtZW50
LCBiZWNhdXNlIEkgdGhpbmsgdGhhdCBvbmx5IGNvbmZpZ3VyYXRpb24gc2hvdWxkIGJlIHdyaXRh
YmxlLCBhbmQgaGVuY2UgdGhlIHdyaXRhYmxlL25vbi13cml0YWJsZSBwcm9wZXJ0eSBpcyBpbXBs
aWNpdC4NCg0KDQoNCjUpIEVwaGVtZXJhbC1SZXEtMTIsIHBhZ2UgNzoNClByZXN1bWFibHkgdGhl
IHJlcXVpcmVtZW50IGlzIHRoYXQgdGhlIG5vdGlmaWNhdGlvbiBtdXN0IGluZGljYXRlIHRoZSBu
b2RlIHRoYXQgd2UgaW52b2x2ZWQgaW4gdGhlIGNvbGxpc2lvbj8gIEkuZS4gaXQgaXNuJ3Qgc3Vm
ZmljaWVudCB0byBqdXN0IHNpZ25hbCB0byB0aGUgY2xpZW50IHRoYXQgdGhlcmUgaGFzIGJlZW4g
YSBjb2xsaXNpb24gd2l0aCBzb21lIG9mIHRoZWlyIGNvbmZpZ3VyYXRpb24/DQoNCiAgIEVwaGVt
ZXJhbC1SRVEtMTI6IFdoZW4gYSBjb2xsaXNpb24gb2NjdXJzIGFzIHR3byBjbGllbnRzIGFyZSB0
cnlpbmcNCg0KICAgdG8gd3JpdGUgdGhlIHNhbWUgZGF0YSBub2RlLCB0aGlzIGNvbGxpc2lvbiBp
cyBjb25zaWRlcmVkIGFuIGVycm9yDQoNCiAgIGFuZCBwcmlvcml0aWVzIHdlcmUgY3JlYXRlZCB0
byBnaXZlIGEgZGV0ZXJtaW5pc3RpYyByZXN1bHQuICBXaGVuDQoNCiAgIHRoZXJlIGlzIGEgY29s
bGlzaW9uLCBhIG5vdGlmaWNhdGlvbiBNVVNUIEJFIHNlbnQgdG8gdGhlIG9yaWdpbmFsDQoNCiAg
IGNsaWVudCB0byBnaXZlIHRoZSBvcmlnaW5hbCBjbGllbnQgYSBjaGFuY2UgdG8gZGVhbCB3aXRo
IHRoZSBpc3N1ZXMNCg0KICAgc3Vycm91bmRpbmcgdGhlIGNvbGxpc2lvbi4gIFRoZSBvcmlnaW5h
bCBjbGllbnQgbWF5IG5lZWQgdG8gZml4IHRoZWlyDQoNCiAgIHN0YXRlLg0KDQpTaG91bGQgdGhp
cyBiZSBtYWRlIGV4cGxpY2l0PyAgRS5nLiBwZXJoYXBzOg0KDQogICBFcGhlbWVyYWwtUkVRLTEy
OiBXaGVuIGEgY29sbGlzaW9uIG9jY3VycyBhcyB0d28gY2xpZW50cyBhcmUgdHJ5aW5nDQoNCiAg
IHRvIHdyaXRlIHRoZSBzYW1lIGRhdGEgbm9kZSwgdGhpcyBjb2xsaXNpb24gaXMgY29uc2lkZXJl
ZCBhbiBlcnJvcg0KDQogICBhbmQgcHJpb3JpdGllcyB3ZXJlIGNyZWF0ZWQgdG8gZ2l2ZSBhIGRl
dGVybWluaXN0aWMgcmVzdWx0LiAgV2hlbg0KDQogICB0aGVyZSBpcyBhIGNvbGxpc2lvbiwgYSBu
b3RpZmljYXRpb24gKGluZGljYXRpbmcgd2hpY2ggZGF0YSBub2RlIHRoZQ0KDQogICBjb2xsaXNp
b24gb2NjdXJyZWQgb24pIE1VU1QgQkUgc2VudCB0byB0aGUgb3JpZ2luYWwgY2xpZW50IHRvIGdp
dmUNCg0KICAgdGhlIG9yaWdpbmFsIGNsaWVudCBhIGNoYW5jZSB0byBkZWFsIHdpdGggdGhlIGlz
c3VlcyBzdXJyb3VuZGluZw0KDQogICB0aGUgY29sbGlzaW9uLiAgVGhlIG9yaWdpbmFsIGNsaWVu
dCBtYXkgbmVlZCB0byBmaXggdGhlaXIgc3RhdGUuDQoNClN1ZTogIEZvciBzb21lIGRhdGEgbW9k
ZWxzLCBpdCBtYXkgYmUgaW1wb3J0YW50IHRvIHByb3ZpZGUgbW9yZSB0aGFuIGp1c3QgdGhhdC4g
IEhvdyBhYm91dDoNCg0KICBXaGVuIHRoZXJlIGlzIGEgY29sbGlzaW9uLCBhIG5vdGlmaWNhdGlv
biAgKHdoaWNoIGluY2x1ZGVzIGFuIGluZGljYXRpb24gb2YgdGhlIGRhdGEgbm9kZSB0aGUgY29s
bGlzaW9uIG9jY3VycmVkIG9uKQ0KDQpNVVNUIEJFIHNlbnQgdG8gdGhlIG9yaWdpbmFsIGNsaWVu
dCB0byBnaXZlIHRoZSBvcmlnaW5hbCBjbGllbnQgYSBjaGFuY2UgdG8gZGVhbCB3aXRoIHRoZSBp
c3N1ZXMgc3Vycm91bmRpbmcgdGhlIGNvbGxpc2lvbi4NClJvYjogWWVzLCBPSy4NCg0KDQoNCjYp
IEVwaGVtZXJhbC1SRVEtMTQsIHBhZ2UgNzoNCkkgd291bGQgc3VnZ2VzdCBwb3RlbnRpYWxseSBy
ZXdvcmRpbmcgdGhpcyB0byBtYWtlIHRoZSByZXF1aXJlbWVudCBhbmQgbGVld2F5IG9uIHRoZSBz
b2x1dGlvbiBtb3JlIGV4cGxpY2l0Lg0KDQogICBFcGhlbWVyYWwtUkVRLTE0OiBJZiB0d28gY2xp
ZW50cyBoYXZlIHRoZSBzYW1lIHByaW9yaXR5LCB0aGUNCg0KICAgYXJjaGl0ZWN0dXJlIHNheXMg
dGhlIGZpcnN0IG9uZSB3aW5zLiAgVGhlIEkyUlMgcHJvdG9jb2wgaGFzIHRoaXMNCg0KICAgcmVx
dWlyZW1lbnQgdG8gcHJldmVudCBvc2NpbGxhdGlvbnMgYmV0d2VlbiBjbGllbnRzLiAgSWYgb25l
IHVzZXMgdGhlDQoNCiAgIGxhc3Qgd2lucyBzY2VuYXJpbywgeW91IG1heSBvc2NpbGxhdGUuICBU
aGF0IHdhcyBvdXIgb3BpbmlvbiwgYnV0IGENCg0KICAgZGVzaWduIHdoaWNoIHByZXZlbnRzIG9z
Y2lsbGF0aW9uIGlzIHRoZSBrZXkgcG9pbnQuDQoNClByb3Bvc2VkIGFsdGVybmF0aXZlIHRleHQ6
DQoNCiAgIEVwaGVtZXJhbC1SRVEtMTQ6IEEgZGV0ZXJtaW5pc3RpYyBjb25mbGljdCByZXNvbHV0
aW9uIG1lY2hhbmlzbSBNVVNUDQoNCiAgIGJlIHByb3ZpZGVkIHRvIGhhbmRsZSB0aGUgZXJyb3Ig
c2NlbmFyaW8gdGhhdCB0d28gY2xpZW50cywgd2l0aA0KDQogICB0aGUgc2FtZSBwcmlvcml0eSwg
dXBkYXRlIHRoZSBzYW1lIGNvbmZpZ3VyYXRpb24gZGF0YSBub2RlLiAgVGhlIEkyUlMNCg0KICAg
YXJjaGl0ZWN0dXJlIGdpdmVzIG9uZSB3YXkgdGhhdCB0aGlzIGNvdWxkIGJlIGFjaGlldmVkLCBi
eQ0KDQogICBzcGVjaWZ5aW5nIHRoYXQgdGhlIGZpcnN0IHVwZGF0ZSB3aW5zLiAgT3RoZXIgc29s
dXRpb25zLCB0aGF0IHByZXZlbnQNCg0KICAgb3NjaWxsYXRpb24gb2YgdGhlIGNvbmZpZyBkYXRh
IG5vZGUsIGFyZSBhbHNvIGFjY2VwdGFibGUuDQoNClN1ZTogQWNjZXB0ZWQg4oCTIHRoaXMgd2ls
bCBiZSByZWxlYXNlZCB3aXRoIHZlcnNpb24gMi4NCg0KQ29zbWV0aWMgY29tbWVudHM6DQoNCjcp
IFNlY3Rpb24gMS4gSW50cm9kdWN0aW9uLiAgVGhlIHJlcXVpcmVtZW50cyBhcmUgbm8gbG9uZ2Vy
IHZlcnNpb24gc3BlY2lmaWMsIGhlbmNlIHBlcmhhcHMgdXBkYXRlIHRoZSBmb2xsb3dpbmcgdGV4
dCBmcm9tOg0KDQoNCg0KDQoNCiAgIDEuICBzZWxlY3QgZmVhdHVyZXMgZnJvbSBZQU5HLCBORVRD
T05GLCBhbmQgUkVTVENPTkYgcGVyIHZlcnNpb24gb2YNCg0KICAgICAgIHRoZSBJMlJTIHByb3Rv
Y29sIChTZWUgc2VjdGlvbnMgNCwgNSwgYW5kIDYpDQoNCg0KDQogICAyLiAgcHJvcG9zZSBhZGRp
dGlvbnMgdG8gWUFORywgTkVUQ09ORiwgYW5kIFJFU1RDT05GIHBlciB2ZXJzaW9uIG9mDQoNCiAg
ICAgICB0aGUgSTJSUyBwcm90b2NvbCBmb3Iga2V5IGZ1bmN0aW9ucyAoZXBoZW1lcmFsIHN0YXRl
LCBwcm90b2NvbA0KDQogICAgICAgc2VjdXJpdHksIHB1YmxpY2F0aW9uL3N1YnNjcmlwdGlvbiBz
ZXJ2aWNlLCB0cmFjZWFiaWxpdHkpLA0KDQp0bzoNCg0KICAgMS4gIHNlbGVjdCBmZWF0dXJlcyBm
cm9tIFlBTkcsIE5FVENPTkYsIGFuZCBSRVNUQ09ORiBmb3IgdGhlIGluaXRpYWwNCg0KICAgICAg
IEkyUlMgcHJvdG9jb2wgdmVyc2lvbiAoU2VlIHNlY3Rpb25zIDQsIDUsIGFuZCA2KS4NCg0KDQoN
CiAgIDIuICBwcm9wb3NlIGFkZGl0aW9ucyB0byBZQU5HLCBORVRDT05GLCBhbmQgUkVTVENPTkYg
Zm9yIHRoZSBpbml0aWFsDQoNCiAgICAgICBJMlJTIHByb3RvY29sIHZlcnNpb24gZm9yIGtleSBm
dW5jdGlvbnMgKGVwaGVtZXJhbCBzdGF0ZSwgcHJvdG9jb2wNCg0KICAgICAgIHNlY3VyaXR5LCBw
dWJsaWNhdGlvbi9zdWJzY3JpcHRpb24gc2VydmljZSwgdHJhY2VhYmlsaXR5KS4NCg0KU3VlOiBX
ZSB3aWxsIHByb2JhYmx5IGhhdmUgYSBzdWJzZXF1ZW50IHZlcnNpb24gb2YgdGhlIEkyUlMgcHJv
dG9jb2wuICBJIHdvdWxkIHByZWZlciB0byBsZWF2ZSB0aGlzIGFzIHN0YXRlZCBzbyB0aGlzIGlz
IGNsZWFyLg0KDQo4KSBTZWN0aW9uIDEuIGludHJvZHVjdGlvbi4gIEknbSBub3Qgc3VyZSB0aGF0
IHRoaXMgM3JkIGJ1bGxldCBpcyByZWxldmFudCwgYW5kIHBvc3NpYmx5IGNvdWxkIGJlIHJlbW92
ZWQsIGFsdGhvdWdoIGVxdWFsbHkgaXQgZG9lc24ndCBzZWVtIHRvIGRvIGFueSBoYXJtOg0KDQog
ICAzLiAgc3VnZ2VzdCBwcm90b2NvbCBzdHJhd21hbiBhcyBpZGVhcyBmb3IgdGhlIE5FVENPTkYs
IFJFU1RDT05GLCBhbmQNCg0KICAgICAgIFlBTkcgY2hhbmdlcy4NClN1ZTogVGhlcmUgaXMgYSBw
cm90b2NvbCBzdHJhd21hbiB0aGF0IHdpbGwgYmUgc3VibWl0dGVkIGJhc2VkIG9uIGV4cGVyaWVu
Y2UuDQoNCg0KOSkgVGhlIGRvY3VtZW50IHVzZXMgYSBtaXggb2YgIllhbmciIGFuZCAiWUFORyIs
IHByb2JhYmx5IHNob3VsZCBqdXN0IHVzZSAiWUFORyIuDQpGaXhlZCBpbiB2ZXJzaW9uIDEyLg0K
DQoxMCkgU2VjdGlvbiAzLiBFcGhlbWVyYWwgU3RhdGUgUmVxdWlyZW1lbnRzOg0KDQo+VGhlIGRv
Y3VtZW50IHJlZmVycyB0byAiZXBoZW1lcmFsIGNvbmZpZ3VyZWQgc3RhdGUiIGhlcmUsIGJ1dCBl
bHNld2hlcmUgKGUuZy4gMy40KSAiZXBoZW1lcmFsIGNvbmZpZ3VyYXRpb24iIG9yICJlcGhlbWVy
YWwgY29uZmlndXJhdGlvbiBzdGF0ZSIgaXMgdXNlZC4gIEl0IG1pZ2h0IGJlIGhlbHBmdWwgZm9y
IHVzZSBvZiB0aGVzZSB0ZXJtcyB0byBiZSBjb25zaXN0ZW50LCBJIHdvdWxkIHN1Z2dlc3QgImVw
aGVtZXJhbCBjb25maWd1cmF0aW9uIiBpcyA+c3VmZmljaWVudC4NCg0KU3VlOiBFcGhlbWVyYWwg
c3RhdGUgaXMgZGVmaW5lZCBhcyBlcGhlbWVyYWwgY29uZmlndXJhdGlvbiBzdGF0ZSBhbmQgb3Bl
cmF0aW9uYWwgc3RhdGUgaW4gdGhlDQpSb2I6IEl0IHdhcyBvbmx5IGEgbWlub3Igbml0LCBJIHdh
cyBzdWdnZXN0aW5nIGNvbnNpc3RlbmN5IG9mIHRoZSB0ZXJtLCBwZXJoYXBzIGNoYW5nZSAiZXBo
ZW1lcmFsIGNvbmZpZ3VyYXRpb24iYW5kICJlcGhlbWVyYWwgY29uZmlndXJhdGlvbiBzdGF0ZSIg
IHRvICJlcGhlbWVyYWwgY29uZmlndXJlZCBzdGF0ZSIuDQoNClRoYW5rcywNClJvYg0KDQozPGh0
dHBzOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9kcmFmdC1pZXRmLWkycnMtZXBoZW1lcmFsLXN0YXRl
LTExI3NlY3Rpb24tMz4uICBFcGhlbWVyYWwgU3RhdGUgUmVxdWlyZW1lbnRzDQoNCg0KDQoNCg0K
ICAgSW4gcmVxdWlyZW1lbnRzIEVwaGVtZXJhbC1SRVEtMDEgdG8gRXBoZW1lcmFsLTA1LCBFcGhl
bWVyYWwgc3RhdGUgaXMNCg0KICAgZGVmaW5lZCBhcyBwb3RlbnRpYWxseSBpbmNsdWRpbmcgYm90
aCBlcGhlbWVyYWwgY29uZmlndXJlZCBzdGF0ZSBhbmQNCg0KICAgb3BlcmF0aW9uYWwgc3RhdGUu
DQoNCjExKSBFcGhlbWVyYWwtUkVRLTEzLCBwYWdlIDc6DQoNCk1pbm9yIG9taXNzaW9uIGluIHRo
ZSBsYXN0IHNlbnRlbmNlLg0KDQogIEVwaGVtZXJhbC1SRVEtMTM6IFRoZSByZXF1aXJlbWVudCB0
byBzdXBwb3J0IG11bHRpLWhlYWRlZCBjb250cm9sIGlzDQoNCiAgIHJlcXVpcmVkIGZvciBjb2xs
aXNpb25zIGFuZCB0aGUgcHJpb3JpdHkgcmVzb2x1dGlvbiBvZiBjb2xsaXNpb25zLg0KDQogICBN
dWx0aS1oZWFkZWQgY29udHJvbCBpcyBub3QgdGllZCB0byBlcGhlbWVyYWwgc3RhdGUuICBJMlJT
IGlzIG5vdA0KDQogICBtYW5kYXRpbmcgaG93IEFBQSBzdXBwb3J0cyBwcmlvcml0eS4gIE1lY2hh
bmlzbXMgd2hpY2ggcHJldmVudA0KDQogICBjb2xsaXNpb25zIG9mIHR3byBjbGllbnRzIHRyeWlu
ZyB0aGUgc2FtZSBub2RlIG9mIGRhdGEgYXJlIHRoZSBmb2N1cy4NCg0KUHJvcG9zZWQ6DQoNCiAg
RXBoZW1lcmFsLVJFUS0xMzogVGhlIHJlcXVpcmVtZW50IHRvIHN1cHBvcnQgbXVsdGktaGVhZGVk
IGNvbnRyb2wgaXMNCg0KICAgcmVxdWlyZWQgZm9yIGNvbGxpc2lvbnMgYW5kIHRoZSBwcmlvcml0
eSByZXNvbHV0aW9uIG9mIGNvbGxpc2lvbnMuDQoNCiAgIE11bHRpLWhlYWRlZCBjb250cm9sIGlz
IG5vdCB0aWVkIHRvIGVwaGVtZXJhbCBzdGF0ZS4gIEkyUlMgaXMgbm90DQoNCiAgIG1hbmRhdGlu
ZyBob3cgQUFBIHN1cHBvcnRzIHByaW9yaXR5LiAgTWVjaGFuaXNtcyB3aGljaCBwcmV2ZW50DQoN
CiAgIGNvbGxpc2lvbnMgb2YgdHdvIGNsaWVudHMgdHJ5aW5nIHRvIG1vZGlmeSB0aGUgc2FtZSBu
b2RlIG9mIGRhdGENCg0KICAgYXJlIHRoZSBmb2N1cy4NCg0KU3VlOiBUaGFuayB5b3UuICBWZXJz
aW9uIC0xMiB3aWxsIGhhdmUgdGhpcyBjaGFuZ2UuDQoNCg0KDQoxMikgRXBoZW1lcmFsLVJFUS0x
NSwgcGFnZSA3Og0KSSB3b3VsZCBzdWdnZXN0IHRoYXQgaXQgbWlnaHQgYmUgYmV0dGVyIHRvIHJl
ZmVyIHRvICJFcGhlbWVyYWwgc3RhdGUiIHJhdGhlciB0aGFuIHRoZSBJMlJTIGVwaGVtZXJhbCBk
YXRhLXN0b3JlLg0KDQogICBFcGhlbWVyYWwtUkVRLTE1OiBTZWN0aW9uIDcuOSBvZiB0aGUgW0kt
RC5pZXRmLWkycnMtYXJjaGl0ZWN0dXJlXQ0KDQogICBzdGF0ZXMgdGhlIEkyUlMgYXJjaGl0ZWN0
dXJlIGRvZXMgbm90IGluY2x1ZGUgbXVsdGktbWVzc2FnZSBhdG9taWNpdHkNCg0KICAgYW5kIHJv
bGwtYmFjayBtZWNoYW5pc21zLiAgSTJSUyBub3RlcyBtdWx0aXBsZSBvcGVyYXRpb25zIGluIG9u
ZSBvcg0KDQogICBtb3JlIG1lc3NhZ2VzIGhhbmRsaW5nIGNhbiBoYW5kbGUgZXJyb3JzIHdpdGhp
biB0aGUgc2V0IG9mIG9wZXJhdGlvbnMNCg0KICAgaW4gbWFueSB3YXlzLiAgTm8gbXVsdGktbWVz
c2FnZSBjb21tYW5kcyBTSE9VTEQgY2F1c2UgZXJyb3JzIHRvIGJlDQoNCiAgIGluc2VydGVkIGlu
dG8gdGhlIEkyUlMgZXBoZW1lcmFsIGRhdGEtc3RvcmUuDQpQcm9wb3NlZDoNCg0KDQogICBFcGhl
bWVyYWwtUkVRLTE1OiBTZWN0aW9uIDcuOSBvZiB0aGUgW0ktRC5pZXRmLWkycnMtYXJjaGl0ZWN0
dXJlXQ0KDQogICBzdGF0ZXMgdGhlIEkyUlMgYXJjaGl0ZWN0dXJlIGRvZXMgbm90IGluY2x1ZGUg
bXVsdGktbWVzc2FnZSBhdG9taWNpdHkNCg0KICAgYW5kIHJvbGwtYmFjayBtZWNoYW5pc21zLiAg
STJSUyBub3RlcyBtdWx0aXBsZSBvcGVyYXRpb25zIGluIG9uZSBvcg0KDQogICBtb3JlIG1lc3Nh
Z2VzIGhhbmRsaW5nIGNhbiBoYW5kbGUgZXJyb3JzIHdpdGhpbiB0aGUgc2V0IG9mIG9wZXJhdGlv
bnMNCg0KICAgaW4gbWFueSB3YXlzLiAgTm8gbXVsdGktbWVzc2FnZSBjb21tYW5kcyBTSE9VTEQg
Y2F1c2UgZXJyb3JzIHRvIGJlDQoNCiAgIGluc2VydGVkIGludG8gdGhlIGVwaGVtZXJhbCBzdGF0
ZS4NCg0KQWNjZXB0ZWQgY2hhbmdlIGZvciAtMTUuDQoNCg0KVGhhbmtzLA0KUm9iDQoNCg==

--_000_da139b3fdb4a4b54950459e810fcbb7bXCHRTP013ciscocom_
Content-Type: text/html; charset="utf-8"
Content-Transfer-Encoding: base64

PGh0bWwgeG1sbnM6dj0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTp2bWwiIHhtbG5zOm89InVy
bjpzY2hlbWFzLW1pY3Jvc29mdC1jb206b2ZmaWNlOm9mZmljZSIgeG1sbnM6dz0idXJuOnNjaGVt
YXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6d29yZCIgeG1sbnM6bT0iaHR0cDovL3NjaGVtYXMubWlj
cm9zb2Z0LmNvbS9vZmZpY2UvMjAwNC8xMi9vbW1sIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
VFIvUkVDLWh0bWw0MCI+DQo8aGVhZD4NCjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIg
Y29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4NCjxtZXRhIG5hbWU9IkdlbmVyYXRv
ciIgY29udGVudD0iTWljcm9zb2Z0IFdvcmQgMTQgKGZpbHRlcmVkIG1lZGl1bSkiPg0KPHN0eWxl
PjwhLS0NCi8qIEZvbnQgRGVmaW5pdGlvbnMgKi8NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6
Q2FsaWJyaTsNCglwYW5vc2UtMToyIDE1IDUgMiAyIDIgNCAzIDIgNDt9DQpAZm9udC1mYWNlDQoJ
e2ZvbnQtZmFtaWx5OlRhaG9tYTsNCglwYW5vc2UtMToyIDExIDYgNCAzIDUgNCA0IDIgNDt9DQpA
Zm9udC1mYWNlDQoJe2ZvbnQtZmFtaWx5OkNvbnNvbGFzOw0KCXBhbm9zZS0xOjIgMTEgNiA5IDIg
MiA0IDMgMiA0O30NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3IFw7Y29s
b3JcOmJsYWNrIjt9DQovKiBTdHlsZSBEZWZpbml0aW9ucyAqLw0KcC5Nc29Ob3JtYWwsIGxpLk1z
b05vcm1hbCwgZGl2Lk1zb05vcm1hbA0KCXttYXJnaW46MGluOw0KCW1hcmdpbi1ib3R0b206LjAw
MDFwdDsNCglmb250LXNpemU6MTIuMHB0Ow0KCWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4i
LCJzZXJpZiI7DQoJY29sb3I6YmxhY2s7fQ0KaDINCgl7bXNvLXN0eWxlLXByaW9yaXR5Ojk7DQoJ
bXNvLXN0eWxlLWxpbms6IkhlYWRpbmcgMiBDaGFyIjsNCgltc28tbWFyZ2luLXRvcC1hbHQ6YXV0
bzsNCgltYXJnaW4tcmlnaHQ6MGluOw0KCW1zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvOw0KCW1h
cmdpbi1sZWZ0OjBpbjsNCglmb250LXNpemU6MTguMHB0Ow0KCWZvbnQtZmFtaWx5OiJUaW1lcyBO
ZXcgUm9tYW4iLCJzZXJpZiI7DQoJY29sb3I6d2luZG93dGV4dDsNCglmb250LXdlaWdodDpib2xk
O30NCmE6bGluaywgc3Bhbi5Nc29IeXBlcmxpbmsNCgl7bXNvLXN0eWxlLXByaW9yaXR5Ojk5Ow0K
CWNvbG9yOmJsdWU7DQoJdGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTt9DQphOnZpc2l0ZWQsIHNw
YW4uTXNvSHlwZXJsaW5rRm9sbG93ZWQNCgl7bXNvLXN0eWxlLXByaW9yaXR5Ojk5Ow0KCWNvbG9y
OnB1cnBsZTsNCgl0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO30NCnANCgl7bXNvLXN0eWxlLXBy
aW9yaXR5Ojk5Ow0KCW1zby1tYXJnaW4tdG9wLWFsdDphdXRvOw0KCW1hcmdpbi1yaWdodDowaW47
DQoJbXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG87DQoJbWFyZ2luLWxlZnQ6MGluOw0KCWZvbnQt
c2l6ZToxMi4wcHQ7DQoJZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiIsInNlcmlmIjsNCglj
b2xvcjpibGFjazt9DQpwcmUNCgl7bXNvLXN0eWxlLXByaW9yaXR5Ojk5Ow0KCW1zby1zdHlsZS1s
aW5rOiJIVE1MIFByZWZvcm1hdHRlZCBDaGFyIjsNCgltYXJnaW46MGluOw0KCW1hcmdpbi1ib3R0
b206LjAwMDFwdDsNCglmb250LXNpemU6MTAuMHB0Ow0KCWZvbnQtZmFtaWx5OiJDb3VyaWVyIE5l
dyI7DQoJY29sb3I6YmxhY2s7fQ0KcC5Nc29BY2V0YXRlLCBsaS5Nc29BY2V0YXRlLCBkaXYuTXNv
QWNldGF0ZQ0KCXttc28tc3R5bGUtcHJpb3JpdHk6OTk7DQoJbXNvLXN0eWxlLWxpbms6IkJhbGxv
b24gVGV4dCBDaGFyIjsNCgltYXJnaW46MGluOw0KCW1hcmdpbi1ib3R0b206LjAwMDFwdDsNCglm
b250LXNpemU6OC4wcHQ7DQoJZm9udC1mYW1pbHk6IlRhaG9tYSIsInNhbnMtc2VyaWYiOw0KCWNv
bG9yOmJsYWNrO30NCnNwYW4uSGVhZGluZzJDaGFyDQoJe21zby1zdHlsZS1uYW1lOiJIZWFkaW5n
IDIgQ2hhciI7DQoJbXNvLXN0eWxlLXByaW9yaXR5Ojk7DQoJbXNvLXN0eWxlLWxpbms6IkhlYWRp
bmcgMiI7DQoJZm9udC13ZWlnaHQ6Ym9sZDt9DQpzcGFuLkhUTUxQcmVmb3JtYXR0ZWRDaGFyDQoJ
e21zby1zdHlsZS1uYW1lOiJIVE1MIFByZWZvcm1hdHRlZCBDaGFyIjsNCgltc28tc3R5bGUtcHJp
b3JpdHk6OTk7DQoJbXNvLXN0eWxlLWxpbms6IkhUTUwgUHJlZm9ybWF0dGVkIjsNCglmb250LWZh
bWlseTpDb25zb2xhczsNCgljb2xvcjpibGFjazt9DQpzcGFuLkJhbGxvb25UZXh0Q2hhcg0KCXtt
c28tc3R5bGUtbmFtZToiQmFsbG9vbiBUZXh0IENoYXIiOw0KCW1zby1zdHlsZS1wcmlvcml0eTo5
OTsNCgltc28tc3R5bGUtbGluazoiQmFsbG9vbiBUZXh0IjsNCglmb250LWZhbWlseToiVGFob21h
Iiwic2Fucy1zZXJpZiI7DQoJY29sb3I6YmxhY2s7fQ0Kc3Bhbi5FbWFpbFN0eWxlMjMNCgl7bXNv
LXN0eWxlLXR5cGU6cGVyc29uYWw7DQoJZm9udC1mYW1pbHk6IkNhbGlicmkiLCJzYW5zLXNlcmlm
IjsNCgljb2xvcjojMUY0OTdEO30NCnNwYW4uRW1haWxTdHlsZTI0DQoJe21zby1zdHlsZS10eXBl
OnBlcnNvbmFsOw0KCWZvbnQtZmFtaWx5OiJDYWxpYnJpIiwic2Fucy1zZXJpZiI7DQoJY29sb3I6
IzFGNDk3RDt9DQpzcGFuLkVtYWlsU3R5bGUyNQ0KCXttc28tc3R5bGUtdHlwZTpwZXJzb25hbC1y
ZXBseTsNCglmb250LWZhbWlseToiQ2FsaWJyaSIsInNhbnMtc2VyaWYiOw0KCWNvbG9yOiMxRjQ5
N0Q7fQ0KLk1zb0NocERlZmF1bHQNCgl7bXNvLXN0eWxlLXR5cGU6ZXhwb3J0LW9ubHk7DQoJZm9u
dC1zaXplOjEwLjBwdDt9DQpAcGFnZSBXb3JkU2VjdGlvbjENCgl7c2l6ZTo4LjVpbiAxMS4waW47
DQoJbWFyZ2luOjEuMGluIDEuMGluIDEuMGluIDEuMGluO30NCmRpdi5Xb3JkU2VjdGlvbjENCgl7
cGFnZTpXb3JkU2VjdGlvbjE7fQ0KLS0+PC9zdHlsZT48IS0tW2lmIGd0ZSBtc28gOV0+PHhtbD4N
CjxvOnNoYXBlZGVmYXVsdHMgdjpleHQ9ImVkaXQiIHNwaWRtYXg9IjEwMjYiIC8+DQo8L3htbD48
IVtlbmRpZl0tLT48IS0tW2lmIGd0ZSBtc28gOV0+PHhtbD4NCjxvOnNoYXBlbGF5b3V0IHY6ZXh0
PSJlZGl0Ij4NCjxvOmlkbWFwIHY6ZXh0PSJlZGl0IiBkYXRhPSIxIiAvPg0KPC9vOnNoYXBlbGF5
b3V0PjwveG1sPjwhW2VuZGlmXS0tPg0KPC9oZWFkPg0KPGJvZHkgYmdjb2xvcj0id2hpdGUiIGxh
bmc9IkVOLVVTIiBsaW5rPSJibHVlIiB2bGluaz0icHVycGxlIj4NCjxkaXYgY2xhc3M9IldvcmRT
ZWN0aW9uMSI+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjEx
LjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVv
dDs7Y29sb3I6IzFGNDk3RCI+SGkgU3VzYW4sPG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xh
c3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6
JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0Qi
PjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFu
IHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDss
JnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj5NeSByZXNwb25zZXMgYmVsb3cg
YXJlIGJhc2VkIG9uIHYxMi4mbmJzcDsmbmJzcDsNCjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjxw
IGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFt
aWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0
OTdEIj48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48
c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1
b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+U2VjdGlvbiA5Og0KPG86
cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZv
bnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5z
LXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPlB1Yi9TdWIgUmVxdWlyZW1lbnRzIEV4cGFuZGVk
IGZvciBFcGhlbWVyYWwgU3RhdGUgLS0gU3Vic2NyaWJpbmcgdG8gRXBoZW1lcmFsIHN0YXRlIG1l
YW5zIHRoYXQgdGhlcmUgbXVzdCBiZSBzb21lIHN0cmVhbSBvZiBFcGhlbWVyYWwgaW5mb3JtYXRp
b24gYWdhaW5zdCB3aGljaA0KIHRoZSBTdWJzY3JpcHRpb24gY2FuIGJlIGFwcGxpZWQuJm5ic3A7
Jm5ic3A7IFRoaXMgd2lsbCBiZSBhIGRpZmZlcmVudCBzdHJlYW0gdGhhbiBmb3Igc3RhcnR1cCBj
b25maWcsIGFuZCBtaWdodCBiZSBhIGRpZmZlcmVudCBzdHJlYW0gZnJvbSBydW5uaW5nIGNvbmZp
Zy4gSW4gYWRkaXRpb24sIGl0IGlzIHBvc3NpYmxlIHRoYXQgdGhlcmUgd2lsbCBub3QgYmUgYSBz
aW5nbGUgc3RyZWFtIHdpdGggaW5jbHVkZXMgYm90aCBPcGVyYXRpb25hbCBhbmQgQ29uZmlnIGRh
dGEuDQogKExpa2VseSB0aGVzZSBhcmUgYWxsIGRpZmZlcmVudCBmcm9tIGFueSBPcFN0YXRlIHN0
cmVhbSB0b28uKSZuYnNwOyAmbmJzcDsmbmJzcDtXaXRoIHRoaXMgaW4gbWluZDo8bzpwPjwvbzpw
Pjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXpl
OjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYm
cXVvdDs7Y29sb3I6IzFGNDk3RCI+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPg0KPHAgY2xh
c3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6
JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0Qi
PlB1Yi1TdWItUkVRLTAxOg0KPG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05v
cm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2Fs
aWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPkNvbW1lbnQg
IzE8bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHls
ZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90
O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+TXVzdCB0aGUgc3Vic2NyaXB0aW9uIHNl
cnZpY2Ugc3VwcG9ydCBvcGVyYXRpb25hbCBhbmQgZXBoZW1lcmFsIGNvbmZpZ3VyYXRpb24gZGF0
YSB3aXRoaW4gYSBzaW5nbGUgc3Vic2NyaXB0aW9uPyZuYnNwOyBPciBjYW4gdHdvIHNlcGFyYXRl
IHN1YnNjcmlwdGlvbnMgYmUgdXNlZD8mbmJzcDsNCiBBcHBseWluZyBhIHNpbmdsZSBzdWJzY3Jp
cHRpb24gYWdhaW5zdCBhIHNpbmdsZSBzdHJlYW0gaXMgd2hlcmUgdGhpbmdzIGFyZSBnb2luZyBp
biB0aGUgTkVUQ09ORiBhdCB0aGlzIHBvaW50LjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNs
YXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5
OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdE
Ij5Db21tZW50ICMyPG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+
PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZx
dW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPklzbuKAmXQgYWxsIGRh
dGEgaW4gT3BlcmF0aW9uYWwgZGF0YSBzdG9yZXMgZXBoZW1lcmFsPyZuYnNwOyBJIHNlZSB0aGUg
bWFpbGluZyBsaXN0IGRpc2N1c3Npb25zIG9uIHRoaXMgdGVybWlub2xvZ3kgdG9waWMgZm9yIHRo
ZSByZXF1aXJlbWVudHMgZWFybGllciBpbiB0aGUgZG9jdW1lbnQuJm5ic3A7DQogVGhpcyBpcyB3
aGVyZSB5b3Ugc2FpZDog4oCcPGk+RXBoZW1lcmFsIHN0YXRlIGlzIGRlZmluZWQgYXMgJnF1b3Q7
ZXBoZW1lcmFsIGNvbmZpZ3VyYXRpb24gc3RhdGUmcXVvdDsgYW5kIG9wZXJhdGlvbmFsIHN0YXRl
PC9pPi7igJ0mbmJzcDsgQnV0IHRoZSB0ZXJtaW5vbG9neSBmaXggZG9lc27igJl0IHNlZW0gdG8g
aGF2ZSBtYWRlIGl0IGRvd24gaGVyZS48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0i
TXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVv
dDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+PG86
cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5
bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVv
dDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPlB1Yi1TdWItUkVRLTAyOg0KPG86cD48
L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQt
c2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNl
cmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPkNvbW1lbnQgIzM6PG86cD48L286cD48L3NwYW4+PC9w
Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9u
dC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9y
OiMxRjQ5N0QiPkJ1aWxkaW5nIG9mZiBDb21tZW50ICMyLCBpcyB0aGVyZSBzdWNoIGEgdGhpbmcg
YXMgRXBoZW1lcmFsIGRhdGEgaW4gT3BlcmF0aW9uYWwgZGF0YT8mbmJzcDsgT3IgYXJlIHlvdSB0
YWxraW5nIGZpbHRlcmluZyBzbyB0aGF0IG9ubHkgY2hhbmdlcyBpbiBPcGVyYXRpb25hbCBkYXRh
DQogYXJlIHNlbnQuJm5ic3A7Jm5ic3A7IEkgYmVsaWV2ZSB5b3UgYXJlIGludGVuZGluZyB0aGUg
c2Vjb25kLiZuYnNwOyZuYnNwOyBJbiB0aGF0IGNhc2UgdGhlcmUgbWlnaHQgbmVlZCB0byBiZSBz
cGVjaWFsIHR5cGVzIG9mIGZpbHRlcnMgbmVlZGVkLiZuYnNwOyBGaWx0ZXJzIHN1Y2ggYXMgYSBj
b3VudCBvZiB0aGUgbnVtYmVyIG9mIG9iamVjdHMgdW5kZXIgYSB0cmVlIChlLmcuLCBudW1iZXIg
b2Ygcm91dGVzKSwgb3IgcmFuZ2UgYmFzZWQgZmlsdGVycyBmb3IgYW4gb3BlcmF0aW9uYWwgdmFs
dWUuPG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5
bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVv
dDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFu
PjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0
O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztj
b2xvcjojMUY0OTdEIj48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNv
Tm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtD
YWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+U2VjdGlv
biAyLCBCdWxsZXRzIDUgJmFtcDsgOSBhbmQgU2VjdGlvbiA3OjxvOnA+PC9vOnA+PC9zcGFuPjwv
cD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2Zv
bnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xv
cjojMUY0OTdEIj5Qcmlvcml0eSBDb2xsaXNpb24uJm5ic3A7IENvdWxkIHlvdSBleHBsaWNpdGx5
IHNheSB3aGVuIHRoZSBwcmlvcml0eSBvZiBvbmUgd3JpdGUgd2lsbCBwcmV2ZW50IGEgbG93ZXIg
cHJpb3JpdHkgd3JpdGUgZnJvbSBvY2N1cnJpbmc/Jm5ic3A7IElzIGl0IHRoZSBjb21wbGV0aW9u
IG9mIGFuZA0KIHJlc3BvbnNlIHRvIHNvbWUgUE9TVD8mbmJzcDsgSSBkb27igJl0IGtub3cgd2hh
dCB0aW1lLW9mLXVzZSBtZWFucy4mbmJzcDsgPG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xh
c3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6
JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0Qi
PjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFu
IHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDss
JnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj5FcmljPG86cD48L286cD48L3Nw
YW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4w
cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7
O2NvbG9yOiMxRjQ5N0QiPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJN
c29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90
O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj48bzpw
PiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+DQo8ZGl2IHN0eWxlPSJib3JkZXI6bm9uZTtib3JkZXIt
bGVmdDpzb2xpZCBibHVlIDEuNXB0O3BhZGRpbmc6MGluIDBpbiAwaW4gNC4wcHQiPg0KPGRpdj4N
CjxkaXYgc3R5bGU9ImJvcmRlcjpub25lO2JvcmRlci10b3A6c29saWQgI0I1QzRERiAxLjBwdDtw
YWRkaW5nOjMuMHB0IDBpbiAwaW4gMGluIj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxiPjxzcGFu
IHN0eWxlPSJmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O1RhaG9tYSZxdW90Oywm
cXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOndpbmRvd3RleHQiPkZyb206PC9zcGFuPjwvYj48
c3BhbiBzdHlsZT0iZm9udC1zaXplOjEwLjBwdDtmb250LWZhbWlseTomcXVvdDtUYWhvbWEmcXVv
dDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjp3aW5kb3d0ZXh0Ij4gaTJycyBbbWFpbHRv
OmkycnMtYm91bmNlc0BpZXRmLm9yZ10NCjxiPk9uIEJlaGFsZiBPZiA8L2I+U3VzYW4gSGFyZXM8
YnI+DQo8Yj5TZW50OjwvYj4gVGh1cnNkYXksIEp1bmUgMzAsIDIwMTYgMTI6NTQgUE08YnI+DQo8
Yj5Ubzo8L2I+IFJvYmVydCBXaWx0b24gLVggKHJ3aWx0b24gLSBFTlNPRlQgTElNSVRFRCBhdCBD
aXNjbyk7IGkycnNAaWV0Zi5vcmc8YnI+DQo8Yj5TdWJqZWN0OjwvYj4gUmU6IFtpMnJzXSBSZXZp
ZXcgb2YgZHJhZnQtaWV0Zi1pMnJzLWVwaGVtZXJhbC1zdGF0ZS0xMTxvOnA+PC9vOnA+PC9zcGFu
PjwvcD4NCjwvZGl2Pg0KPC9kaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48bzpwPiZuYnNwOzwv
bzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEu
MHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90
Oztjb2xvcjojMUY0OTdEIj5Sb2JlcnQ6PG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9
Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1
b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPjxv
OnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0
eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1
b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj5WZXJzaW9uLTEyIGlzIHVwbG9hZGVk
LiZuYnNwOyAmbmJzcDs8bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFs
Ij48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJp
JnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+PG86cD4mbmJzcDs8
L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQt
c2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNl
cmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPk9uIEVwaGVtZXJhbC1SRVEtMDg6DQo8bzpwPjwvbzpw
Pjwvc3Bhbj48L3A+DQo8cD48c3BhbiBzdHlsZT0iY29sb3I6IzFGNDk3RCI+Jmd0O1N1ZTogWW91
IGFyZSBKdWVyZ2VuIGFyZSBjb25jZXJuZWQgYWJvdXQgd3JpdGVhYmxlL25vbi13cml0ZWFibGUu
Jm5ic3A7ICZuYnNwO01hcnRpbiBpcyBjb25jZXJuZWQgYWJvdXQgc3RhdHVzL2NvbmZpZ3VyYXRp
b24uICZuYnNwO1RoZSBJMlJTIGF1dGhvcnMgYmVsaWV2ZSB3ZSBhcmUgcnVubmluZyBpbnRvIHRo
ZSBkaWZmZXJlbnQgb3BlcmF0aW9uYWwgc3RhdGUgbW9kZWxzLiAmbmJzcDtFYWNoIHRpbWUgd2Ug
Y2hhbmdlIHRoaXMNCiByZXF1aXJlbWVudCB3ZSBnZXQgYW5vdGhlciAmZ3Q7cmVzcG9uc2UuJm5i
c3A7Jm5ic3A7IFRoZSByZXF1aXJlbWVudCB3aWxsIHN0YXkgZm9yIG5vdy4mbmJzcDsgSSBzdXNw
ZWN0IHRoZSB3ZSB3aWxsIGJlIHdvcmtpbmcgb24gdGhlIGRlc2lnbiBvZiB0aGUgc29sdXRpb24g
YWZ0ZXIgd2UgaGF2ZSBzZXR0bGVkIG9uIHRoZSBvcGVyYXRpb25hbCBzdGF0ZSBtb2RlbHMuPC9z
cGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+Jmd0O1JvYjo8YnI+DQom
Z3Q7TXkgYWN0dWFsIGNvbmNlcm4gaXMgdGhhdCB3aGF0IEkgaGF2ZSBwcm9wb3NlZCBhcyBhIGRh
dGFzdG9yZSBzb2x1dGlvbiBjYW5ub3QgbWVldCB0aGlzIHJlcXVpcmVtZW50LCBiZWNhdXNlIEkg
dGhpbmsgdGhhdCBvbmx5IGNvbmZpZ3VyYXRpb24gc2hvdWxkIGJlIHdyaXRhYmxlLCBhbmQgaGVu
Y2UgdGhlIHdyaXRhYmxlL25vbi13cml0YWJsZSBwcm9wZXJ0eSBpcyBpbXBsaWNpdC48bzpwPjwv
bzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxvOnA+Jm5ic3A7PC9vOnA+PC9wPg0KPHAg
Y2xhc3M9Ik1zb05vcm1hbCI+V2UgaGF2ZSB0aGUgY2FzZSBvZiB0aGUgZXBoZW1lcmFsIHRvcG9s
b2d5IGRhdGEgYmFzZSB0aGF0IGNvbmZsaWN0cyB0aGlzIHdvcmsuJm5ic3A7Jm5ic3A7IFdlIHdp
bGwgbmVlZCB0byB3b3JrIHRoaXMgb3V0IGF0IElFVEYgOTYgaW4gQmVybGluLg0KPG86cD48L286
cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48bzpwPiZuYnNwOzwvbzpwPjwvcD4NCjxwIGNs
YXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtYXJnaW4tYm90dG9tOjEyLjBwdCI+U3VlIDxzcGFuIHN0
eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1
b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj4NCjxvOnA+PC9vOnA+PC9zcGFuPjwv
cD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2Zv
bnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xv
cjojMUY0OTdEIj48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+DQo8ZGl2Pg0KPGRpdiBzdHls
ZT0iYm9yZGVyOm5vbmU7Ym9yZGVyLXRvcDpzb2xpZCAjQjVDNERGIDEuMHB0O3BhZGRpbmc6My4w
cHQgMGluIDBpbiAwaW4iPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PGI+PHNwYW4gc3R5bGU9ImZv
bnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7VGFob21hJnF1b3Q7LCZxdW90O3NhbnMt
c2VyaWYmcXVvdDs7Y29sb3I6d2luZG93dGV4dCI+RnJvbTo8L3NwYW4+PC9iPjxzcGFuIHN0eWxl
PSJmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O1RhaG9tYSZxdW90OywmcXVvdDtz
YW5zLXNlcmlmJnF1b3Q7O2NvbG9yOndpbmRvd3RleHQiPiBSb2JlcnQgV2lsdG9uIFs8YSBocmVm
PSJtYWlsdG86cndpbHRvbkBjaXNjby5jb20iPm1haWx0bzpyd2lsdG9uQGNpc2NvLmNvbTwvYT5d
DQo8YnI+DQo8Yj5TZW50OjwvYj4gVGh1cnNkYXksIEp1bmUgMzAsIDIwMTYgMTI6MzkgUE08YnI+
DQo8Yj5Ubzo8L2I+IFN1c2FuIEhhcmVzOyA8YSBocmVmPSJtYWlsdG86aTJyc0BpZXRmLm9yZyI+
aTJyc0BpZXRmLm9yZzwvYT48YnI+DQo8Yj5TdWJqZWN0OjwvYj4gUmU6IFtpMnJzXSBSZXZpZXcg
b2YgZHJhZnQtaWV0Zi1pMnJzLWVwaGVtZXJhbC1zdGF0ZS0xMTxvOnA+PC9vOnA+PC9zcGFuPjwv
cD4NCjwvZGl2Pg0KPC9kaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48bzpwPiZuYnNwOzwvbzpw
PjwvcD4NCjxwPkhpIFN1ZSw8bzpwPjwvbzpwPjwvcD4NCjxwPkFsbCBmaW5lIHdpdGggbWUuJm5i
c3A7IEEgY291cGxlIG9mIGNvbW1lbnRzIGlubGluZSAuLi48bzpwPjwvbzpwPjwvcD4NCjxwIGNs
YXNzPSJNc29Ob3JtYWwiPjxvOnA+Jm5ic3A7PC9vOnA+PC9wPg0KPGRpdj4NCjxwIGNsYXNzPSJN
c29Ob3JtYWwiPk9uIDMwLzA2LzIwMTYgMTc6MTUsIFN1c2FuIEhhcmVzIHdyb3RlOjxvOnA+PC9v
OnA+PC9wPg0KPC9kaXY+DQo8YmxvY2txdW90ZSBzdHlsZT0ibWFyZ2luLXRvcDo1LjBwdDttYXJn
aW4tYm90dG9tOjUuMHB0Ij4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250
LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1z
ZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj5Sb2JlcnQ6DQo8L3NwYW4+PG86cD48L286cD48L3A+
DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250
LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6
IzFGNDk3RCI+Jm5ic3A7PC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1h
bCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJy
aSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPlRoYW5rIHlvdSBm
b3IgeW91ciBjb21tZW50cy4mbmJzcDsgU2VlIHJlc29sdXRpb24gb2YgY29tbWVudHMgYmVsb3cu
Jm5ic3A7IFZlcnNpb24gLTEyIHdpbGwgYmUgc2VudCB0byB0aGUgbGlzdCB0byBoYW5kbGUgbW9z
dCBvZiB0aGVzZSBjb21tZW50cy4NCjwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJN
c29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90
O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj4mbmJz
cDs8L3NwYW4+PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHls
ZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90
O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+U3VlDQo8L3NwYW4+PG86cD48L286cD48
L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtm
b250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29s
b3I6IzFGNDk3RCI+Jm5ic3A7PC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPGRpdj4NCjxkaXYgc3R5
bGU9ImJvcmRlcjpub25lO2JvcmRlci10b3A6c29saWQgI0I1QzRERiAxLjBwdDtwYWRkaW5nOjMu
MHB0IDBpbiAwaW4gMGluIj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxiPjxzcGFuIHN0eWxlPSJm
b250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O1RhaG9tYSZxdW90OywmcXVvdDtzYW5z
LXNlcmlmJnF1b3Q7O2NvbG9yOndpbmRvd3RleHQiPkZyb206PC9zcGFuPjwvYj48c3BhbiBzdHls
ZT0iZm9udC1zaXplOjEwLjBwdDtmb250LWZhbWlseTomcXVvdDtUYWhvbWEmcXVvdDssJnF1b3Q7
c2Fucy1zZXJpZiZxdW90Oztjb2xvcjp3aW5kb3d0ZXh0Ij4gaTJycyBbPGEgaHJlZj0ibWFpbHRv
OmkycnMtYm91bmNlc0BpZXRmLm9yZyI+bWFpbHRvOmkycnMtYm91bmNlc0BpZXRmLm9yZzwvYT5d
DQo8Yj5PbiBCZWhhbGYgT2YgPC9iPlJvYmVydCBXaWx0b248YnI+DQo8Yj5TZW50OjwvYj4gTW9u
ZGF5LCBKdW5lIDI3LCAyMDE2IDExOjMwIEFNPGJyPg0KPGI+VG86PC9iPiA8YSBocmVmPSJtYWls
dG86aTJyc0BpZXRmLm9yZyI+aTJyc0BpZXRmLm9yZzwvYT48YnI+DQo8Yj5TdWJqZWN0OjwvYj4g
W2kycnNdIFJldmlldyBvZiBkcmFmdC1pZXRmLWkycnMtZXBoZW1lcmFsLXN0YXRlLTExPC9zcGFu
PjxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+DQo8L2Rpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPiZu
YnNwOzxvOnA+PC9vOnA+PC9wPg0KPHA+SGksPG86cD48L286cD48L3A+DQo8cD5JJ3ZlIHJldmll
d2VkIGRyYWZ0LWlldGYtaTJycy1lcGhlbWVyYWwtc3RhdGUtMTEgYW5kIGdpdmVuIGEgZmV3IG1p
bm9yIGNvbW1lbnRzIGJlbG93LiZuYnNwOyBHZW5lcmFsbHkgSSB0aGluayB0aGF0IEkgdW5kZXJz
dGFuZCB0aGUgcmVxdWlyZW1lbnRzIHN0YXRlZCBpbiB0aGlzIGRvY3VtZW50LjxvOnA+PC9vOnA+
PC9wPg0KPHA+TWlub3JzIGNvbW1lbnRzOjxvOnA+PC9vOnA+PC9wPg0KPHA+MSkgRXBoZW1lcmFs
LVJFUS0wMSAocGFnZSA1KTo8bzpwPjwvbzpwPjwvcD4NCjxkaXYgc3R5bGU9ImJvcmRlcjpzb2xp
ZCAjQ0NDQ0NDIDEuMHB0O3BhZGRpbmc6OC4wcHQgOC4wcHQgOC4wcHQgOC4wcHQiPg0KPHByZSBz
dHlsZT0ibWFyZ2luLWJvdHRvbTo3LjlwdDtiYWNrZ3JvdW5kOiNGRkZERjU7d29yZC1icmVhazpi
cmVhay1hbGw7Ym94LXNpemluZzogYm9yZGVyLWJveDt3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7Ym9y
ZGVyLXJhZGl1czogNHB4O29ycGhhbnM6IGF1dG87dGV4dC1hbGlnbjpzdGFydDt3aWRvd3M6IDE7
LXdlYmtpdC10ZXh0LXN0cm9rZS13aWR0aDogMHB4O292ZXJmbG93OmF1dG87d29yZC1zcGFjaW5n
OjBweCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMC41cHQiPiZuYnNwOyZuYnNwOyBFcGhlbWVy
YWwtUkVRLTAxOiBJMlJTIHJlcXVpcmVzIGVwaGVtZXJhbCBzdGF0ZTsgaS5lLiBzdGF0ZSB0aGF0
IGRvZXM8L3NwYW4+PG86cD48L286cD48L3ByZT4NCjxwcmUgc3R5bGU9Im1hcmdpbi1ib3R0b206
Ny45cHQ7YmFja2dyb3VuZDojRkZGREY1O3dvcmQtYnJlYWs6YnJlYWstYWxsIj48c3BhbiBzdHls
ZT0iZm9udC1zaXplOjEwLjVwdCI+Jm5ic3A7Jm5ic3A7IG5vdCBwZXJzaXN0IGFjcm9zcyByZWJv
b3RzLiZuYnNwOyBJZiBzdGF0ZSBtdXN0IGJlIHJlc3RvcmVkLCBpdCBzaG91bGQgYmU8L3NwYW4+
PG86cD48L286cD48L3ByZT4NCjxwcmUgc3R5bGU9Im1hcmdpbi1ib3R0b206Ny45cHQ7YmFja2dy
b3VuZDojRkZGREY1O3dvcmQtYnJlYWs6YnJlYWstYWxsIj48c3BhbiBzdHlsZT0iZm9udC1zaXpl
OjEwLjVwdCI+Jm5ic3A7Jm5ic3A7IGRvbmUgc29sZWx5IGJ5IHJlcGxheSBhY3Rpb25zIGZyb20g
dGhlIEkyUlMgY2xpZW50IHZpYSB0aGUgSTJSUzwvc3Bhbj48bzpwPjwvbzpwPjwvcHJlPg0KPHBy
ZSBzdHlsZT0ibWFyZ2luLWJvdHRvbTo3LjlwdDtiYWNrZ3JvdW5kOiNGRkZERjU7d29yZC1icmVh
azpicmVhay1hbGwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTAuNXB0Ij4mbmJzcDsmbmJzcDsg
YWdlbnQuPC9zcGFuPjxvOnA+PC9vOnA+PC9wcmU+DQo8L2Rpdj4NCjxwPlRoZSBhcmNoaXRlY3R1
cmUgZG9jdW1lbnQgaW5kaWNhdGVzIHRoYXQgdGhlIGVwaGVtZXJhbCBzdGF0ZSB3b3VsZCAob3Ig
aXMgdGhhdCBtYXkpIGFsc28gYmUgbG9zdCBvbiBvdGhlciBjaXJjdW1zdGFuY2VzIHN1Y2ggYXMg
cHJvY2VzcyByZXN0YXJ0IG9mIHRoZSBJMlJTIGFnZW50LiZuYnNwOyBEb2VzIHRoaXMgbmVlZCB0
byBiZSBjbGFyaWZpZWQgaW4gdGhlIHJlcXVpcmVtZW50PyZuYnNwOyBFLmcuPG86cD48L286cD48
L3A+DQo8cD48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtD
YWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+U3VlOiBJ
biBvdXIgcHJldmlvdXMgZGlzY3Vzc2lvbnMsJm5ic3A7IG90aGVyIHBlb3BsZSBzdWdnZXN0IHRo
YXQg4oCccmVib290c+KAnSBjb3ZlcmVkIGhhcmR3YXJlIGFuZCBzb2Z0d2FyZSByZWJvb3Qgb2Yg
dGhlIEkyUlMgYWdlbnQuICZuYnNwOyZuYnNwO0FuZCB0aGF0IHRoZSBzcGVjaWZpYyBuYXR1cmUg
b2YgdGhlIHJlYm9vdCB3YXMNCiB0b28tbXVjaCBpbmZvcm1hdGlvbiBmb3IgdGhlIHJlcXVpcmVt
ZW50LiA8L3NwYW4+PG86cD48L286cD48L3A+DQo8L2Jsb2NrcXVvdGU+DQo8cCBjbGFzcz0iTXNv
Tm9ybWFsIiBzdHlsZT0ibWFyZ2luLWJvdHRvbToxMi4wcHQiPlJvYjogT0suPGJyPg0KPGJyPg0K
PG86cD48L286cD48L3A+DQo8cD48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZh
bWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFG
NDk3RCI+Jm5ic3A7PC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPGRpdiBzdHlsZT0iYm9yZGVyOnNv
bGlkICNDQ0NDQ0MgMS4wcHQ7cGFkZGluZzo4LjBwdCA4LjBwdCA4LjBwdCA4LjBwdCI+DQo8cHJl
IHN0eWxlPSJtYXJnaW4tYm90dG9tOjcuOXB0O2JhY2tncm91bmQ6I0ZGRkRGNTt3b3JkLWJyZWFr
OmJyZWFrLWFsbDtib3gtc2l6aW5nOiBib3JkZXItYm94O3dvcmQtd3JhcDogYnJlYWstd29yZDti
b3JkZXItcmFkaXVzOiA0cHg7b3JwaGFuczogYXV0bzt0ZXh0LWFsaWduOnN0YXJ0O3dpZG93czog
MTstd2Via2l0LXRleHQtc3Ryb2tlLXdpZHRoOiAwcHg7b3ZlcmZsb3c6YXV0bzt3b3JkLXNwYWNp
bmc6MHB4Ij48c3BhbiBzdHlsZT0iZm9udC1zaXplOjEwLjVwdCI+Jm5ic3A7Jm5ic3A7IEVwaGVt
ZXJhbC1SRVEtMDE6IEkyUlMgcmVxdWlyZXMgZXBoZW1lcmFsIHN0YXRlOyBpLmUuIHN0YXRlIHRo
YXQgTVVTVDwvc3Bhbj48bzpwPjwvbzpwPjwvcHJlPg0KPHByZSBzdHlsZT0ibWFyZ2luLWJvdHRv
bTo3LjlwdDtiYWNrZ3JvdW5kOiNGRkZERjU7d29yZC1icmVhazpicmVhay1hbGwiPjxzcGFuIHN0
eWxlPSJmb250LXNpemU6MTAuNXB0Ij4mbmJzcDsmbmJzcDsgTk9UIHBlcnNpc3QgYWNyb3NzIHJl
Ym9vdHMgb2YgdGhlIGRldmljZSBvciBJMlJTIEFnZW50IHN1YnN5c3RlbS4gSWY8L3NwYW4+PG86
cD48L286cD48L3ByZT4NCjxwcmUgc3R5bGU9Im1hcmdpbi1ib3R0b206Ny45cHQ7YmFja2dyb3Vu
ZDojRkZGREY1O3dvcmQtYnJlYWs6YnJlYWstYWxsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjEw
LjVwdCI+Jm5ic3A7Jm5ic3A7IHN0YXRlIG11c3QgYmUgcmVzdG9yZWQsIGl0IHNob3VsZCBiZSBk
b25lIHNvbGVseSBieSByZXBsYXkgYWN0aW9uczwvc3Bhbj48bzpwPjwvbzpwPjwvcHJlPg0KPHBy
ZSBzdHlsZT0ibWFyZ2luLWJvdHRvbTo3LjlwdDtiYWNrZ3JvdW5kOiNGRkZERjU7d29yZC1icmVh
azpicmVhay1hbGwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTAuNXB0Ij4mbmJzcDsmbmJzcDsg
ZnJvbSB0aGUgSTJSUyBjbGllbnQgdmlhIHRoZSBJMlJTIGFnZW50Ljwvc3Bhbj48bzpwPjwvbzpw
PjwvcHJlPg0KPC9kaXY+DQo8cD4mbmJzcDs8bzpwPjwvbzpwPjwvcD4NCjxwPjIpIEhpZXJhcmNo
eTogKHBhZ2UgNSk8YnI+DQpCYXNlZCBvbiB0aGUgcHJldmlvdXMgZGVzY3JpcHRpb24sIEkgd291
bGQgcG9zc2libHkgc3BsaXQgRXBoZW1lcmFsLVJFUS0wNiB1cCBpbnRvIHRoZSBmb2xsb3dpbmcg
cmVxdWlyZW1lbnRzOg0KPG86cD48L286cD48L3A+DQo8cD5PbGQgKGZyb20gZXBoZW1lcmFsLXN0
YXRlOjEwKTo8bzpwPjwvbzpwPjwvcD4NCjxkaXYgc3R5bGU9ImJvcmRlcjpzb2xpZCAjQ0NDQ0ND
IDEuMHB0O3BhZGRpbmc6OC4wcHQgOC4wcHQgOC4wcHQgOC4wcHQiPg0KPHByZSBzdHlsZT0ibWFy
Z2luLWJvdHRvbTo3LjlwdDtiYWNrZ3JvdW5kOiNGRkZERjU7d29yZC1icmVhazpicmVhay1hbGw7
Ym94LXNpemluZzogYm9yZGVyLWJveDt3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7Ym9yZGVyLXJhZGl1
czogNHB4O29ycGhhbnM6IGF1dG87dGV4dC1hbGlnbjpzdGFydDt3aWRvd3M6IDE7LXdlYmtpdC10
ZXh0LXN0cm9rZS13aWR0aDogMHB4O292ZXJmbG93OmF1dG87d29yZC1zcGFjaW5nOjBweCI+PHNw
YW4gc3R5bGU9ImZvbnQtc2l6ZToxMC41cHQiPiZuYnNwOyZuYnNwOyBFcGhlbWVyYWwtUkVRLTA2
OiBUaGUgYWJpbGl0eSB0byBhdWdtZW50IGFuIG9iamVjdCB3aXRoIGFwcHJvcHJpYXRlPC9zcGFu
PjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlIHN0eWxlPSJtYXJnaW4tYm90dG9tOjcuOXB0O2JhY2tn
cm91bmQ6I0ZGRkRGNTt3b3JkLWJyZWFrOmJyZWFrLWFsbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6
ZToxMC41cHQiPiZuYnNwOyZuYnNwOyBZQU5HIHN0cnVjdHVyZXMgdGhhdCBoYXZlIHRoZSBwcm9w
ZXJ0eSBvZiBiZWluZyBlcGhlbWVyYWwuJm5ic3A7IEFuIG9iamVjdDwvc3Bhbj48bzpwPjwvbzpw
PjwvcHJlPg0KPHByZSBzdHlsZT0ibWFyZ2luLWJvdHRvbTo3LjlwdDtiYWNrZ3JvdW5kOiNGRkZE
RjU7d29yZC1icmVhazpicmVhay1hbGwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTAuNXB0Ij4m
bmJzcDsmbmJzcDsgZGVmaW5lZCBhcyBhbnkgb25lIG9mIHRoZSBmb2xsb3dpbmc6IHlhbmcgbW9k
dWxlLCBzdWJtb2R1bGUgb3I8L3NwYW4+PG86cD48L286cD48L3ByZT4NCjxwcmUgc3R5bGU9Im1h
cmdpbi1ib3R0b206Ny45cHQ7YmFja2dyb3VuZDojRkZGREY1O3dvcmQtYnJlYWs6YnJlYWstYWxs
Ij48c3BhbiBzdHlsZT0iZm9udC1zaXplOjEwLjVwdCI+Jm5ic3A7Jm5ic3A7IGNvbXBvbmVudHMg
b2Ygc3VibW9kdWxlLCBvciBzY2hlbWEgbm9kZS48L3NwYW4+PG86cD48L286cD48L3ByZT4NCjwv
ZGl2Pg0KPHA+T2xkIChmcm9tIGVwaGVtZXJhbC1zdGF0ZS0xMSk6PG86cD48L286cD48L3A+DQo8
ZGl2IHN0eWxlPSJib3JkZXI6c29saWQgI0NDQ0NDQyAxLjBwdDtwYWRkaW5nOjguMHB0IDguMHB0
IDguMHB0IDguMHB0Ij4NCjxwcmUgc3R5bGU9Im1hcmdpbi1ib3R0b206Ny45cHQ7YmFja2dyb3Vu
ZDojRkZGREY1O3dvcmQtYnJlYWs6YnJlYWstYWxsO2JveC1zaXppbmc6IGJvcmRlci1ib3g7d29y
ZC13cmFwOiBicmVhay13b3JkO2JvcmRlci1yYWRpdXM6IDRweDtvcnBoYW5zOiBhdXRvO3RleHQt
YWxpZ246c3RhcnQ7d2lkb3dzOiAxOy13ZWJraXQtdGV4dC1zdHJva2Utd2lkdGg6IDBweDtvdmVy
ZmxvdzphdXRvO3dvcmQtc3BhY2luZzowcHgiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTAuNXB0
Ij4mbmJzcDsmbmJzcDsgRXBoZW1lcmFsLVJFUS0wNjogVGhlIGFiaWxpdHkgdG8gYXVnbWVudCBZ
YW5nIHNjaGVtYSBub2RlcyB3aXRoPC9zcGFuPjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlIHN0eWxl
PSJtYXJnaW4tYm90dG9tOjcuOXB0O2JhY2tncm91bmQ6I0ZGRkRGNTt3b3JkLWJyZWFrOmJyZWFr
LWFsbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMC41cHQiPiZuYnNwOyZuYnNwOyBhZGRpdGlv
bmFsIFlhbmcgU2NoZW1hIG5vZGVzIHRoYXQgaGF2ZSB0aGUgcHJvcGVydHkgb2YgYmVpbmc8L3Nw
YW4+PG86cD48L286cD48L3ByZT4NCjxwcmUgc3R5bGU9Im1hcmdpbi1ib3R0b206Ny45cHQ7YmFj
a2dyb3VuZDojRkZGREY1O3dvcmQtYnJlYWs6YnJlYWstYWxsIj48c3BhbiBzdHlsZT0iZm9udC1z
aXplOjEwLjVwdCI+Jm5ic3A7Jm5ic3A7IGVwaGVtZXJhbC48L3NwYW4+PG86cD48L286cD48L3By
ZT4NCjwvZGl2Pg0KPHA+UHJvcG9zZWQ6PG86cD48L286cD48L3A+DQo8ZGl2IHN0eWxlPSJib3Jk
ZXI6c29saWQgI0NDQ0NDQyAxLjBwdDtwYWRkaW5nOjguMHB0IDguMHB0IDguMHB0IDguMHB0Ij4N
CjxwcmUgc3R5bGU9Im1hcmdpbi1ib3R0b206Ny45cHQ7YmFja2dyb3VuZDojRkZGREY1O3dvcmQt
YnJlYWs6YnJlYWstYWxsO2JveC1zaXppbmc6IGJvcmRlci1ib3g7d29yZC13cmFwOiBicmVhay13
b3JkO2JvcmRlci1yYWRpdXM6IDRweDtvcnBoYW5zOiBhdXRvO3RleHQtYWxpZ246c3RhcnQ7d2lk
b3dzOiAxOy13ZWJraXQtdGV4dC1zdHJva2Utd2lkdGg6IDBweDtvdmVyZmxvdzphdXRvO3dvcmQt
c3BhY2luZzowcHgiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTAuNXB0Ij4mbmJzcDsmbmJzcDsg
RXBoZW1lcmFsLVJFUS0wNjo8L3NwYW4+PG86cD48L286cD48L3ByZT4NCjxwcmUgc3R5bGU9Im1h
cmdpbi1ib3R0b206Ny45cHQ7YmFja2dyb3VuZDojRkZGREY1O3dvcmQtYnJlYWs6YnJlYWstYWxs
Ij48c3BhbiBzdHlsZT0iZm9udC1zaXplOjEwLjVwdCI+IDwvc3Bhbj48bzpwPjwvbzpwPjwvcHJl
Pg0KPHByZSBzdHlsZT0ibWFyZ2luLWJvdHRvbTo3LjlwdDtiYWNrZ3JvdW5kOiNGRkZERjU7d29y
ZC1icmVhazpicmVhay1hbGwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTAuNXB0Ij4mbmJzcDsm
bmJzcDsmbmJzcDsxLiBUaGUgYWJpbGl0eSB0byBkZWZpbmUgYSBZQU5HIG1vZHVsZSBvciBzdWJt
b2R1bGUgc2NoZW1hIHRoYXQ8L3NwYW4+PG86cD48L286cD48L3ByZT4NCjxwcmUgc3R5bGU9Im1h
cmdpbi1ib3R0b206Ny45cHQ7YmFja2dyb3VuZDojRkZGREY1O3dvcmQtYnJlYWs6YnJlYWstYWxs
Ij48c3BhbiBzdHlsZT0iZm9udC1zaXplOjEwLjVwdCI+Jm5ic3A7Jm5ic3A7IG9ubHkgY29udGFp
bnMgZGF0YSBub2RlcyB3aXRoIHRoZSBwcm9wZXJ0eSBvZiBiZWluZyBlcGhlbWVyYWwuPC9zcGFu
PjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlIHN0eWxlPSJtYXJnaW4tYm90dG9tOjcuOXB0O2JhY2tn
cm91bmQ6I0ZGRkRGNTt3b3JkLWJyZWFrOmJyZWFrLWFsbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6
ZToxMC41cHQiPiZuYnNwOzwvc3Bhbj48bzpwPjwvbzpwPjwvcHJlPg0KPHByZSBzdHlsZT0ibWFy
Z2luLWJvdHRvbTo3LjlwdDtiYWNrZ3JvdW5kOiNGRkZERjU7d29yZC1icmVhazpicmVhay1hbGwi
PjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTAuNXB0Ij4mbmJzcDsmbmJzcDsgMi4gVGhlIGFiaWxp
dHkgdG8gYXVnbWVudCBhIFlBTkcgZGF0YSBtb2RlbCB3aXRoIGFkZGl0aW9uYWwgWUFORzwvc3Bh
bj48bzpwPjwvbzpwPjwvcHJlPg0KPHByZSBzdHlsZT0ibWFyZ2luLWJvdHRvbTo3LjlwdDtiYWNr
Z3JvdW5kOiNGRkZERjU7d29yZC1icmVhazpicmVhay1hbGwiPjxzcGFuIHN0eWxlPSJmb250LXNp
emU6MTAuNXB0Ij4mbmJzcDsmbmJzcDsgc2NoZW1hIG5vZGVzIHRoYXQgaGF2ZSB0aGUgcHJvcGVy
dHkgb2YgYmVpbmcgZXBoZW1lcmFsLjwvc3Bhbj48bzpwPjwvbzpwPjwvcHJlPg0KPC9kaXY+DQo8
cD48c3BhbiBzdHlsZT0iY29sb3I6IzFGNDk3RCI+SSB3aWxsIGFjY2VwdCB0aGlzIGNoYW5nZSBh
bmQgcmVsZWFzZSBpbiBpdCB2ZXJzaW9uLTEyLiAmbmJzcDs8L3NwYW4+PG86cD48L286cD48L3A+
DQo8cD48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxp
YnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+Jm5ic3A7PC9z
cGFuPjxvOnA+PC9vOnA+PC9wPg0KPHA+MykgRXBoZW1lcmFsLVJFUS0wNzogKHBhZ2UgNik6PG86
cD48L286cD48L3A+DQo8ZGl2IHN0eWxlPSJib3JkZXI6c29saWQgI0NDQ0NDQyAxLjBwdDtwYWRk
aW5nOjguMHB0IDguMHB0IDguMHB0IDguMHB0Ij4NCjxwcmUgc3R5bGU9Im1hcmdpbi1ib3R0b206
Ny45cHQ7YmFja2dyb3VuZDojRkZGREY1O3dvcmQtYnJlYWs6YnJlYWstYWxsO2JveC1zaXppbmc6
IGJvcmRlci1ib3g7d29yZC13cmFwOiBicmVhay13b3JkO2JvcmRlci1yYWRpdXM6IDRweDtvcnBo
YW5zOiBhdXRvO3RleHQtYWxpZ246c3RhcnQ7d2lkb3dzOiAxOy13ZWJraXQtdGV4dC1zdHJva2Ut
d2lkdGg6IDBweDtvdmVyZmxvdzphdXRvO3dvcmQtc3BhY2luZzowcHgiPjxzcGFuIHN0eWxlPSJm
b250LXNpemU6MTAuNXB0Ij4mbmJzcDsmbmJzcDsgRXBoZW1lcmFsLVJFUS0wNzogRXBoZW1lcmFs
IGNvbmZpZ3VyYXRpb24gc3RhdGUgY291bGQgb3ZlcnJpZGU8L3NwYW4+PG86cD48L286cD48L3By
ZT4NCjxwcmUgc3R5bGU9Im1hcmdpbi1ib3R0b206Ny45cHQ7YmFja2dyb3VuZDojRkZGREY1O3dv
cmQtYnJlYWs6YnJlYWstYWxsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjEwLjVwdCI+Jm5ic3A7
Jm5ic3A7IG92ZXJsYXBwaW5nIGxvY2FsIGNvbmZpZ3VyYXRpb24gc3RhdGUsIG9yIHZpY2UtdmVy
c2EuPC9zcGFuPjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlIHN0eWxlPSJtYXJnaW4tYm90dG9tOjcu
OXB0O2JhY2tncm91bmQ6I0ZGRkRGNTt3b3JkLWJyZWFrOmJyZWFrLWFsbCI+PHNwYW4gc3R5bGU9
ImZvbnQtc2l6ZToxMC41cHQiPiZuYnNwOyZuYnNwOyBJbXBsZW1lbnRhdGlvbnMgTVVTVCBwcm92
aWRlIGEgbWVjaGFuaXNtIHRvIGNob29zZSB3aGljaCB0YWtlczwvc3Bhbj48bzpwPjwvbzpwPjwv
cHJlPg0KPHByZSBzdHlsZT0ibWFyZ2luLWJvdHRvbTo3LjlwdDtiYWNrZ3JvdW5kOiNGRkZERjU7
d29yZC1icmVhazpicmVhay1hbGwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTAuNXB0Ij4mbmJz
cDsmbmJzcDsgcHJlY2VkZW5jZS4mbmJzcDsgVGhpcyBtZWNoYW5pc20gTVVTVCBpbmNsdWRlIGxv
Y2FsIGNvbmZpZ3VyYXRpb24gKHBvbGljeSk8L3NwYW4+PG86cD48L286cD48L3ByZT4NCjxwcmUg
c3R5bGU9Im1hcmdpbi1ib3R0b206Ny45cHQ7YmFja2dyb3VuZDojRkZGREY1O3dvcmQtYnJlYWs6
YnJlYWstYWxsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjEwLjVwdCI+Jm5ic3A7Jm5ic3A7IGFu
ZCBNQVkgYmUgcHJvdmlkZWQgdmlhIHRoZSBJMlJTIHByb3RvY29sIG1lY2hhbmlzbXMuPC9zcGFu
PjxvOnA+PC9vOnA+PC9wcmU+DQo8L2Rpdj4NCjxwPkkgbm90ZSB0aGF0IHRoaXMgcmVxdWlyZW1l
bnQgZG9lc24ndCBzcGVjaWZ5IHRoZSBzY29wZSBvZiB3aGV0aGVyIHRoZSBvdmVycmlkZSBtZWNo
YW5pc20gc2hvdWxkIG9wZXJhdGUgZ2xvYmFsbHkgb3Igb24gYSBwZXIgZGF0YSBub2RlIGJhc2lz
LiZuYnNwOyBJJ20gbm90IHN1cmUgd2hldGhlciB0aGlzIG5lZWRzIHRvIGJlIGNsYXJpZmllZCAt
IHNpbmNlIHRoZSB0ZXh0IGluIHRoZSBhcmNoaXRlY3R1cmUgZG9jdW1lbnQgbWFrZXMgaXQgcHJl
dHR5IGNsZWFyDQogdGhhdCBhIGdsb2JhbCBsZXZlbCByZXNvbHV0aW9uIGlzIHN1ZmZpY2llbnQu
PG86cD48L286cD48L3A+DQo8cD48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZh
bWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFG
NDk3RCI+U3VlOiAmbmJzcDtBZ2Fpbiwgd2Ugd2VyZSBjYXV0aW9uZWQgdG8gbm90IHNwZWNpZnkg
dGhlIGRlc2lnbiwgYnV0IG9ubHkgcHJvdmlkZSBhIHJlc3VsdC4mbmJzcDsgVGhlIGdsb2JhbCBp
cyBzdWZmaWNpZW50Lg0KPC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1h
bCIgc3R5bGU9Im1hcmdpbi1ib3R0b206MTIuMHB0Ij5Sb2I6IE9LPGJyPg0KPGJyPg0KPG86cD48
L286cD48L3A+DQo8cD40KSBFcGhlbWVyYWwtUkVRLTA4OiAocGFnZSA2KTo8YnI+DQpTaW1pbGFy
IHRvIEp1ZXJnZW4ncyBjb21tZW50cywgSSdtIGNvbmNlcm5lZCBhYm91dCB0aGUgd3JpdGFibGUv
bm9uLXdyaXRhYmxlIHJlcXVpcmVtZW50LjxvOnA+PC9vOnA+PC9wPg0KPGRpdiBzdHlsZT0iYm9y
ZGVyOnNvbGlkICNDQ0NDQ0MgMS4wcHQ7cGFkZGluZzo4LjBwdCA4LjBwdCA4LjBwdCA4LjBwdCI+
DQo8cHJlIHN0eWxlPSJtYXJnaW4tYm90dG9tOjcuOXB0O2JhY2tncm91bmQ6I0ZGRkRGNTt3b3Jk
LWJyZWFrOmJyZWFrLWFsbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMC41cHQiPiZuYnNwOyZu
YnNwOyBFcGhlbWVyYWwtUkVRLTA4OiBZYW5nIE1VU1QgaGF2ZSBhIHdheSB0byBpbmRpY2F0ZSBp
biBhIGRhdGEgbW9kZWw8L3NwYW4+PG86cD48L286cD48L3ByZT4NCjxwcmUgc3R5bGU9Im1hcmdp
bi1ib3R0b206Ny45cHQ7YmFja2dyb3VuZDojRkZGREY1O3dvcmQtYnJlYWs6YnJlYWstYWxsIj48
c3BhbiBzdHlsZT0iZm9udC1zaXplOjEwLjVwdCI+Jm5ic3A7Jm5ic3A7IHRoYXQgc2NoZW1hIG5v
ZGVzIGhhdmUgdGhlIGZvbGxvd2luZyBwcm9wZXJ0aWVzOiBlcGhlbWVyYWwsIHdyaXRhYmxlLzwv
c3Bhbj48bzpwPjwvbzpwPjwvcHJlPg0KPHByZSBzdHlsZT0ibWFyZ2luLWJvdHRvbTo3LjlwdDti
YWNrZ3JvdW5kOiNGRkZERjU7d29yZC1icmVhazpicmVhay1hbGwiPjxzcGFuIHN0eWxlPSJmb250
LXNpemU6MTAuNXB0Ij4mbmJzcDsmbmJzcDsgbm90LXdyaXRhYmxlLCBhbmQgc3RhdHVzL2NvbmZp
Z3VyYXRpb24uPC9zcGFuPjxvOnA+PC9vOnA+PC9wcmU+DQo8L2Rpdj4NCjxwPkknbSBzb21ld2hh
dCBhZHZlcnNlIHRvIHdyaXRhYmxlIG9wZXJhdGlvbmFsIHN0YXRlLCBhbmQgaGVuY2UgSSB3b3Vs
ZCBwcmVmZXIgaWYgdGhpcyByZXF1aXJlbWVudCB3YXMgd2F0ZXJlZCBkb3duIHRvIHNvbWV0aGlu
ZyBsaWtlOjxvOnA+PC9vOnA+PC9wPg0KPGRpdiBzdHlsZT0iYm9yZGVyOnNvbGlkICNDQ0NDQ0Mg
MS4wcHQ7cGFkZGluZzo4LjBwdCA4LjBwdCA4LjBwdCA4LjBwdCI+DQo8cHJlIHN0eWxlPSJtYXJn
aW4tYm90dG9tOjcuOXB0O2JhY2tncm91bmQ6I0ZGRkRGNTt3b3JkLWJyZWFrOmJyZWFrLWFsbDti
b3gtc2l6aW5nOiBib3JkZXItYm94O3dvcmQtd3JhcDogYnJlYWstd29yZDtib3JkZXItcmFkaXVz
OiA0cHg7b3JwaGFuczogYXV0bzt0ZXh0LWFsaWduOnN0YXJ0O3dpZG93czogMTstd2Via2l0LXRl
eHQtc3Ryb2tlLXdpZHRoOiAwcHg7b3ZlcmZsb3c6YXV0bzt3b3JkLXNwYWNpbmc6MHB4Ij48c3Bh
biBzdHlsZT0iZm9udC1zaXplOjEwLjVwdCI+Jm5ic3A7Jm5ic3A7IEVwaGVtZXJhbC1SRVEtMDg6
IEluIGFkZGl0aW9uIHRvIGNvbmZpZyB0cnVlL2ZhbHNlLCB0aGVyZSBNVVNUIGJlIGE8L3NwYW4+
PG86cD48L286cD48L3ByZT4NCjxwcmUgc3R5bGU9Im1hcmdpbi1ib3R0b206Ny45cHQ7YmFja2dy
b3VuZDojRkZGREY1O3dvcmQtYnJlYWs6YnJlYWstYWxsIj48c3BhbiBzdHlsZT0iZm9udC1zaXpl
OjEwLjVwdCI+Jm5ic3A7Jm5ic3A7IHdheSB0byBpbmRpY2F0ZSB0aGF0IFlBTkcgc2NoZW1hIG5v
ZGVzIHJlcHJlc2VudCBlcGhlbWVyYWwgc3RhdGUuPC9zcGFuPjxvOnA+PC9vOnA+PC9wcmU+DQo8
cHJlIHN0eWxlPSJtYXJnaW4tYm90dG9tOjcuOXB0O2JhY2tncm91bmQ6I0ZGRkRGNTt3b3JkLWJy
ZWFrOmJyZWFrLWFsbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMC41cHQiPiZuYnNwOyZuYnNw
OyBJdCBpcyBkZXNpcmFibGUgdG8gYWxsb3cgZm9yLCBhbmQgaGF2ZSB0byB3YXkgdG8gaW5kaWNh
dGUsIGNvbmZpZzwvc3Bhbj48bzpwPjwvbzpwPjwvcHJlPg0KPHByZSBzdHlsZT0ibWFyZ2luLWJv
dHRvbTo3LjlwdDtiYWNrZ3JvdW5kOiNGRkZERjU7d29yZC1icmVhazpicmVhay1hbGwiPjxzcGFu
IHN0eWxlPSJmb250LXNpemU6MTAuNXB0Ij4mbmJzcDsmbmJzcDsgZmFsc2UgWUFORyBzY2hlbWEg
bm9kZXMgdGhhdCBhcmUgd3JpdGFibGUgb3BlcmF0aW9uYWwgc3RhdGUuPC9zcGFuPjxvOnA+PC9v
OnA+PC9wcmU+DQo8L2Rpdj4NCjxwPjxzcGFuIHN0eWxlPSJjb2xvcjojMUY0OTdEIj5TdWU6IFlv
dSBhcmUgSnVlcmdlbiBhcmUgY29uY2VybmVkIGFib3V0IHdyaXRlYWJsZS9ub24td3JpdGVhYmxl
LiZuYnNwOyAmbmJzcDtNYXJ0aW4gaXMgY29uY2VybmVkIGFib3V0IHN0YXR1cy9jb25maWd1cmF0
aW9uLiAmbmJzcDtUaGUgSTJSUyBhdXRob3JzIGJlbGlldmUgd2UgYXJlIHJ1bm5pbmcgaW50byB0
aGUgZGlmZmVyZW50IG9wZXJhdGlvbmFsIHN0YXRlIG1vZGVscy4gJm5ic3A7RWFjaCB0aW1lIHdl
IGNoYW5nZSB0aGlzDQogcmVxdWlyZW1lbnQgd2UgZ2V0IGFub3RoZXIgcmVzcG9uc2UuJm5ic3A7
Jm5ic3A7IFRoZSByZXF1aXJlbWVudCB3aWxsIHN0YXkgZm9yIG5vdy4mbmJzcDsgSSBzdXNwZWN0
IHRoZSB3ZSB3aWxsIGJlIHdvcmtpbmcgb24gdGhlIGRlc2lnbiBvZiB0aGUgc29sdXRpb24gYWZ0
ZXIgd2UgaGF2ZSBzZXR0bGVkIG9uIHRoZSBvcGVyYXRpb25hbCBzdGF0ZSBtb2RlbHMuPC9zcGFu
PjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1hcmdpbi1ib3R0
b206MTIuMHB0Ij5Sb2I6PGJyPg0KTXkgYWN0dWFsIGNvbmNlcm4gaXMgdGhhdCB3aGF0IEkgaGF2
ZSBwcm9wb3NlZCBhcyBhIGRhdGFzdG9yZSBzb2x1dGlvbiBjYW5ub3QgbWVldCB0aGlzIHJlcXVp
cmVtZW50LCBiZWNhdXNlIEkgdGhpbmsgdGhhdCBvbmx5IGNvbmZpZ3VyYXRpb24gc2hvdWxkIGJl
IHdyaXRhYmxlLCBhbmQgaGVuY2UgdGhlIHdyaXRhYmxlL25vbi13cml0YWJsZSBwcm9wZXJ0eSBp
cyBpbXBsaWNpdC48YnI+DQo8YnI+DQo8YnI+DQo8bzpwPjwvbzpwPjwvcD4NCjxwPjUpIEVwaGVt
ZXJhbC1SZXEtMTIsIHBhZ2UgNzo8YnI+DQpQcmVzdW1hYmx5IHRoZSByZXF1aXJlbWVudCBpcyB0
aGF0IHRoZSBub3RpZmljYXRpb24gbXVzdCBpbmRpY2F0ZSB0aGUgbm9kZSB0aGF0IHdlIGludm9s
dmVkIGluIHRoZSBjb2xsaXNpb24/Jm5ic3A7IEkuZS4gaXQgaXNuJ3Qgc3VmZmljaWVudCB0byBq
dXN0IHNpZ25hbCB0byB0aGUgY2xpZW50IHRoYXQgdGhlcmUgaGFzIGJlZW4gYSBjb2xsaXNpb24g
d2l0aCBzb21lIG9mIHRoZWlyIGNvbmZpZ3VyYXRpb24/DQo8bzpwPjwvbzpwPjwvcD4NCjxkaXYg
c3R5bGU9ImJvcmRlcjpzb2xpZCAjQ0NDQ0NDIDEuMHB0O3BhZGRpbmc6OC4wcHQgOC4wcHQgOC4w
cHQgOC4wcHQiPg0KPHByZSBzdHlsZT0ibWFyZ2luLWJvdHRvbTo3LjlwdDtiYWNrZ3JvdW5kOiNG
RkZERjU7d29yZC1icmVhazpicmVhay1hbGw7Ym94LXNpemluZzogYm9yZGVyLWJveDt3b3JkLXdy
YXA6IGJyZWFrLXdvcmQ7Ym9yZGVyLXJhZGl1czogNHB4O29ycGhhbnM6IGF1dG87dGV4dC1hbGln
bjpzdGFydDt3aWRvd3M6IDE7LXdlYmtpdC10ZXh0LXN0cm9rZS13aWR0aDogMHB4O292ZXJmbG93
OmF1dG87d29yZC1zcGFjaW5nOjBweCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMC41cHQiPiZu
YnNwOyZuYnNwOyZuYnNwO0VwaGVtZXJhbC1SRVEtMTI6IFdoZW4gYSBjb2xsaXNpb24gb2NjdXJz
IGFzIHR3byBjbGllbnRzIGFyZSB0cnlpbmc8L3NwYW4+PG86cD48L286cD48L3ByZT4NCjxwcmUg
c3R5bGU9Im1hcmdpbi1ib3R0b206Ny45cHQ7YmFja2dyb3VuZDojRkZGREY1O3dvcmQtYnJlYWs6
YnJlYWstYWxsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjEwLjVwdCI+Jm5ic3A7Jm5ic3A7IHRv
IHdyaXRlIHRoZSBzYW1lIGRhdGEgbm9kZSwgdGhpcyBjb2xsaXNpb24gaXMgY29uc2lkZXJlZCBh
biBlcnJvcjwvc3Bhbj48bzpwPjwvbzpwPjwvcHJlPg0KPHByZSBzdHlsZT0ibWFyZ2luLWJvdHRv
bTo3LjlwdDtiYWNrZ3JvdW5kOiNGRkZERjU7d29yZC1icmVhazpicmVhay1hbGwiPjxzcGFuIHN0
eWxlPSJmb250LXNpemU6MTAuNXB0Ij4mbmJzcDsmbmJzcDsgYW5kIHByaW9yaXRpZXMgd2VyZSBj
cmVhdGVkIHRvIGdpdmUgYSBkZXRlcm1pbmlzdGljIHJlc3VsdC4mbmJzcDsgV2hlbjwvc3Bhbj48
bzpwPjwvbzpwPjwvcHJlPg0KPHByZSBzdHlsZT0ibWFyZ2luLWJvdHRvbTo3LjlwdDtiYWNrZ3Jv
dW5kOiNGRkZERjU7d29yZC1icmVhazpicmVhay1hbGwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6
MTAuNXB0Ij4mbmJzcDsmbmJzcDsgdGhlcmUgaXMgYSBjb2xsaXNpb24sIGEgbm90aWZpY2F0aW9u
IE1VU1QgQkUgc2VudCB0byB0aGUgb3JpZ2luYWw8L3NwYW4+PG86cD48L286cD48L3ByZT4NCjxw
cmUgc3R5bGU9Im1hcmdpbi1ib3R0b206Ny45cHQ7YmFja2dyb3VuZDojRkZGREY1O3dvcmQtYnJl
YWs6YnJlYWstYWxsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjEwLjVwdCI+Jm5ic3A7Jm5ic3A7
IGNsaWVudCB0byBnaXZlIHRoZSBvcmlnaW5hbCBjbGllbnQgYSBjaGFuY2UgdG8gZGVhbCB3aXRo
IHRoZSBpc3N1ZXM8L3NwYW4+PG86cD48L286cD48L3ByZT4NCjxwcmUgc3R5bGU9Im1hcmdpbi1i
b3R0b206Ny45cHQ7YmFja2dyb3VuZDojRkZGREY1O3dvcmQtYnJlYWs6YnJlYWstYWxsIj48c3Bh
biBzdHlsZT0iZm9udC1zaXplOjEwLjVwdCI+Jm5ic3A7Jm5ic3A7IHN1cnJvdW5kaW5nIHRoZSBj
b2xsaXNpb24uJm5ic3A7IFRoZSBvcmlnaW5hbCBjbGllbnQgbWF5IG5lZWQgdG8gZml4IHRoZWly
PC9zcGFuPjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlIHN0eWxlPSJtYXJnaW4tYm90dG9tOjcuOXB0
O2JhY2tncm91bmQ6I0ZGRkRGNTt3b3JkLWJyZWFrOmJyZWFrLWFsbCI+PHNwYW4gc3R5bGU9ImZv
bnQtc2l6ZToxMC41cHQiPiZuYnNwOyZuYnNwOyBzdGF0ZS48L3NwYW4+PG86cD48L286cD48L3By
ZT4NCjwvZGl2Pg0KPHA+U2hvdWxkIHRoaXMgYmUgbWFkZSBleHBsaWNpdD8mbmJzcDsgRS5nLiBw
ZXJoYXBzOjxvOnA+PC9vOnA+PC9wPg0KPGRpdiBzdHlsZT0iYm9yZGVyOnNvbGlkICNDQ0NDQ0Mg
MS4wcHQ7cGFkZGluZzo4LjBwdCA4LjBwdCA4LjBwdCA4LjBwdCI+DQo8cHJlIHN0eWxlPSJtYXJn
aW4tYm90dG9tOjcuOXB0O2JhY2tncm91bmQ6I0ZGRkRGNTt3b3JkLWJyZWFrOmJyZWFrLWFsbDti
b3gtc2l6aW5nOiBib3JkZXItYm94O3dvcmQtd3JhcDogYnJlYWstd29yZDtib3JkZXItcmFkaXVz
OiA0cHg7b3JwaGFuczogYXV0bzt0ZXh0LWFsaWduOnN0YXJ0O3dpZG93czogMTstd2Via2l0LXRl
eHQtc3Ryb2tlLXdpZHRoOiAwcHg7b3ZlcmZsb3c6YXV0bzt3b3JkLXNwYWNpbmc6MHB4Ij48c3Bh
biBzdHlsZT0iZm9udC1zaXplOjEwLjVwdCI+Jm5ic3A7Jm5ic3A7IEVwaGVtZXJhbC1SRVEtMTI6
IFdoZW4gYSBjb2xsaXNpb24gb2NjdXJzIGFzIHR3byBjbGllbnRzIGFyZSB0cnlpbmc8L3NwYW4+
PG86cD48L286cD48L3ByZT4NCjxwcmUgc3R5bGU9Im1hcmdpbi1ib3R0b206Ny45cHQ7YmFja2dy
b3VuZDojRkZGREY1O3dvcmQtYnJlYWs6YnJlYWstYWxsIj48c3BhbiBzdHlsZT0iZm9udC1zaXpl
OjEwLjVwdCI+Jm5ic3A7Jm5ic3A7IHRvIHdyaXRlIHRoZSBzYW1lIGRhdGEgbm9kZSwgdGhpcyBj
b2xsaXNpb24gaXMgY29uc2lkZXJlZCBhbiBlcnJvcjwvc3Bhbj48bzpwPjwvbzpwPjwvcHJlPg0K
PHByZSBzdHlsZT0ibWFyZ2luLWJvdHRvbTo3LjlwdDtiYWNrZ3JvdW5kOiNGRkZERjU7d29yZC1i
cmVhazpicmVhay1hbGwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTAuNXB0Ij4mbmJzcDsmbmJz
cDsgYW5kIHByaW9yaXRpZXMgd2VyZSBjcmVhdGVkIHRvIGdpdmUgYSBkZXRlcm1pbmlzdGljIHJl
c3VsdC4mbmJzcDsgV2hlbjwvc3Bhbj48bzpwPjwvbzpwPjwvcHJlPg0KPHByZSBzdHlsZT0ibWFy
Z2luLWJvdHRvbTo3LjlwdDtiYWNrZ3JvdW5kOiNGRkZERjU7d29yZC1icmVhazpicmVhay1hbGwi
PjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTAuNXB0Ij4mbmJzcDsmbmJzcDsgdGhlcmUgaXMgYSBj
b2xsaXNpb24sIGEgbm90aWZpY2F0aW9uIChpbmRpY2F0aW5nIHdoaWNoIGRhdGEgbm9kZSB0aGU8
L3NwYW4+PG86cD48L286cD48L3ByZT4NCjxwcmUgc3R5bGU9Im1hcmdpbi1ib3R0b206Ny45cHQ7
YmFja2dyb3VuZDojRkZGREY1O3dvcmQtYnJlYWs6YnJlYWstYWxsIj48c3BhbiBzdHlsZT0iZm9u
dC1zaXplOjEwLjVwdCI+Jm5ic3A7Jm5ic3A7IGNvbGxpc2lvbiBvY2N1cnJlZCBvbikgTVVTVCBC
RSBzZW50IHRvIHRoZSBvcmlnaW5hbCBjbGllbnQgdG8gZ2l2ZTwvc3Bhbj48bzpwPjwvbzpwPjwv
cHJlPg0KPHByZSBzdHlsZT0ibWFyZ2luLWJvdHRvbTo3LjlwdDtiYWNrZ3JvdW5kOiNGRkZERjU7
d29yZC1icmVhazpicmVhay1hbGwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTAuNXB0Ij4mbmJz
cDsmbmJzcDsgdGhlIG9yaWdpbmFsIGNsaWVudCBhIGNoYW5jZSB0byBkZWFsIHdpdGggdGhlIGlz
c3VlcyBzdXJyb3VuZGluZzwvc3Bhbj48bzpwPjwvbzpwPjwvcHJlPg0KPHByZSBzdHlsZT0ibWFy
Z2luLWJvdHRvbTo3LjlwdDtiYWNrZ3JvdW5kOiNGRkZERjU7d29yZC1icmVhazpicmVhay1hbGwi
PjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTAuNXB0Ij4mbmJzcDsmbmJzcDsgdGhlIGNvbGxpc2lv
bi4mbmJzcDsgVGhlIG9yaWdpbmFsIGNsaWVudCBtYXkgbmVlZCB0byBmaXggdGhlaXIgc3RhdGUu
PC9zcGFuPjxvOnA+PC9vOnA+PC9wcmU+DQo8L2Rpdj4NCjxwPjxzcGFuIHN0eWxlPSJmb250LXNp
emU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJp
ZiZxdW90Oztjb2xvcjojMUY0OTdEIj5TdWU6Jm5ic3A7IEZvciBzb21lIGRhdGEgbW9kZWxzLCBp
dCBtYXkgYmUgaW1wb3J0YW50IHRvIHByb3ZpZGUgbW9yZSB0aGFuIGp1c3QgdGhhdC4mbmJzcDsg
SG93IGFib3V0Og0KPC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHA+PHNwYW4gc3R5bGU9ImZvbnQt
c2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNl
cmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPiZuYnNwOyZuYnNwO1doZW4gdGhlcmUgaXMgYSBjb2xs
aXNpb24sIGEgbm90aWZpY2F0aW9uJm5ic3A7ICh3aGljaCBpbmNsdWRlcyBhbiBpbmRpY2F0aW9u
IG9mIHRoZSBkYXRhIG5vZGUgdGhlIGNvbGxpc2lvbiBvY2N1cnJlZCBvbik8L3NwYW4+PG86cD48
L286cD48L3A+DQo8cD48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTom
cXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+
TVVTVCBCRSBzZW50IHRvIHRoZSBvcmlnaW5hbCBjbGllbnQgdG8gZ2l2ZSB0aGUgb3JpZ2luYWwg
Y2xpZW50IGEgY2hhbmNlIHRvIGRlYWwgd2l0aCB0aGUgaXNzdWVzIHN1cnJvdW5kaW5nIHRoZSBj
b2xsaXNpb24uJm5ic3A7DQo8L3NwYW4+PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9y
bWFsIiBzdHlsZT0ibWFyZ2luLWJvdHRvbToxMi4wcHQiPlJvYjogWWVzLCBPSy48YnI+DQo8YnI+
DQo8YnI+DQo8bzpwPjwvbzpwPjwvcD4NCjxwPjYpIEVwaGVtZXJhbC1SRVEtMTQsIHBhZ2UgNzo8
YnI+DQpJIHdvdWxkIHN1Z2dlc3QgcG90ZW50aWFsbHkgcmV3b3JkaW5nIHRoaXMgdG8gbWFrZSB0
aGUgcmVxdWlyZW1lbnQgYW5kIGxlZXdheSBvbiB0aGUgc29sdXRpb24gbW9yZSBleHBsaWNpdC4N
CjxvOnA+PC9vOnA+PC9wPg0KPGRpdiBzdHlsZT0iYm9yZGVyOnNvbGlkICNDQ0NDQ0MgMS4wcHQ7
cGFkZGluZzo4LjBwdCA4LjBwdCA4LjBwdCA4LjBwdCI+DQo8cHJlIHN0eWxlPSJtYXJnaW4tYm90
dG9tOjcuOXB0O2JhY2tncm91bmQ6I0ZGRkRGNTt3b3JkLWJyZWFrOmJyZWFrLWFsbDtib3gtc2l6
aW5nOiBib3JkZXItYm94O3dvcmQtd3JhcDogYnJlYWstd29yZDtib3JkZXItcmFkaXVzOiA0cHg7
b3JwaGFuczogYXV0bzt0ZXh0LWFsaWduOnN0YXJ0O3dpZG93czogMTstd2Via2l0LXRleHQtc3Ry
b2tlLXdpZHRoOiAwcHg7b3ZlcmZsb3c6YXV0bzt3b3JkLXNwYWNpbmc6MHB4Ij48c3BhbiBzdHls
ZT0iZm9udC1zaXplOjEwLjVwdCI+Jm5ic3A7Jm5ic3A7Jm5ic3A7RXBoZW1lcmFsLVJFUS0xNDog
SWYgdHdvIGNsaWVudHMgaGF2ZSB0aGUgc2FtZSBwcmlvcml0eSwgdGhlPC9zcGFuPjxvOnA+PC9v
OnA+PC9wcmU+DQo8cHJlIHN0eWxlPSJtYXJnaW4tYm90dG9tOjcuOXB0O2JhY2tncm91bmQ6I0ZG
RkRGNTt3b3JkLWJyZWFrOmJyZWFrLWFsbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMC41cHQi
PiZuYnNwOyZuYnNwOyBhcmNoaXRlY3R1cmUgc2F5cyB0aGUgZmlyc3Qgb25lIHdpbnMuJm5ic3A7
IFRoZSBJMlJTIHByb3RvY29sIGhhcyB0aGlzPC9zcGFuPjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJl
IHN0eWxlPSJtYXJnaW4tYm90dG9tOjcuOXB0O2JhY2tncm91bmQ6I0ZGRkRGNTt3b3JkLWJyZWFr
OmJyZWFrLWFsbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMC41cHQiPiZuYnNwOyZuYnNwOyBy
ZXF1aXJlbWVudCB0byBwcmV2ZW50IG9zY2lsbGF0aW9ucyBiZXR3ZWVuIGNsaWVudHMuJm5ic3A7
IElmIG9uZSB1c2VzIHRoZTwvc3Bhbj48bzpwPjwvbzpwPjwvcHJlPg0KPHByZSBzdHlsZT0ibWFy
Z2luLWJvdHRvbTo3LjlwdDtiYWNrZ3JvdW5kOiNGRkZERjU7d29yZC1icmVhazpicmVhay1hbGwi
PjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTAuNXB0Ij4mbmJzcDsmbmJzcDsgbGFzdCB3aW5zIHNj
ZW5hcmlvLCB5b3UgbWF5IG9zY2lsbGF0ZS4mbmJzcDsgVGhhdCB3YXMgb3VyIG9waW5pb24sIGJ1
dCBhPC9zcGFuPjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlIHN0eWxlPSJtYXJnaW4tYm90dG9tOjcu
OXB0O2JhY2tncm91bmQ6I0ZGRkRGNTt3b3JkLWJyZWFrOmJyZWFrLWFsbCI+PHNwYW4gc3R5bGU9
ImZvbnQtc2l6ZToxMC41cHQiPiZuYnNwOyZuYnNwOyBkZXNpZ24gd2hpY2ggcHJldmVudHMgb3Nj
aWxsYXRpb24gaXMgdGhlIGtleSBwb2ludC48L3NwYW4+PG86cD48L286cD48L3ByZT4NCjwvZGl2
Pg0KPHA+UHJvcG9zZWQgYWx0ZXJuYXRpdmUgdGV4dDo8bzpwPjwvbzpwPjwvcD4NCjxkaXYgc3R5
bGU9ImJvcmRlcjpzb2xpZCAjQ0NDQ0NDIDEuMHB0O3BhZGRpbmc6OC4wcHQgOC4wcHQgOC4wcHQg
OC4wcHQiPg0KPHByZSBzdHlsZT0ibWFyZ2luLWJvdHRvbTo3LjlwdDtiYWNrZ3JvdW5kOiNGRkZE
RjU7d29yZC1icmVhazpicmVhay1hbGw7Ym94LXNpemluZzogYm9yZGVyLWJveDt3b3JkLXdyYXA6
IGJyZWFrLXdvcmQ7Ym9yZGVyLXJhZGl1czogNHB4O29ycGhhbnM6IGF1dG87dGV4dC1hbGlnbjpz
dGFydDt3aWRvd3M6IDE7LXdlYmtpdC10ZXh0LXN0cm9rZS13aWR0aDogMHB4O292ZXJmbG93OmF1
dG87d29yZC1zcGFjaW5nOjBweCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMC41cHQiPiZuYnNw
OyZuYnNwOyBFcGhlbWVyYWwtUkVRLTE0OiBBIGRldGVybWluaXN0aWMgY29uZmxpY3QgcmVzb2x1
dGlvbiBtZWNoYW5pc20gTVVTVDwvc3Bhbj48bzpwPjwvbzpwPjwvcHJlPg0KPHByZSBzdHlsZT0i
bWFyZ2luLWJvdHRvbTo3LjlwdDtiYWNrZ3JvdW5kOiNGRkZERjU7d29yZC1icmVhazpicmVhay1h
bGwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTAuNXB0Ij4mbmJzcDsmbmJzcDsgYmUgcHJvdmlk
ZWQgdG8gaGFuZGxlIHRoZSBlcnJvciBzY2VuYXJpbyB0aGF0IHR3byBjbGllbnRzLCB3aXRoPC9z
cGFuPjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlIHN0eWxlPSJtYXJnaW4tYm90dG9tOjcuOXB0O2Jh
Y2tncm91bmQ6I0ZGRkRGNTt3b3JkLWJyZWFrOmJyZWFrLWFsbCI+PHNwYW4gc3R5bGU9ImZvbnQt
c2l6ZToxMC41cHQiPiZuYnNwOyZuYnNwOyB0aGUgc2FtZSBwcmlvcml0eSwgdXBkYXRlIHRoZSBz
YW1lIGNvbmZpZ3VyYXRpb24gZGF0YSBub2RlLiZuYnNwOyBUaGUgSTJSUzwvc3Bhbj48bzpwPjwv
bzpwPjwvcHJlPg0KPHByZSBzdHlsZT0ibWFyZ2luLWJvdHRvbTo3LjlwdDtiYWNrZ3JvdW5kOiNG
RkZERjU7d29yZC1icmVhazpicmVhay1hbGwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTAuNXB0
Ij4mbmJzcDsmbmJzcDsgYXJjaGl0ZWN0dXJlIGdpdmVzIG9uZSB3YXkgdGhhdCB0aGlzIGNvdWxk
IGJlIGFjaGlldmVkLCBieTwvc3Bhbj48bzpwPjwvbzpwPjwvcHJlPg0KPHByZSBzdHlsZT0ibWFy
Z2luLWJvdHRvbTo3LjlwdDtiYWNrZ3JvdW5kOiNGRkZERjU7d29yZC1icmVhazpicmVhay1hbGwi
PjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTAuNXB0Ij4mbmJzcDsmbmJzcDsgc3BlY2lmeWluZyB0
aGF0IHRoZSBmaXJzdCB1cGRhdGUgd2lucy4mbmJzcDsgT3RoZXIgc29sdXRpb25zLCB0aGF0IHBy
ZXZlbnQ8L3NwYW4+PG86cD48L286cD48L3ByZT4NCjxwcmUgc3R5bGU9Im1hcmdpbi1ib3R0b206
Ny45cHQ7YmFja2dyb3VuZDojRkZGREY1O3dvcmQtYnJlYWs6YnJlYWstYWxsIj48c3BhbiBzdHls
ZT0iZm9udC1zaXplOjEwLjVwdCI+Jm5ic3A7Jm5ic3A7IG9zY2lsbGF0aW9uIG9mIHRoZSBjb25m
aWcgZGF0YSBub2RlLCBhcmUgYWxzbyBhY2NlcHRhYmxlLjwvc3Bhbj48bzpwPjwvbzpwPjwvcHJl
Pg0KPC9kaXY+DQo8cD48c3BhbiBzdHlsZT0iY29sb3I6IzFGNDk3RCI+U3VlOiBBY2NlcHRlZCDi
gJMgdGhpcyB3aWxsIGJlIHJlbGVhc2VkIHdpdGggdmVyc2lvbiAyLg0KPC9zcGFuPjxvOnA+PC9v
OnA+PC9wPg0KPHA+Q29zbWV0aWMgY29tbWVudHM6PG86cD48L286cD48L3A+DQo8cD43KSBTZWN0
aW9uIDEuIEludHJvZHVjdGlvbi4mbmJzcDsgVGhlIHJlcXVpcmVtZW50cyBhcmUgbm8gbG9uZ2Vy
IHZlcnNpb24gc3BlY2lmaWMsIGhlbmNlIHBlcmhhcHMgdXBkYXRlIHRoZSBmb2xsb3dpbmcgdGV4
dCBmcm9tOjxvOnA+PC9vOnA+PC9wPg0KPGRpdiBzdHlsZT0iYm9yZGVyOnNvbGlkICNDQ0NDQ0Mg
MS4wcHQ7cGFkZGluZzo4LjBwdCA4LjBwdCA4LjBwdCA4LjBwdCI+DQo8cHJlIHN0eWxlPSJtYXJn
aW4tYm90dG9tOjcuOXB0O2JhY2tncm91bmQ6I0ZGRkRGNTt3b3JkLWJyZWFrOmJyZWFrLWFsbDti
b3gtc2l6aW5nOiBib3JkZXItYm94O3dvcmQtd3JhcDogYnJlYWstd29yZDtib3JkZXItcmFkaXVz
OiA0cHg7b3JwaGFuczogYXV0bzt0ZXh0LWFsaWduOnN0YXJ0O3dpZG93czogMTstd2Via2l0LXRl
eHQtc3Ryb2tlLXdpZHRoOiAwcHg7b3ZlcmZsb3c6YXV0bzt3b3JkLXNwYWNpbmc6MHB4Ij48c3Bh
biBzdHlsZT0iZm9udC1zaXplOjEwLjVwdCI+Jm5ic3A7PC9zcGFuPjxvOnA+PC9vOnA+PC9wcmU+
DQo8cHJlIHN0eWxlPSJtYXJnaW4tYm90dG9tOjcuOXB0O2JhY2tncm91bmQ6I0ZGRkRGNTt3b3Jk
LWJyZWFrOmJyZWFrLWFsbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMC41cHQiPiZuYnNwOzwv
c3Bhbj48bzpwPjwvbzpwPjwvcHJlPg0KPHByZSBzdHlsZT0ibWFyZ2luLWJvdHRvbTo3LjlwdDti
YWNrZ3JvdW5kOiNGRkZERjU7d29yZC1icmVhazpicmVhay1hbGwiPjxzcGFuIHN0eWxlPSJmb250
LXNpemU6MTAuNXB0Ij4mbmJzcDsmbmJzcDsgMS4mbmJzcDsgc2VsZWN0IGZlYXR1cmVzIGZyb20g
WUFORywgTkVUQ09ORiwgYW5kIFJFU1RDT05GIHBlciB2ZXJzaW9uIG9mPC9zcGFuPjxvOnA+PC9v
OnA+PC9wcmU+DQo8cHJlIHN0eWxlPSJtYXJnaW4tYm90dG9tOjcuOXB0O2JhY2tncm91bmQ6I0ZG
RkRGNTt3b3JkLWJyZWFrOmJyZWFrLWFsbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMC41cHQi
PiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB0aGUgSTJSUyBwcm90b2NvbCAo
U2VlIHNlY3Rpb25zIDQsIDUsIGFuZCA2KTwvc3Bhbj48bzpwPjwvbzpwPjwvcHJlPg0KPHByZSBz
dHlsZT0ibWFyZ2luLWJvdHRvbTo3LjlwdDtiYWNrZ3JvdW5kOiNGRkZERjU7d29yZC1icmVhazpi
cmVhay1hbGwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTAuNXB0Ij4mbmJzcDs8L3NwYW4+PG86
cD48L286cD48L3ByZT4NCjxwcmUgc3R5bGU9Im1hcmdpbi1ib3R0b206Ny45cHQ7YmFja2dyb3Vu
ZDojRkZGREY1O3dvcmQtYnJlYWs6YnJlYWstYWxsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjEw
LjVwdCI+Jm5ic3A7Jm5ic3A7IDIuJm5ic3A7IHByb3Bvc2UgYWRkaXRpb25zIHRvIFlBTkcsIE5F
VENPTkYsIGFuZCBSRVNUQ09ORiBwZXIgdmVyc2lvbiBvZjwvc3Bhbj48bzpwPjwvbzpwPjwvcHJl
Pg0KPHByZSBzdHlsZT0ibWFyZ2luLWJvdHRvbTo3LjlwdDtiYWNrZ3JvdW5kOiNGRkZERjU7d29y
ZC1icmVhazpicmVhay1hbGwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTAuNXB0Ij4mbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgdGhlIEkyUlMgcHJvdG9jb2wgZm9yIGtleSBm
dW5jdGlvbnMgKGVwaGVtZXJhbCBzdGF0ZSwgcHJvdG9jb2w8L3NwYW4+PG86cD48L286cD48L3By
ZT4NCjxwcmUgc3R5bGU9Im1hcmdpbi1ib3R0b206Ny45cHQ7YmFja2dyb3VuZDojRkZGREY1O3dv
cmQtYnJlYWs6YnJlYWstYWxsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjEwLjVwdCI+Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHNlY3VyaXR5LCBwdWJsaWNhdGlvbi9zdWJz
Y3JpcHRpb24gc2VydmljZSwgdHJhY2VhYmlsaXR5KSw8L3NwYW4+PG86cD48L286cD48L3ByZT4N
CjwvZGl2Pg0KPHA+dG86PG86cD48L286cD48L3A+DQo8ZGl2IHN0eWxlPSJib3JkZXI6c29saWQg
I0NDQ0NDQyAxLjBwdDtwYWRkaW5nOjguMHB0IDguMHB0IDguMHB0IDguMHB0Ij4NCjxwcmUgc3R5
bGU9Im1hcmdpbi1ib3R0b206Ny45cHQ7YmFja2dyb3VuZDojRkZGREY1O3dvcmQtYnJlYWs6YnJl
YWstYWxsO2JveC1zaXppbmc6IGJvcmRlci1ib3g7d29yZC13cmFwOiBicmVhay13b3JkO2JvcmRl
ci1yYWRpdXM6IDRweDtvcnBoYW5zOiBhdXRvO3RleHQtYWxpZ246c3RhcnQ7d2lkb3dzOiAxOy13
ZWJraXQtdGV4dC1zdHJva2Utd2lkdGg6IDBweDtvdmVyZmxvdzphdXRvO3dvcmQtc3BhY2luZzow
cHgiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTAuNXB0Ij4mbmJzcDsmbmJzcDsgMS4mbmJzcDsg
c2VsZWN0IGZlYXR1cmVzIGZyb20gWUFORywgTkVUQ09ORiwgYW5kIFJFU1RDT05GIGZvciB0aGUg
aW5pdGlhbDwvc3Bhbj48bzpwPjwvbzpwPjwvcHJlPg0KPHByZSBzdHlsZT0ibWFyZ2luLWJvdHRv
bTo3LjlwdDtiYWNrZ3JvdW5kOiNGRkZERjU7d29yZC1icmVhazpicmVhay1hbGwiPjxzcGFuIHN0
eWxlPSJmb250LXNpemU6MTAuNXB0Ij4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsgSTJSUyBwcm90b2NvbCB2ZXJzaW9uIChTZWUgc2VjdGlvbnMgNCwgNSwgYW5kIDYpLjwvc3Bh
bj48bzpwPjwvbzpwPjwvcHJlPg0KPHByZSBzdHlsZT0ibWFyZ2luLWJvdHRvbTo3LjlwdDtiYWNr
Z3JvdW5kOiNGRkZERjU7d29yZC1icmVhazpicmVhay1hbGwiPjxzcGFuIHN0eWxlPSJmb250LXNp
emU6MTAuNXB0Ij4mbmJzcDs8L3NwYW4+PG86cD48L286cD48L3ByZT4NCjxwcmUgc3R5bGU9Im1h
cmdpbi1ib3R0b206Ny45cHQ7YmFja2dyb3VuZDojRkZGREY1O3dvcmQtYnJlYWs6YnJlYWstYWxs
Ij48c3BhbiBzdHlsZT0iZm9udC1zaXplOjEwLjVwdCI+Jm5ic3A7Jm5ic3A7IDIuJm5ic3A7IHBy
b3Bvc2UgYWRkaXRpb25zIHRvIFlBTkcsIE5FVENPTkYsIGFuZCBSRVNUQ09ORiBmb3IgdGhlIGlu
aXRpYWw8L3NwYW4+PG86cD48L286cD48L3ByZT4NCjxwcmUgc3R5bGU9Im1hcmdpbi1ib3R0b206
Ny45cHQ7YmFja2dyb3VuZDojRkZGREY1O3dvcmQtYnJlYWs6YnJlYWstYWxsIj48c3BhbiBzdHls
ZT0iZm9udC1zaXplOjEwLjVwdCI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
IEkyUlMgcHJvdG9jb2wgdmVyc2lvbiBmb3Iga2V5IGZ1bmN0aW9ucyAoZXBoZW1lcmFsIHN0YXRl
LCBwcm90b2NvbDwvc3Bhbj48bzpwPjwvbzpwPjwvcHJlPg0KPHByZSBzdHlsZT0ibWFyZ2luLWJv
dHRvbTo3LjlwdDtiYWNrZ3JvdW5kOiNGRkZERjU7d29yZC1icmVhazpicmVhay1hbGwiPjxzcGFu
IHN0eWxlPSJmb250LXNpemU6MTAuNXB0Ij4mbmJzcDsmbmJzcDsmbmJzcDsgJm5ic3A7Jm5ic3A7
Jm5ic3A7c2VjdXJpdHksIHB1YmxpY2F0aW9uL3N1YnNjcmlwdGlvbiBzZXJ2aWNlLCB0cmFjZWFi
aWxpdHkpLjwvc3Bhbj48bzpwPjwvbzpwPjwvcHJlPg0KPC9kaXY+DQo8cD48c3BhbiBzdHlsZT0i
Y29sb3I6IzFGNDk3RCI+U3VlOiBXZSB3aWxsIHByb2JhYmx5IGhhdmUgYSBzdWJzZXF1ZW50IHZl
cnNpb24gb2YgdGhlIEkyUlMgcHJvdG9jb2wuICZuYnNwO0kgd291bGQgcHJlZmVyIHRvIGxlYXZl
IHRoaXMgYXMgc3RhdGVkIHNvIHRoaXMgaXMgY2xlYXIuICZuYnNwOzwvc3Bhbj48bzpwPjwvbzpw
PjwvcD4NCjxwPjgpIFNlY3Rpb24gMS4gaW50cm9kdWN0aW9uLiZuYnNwOyBJJ20gbm90IHN1cmUg
dGhhdCB0aGlzIDNyZCBidWxsZXQgaXMgcmVsZXZhbnQsIGFuZCBwb3NzaWJseSBjb3VsZCBiZSBy
ZW1vdmVkLCBhbHRob3VnaCBlcXVhbGx5IGl0IGRvZXNuJ3Qgc2VlbSB0byBkbyBhbnkgaGFybTo8
bzpwPjwvbzpwPjwvcD4NCjxkaXYgc3R5bGU9ImJvcmRlcjpzb2xpZCAjQ0NDQ0NDIDEuMHB0O3Bh
ZGRpbmc6OC4wcHQgOC4wcHQgOC4wcHQgOC4wcHQiPg0KPHByZSBzdHlsZT0ibWFyZ2luLWJvdHRv
bTo3LjlwdDtiYWNrZ3JvdW5kOiNGRkZERjU7d29yZC1icmVhazpicmVhay1hbGw7Ym94LXNpemlu
ZzogYm9yZGVyLWJveDt3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7Ym9yZGVyLXJhZGl1czogNHB4O29y
cGhhbnM6IGF1dG87dGV4dC1hbGlnbjpzdGFydDt3aWRvd3M6IDE7LXdlYmtpdC10ZXh0LXN0cm9r
ZS13aWR0aDogMHB4O292ZXJmbG93OmF1dG87d29yZC1zcGFjaW5nOjBweCI+PHNwYW4gc3R5bGU9
ImZvbnQtc2l6ZToxMC41cHQiPiZuYnNwOyZuYnNwOyAzLiZuYnNwOyBzdWdnZXN0IHByb3RvY29s
IHN0cmF3bWFuIGFzIGlkZWFzIGZvciB0aGUgTkVUQ09ORiwgUkVTVENPTkYsIGFuZDwvc3Bhbj48
bzpwPjwvbzpwPjwvcHJlPg0KPHByZSBzdHlsZT0ibWFyZ2luLWJvdHRvbTo3LjlwdDtiYWNrZ3Jv
dW5kOiNGRkZERjU7d29yZC1icmVhazpicmVhay1hbGwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6
MTAuNXB0Ij4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgWUFORyBjaGFuZ2Vz
Ljwvc3Bhbj48bzpwPjwvbzpwPjwvcHJlPg0KPC9kaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48
c3BhbiBzdHlsZT0iY29sb3I6IzFGNDk3RCI+U3VlOiBUaGVyZSBpcyBhIHByb3RvY29sIHN0cmF3
bWFuIHRoYXQgd2lsbCBiZSBzdWJtaXR0ZWQgYmFzZWQgb24gZXhwZXJpZW5jZS4mbmJzcDsNCjwv
c3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJm
b250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fu
cy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj4mbmJzcDs8L3NwYW4+PG86cD48L286cD48L3A+
DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48YnI+DQo5KSBUaGUgZG9jdW1lbnQgdXNlcyBhIG1peCBv
ZiAmcXVvdDtZYW5nJnF1b3Q7IGFuZCAmcXVvdDtZQU5HJnF1b3Q7LCBwcm9iYWJseSBzaG91bGQg
anVzdCB1c2UgJnF1b3Q7WUFORyZxdW90Oy48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29O
b3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0Nh
bGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj5GaXhlZCBp
biB2ZXJzaW9uIDEyLg0KPC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHA+MTApIFNlY3Rpb24gMy4g
RXBoZW1lcmFsIFN0YXRlIFJlcXVpcmVtZW50czo8bzpwPjwvbzpwPjwvcD4NCjxwPjxzcGFuIHN0
eWxlPSJjb2xvcjojMUY0OTdEIj4mZ3Q7PC9zcGFuPlRoZSBkb2N1bWVudCByZWZlcnMgdG8gJnF1
b3Q7ZXBoZW1lcmFsIGNvbmZpZ3VyZWQgc3RhdGUmcXVvdDsgaGVyZSwgYnV0IGVsc2V3aGVyZSAo
ZS5nLiAzLjQpICZxdW90O2VwaGVtZXJhbCBjb25maWd1cmF0aW9uJnF1b3Q7IG9yICZxdW90O2Vw
aGVtZXJhbCBjb25maWd1cmF0aW9uIHN0YXRlJnF1b3Q7IGlzIHVzZWQuJm5ic3A7IEl0IG1pZ2h0
IGJlIGhlbHBmdWwgZm9yIHVzZSBvZiB0aGVzZSB0ZXJtcyB0byBiZSBjb25zaXN0ZW50LCBJIHdv
dWxkDQogc3VnZ2VzdCAmcXVvdDtlcGhlbWVyYWwgY29uZmlndXJhdGlvbiZxdW90OyBpcyA8c3Bh
biBzdHlsZT0iY29sb3I6IzFGNDk3RCI+Jmd0Ozwvc3Bhbj5zdWZmaWNpZW50LjxvOnA+PC9vOnA+
PC9wPg0KPHA+PHNwYW4gc3R5bGU9ImNvbG9yOiMxRjQ5N0QiPlN1ZTogRXBoZW1lcmFsIHN0YXRl
IGlzIGRlZmluZWQgYXMgZXBoZW1lcmFsIGNvbmZpZ3VyYXRpb24gc3RhdGUgYW5kIG9wZXJhdGlv
bmFsIHN0YXRlIGluIHRoZQ0KPC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05v
cm1hbCIgc3R5bGU9Im1hcmdpbi1ib3R0b206MTIuMHB0Ij5Sb2I6IEl0IHdhcyBvbmx5IGEgbWlu
b3Igbml0LCBJIHdhcyBzdWdnZXN0aW5nIGNvbnNpc3RlbmN5IG9mIHRoZSB0ZXJtLCBwZXJoYXBz
IGNoYW5nZSAmcXVvdDtlcGhlbWVyYWwgY29uZmlndXJhdGlvbiZxdW90O2FuZCAmcXVvdDtlcGhl
bWVyYWwgY29uZmlndXJhdGlvbiBzdGF0ZSZxdW90OyZuYnNwOyB0byAmcXVvdDtlcGhlbWVyYWwg
Y29uZmlndXJlZCBzdGF0ZSZxdW90Oy48YnI+DQo8YnI+DQpUaGFua3MsPGJyPg0KUm9iPGJyPg0K
PGJyPg0KPG86cD48L286cD48L3A+DQo8aDIgc3R5bGU9Im1zby1saW5lLWhlaWdodC1hbHQ6MHB0
Ij48YSBuYW1lPSJzZWN0aW9uLTMiPjwvYT48YSBocmVmPSJodHRwczovL3Rvb2xzLmlldGYub3Jn
L2h0bWwvZHJhZnQtaWV0Zi1pMnJzLWVwaGVtZXJhbC1zdGF0ZS0xMSNzZWN0aW9uLTMiPjxzcGFu
IHN0eWxlPSJmb250LXNpemU6MTAuMHB0Ij4zPC9zcGFuPjwvYT48c3BhbiBzdHlsZT0iZm9udC1z
aXplOjEwLjBwdDtmb250LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyBcO2NvbG9yXDpibGFjayZx
dW90OyI+LiZuYnNwOw0KIEVwaGVtZXJhbCBTdGF0ZSBSZXF1aXJlbWVudHM8L3NwYW4+PG86cD48
L286cD48L2gyPg0KPHByZT4mbmJzcDs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4mbmJzcDs8bzpw
PjwvbzpwPjwvcHJlPg0KPHByZT4mbmJzcDsmbmJzcDsgSW4gcmVxdWlyZW1lbnRzIEVwaGVtZXJh
bC1SRVEtMDEgdG8gRXBoZW1lcmFsLTA1LCBFcGhlbWVyYWwgc3RhdGUgaXM8bzpwPjwvbzpwPjwv
cHJlPg0KPHByZT4gJm5ic3A7Jm5ic3A7ZGVmaW5lZCBhcyBwb3RlbnRpYWxseSBpbmNsdWRpbmcg
Ym90aCBlcGhlbWVyYWwgY29uZmlndXJlZCBzdGF0ZSBhbmQ8bzpwPjwvbzpwPjwvcHJlPg0KPHBy
ZT4mbmJzcDsmbmJzcDsgb3BlcmF0aW9uYWwgc3RhdGUuPG86cD48L286cD48L3ByZT4NCjxwPjEx
KSBFcGhlbWVyYWwtUkVRLTEzLCBwYWdlIDc6PG86cD48L286cD48L3A+DQo8cD5NaW5vciBvbWlz
c2lvbiBpbiB0aGUgbGFzdCBzZW50ZW5jZS48bzpwPjwvbzpwPjwvcD4NCjxkaXYgc3R5bGU9ImJv
cmRlcjpzb2xpZCAjQ0NDQ0NDIDEuMHB0O3BhZGRpbmc6OC4wcHQgOC4wcHQgOC4wcHQgOC4wcHQi
Pg0KPHByZSBzdHlsZT0ibWFyZ2luLWJvdHRvbTo3LjlwdDtiYWNrZ3JvdW5kOiNGRkZERjU7d29y
ZC1icmVhazpicmVhay1hbGw7Ym94LXNpemluZzogYm9yZGVyLWJveDt3b3JkLXdyYXA6IGJyZWFr
LXdvcmQ7Ym9yZGVyLXJhZGl1czogNHB4O29ycGhhbnM6IGF1dG87dGV4dC1hbGlnbjpzdGFydDt3
aWRvd3M6IDE7LXdlYmtpdC10ZXh0LXN0cm9rZS13aWR0aDogMHB4O292ZXJmbG93OmF1dG87d29y
ZC1zcGFjaW5nOjBweCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMC41cHQiPiZuYnNwOyBFcGhl
bWVyYWwtUkVRLTEzOiBUaGUgcmVxdWlyZW1lbnQgdG8gc3VwcG9ydCBtdWx0aS1oZWFkZWQgY29u
dHJvbCBpczwvc3Bhbj48bzpwPjwvbzpwPjwvcHJlPg0KPHByZSBzdHlsZT0ibWFyZ2luLWJvdHRv
bTo3LjlwdDtiYWNrZ3JvdW5kOiNGRkZERjU7d29yZC1icmVhazpicmVhay1hbGwiPjxzcGFuIHN0
eWxlPSJmb250LXNpemU6MTAuNXB0Ij4mbmJzcDsmbmJzcDsgcmVxdWlyZWQgZm9yIGNvbGxpc2lv
bnMgYW5kIHRoZSBwcmlvcml0eSByZXNvbHV0aW9uIG9mIGNvbGxpc2lvbnMuPC9zcGFuPjxvOnA+
PC9vOnA+PC9wcmU+DQo8cHJlIHN0eWxlPSJtYXJnaW4tYm90dG9tOjcuOXB0O2JhY2tncm91bmQ6
I0ZGRkRGNTt3b3JkLWJyZWFrOmJyZWFrLWFsbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMC41
cHQiPiZuYnNwOyZuYnNwOyBNdWx0aS1oZWFkZWQgY29udHJvbCBpcyBub3QgdGllZCB0byBlcGhl
bWVyYWwgc3RhdGUuJm5ic3A7IEkyUlMgaXMgbm90PC9zcGFuPjxvOnA+PC9vOnA+PC9wcmU+DQo8
cHJlIHN0eWxlPSJtYXJnaW4tYm90dG9tOjcuOXB0O2JhY2tncm91bmQ6I0ZGRkRGNTt3b3JkLWJy
ZWFrOmJyZWFrLWFsbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMC41cHQiPiZuYnNwOyZuYnNw
OyBtYW5kYXRpbmcgaG93IEFBQSBzdXBwb3J0cyBwcmlvcml0eS4mbmJzcDsgTWVjaGFuaXNtcyB3
aGljaCBwcmV2ZW50PC9zcGFuPjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlIHN0eWxlPSJtYXJnaW4t
Ym90dG9tOjcuOXB0O2JhY2tncm91bmQ6I0ZGRkRGNTt3b3JkLWJyZWFrOmJyZWFrLWFsbCI+PHNw
YW4gc3R5bGU9ImZvbnQtc2l6ZToxMC41cHQiPiZuYnNwOyZuYnNwOyBjb2xsaXNpb25zIG9mIHR3
byBjbGllbnRzIHRyeWluZyB0aGUgc2FtZSBub2RlIG9mIGRhdGEgYXJlIHRoZSBmb2N1cy48L3Nw
YW4+PG86cD48L286cD48L3ByZT4NCjwvZGl2Pg0KPHA+UHJvcG9zZWQ6PG86cD48L286cD48L3A+
DQo8ZGl2IHN0eWxlPSJib3JkZXI6c29saWQgI0NDQ0NDQyAxLjBwdDtwYWRkaW5nOjguMHB0IDgu
MHB0IDguMHB0IDguMHB0Ij4NCjxwcmUgc3R5bGU9Im1hcmdpbi1ib3R0b206Ny45cHQ7YmFja2dy
b3VuZDojRkZGREY1O3dvcmQtYnJlYWs6YnJlYWstYWxsO2JveC1zaXppbmc6IGJvcmRlci1ib3g7
d29yZC13cmFwOiBicmVhay13b3JkO2JvcmRlci1yYWRpdXM6IDRweDtvcnBoYW5zOiBhdXRvO3Rl
eHQtYWxpZ246c3RhcnQ7d2lkb3dzOiAxOy13ZWJraXQtdGV4dC1zdHJva2Utd2lkdGg6IDBweDtv
dmVyZmxvdzphdXRvO3dvcmQtc3BhY2luZzowcHgiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTAu
NXB0Ij4mbmJzcDsgRXBoZW1lcmFsLVJFUS0xMzogVGhlIHJlcXVpcmVtZW50IHRvIHN1cHBvcnQg
bXVsdGktaGVhZGVkIGNvbnRyb2wgaXM8L3NwYW4+PG86cD48L286cD48L3ByZT4NCjxwcmUgc3R5
bGU9Im1hcmdpbi1ib3R0b206Ny45cHQ7YmFja2dyb3VuZDojRkZGREY1O3dvcmQtYnJlYWs6YnJl
YWstYWxsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjEwLjVwdCI+Jm5ic3A7Jm5ic3A7IHJlcXVp
cmVkIGZvciBjb2xsaXNpb25zIGFuZCB0aGUgcHJpb3JpdHkgcmVzb2x1dGlvbiBvZiBjb2xsaXNp
b25zLjwvc3Bhbj48bzpwPjwvbzpwPjwvcHJlPg0KPHByZSBzdHlsZT0ibWFyZ2luLWJvdHRvbTo3
LjlwdDtiYWNrZ3JvdW5kOiNGRkZERjU7d29yZC1icmVhazpicmVhay1hbGwiPjxzcGFuIHN0eWxl
PSJmb250LXNpemU6MTAuNXB0Ij4mbmJzcDsmbmJzcDsgTXVsdGktaGVhZGVkIGNvbnRyb2wgaXMg
bm90IHRpZWQgdG8gZXBoZW1lcmFsIHN0YXRlLiZuYnNwOyBJMlJTIGlzIG5vdDwvc3Bhbj48bzpw
PjwvbzpwPjwvcHJlPg0KPHByZSBzdHlsZT0ibWFyZ2luLWJvdHRvbTo3LjlwdDtiYWNrZ3JvdW5k
OiNGRkZERjU7d29yZC1icmVhazpicmVhay1hbGwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTAu
NXB0Ij4mbmJzcDsmbmJzcDsgbWFuZGF0aW5nIGhvdyBBQUEgc3VwcG9ydHMgcHJpb3JpdHkuJm5i
c3A7IE1lY2hhbmlzbXMgd2hpY2ggcHJldmVudDwvc3Bhbj48bzpwPjwvbzpwPjwvcHJlPg0KPHBy
ZSBzdHlsZT0ibWFyZ2luLWJvdHRvbTo3LjlwdDtiYWNrZ3JvdW5kOiNGRkZERjU7d29yZC1icmVh
azpicmVhay1hbGwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTAuNXB0Ij4mbmJzcDsmbmJzcDsg
Y29sbGlzaW9ucyBvZiB0d28gY2xpZW50cyB0cnlpbmcgdG8gbW9kaWZ5IHRoZSBzYW1lIG5vZGUg
b2YgZGF0YTwvc3Bhbj48bzpwPjwvbzpwPjwvcHJlPg0KPHByZSBzdHlsZT0ibWFyZ2luLWJvdHRv
bTo3LjlwdDtiYWNrZ3JvdW5kOiNGRkZERjU7d29yZC1icmVhazpicmVhay1hbGwiPjxzcGFuIHN0
eWxlPSJmb250LXNpemU6MTAuNXB0Ij4mbmJzcDsmbmJzcDsgYXJlIHRoZSBmb2N1cy48L3NwYW4+
PG86cD48L286cD48L3ByZT4NCjwvZGl2Pg0KPHA+PHNwYW4gc3R5bGU9ImNvbG9yOiMxRjQ5N0Qi
PlN1ZTogVGhhbmsgeW91LiZuYnNwOyBWZXJzaW9uIC0xMiB3aWxsIGhhdmUgdGhpcyBjaGFuZ2Uu
DQo8L3NwYW4+PG86cD48L286cD48L3A+DQo8cD48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBw
dDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7
Y29sb3I6IzFGNDk3RCI+Jm5ic3A7PC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHA+MTIpIEVwaGVt
ZXJhbC1SRVEtMTUsIHBhZ2UgNzo8YnI+DQpJIHdvdWxkIHN1Z2dlc3QgdGhhdCBpdCBtaWdodCBi
ZSBiZXR0ZXIgdG8gcmVmZXIgdG8gJnF1b3Q7RXBoZW1lcmFsIHN0YXRlJnF1b3Q7IHJhdGhlciB0
aGFuIHRoZSBJMlJTIGVwaGVtZXJhbCBkYXRhLXN0b3JlLjxvOnA+PC9vOnA+PC9wPg0KPGRpdiBz
dHlsZT0iYm9yZGVyOnNvbGlkICNDQ0NDQ0MgMS4wcHQ7cGFkZGluZzo4LjBwdCA4LjBwdCA4LjBw
dCA4LjBwdCI+DQo8cHJlIHN0eWxlPSJtYXJnaW4tYm90dG9tOjcuOXB0O2JhY2tncm91bmQ6I0ZG
RkRGNTt3b3JkLWJyZWFrOmJyZWFrLWFsbDtib3gtc2l6aW5nOiBib3JkZXItYm94O3dvcmQtd3Jh
cDogYnJlYWstd29yZDtib3JkZXItcmFkaXVzOiA0cHg7b3JwaGFuczogYXV0bzt0ZXh0LWFsaWdu
OnN0YXJ0O3dpZG93czogMTstd2Via2l0LXRleHQtc3Ryb2tlLXdpZHRoOiAwcHg7b3ZlcmZsb3c6
YXV0bzt3b3JkLXNwYWNpbmc6MHB4Ij48c3BhbiBzdHlsZT0iZm9udC1zaXplOjEwLjVwdCI+Jm5i
c3A7Jm5ic3A7IEVwaGVtZXJhbC1SRVEtMTU6IFNlY3Rpb24gNy45IG9mIHRoZSBbSS1ELmlldGYt
aTJycy1hcmNoaXRlY3R1cmVdPC9zcGFuPjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlIHN0eWxlPSJt
YXJnaW4tYm90dG9tOjcuOXB0O2JhY2tncm91bmQ6I0ZGRkRGNTt3b3JkLWJyZWFrOmJyZWFrLWFs
bCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMC41cHQiPiZuYnNwOyZuYnNwOyBzdGF0ZXMgdGhl
IEkyUlMgYXJjaGl0ZWN0dXJlIGRvZXMgbm90IGluY2x1ZGUgbXVsdGktbWVzc2FnZSBhdG9taWNp
dHk8L3NwYW4+PG86cD48L286cD48L3ByZT4NCjxwcmUgc3R5bGU9Im1hcmdpbi1ib3R0b206Ny45
cHQ7YmFja2dyb3VuZDojRkZGREY1O3dvcmQtYnJlYWs6YnJlYWstYWxsIj48c3BhbiBzdHlsZT0i
Zm9udC1zaXplOjEwLjVwdCI+Jm5ic3A7Jm5ic3A7IGFuZCByb2xsLWJhY2sgbWVjaGFuaXNtcy4m
bmJzcDsgSTJSUyBub3RlcyBtdWx0aXBsZSBvcGVyYXRpb25zIGluIG9uZSBvcjwvc3Bhbj48bzpw
PjwvbzpwPjwvcHJlPg0KPHByZSBzdHlsZT0ibWFyZ2luLWJvdHRvbTo3LjlwdDtiYWNrZ3JvdW5k
OiNGRkZERjU7d29yZC1icmVhazpicmVhay1hbGwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTAu
NXB0Ij4mbmJzcDsmbmJzcDsgbW9yZSBtZXNzYWdlcyBoYW5kbGluZyBjYW4gaGFuZGxlIGVycm9y
cyB3aXRoaW4gdGhlIHNldCBvZiBvcGVyYXRpb25zPC9zcGFuPjxvOnA+PC9vOnA+PC9wcmU+DQo8
cHJlIHN0eWxlPSJtYXJnaW4tYm90dG9tOjcuOXB0O2JhY2tncm91bmQ6I0ZGRkRGNTt3b3JkLWJy
ZWFrOmJyZWFrLWFsbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMC41cHQiPiZuYnNwOyZuYnNw
OyBpbiBtYW55IHdheXMuJm5ic3A7IE5vIG11bHRpLW1lc3NhZ2UgY29tbWFuZHMgU0hPVUxEIGNh
dXNlIGVycm9ycyB0byBiZTwvc3Bhbj48bzpwPjwvbzpwPjwvcHJlPg0KPHByZSBzdHlsZT0ibWFy
Z2luLWJvdHRvbTo3LjlwdDtiYWNrZ3JvdW5kOiNGRkZERjU7d29yZC1icmVhazpicmVhay1hbGwi
PjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTAuNXB0Ij4mbmJzcDsmbmJzcDsgaW5zZXJ0ZWQgaW50
byB0aGUgSTJSUyBlcGhlbWVyYWwgZGF0YS1zdG9yZS48L3NwYW4+PG86cD48L286cD48L3ByZT4N
CjwvZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1hcmdpbi1ib3R0b206MTIuMHB0
Ij5Qcm9wb3NlZDo8YnI+DQo8YnI+DQo8bzpwPjwvbzpwPjwvcD4NCjxkaXYgc3R5bGU9ImJvcmRl
cjpzb2xpZCAjQ0NDQ0NDIDEuMHB0O3BhZGRpbmc6OC4wcHQgOC4wcHQgOC4wcHQgOC4wcHQiPg0K
PHByZSBzdHlsZT0ibWFyZ2luLWJvdHRvbTo3LjlwdDtiYWNrZ3JvdW5kOiNGRkZERjU7d29yZC1i
cmVhazpicmVhay1hbGwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTAuNXB0Ij4mbmJzcDsmbmJz
cDsgRXBoZW1lcmFsLVJFUS0xNTogU2VjdGlvbiA3Ljkgb2YgdGhlIFtJLUQuaWV0Zi1pMnJzLWFy
Y2hpdGVjdHVyZV08L3NwYW4+PG86cD48L286cD48L3ByZT4NCjxwcmUgc3R5bGU9Im1hcmdpbi1i
b3R0b206Ny45cHQ7YmFja2dyb3VuZDojRkZGREY1O3dvcmQtYnJlYWs6YnJlYWstYWxsIj48c3Bh
biBzdHlsZT0iZm9udC1zaXplOjEwLjVwdCI+Jm5ic3A7Jm5ic3A7IHN0YXRlcyB0aGUgSTJSUyBh
cmNoaXRlY3R1cmUgZG9lcyBub3QgaW5jbHVkZSBtdWx0aS1tZXNzYWdlIGF0b21pY2l0eTwvc3Bh
bj48bzpwPjwvbzpwPjwvcHJlPg0KPHByZSBzdHlsZT0ibWFyZ2luLWJvdHRvbTo3LjlwdDtiYWNr
Z3JvdW5kOiNGRkZERjU7d29yZC1icmVhazpicmVhay1hbGwiPjxzcGFuIHN0eWxlPSJmb250LXNp
emU6MTAuNXB0Ij4mbmJzcDsmbmJzcDsgYW5kIHJvbGwtYmFjayBtZWNoYW5pc21zLiZuYnNwOyBJ
MlJTIG5vdGVzIG11bHRpcGxlIG9wZXJhdGlvbnMgaW4gb25lIG9yPC9zcGFuPjxvOnA+PC9vOnA+
PC9wcmU+DQo8cHJlIHN0eWxlPSJtYXJnaW4tYm90dG9tOjcuOXB0O2JhY2tncm91bmQ6I0ZGRkRG
NTt3b3JkLWJyZWFrOmJyZWFrLWFsbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMC41cHQiPiZu
YnNwOyZuYnNwOyBtb3JlIG1lc3NhZ2VzIGhhbmRsaW5nIGNhbiBoYW5kbGUgZXJyb3JzIHdpdGhp
biB0aGUgc2V0IG9mIG9wZXJhdGlvbnM8L3NwYW4+PG86cD48L286cD48L3ByZT4NCjxwcmUgc3R5
bGU9Im1hcmdpbi1ib3R0b206Ny45cHQ7YmFja2dyb3VuZDojRkZGREY1O3dvcmQtYnJlYWs6YnJl
YWstYWxsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjEwLjVwdCI+Jm5ic3A7Jm5ic3A7IGluIG1h
bnkgd2F5cy4mbmJzcDsgTm8gbXVsdGktbWVzc2FnZSBjb21tYW5kcyBTSE9VTEQgY2F1c2UgZXJy
b3JzIHRvIGJlPC9zcGFuPjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlIHN0eWxlPSJtYXJnaW4tYm90
dG9tOjcuOXB0O2JhY2tncm91bmQ6I0ZGRkRGNTt3b3JkLWJyZWFrOmJyZWFrLWFsbCI+PHNwYW4g
c3R5bGU9ImZvbnQtc2l6ZToxMC41cHQiPiZuYnNwOyZuYnNwOyBpbnNlcnRlZCBpbnRvIHRoZSBl
cGhlbWVyYWwgc3RhdGUuPC9zcGFuPjxvOnA+PC9vOnA+PC9wcmU+DQo8L2Rpdj4NCjxwIGNsYXNz
PSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJjb2xvcjojMUY0OTdEIj4mbmJzcDs8L3NwYW4+PG86
cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXpl
OjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYm
cXVvdDs7Y29sb3I6IzFGNDk3RCI+QWNjZXB0ZWQgY2hhbmdlIGZvciAtMTUuDQo8L3NwYW4+PG86
cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXpl
OjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYm
cXVvdDs7Y29sb3I6IzFGNDk3RCI+Jm5ic3A7PC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHA+VGhh
bmtzLDxicj4NClJvYjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PG86cD4m
bmJzcDs8L286cD48L3A+DQo8L2Rpdj4NCjwvZGl2Pg0KPC9ib2R5Pg0KPC9odG1sPg0K

--_000_da139b3fdb4a4b54950459e810fcbb7bXCHRTP013ciscocom_--


From nobody Thu Jun 30 12:13:11 2016
Return-Path: <shares@ndzh.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 7B32012D5D5 for <i2rs@ietfa.amsl.com>; Thu, 30 Jun 2016 12:13:09 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.749
X-Spam-Level: *
X-Spam-Status: No, score=1.749 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, HTML_MESSAGE=0.001, RDNS_NONE=0.793, T_KAM_HTML_FONT_INVALID=0.01] autolearn=no autolearn_force=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 lvwVcf1dZNcd for <i2rs@ietfa.amsl.com>; Thu, 30 Jun 2016 12:13:05 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id B822A12D9DB for <i2rs@ietf.org>; Thu, 30 Jun 2016 12:13:04 -0700 (PDT)
X-Default-Received-SPF: pass (skip=forwardok (res=PASS)) x-ip-name=174.124.165.235; 
From: "Susan Hares" <shares@ndzh.com>
To: "'Eric Voit \(evoit\)'" <evoit@cisco.com>
References: <4f70e94d-f73b-73a7-c41b-9ab5ffeeda6f@cisco.com> <4a5201d1d2ea$9eef05e0$dccd11a0$@ndzh.com> <33da1b11-f55a-b1ac-2b44-d376ccf4dd9f@cisco.com> <4acf01d1d2f0$09221e70$1b665b50$@ndzh.com> <da139b3fdb4a4b54950459e810fcbb7b@XCH-RTP-013.cisco.com>
In-Reply-To: <da139b3fdb4a4b54950459e810fcbb7b@XCH-RTP-013.cisco.com>
Date: Thu, 30 Jun 2016 15:12:34 -0400
Message-ID: <4b7901d1d303$5bacf800$1306e800$@ndzh.com>
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="----=_NextPart_000_4B7A_01D1D2E1.D49FC4D0"
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQLFTksMOMokz5ko+uSOkEHfh/xdsgG0QEYAApbOvHUB+LnyvQFPVasInd7O8+A=
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/8qMSHUF4LgKBtSiVyrq4vQyQOqI>
Cc: i2rs@ietf.org
Subject: Re: [i2rs] Review of draft-ietf-i2rs-ephemeral-state-11
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 30 Jun 2016 19:13:09 -0000

This is a multipart message in MIME format.

------=_NextPart_000_4B7A_01D1D2E1.D49FC4D0
Content-Type: text/plain;
	charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Eric:=20

=20

Thank you for your comments:  See comments below.

=20

Sue=20

=20

From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Eric Voit (evoit)
Sent: Thursday, June 30, 2016 2:52 PM
To: Susan Hares
Cc: i2rs@ietf.org
Subject: Re: [i2rs] Review of draft-ietf-i2rs-ephemeral-state-11

=20

Hi Susan,

=20

>My responses below are based on v12.  =20

=20

>Section 9:=20

>Pub/Sub Requirements Expanded for Ephemeral State -- Subscribing to =
Ephemeral state means that there must be some stream of Ephemeral =
information against which the Subscription can be applied.   This will =
be a different stream than for startup config, and might be a >different =
stream from running config. In addition, it is possible that there will =
not be a single stream with includes both Operational and Config data. =
(Likely these are all different from any OpState stream too.)    With =
this in mind:

=20

>Pub-Sub-REQ-01:=20

>Comment #1

>Must the subscription service support operational and ephemeral =
configuration data within a single subscription?  Or can two separate =
subscriptions be used?  Applying a single subscription against a single =
stream is where things are going in the NETCONF at this point.

No.  It can be two separate subscriptions. =20

=20

>Comment #2

>Isn=E2=80=99t all data in Operational data stores ephemeral?  I see the =
mailing list discussions on this terminology topic for the requirements =
earlier in the document.  This is where you said: =E2=80=9CEphemeral =
state is defined as "ephemeral configuration state" and operational =
state.=E2=80=9D  But the >terminology fix doesn=E2=80=99t seem to have =
made it down here.

Sue: We thought this was more specific.  I can change it to =
=E2=80=9CEphemeral state=E2=80=9D. =20

=20

=20

Pub-Sub-REQ-02:=20

Comment #3:

>Building off Comment #2, is there such a thing as Ephemeral data in =
Operational data?  Or are you talking filtering so that only changes in =
Operational data are sent.   I believe you are intending the second.   =
In that case there might need to be special types of filters >needed.  =
Filters such as a count of the number of objects under a tree (e.g., =
number of routes), or range based filters for an operational value.

=20

Sue: We have ephemeral data models with operational state.  Technically, =
the data is both ephemeral (under an ephemeral model) and operational =
state.   The difficulty is that this conflicts with some data models.=20

=20

Section 2, Bullets 5 & 9 and Section 7:

>Priority Collision.  Could you explicitly say when the priority of one =
write will prevent a lower priority write from occurring?  Is it the =
completion of and response to some POST?  I don=E2=80=99t know what =
time-of-use means. =20

>=20

In RESTCONF,  the updating process will check the priority of the =
existing write.  This check will occur at least the completion of the =
POST for an over-write of an existing post.  Since the RESTCONF posts =
are not simultaneous (but rather 1 at a time), the check will occur a =
single write.  =20

In NETCONF, this will be at edit-config stage. Both of these stages were =
defined as =E2=80=9Ctime of use=E2=80=9D =E2=80=93 because it was when =
the update was to occur.=20

=20

Do you have an alternate suggestion?=20

=20

Eric

=20

=20

From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Susan Hares
Sent: Thursday, June 30, 2016 12:54 PM
To: Robert Wilton -X (rwilton - ENSOFT LIMITED at Cisco); i2rs@ietf.org
Subject: Re: [i2rs] Review of draft-ietf-i2rs-ephemeral-state-11

=20

Robert:

=20

Version-12 is uploaded.  =20

=20

On Ephemeral-REQ-08:=20

>Sue: You are Juergen are concerned about writeable/non-writeable.   =
Martin is concerned about status/configuration.  The I2RS authors =
believe we are running into the different operational state models.  =
Each time we change this requirement we get another >response.   The =
requirement will stay for now.  I suspect the we will be working on the =
design of the solution after we have settled on the operational state =
models.

>Rob:
>My actual concern is that what I have proposed as a datastore solution =
cannot meet this requirement, because I think that only configuration =
should be writable, and hence the writable/non-writable property is =
implicit.

=20

We have the case of the ephemeral topology data base that conflicts this =
work.   We will need to work this out at IETF 96 in Berlin.=20

=20

Sue=20

=20

From: Robert Wilton [mailto:rwilton@cisco.com]=20
Sent: Thursday, June 30, 2016 12:39 PM
To: Susan Hares; i2rs@ietf.org
Subject: Re: [i2rs] Review of draft-ietf-i2rs-ephemeral-state-11

=20

Hi Sue,

All fine with me.  A couple of comments inline ...

=20

On 30/06/2016 17:15, Susan Hares wrote:

Robert:=20

=20

Thank you for your comments.  See resolution of comments below.  Version =
-12 will be sent to the list to handle most of these comments.=20

=20

Sue=20

=20

From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Robert Wilton
Sent: Monday, June 27, 2016 11:30 AM
To: i2rs@ietf.org
Subject: [i2rs] Review of draft-ietf-i2rs-ephemeral-state-11

=20

Hi,

I've reviewed draft-ietf-i2rs-ephemeral-state-11 and given a few minor =
comments below.  Generally I think that I understand the requirements =
stated in this document.

Minors comments:

1) Ephemeral-REQ-01 (page 5):

   Ephemeral-REQ-01: I2RS requires ephemeral state; i.e. state that does
   not persist across reboots.  If state must be restored, it should be
   done solely by replay actions from the I2RS client via the I2RS
   agent.

The architecture document indicates that the ephemeral state would (or =
is that may) also be lost on other circumstances such as process restart =
of the I2RS agent.  Does this need to be clarified in the requirement?  =
E.g.

Sue: In our previous discussions,  other people suggest that =
=E2=80=9Creboots=E2=80=9D covered hardware and software reboot of the =
I2RS agent.   And that the specific nature of the reboot was too-much =
information for the requirement.=20

Rob: OK.

=20

   Ephemeral-REQ-01: I2RS requires ephemeral state; i.e. state that MUST
   NOT persist across reboots of the device or I2RS Agent subsystem. If
   state must be restored, it should be done solely by replay actions
   from the I2RS client via the I2RS agent.

=20

2) Hierarchy: (page 5)
Based on the previous description, I would possibly split =
Ephemeral-REQ-06 up into the following requirements:=20

Old (from ephemeral-state:10):

   Ephemeral-REQ-06: The ability to augment an object with appropriate
   YANG structures that have the property of being ephemeral.  An object
   defined as any one of the following: yang module, submodule or
   components of submodule, or schema node.

Old (from ephemeral-state-11):

   Ephemeral-REQ-06: The ability to augment Yang schema nodes with
   additional Yang Schema nodes that have the property of being
   ephemeral.

Proposed:

   Ephemeral-REQ-06:
=20
   1. The ability to define a YANG module or submodule schema that
   only contains data nodes with the property of being ephemeral.
=20
   2. The ability to augment a YANG data model with additional YANG
   schema nodes that have the property of being ephemeral.

I will accept this change and release in it version-12. =20

=20

3) Ephemeral-REQ-07: (page 6):

   Ephemeral-REQ-07: Ephemeral configuration state could override
   overlapping local configuration state, or vice-versa.
   Implementations MUST provide a mechanism to choose which takes
   precedence.  This mechanism MUST include local configuration (policy)
   and MAY be provided via the I2RS protocol mechanisms.

I note that this requirement doesn't specify the scope of whether the =
override mechanism should operate globally or on a per data node basis.  =
I'm not sure whether this needs to be clarified - since the text in the =
architecture document makes it pretty clear that a global level =
resolution is sufficient.

Sue:  Again, we were cautioned to not specify the design, but only =
provide a result.  The global is sufficient.=20

Rob: OK

4) Ephemeral-REQ-08: (page 6):
Similar to Juergen's comments, I'm concerned about the =
writable/non-writable requirement.

   Ephemeral-REQ-08: Yang MUST have a way to indicate in a data model
   that schema nodes have the following properties: ephemeral, writable/
   not-writable, and status/configuration.

I'm somewhat adverse to writable operational state, and hence I would =
prefer if this requirement was watered down to something like:

   Ephemeral-REQ-08: In addition to config true/false, there MUST be a
   way to indicate that YANG schema nodes represent ephemeral state.
   It is desirable to allow for, and have to way to indicate, config
   false YANG schema nodes that are writable operational state.

Sue: You are Juergen are concerned about writeable/non-writeable.   =
Martin is concerned about status/configuration.  The I2RS authors =
believe we are running into the different operational state models.  =
Each time we change this requirement we get another response.   The =
requirement will stay for now.  I suspect the we will be working on the =
design of the solution after we have settled on the operational state =
models.

Rob:
My actual concern is that what I have proposed as a datastore solution =
cannot meet this requirement, because I think that only configuration =
should be writable, and hence the writable/non-writable property is =
implicit.



5) Ephemeral-Req-12, page 7:
Presumably the requirement is that the notification must indicate the =
node that we involved in the collision?  I.e. it isn't sufficient to =
just signal to the client that there has been a collision with some of =
their configuration?=20

   Ephemeral-REQ-12: When a collision occurs as two clients are trying
   to write the same data node, this collision is considered an error
   and priorities were created to give a deterministic result.  When
   there is a collision, a notification MUST BE sent to the original
   client to give the original client a chance to deal with the issues
   surrounding the collision.  The original client may need to fix their
   state.

Should this be made explicit?  E.g. perhaps:

   Ephemeral-REQ-12: When a collision occurs as two clients are trying
   to write the same data node, this collision is considered an error
   and priorities were created to give a deterministic result.  When
   there is a collision, a notification (indicating which data node the
   collision occurred on) MUST BE sent to the original client to give
   the original client a chance to deal with the issues surrounding
   the collision.  The original client may need to fix their state.

Sue:  For some data models, it may be important to provide more than =
just that.  How about:=20

  When there is a collision, a notification  (which includes an =
indication of the data node the collision occurred on)

MUST BE sent to the original client to give the original client a chance =
to deal with the issues surrounding the collision. =20

Rob: Yes, OK.



6) Ephemeral-REQ-14, page 7:
I would suggest potentially rewording this to make the requirement and =
leeway on the solution more explicit.=20

   Ephemeral-REQ-14: If two clients have the same priority, the
   architecture says the first one wins.  The I2RS protocol has this
   requirement to prevent oscillations between clients.  If one uses the
   last wins scenario, you may oscillate.  That was our opinion, but a
   design which prevents oscillation is the key point.

Proposed alternative text:

   Ephemeral-REQ-14: A deterministic conflict resolution mechanism MUST
   be provided to handle the error scenario that two clients, with
   the same priority, update the same configuration data node.  The I2RS
   architecture gives one way that this could be achieved, by
   specifying that the first update wins.  Other solutions, that prevent
   oscillation of the config data node, are also acceptable.

Sue: Accepted =E2=80=93 this will be released with version 2.=20

Cosmetic comments:

7) Section 1. Introduction.  The requirements are no longer version =
specific, hence perhaps update the following text from:

=20
=20
   1.  select features from YANG, NETCONF, and RESTCONF per version of
       the I2RS protocol (See sections 4, 5, and 6)
=20
   2.  propose additions to YANG, NETCONF, and RESTCONF per version of
       the I2RS protocol for key functions (ephemeral state, protocol
       security, publication/subscription service, traceability),

to:

   1.  select features from YANG, NETCONF, and RESTCONF for the initial
       I2RS protocol version (See sections 4, 5, and 6).
=20
   2.  propose additions to YANG, NETCONF, and RESTCONF for the initial
       I2RS protocol version for key functions (ephemeral state, =
protocol
       security, publication/subscription service, traceability).

Sue: We will probably have a subsequent version of the I2RS protocol.  I =
would prefer to leave this as stated so this is clear. =20

8) Section 1. introduction.  I'm not sure that this 3rd bullet is =
relevant, and possibly could be removed, although equally it doesn't =
seem to do any harm:

   3.  suggest protocol strawman as ideas for the NETCONF, RESTCONF, and
       YANG changes.

Sue: There is a protocol strawman that will be submitted based on =
experience. =20

=20


9) The document uses a mix of "Yang" and "YANG", probably should just =
use "YANG".

Fixed in version 12.=20

10) Section 3. Ephemeral State Requirements:

>The document refers to "ephemeral configured state" here, but elsewhere =
(e.g. 3.4) "ephemeral configuration" or "ephemeral configuration state" =
is used.  It might be helpful for use of these terms to be consistent, I =
would suggest "ephemeral configuration" is >sufficient.

Sue: Ephemeral state is defined as ephemeral configuration state and =
operational state in the=20

Rob: It was only a minor nit, I was suggesting consistency of the term, =
perhaps change "ephemeral configuration"and "ephemeral configuration =
state"  to "ephemeral configured state".

Thanks,
Rob


 =
<https://tools.ietf.org/html/draft-ietf-i2rs-ephemeral-state-11#section-3=
> 3.  Ephemeral State Requirements

=20
=20
   In requirements Ephemeral-REQ-01 to Ephemeral-05, Ephemeral state is
   defined as potentially including both ephemeral configured state and
   operational state.

11) Ephemeral-REQ-13, page 7:

Minor omission in the last sentence.

  Ephemeral-REQ-13: The requirement to support multi-headed control is
   required for collisions and the priority resolution of collisions.
   Multi-headed control is not tied to ephemeral state.  I2RS is not
   mandating how AAA supports priority.  Mechanisms which prevent
   collisions of two clients trying the same node of data are the focus.

Proposed:

  Ephemeral-REQ-13: The requirement to support multi-headed control is
   required for collisions and the priority resolution of collisions.
   Multi-headed control is not tied to ephemeral state.  I2RS is not
   mandating how AAA supports priority.  Mechanisms which prevent
   collisions of two clients trying to modify the same node of data
   are the focus.

Sue: Thank you.  Version -12 will have this change.=20

=20

12) Ephemeral-REQ-15, page 7:
I would suggest that it might be better to refer to "Ephemeral state" =
rather than the I2RS ephemeral data-store.

   Ephemeral-REQ-15: Section 7.9 of the [I-D.ietf-i2rs-architecture]
   states the I2RS architecture does not include multi-message atomicity
   and roll-back mechanisms.  I2RS notes multiple operations in one or
   more messages handling can handle errors within the set of operations
   in many ways.  No multi-message commands SHOULD cause errors to be
   inserted into the I2RS ephemeral data-store.

Proposed:

   Ephemeral-REQ-15: Section 7.9 of the [I-D.ietf-i2rs-architecture]
   states the I2RS architecture does not include multi-message atomicity
   and roll-back mechanisms.  I2RS notes multiple operations in one or
   more messages handling can handle errors within the set of operations
   in many ways.  No multi-message commands SHOULD cause errors to be
   inserted into the ephemeral state.

=20

Accepted change for -15.=20

=20

Thanks,
Rob

=20


------=_NextPart_000_4B7A_01D1D2E1.D49FC4D0
Content-Type: text/html;
	charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" =
xmlns:o=3D"urn:schemas-microsoft-com:office:office" =
xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" =
xmlns=3D"http://www.w3.org/TR/REC-html40"><head><meta =
http-equiv=3DContent-Type content=3D"text/html; charset=3Dutf-8"><meta =
name=3DGenerator content=3D"Microsoft Word 14 (filtered =
medium)"><style><!--
/* Font Definitions */
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
	{font-family:Tahoma;
	panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
	{font-family:Consolas;
	panose-1:2 11 6 9 2 2 4 3 2 4;}
@font-face
	{font-family:"Courier New \;color\:black";
	panose-1:0 0 0 0 0 0 0 0 0 0;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0in;
	margin-bottom:.0001pt;
	font-size:12.0pt;
	font-family:"Times New Roman","serif";
	color:black;}
h2
	{mso-style-priority:9;
	mso-style-link:"Heading 2 Char";
	mso-margin-top-alt:auto;
	margin-right:0in;
	mso-margin-bottom-alt:auto;
	margin-left:0in;
	font-size:18.0pt;
	font-family:"Times New Roman","serif";
	color:windowtext;
	font-weight:bold;}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:blue;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:purple;
	text-decoration:underline;}
p
	{mso-style-priority:99;
	mso-margin-top-alt:auto;
	margin-right:0in;
	mso-margin-bottom-alt:auto;
	margin-left:0in;
	font-size:12.0pt;
	font-family:"Times New Roman","serif";
	color:black;}
pre
	{mso-style-priority:99;
	mso-style-link:"HTML Preformatted Char";
	margin:0in;
	margin-bottom:.0001pt;
	font-size:10.0pt;
	font-family:"Courier New";
	color:black;}
p.MsoAcetate, li.MsoAcetate, div.MsoAcetate
	{mso-style-priority:99;
	mso-style-link:"Balloon Text Char";
	margin:0in;
	margin-bottom:.0001pt;
	font-size:8.0pt;
	font-family:"Tahoma","sans-serif";
	color:black;}
span.Heading2Char
	{mso-style-name:"Heading 2 Char";
	mso-style-priority:9;
	mso-style-link:"Heading 2";
	font-weight:bold;}
span.HTMLPreformattedChar
	{mso-style-name:"HTML Preformatted Char";
	mso-style-priority:99;
	mso-style-link:"HTML Preformatted";
	font-family:Consolas;
	color:black;}
span.BalloonTextChar
	{mso-style-name:"Balloon Text Char";
	mso-style-priority:99;
	mso-style-link:"Balloon Text";
	font-family:"Tahoma","sans-serif";
	color:black;}
span.EmailStyle23
	{mso-style-type:personal;
	font-family:"Calibri","sans-serif";
	color:#1F497D;}
span.EmailStyle24
	{mso-style-type:personal;
	font-family:"Calibri","sans-serif";
	color:#1F497D;}
span.EmailStyle25
	{mso-style-type:personal;
	font-family:"Calibri","sans-serif";
	color:#1F497D;}
span.EmailStyle26
	{mso-style-type:personal-reply;
	font-family:"Calibri","sans-serif";
	color:#1F497D;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-size:10.0pt;}
@page WordSection1
	{size:8.5in 11.0in;
	margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
	{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]--></head><body bgcolor=3Dwhite =
lang=3DEN-US link=3Dblue vlink=3Dpurple><div class=3DWordSection1><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Eric: <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Thank you for your comments: =C2=A0See comments =
below.<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Sue <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><div><div =
style=3D'border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in =
0in 0in'><p class=3DMsoNormal><b><span =
style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif";color:windowt=
ext'>From:</span></b><span =
style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif";color:windowt=
ext'> i2rs [mailto:i2rs-bounces@ietf.org] <b>On Behalf Of </b>Eric Voit =
(evoit)<br><b>Sent:</b> Thursday, June 30, 2016 2:52 PM<br><b>To:</b> =
Susan Hares<br><b>Cc:</b> i2rs@ietf.org<br><b>Subject:</b> Re: [i2rs] =
Review of =
draft-ietf-i2rs-ephemeral-state-11<o:p></o:p></span></p></div></div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Hi Susan,<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&gt;</span><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>My responses below are based on v12.&nbsp;&nbsp; =
<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&gt;</span><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Section 9: <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&gt;</span><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Pub/Sub Requirements Expanded for Ephemeral State -- Subscribing to =
Ephemeral state means that there must be some stream of Ephemeral =
information against which the Subscription can be applied.&nbsp;&nbsp; =
This will be a different stream than for startup config, and might be a =
</span><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&gt;</span><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>different stream from running config. In addition, it is possible =
that there will not be a single stream with includes both Operational =
and Config data. (Likely these are all different from any OpState stream =
too.)&nbsp; &nbsp;&nbsp;With this in mind:<o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&gt;</span><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Pub-Sub-REQ-01: <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&gt;</span><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Comment #1<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&gt;</span><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Must the subscription service support operational and ephemeral =
configuration data within a single subscription?&nbsp; Or can two =
separate subscriptions be used?&nbsp; Applying a single subscription =
against a single stream is where things are going in the NETCONF at this =
point.<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>No.=C2=A0 It can be two separate subscriptions. =
=C2=A0<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&gt;</span><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Comment #2<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&gt;</span><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Isn=E2=80=99t all data in Operational data stores ephemeral?&nbsp; I =
see the mailing list discussions on this terminology topic for the =
requirements earlier in the document.&nbsp; This is where you said: =
=E2=80=9C<i>Ephemeral state is defined as &quot;ephemeral configuration =
state&quot; and operational state</i>.=E2=80=9D&nbsp; But the =
</span><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&gt;</span><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>terminology fix doesn=E2=80=99t seem to have made it down =
here.<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Sue: We thought this was more specific.=C2=A0 I can change it to =
=E2=80=9CEphemeral state=E2=80=9D.=C2=A0 <o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Pub-Sub-REQ-02: <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Comment #3:<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&gt;</span><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Building off Comment #2, is there such a thing as Ephemeral data in =
Operational data?&nbsp; Or are you talking filtering so that only =
changes in Operational data are sent.&nbsp;&nbsp; I believe you are =
intending the second.&nbsp;&nbsp; In that case there might need to be =
special types of filters </span><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&gt;</span><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>needed.&nbsp; Filters such as a count of the number of objects under =
a tree (e.g., number of routes), or range based filters for an =
operational value.</span><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Sue: We have ephemeral data models with operational state.=C2=A0 =
Technically, the data is both ephemeral (under an ephemeral model) and =
operational state.=C2=A0=C2=A0 The difficulty is that this conflicts =
with some data models. <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Section 2, Bullets 5 &amp; 9 and Section 7:<o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&gt;</span><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Priority Collision.&nbsp; Could you explicitly say when the priority =
of one write will prevent a lower priority write from occurring?&nbsp; =
Is it the completion of and response to some POST?&nbsp; I don=E2=80=99t =
know what time-of-use means.&nbsp; <o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&gt;<o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>In RESTCONF, =C2=A0the updating process will check the priority of =
the existing write.=C2=A0 This check will occur at least the completion =
of the POST for an over-write of an existing post.=C2=A0 Since the =
RESTCONF posts are not simultaneous (but rather 1 at a time), the check =
will occur a single write.=C2=A0=C2=A0 <o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>In NETCONF, this will be at edit-config stage. Both of these stages =
were defined as =E2=80=9Ctime of use=E2=80=9D =E2=80=93 because it was =
when the update was to occur. <o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Do you have an alternate suggestion? <o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Eric<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><div =
style=3D'border:none;border-left:solid blue 1.5pt;padding:0in 0in 0in =
4.0pt'><div><div style=3D'border:none;border-top:solid #B5C4DF =
1.0pt;padding:3.0pt 0in 0in 0in'><p class=3DMsoNormal><b><span =
style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif";color:windowt=
ext'>From:</span></b><span =
style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif";color:windowt=
ext'> i2rs [<a =
href=3D"mailto:i2rs-bounces@ietf.org">mailto:i2rs-bounces@ietf.org</a>] =
<b>On Behalf Of </b>Susan Hares<br><b>Sent:</b> Thursday, June 30, 2016 =
12:54 PM<br><b>To:</b> Robert Wilton -X (rwilton - ENSOFT LIMITED at =
Cisco); <a =
href=3D"mailto:i2rs@ietf.org">i2rs@ietf.org</a><br><b>Subject:</b> Re: =
[i2rs] Review of =
draft-ietf-i2rs-ephemeral-state-11<o:p></o:p></span></p></div></div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Robert:<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Version-12 is uploaded.&nbsp; &nbsp;<o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>On Ephemeral-REQ-08: <o:p></o:p></span></p><p><span =
style=3D'color:#1F497D'>&gt;Sue: You are Juergen are concerned about =
writeable/non-writeable.&nbsp; &nbsp;Martin is concerned about =
status/configuration. &nbsp;The I2RS authors believe we are running into =
the different operational state models. &nbsp;Each time we change this =
requirement we get another &gt;response.&nbsp;&nbsp; The requirement =
will stay for now.&nbsp; I suspect the we will be working on the design =
of the solution after we have settled on the operational state =
models.</span><o:p></o:p></p><p class=3DMsoNormal>&gt;Rob:<br>&gt;My =
actual concern is that what I have proposed as a datastore solution =
cannot meet this requirement, because I think that only configuration =
should be writable, and hence the writable/non-writable property is =
implicit.<o:p></o:p></p><p class=3DMsoNormal><o:p>&nbsp;</o:p></p><p =
class=3DMsoNormal>We have the case of the ephemeral topology data base =
that conflicts this work.&nbsp;&nbsp; We will need to work this out at =
IETF 96 in Berlin. <o:p></o:p></p><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p><p class=3DMsoNormal =
style=3D'margin-bottom:12.0pt'>Sue <span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><div><div =
style=3D'border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in =
0in 0in'><p class=3DMsoNormal><b><span =
style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif";color:windowt=
ext'>From:</span></b><span =
style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif";color:windowt=
ext'> Robert Wilton [<a =
href=3D"mailto:rwilton@cisco.com">mailto:rwilton@cisco.com</a>] =
<br><b>Sent:</b> Thursday, June 30, 2016 12:39 PM<br><b>To:</b> Susan =
Hares; <a =
href=3D"mailto:i2rs@ietf.org">i2rs@ietf.org</a><br><b>Subject:</b> Re: =
[i2rs] Review of =
draft-ietf-i2rs-ephemeral-state-11<o:p></o:p></span></p></div></div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p><p>Hi Sue,<o:p></o:p></p><p>All =
fine with me.&nbsp; A couple of comments inline ...<o:p></o:p></p><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p><div><p class=3DMsoNormal>On =
30/06/2016 17:15, Susan Hares wrote:<o:p></o:p></p></div><blockquote =
style=3D'margin-top:5.0pt;margin-bottom:5.0pt'><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Robert: </span><o:p></o:p></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&nbsp;</span><o:p></o:p></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Thank you for your comments.&nbsp; See resolution of comments =
below.&nbsp; Version -12 will be sent to the list to handle most of =
these comments. </span><o:p></o:p></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&nbsp;</span><o:p></o:p></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Sue </span><o:p></o:p></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&nbsp;</span><o:p></o:p></p><div><div =
style=3D'border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in =
0in 0in'><p class=3DMsoNormal><b><span =
style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif";color:windowt=
ext'>From:</span></b><span =
style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif";color:windowt=
ext'> i2rs [<a =
href=3D"mailto:i2rs-bounces@ietf.org">mailto:i2rs-bounces@ietf.org</a>] =
<b>On Behalf Of </b>Robert Wilton<br><b>Sent:</b> Monday, June 27, 2016 =
11:30 AM<br><b>To:</b> <a =
href=3D"mailto:i2rs@ietf.org">i2rs@ietf.org</a><br><b>Subject:</b> =
[i2rs] Review of =
draft-ietf-i2rs-ephemeral-state-11</span><o:p></o:p></p></div></div><p =
class=3DMsoNormal>&nbsp;<o:p></o:p></p><p>Hi,<o:p></o:p></p><p>I've =
reviewed draft-ietf-i2rs-ephemeral-state-11 and given a few minor =
comments below.&nbsp; Generally I think that I understand the =
requirements stated in this document.<o:p></o:p></p><p>Minors =
comments:<o:p></o:p></p><p>1) Ephemeral-REQ-01 (page =
5):<o:p></o:p></p><div style=3D'border:solid #CCCCCC 1.0pt;padding:8.0pt =
8.0pt 8.0pt 8.0pt'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;box-=
sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: =
auto;text-align:start;widows: 1;-webkit-text-stroke-width: =
0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>&nbsp;&nbsp; Ephemeral-REQ-01: I2RS requires =
ephemeral state; i.e. state that does</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; not persist across =
reboots.&nbsp; If state must be restored, it should =
be</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; done solely by replay actions =
from the I2RS client via the I2RS</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; =
agent.</span><o:p></o:p></pre></div><p>The architecture document =
indicates that the ephemeral state would (or is that may) also be lost =
on other circumstances such as process restart of the I2RS agent.&nbsp; =
Does this need to be clarified in the requirement?&nbsp; =
E.g.<o:p></o:p></p><p><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Sue: In our previous discussions,&nbsp; other people suggest that =
=E2=80=9Creboots=E2=80=9D covered hardware and software reboot of the =
I2RS agent. &nbsp;&nbsp;And that the specific nature of the reboot was =
too-much information for the requirement. =
</span><o:p></o:p></p></blockquote><p class=3DMsoNormal =
style=3D'margin-bottom:12.0pt'>Rob: OK.<o:p></o:p></p><p><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&nbsp;</span><o:p></o:p></p><div style=3D'border:solid #CCCCCC =
1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;box-=
sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: =
auto;text-align:start;widows: 1;-webkit-text-stroke-width: =
0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>&nbsp;&nbsp; Ephemeral-REQ-01: I2RS requires =
ephemeral state; i.e. state that MUST</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; NOT persist across reboots of =
the device or I2RS Agent subsystem. If</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; state must be restored, it =
should be done solely by replay actions</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; from the I2RS client via the =
I2RS agent.</span><o:p></o:p></pre></div><p>&nbsp;<o:p></o:p></p><p>2) =
Hierarchy: (page 5)<br>Based on the previous description, I would =
possibly split Ephemeral-REQ-06 up into the following requirements: =
<o:p></o:p></p><p>Old (from ephemeral-state:10):<o:p></o:p></p><div =
style=3D'border:solid #CCCCCC 1.0pt;padding:8.0pt 8.0pt 8.0pt =
8.0pt'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;box-=
sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: =
auto;text-align:start;widows: 1;-webkit-text-stroke-width: =
0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>&nbsp;&nbsp; Ephemeral-REQ-06: The ability to =
augment an object with appropriate</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; YANG structures that have the =
property of being ephemeral.&nbsp; An object</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; defined as any one of the =
following: yang module, submodule or</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; components of submodule, or =
schema node.</span><o:p></o:p></pre></div><p>Old (from =
ephemeral-state-11):<o:p></o:p></p><div style=3D'border:solid #CCCCCC =
1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;box-=
sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: =
auto;text-align:start;widows: 1;-webkit-text-stroke-width: =
0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>&nbsp;&nbsp; Ephemeral-REQ-06: The ability to =
augment Yang schema nodes with</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; additional Yang Schema nodes =
that have the property of being</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; =
ephemeral.</span><o:p></o:p></pre></div><p>Proposed:<o:p></o:p></p><div =
style=3D'border:solid #CCCCCC 1.0pt;padding:8.0pt 8.0pt 8.0pt =
8.0pt'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;box-=
sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: =
auto;text-align:start;widows: 1;-webkit-text-stroke-width: =
0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>&nbsp;&nbsp; =
Ephemeral-REQ-06:</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'> </span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp;&nbsp;1. The ability to define =
a YANG module or submodule schema that</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; only contains data nodes with =
the property of being ephemeral.</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; 2. The ability to augment a =
YANG data model with additional YANG</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; schema nodes that have the =
property of being ephemeral.</span><o:p></o:p></pre></div><p><span =
style=3D'color:#1F497D'>I will accept this change and release in it =
version-12. &nbsp;</span><o:p></o:p></p><p><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&nbsp;</span><o:p></o:p></p><p>3) Ephemeral-REQ-07: (page =
6):<o:p></o:p></p><div style=3D'border:solid #CCCCCC 1.0pt;padding:8.0pt =
8.0pt 8.0pt 8.0pt'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;box-=
sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: =
auto;text-align:start;widows: 1;-webkit-text-stroke-width: =
0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>&nbsp;&nbsp; Ephemeral-REQ-07: Ephemeral =
configuration state could override</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; overlapping local =
configuration state, or vice-versa.</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; Implementations MUST provide =
a mechanism to choose which takes</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; precedence.&nbsp; This =
mechanism MUST include local configuration =
(policy)</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; and MAY be provided via the =
I2RS protocol mechanisms.</span><o:p></o:p></pre></div><p>I note that =
this requirement doesn't specify the scope of whether the override =
mechanism should operate globally or on a per data node basis.&nbsp; I'm =
not sure whether this needs to be clarified - since the text in the =
architecture document makes it pretty clear that a global level =
resolution is sufficient.<o:p></o:p></p><p><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Sue: &nbsp;Again, we were cautioned to not specify the design, but =
only provide a result.&nbsp; The global is sufficient. =
</span><o:p></o:p></p><p class=3DMsoNormal =
style=3D'margin-bottom:12.0pt'>Rob: OK<o:p></o:p></p><p>4) =
Ephemeral-REQ-08: (page 6):<br>Similar to Juergen's comments, I'm =
concerned about the writable/non-writable =
requirement.<o:p></o:p></p><div style=3D'border:solid #CCCCCC =
1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; Ephemeral-REQ-08: Yang MUST =
have a way to indicate in a data model</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; that schema nodes have the =
following properties: ephemeral, writable/</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; not-writable, and =
status/configuration.</span><o:p></o:p></pre></div><p>I'm somewhat =
adverse to writable operational state, and hence I would prefer if this =
requirement was watered down to something like:<o:p></o:p></p><div =
style=3D'border:solid #CCCCCC 1.0pt;padding:8.0pt 8.0pt 8.0pt =
8.0pt'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;box-=
sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: =
auto;text-align:start;widows: 1;-webkit-text-stroke-width: =
0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>&nbsp;&nbsp; Ephemeral-REQ-08: In addition to =
config true/false, there MUST be a</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; way to indicate that YANG =
schema nodes represent ephemeral state.</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; It is desirable to allow for, =
and have to way to indicate, config</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; false YANG schema nodes that =
are writable operational state.</span><o:p></o:p></pre></div><p><span =
style=3D'color:#1F497D'>Sue: You are Juergen are concerned about =
writeable/non-writeable.&nbsp; &nbsp;Martin is concerned about =
status/configuration. &nbsp;The I2RS authors believe we are running into =
the different operational state models. &nbsp;Each time we change this =
requirement we get another response.&nbsp;&nbsp; The requirement will =
stay for now.&nbsp; I suspect the we will be working on the design of =
the solution after we have settled on the operational state =
models.</span><o:p></o:p></p><p class=3DMsoNormal =
style=3D'margin-bottom:12.0pt'>Rob:<br>My actual concern is that what I =
have proposed as a datastore solution cannot meet this requirement, =
because I think that only configuration should be writable, and hence =
the writable/non-writable property is =
implicit.<br><br><o:p></o:p></p><p>5) Ephemeral-Req-12, page =
7:<br>Presumably the requirement is that the notification must indicate =
the node that we involved in the collision?&nbsp; I.e. it isn't =
sufficient to just signal to the client that there has been a collision =
with some of their configuration? <o:p></o:p></p><div =
style=3D'border:solid #CCCCCC 1.0pt;padding:8.0pt 8.0pt 8.0pt =
8.0pt'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;box-=
sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: =
auto;text-align:start;widows: 1;-webkit-text-stroke-width: =
0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>&nbsp;&nbsp;&nbsp;Ephemeral-REQ-12: When a =
collision occurs as two clients are trying</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; to write the same data node, =
this collision is considered an error</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; and priorities were created =
to give a deterministic result.&nbsp; When</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; there is a collision, a =
notification MUST BE sent to the original</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; client to give the original =
client a chance to deal with the issues</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; surrounding the =
collision.&nbsp; The original client may need to fix =
their</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; =
state.</span><o:p></o:p></pre></div><p>Should this be made =
explicit?&nbsp; E.g. perhaps:<o:p></o:p></p><div style=3D'border:solid =
#CCCCCC 1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;box-=
sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: =
auto;text-align:start;widows: 1;-webkit-text-stroke-width: =
0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>&nbsp;&nbsp; Ephemeral-REQ-12: When a =
collision occurs as two clients are trying</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; to write the same data node, =
this collision is considered an error</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; and priorities were created =
to give a deterministic result.&nbsp; When</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; there is a collision, a =
notification (indicating which data node the</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; collision occurred on) MUST =
BE sent to the original client to give</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; the original client a chance =
to deal with the issues surrounding</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; the collision.&nbsp; The =
original client may need to fix their =
state.</span><o:p></o:p></pre></div><p><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Sue:&nbsp; For some data models, it may be important to provide more =
than just that.&nbsp; How about: </span><o:p></o:p></p><p><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&nbsp;&nbsp;When there is a collision, a notification&nbsp; (which =
includes an indication of the data node the collision occurred =
on)</span><o:p></o:p></p><p><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>MUST BE sent to the original client to give the original client a =
chance to deal with the issues surrounding the collision.&nbsp; =
</span><o:p></o:p></p><p class=3DMsoNormal =
style=3D'margin-bottom:12.0pt'>Rob: Yes, OK.<br><br><o:p></o:p></p><p>6) =
Ephemeral-REQ-14, page 7:<br>I would suggest potentially rewording this =
to make the requirement and leeway on the solution more explicit. =
<o:p></o:p></p><div style=3D'border:solid #CCCCCC 1.0pt;padding:8.0pt =
8.0pt 8.0pt 8.0pt'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;box-=
sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: =
auto;text-align:start;widows: 1;-webkit-text-stroke-width: =
0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>&nbsp;&nbsp;&nbsp;Ephemeral-REQ-14: If two =
clients have the same priority, the</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; architecture says the first =
one wins.&nbsp; The I2RS protocol has this</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; requirement to prevent =
oscillations between clients.&nbsp; If one uses =
the</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; last wins scenario, you may =
oscillate.&nbsp; That was our opinion, but a</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; design which prevents =
oscillation is the key point.</span><o:p></o:p></pre></div><p>Proposed =
alternative text:<o:p></o:p></p><div style=3D'border:solid #CCCCCC =
1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;box-=
sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: =
auto;text-align:start;widows: 1;-webkit-text-stroke-width: =
0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>&nbsp;&nbsp; Ephemeral-REQ-14: A =
deterministic conflict resolution mechanism =
MUST</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; be provided to handle the =
error scenario that two clients, with</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; the same priority, update the =
same configuration data node.&nbsp; The I2RS</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; architecture gives one way =
that this could be achieved, by</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; specifying that the first =
update wins.&nbsp; Other solutions, that =
prevent</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; oscillation of the config =
data node, are also acceptable.</span><o:p></o:p></pre></div><p><span =
style=3D'color:#1F497D'>Sue: Accepted =E2=80=93 this will be released =
with version 2. </span><o:p></o:p></p><p>Cosmetic =
comments:<o:p></o:p></p><p>7) Section 1. Introduction.&nbsp; The =
requirements are no longer version specific, hence perhaps update the =
following text from:<o:p></o:p></p><div style=3D'border:solid #CCCCCC =
1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;box-=
sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: =
auto;text-align:start;widows: 1;-webkit-text-stroke-width: =
0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>&nbsp;</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; 1.&nbsp; select features from =
YANG, NETCONF, and RESTCONF per version of</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; the =
I2RS protocol (See sections 4, 5, and 6)</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; 2.&nbsp; propose additions to =
YANG, NETCONF, and RESTCONF per version of</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; the =
I2RS protocol for key functions (ephemeral state, =
protocol</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
security, publication/subscription service, =
traceability),</span><o:p></o:p></pre></div><p>to:<o:p></o:p></p><div =
style=3D'border:solid #CCCCCC 1.0pt;padding:8.0pt 8.0pt 8.0pt =
8.0pt'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;box-=
sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: =
auto;text-align:start;widows: 1;-webkit-text-stroke-width: =
0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>&nbsp;&nbsp; 1.&nbsp; select features from =
YANG, NETCONF, and RESTCONF for the initial</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; I2RS =
protocol version (See sections 4, 5, and 6).</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; 2.&nbsp; propose additions to =
YANG, NETCONF, and RESTCONF for the initial</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; I2RS =
protocol version for key functions (ephemeral state, =
protocol</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp;&nbsp; =
&nbsp;&nbsp;&nbsp;security, publication/subscription service, =
traceability).</span><o:p></o:p></pre></div><p><span =
style=3D'color:#1F497D'>Sue: We will probably have a subsequent version =
of the I2RS protocol. &nbsp;I would prefer to leave this as stated so =
this is clear. &nbsp;</span><o:p></o:p></p><p>8) Section 1. =
introduction.&nbsp; I'm not sure that this 3rd bullet is relevant, and =
possibly could be removed, although equally it doesn't seem to do any =
harm:<o:p></o:p></p><div style=3D'border:solid #CCCCCC =
1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;box-=
sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: =
auto;text-align:start;widows: 1;-webkit-text-stroke-width: =
0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>&nbsp;&nbsp; 3.&nbsp; suggest protocol =
strawman as ideas for the NETCONF, RESTCONF, =
and</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; YANG =
changes.</span><o:p></o:p></pre></div><p class=3DMsoNormal><span =
style=3D'color:#1F497D'>Sue: There is a protocol strawman that will be =
submitted based on experience.&nbsp; </span><o:p></o:p></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&nbsp;</span><o:p></o:p></p><p class=3DMsoNormal><br>9) The document =
uses a mix of &quot;Yang&quot; and &quot;YANG&quot;, probably should =
just use &quot;YANG&quot;.<o:p></o:p></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Fixed in version 12. </span><o:p></o:p></p><p>10) Section 3. =
Ephemeral State Requirements:<o:p></o:p></p><p><span =
style=3D'color:#1F497D'>&gt;</span>The document refers to =
&quot;ephemeral configured state&quot; here, but elsewhere (e.g. 3.4) =
&quot;ephemeral configuration&quot; or &quot;ephemeral configuration =
state&quot; is used.&nbsp; It might be helpful for use of these terms to =
be consistent, I would suggest &quot;ephemeral configuration&quot; is =
<span =
style=3D'color:#1F497D'>&gt;</span>sufficient.<o:p></o:p></p><p><span =
style=3D'color:#1F497D'>Sue: Ephemeral state is defined as ephemeral =
configuration state and operational state in the =
</span><o:p></o:p></p><p class=3DMsoNormal =
style=3D'margin-bottom:12.0pt'>Rob: It was only a minor nit, I was =
suggesting consistency of the term, perhaps change &quot;ephemeral =
configuration&quot;and &quot;ephemeral configuration state&quot;&nbsp; =
to &quot;ephemeral configured =
state&quot;.<br><br>Thanks,<br>Rob<o:p></o:p></p><h2 =
style=3D'mso-line-height-alt:0pt'><a name=3Dsection-3></a><a =
href=3D"https://tools.ietf.org/html/draft-ietf-i2rs-ephemeral-state-11#se=
ction-3"><span style=3D'font-size:10.0pt'>3</span></a><span =
style=3D'font-size:10.0pt;font-family:"Courier New =
;color:black","serif"'>.&nbsp; Ephemeral State =
Requirements</span><o:p></o:p></h2><pre>&nbsp;<o:p></o:p></pre><pre>&nbsp=
;<o:p></o:p></pre><pre>&nbsp;&nbsp; In requirements Ephemeral-REQ-01 to =
Ephemeral-05, Ephemeral state is<o:p></o:p></pre><pre> =
&nbsp;&nbsp;defined as potentially including both ephemeral configured =
state and<o:p></o:p></pre><pre>&nbsp;&nbsp; operational =
state.<o:p></o:p></pre><p>11) Ephemeral-REQ-13, page =
7:<o:p></o:p></p><p>Minor omission in the last =
sentence.<o:p></o:p></p><div style=3D'border:solid #CCCCCC =
1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;box-=
sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: =
auto;text-align:start;widows: 1;-webkit-text-stroke-width: =
0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>&nbsp; Ephemeral-REQ-13: The requirement to =
support multi-headed control is</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; required for collisions and =
the priority resolution of collisions.</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; Multi-headed control is not =
tied to ephemeral state.&nbsp; I2RS is not</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; mandating how AAA supports =
priority.&nbsp; Mechanisms which prevent</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; collisions of two clients =
trying the same node of data are the =
focus.</span><o:p></o:p></pre></div><p>Proposed:<o:p></o:p></p><div =
style=3D'border:solid #CCCCCC 1.0pt;padding:8.0pt 8.0pt 8.0pt =
8.0pt'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;box-=
sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: =
auto;text-align:start;widows: 1;-webkit-text-stroke-width: =
0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>&nbsp; Ephemeral-REQ-13: The requirement to =
support multi-headed control is</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; required for collisions and =
the priority resolution of collisions.</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; Multi-headed control is not =
tied to ephemeral state.&nbsp; I2RS is not</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; mandating how AAA supports =
priority.&nbsp; Mechanisms which prevent</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; collisions of two clients =
trying to modify the same node of data</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; are the =
focus.</span><o:p></o:p></pre></div><p><span =
style=3D'color:#1F497D'>Sue: Thank you.&nbsp; Version -12 will have this =
change. </span><o:p></o:p></p><p><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&nbsp;</span><o:p></o:p></p><p>12) Ephemeral-REQ-15, page 7:<br>I =
would suggest that it might be better to refer to &quot;Ephemeral =
state&quot; rather than the I2RS ephemeral =
data-store.<o:p></o:p></p><div style=3D'border:solid #CCCCCC =
1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all;box-=
sizing: border-box;word-wrap: break-word;border-radius: 4px;orphans: =
auto;text-align:start;widows: 1;-webkit-text-stroke-width: =
0px;overflow:auto;word-spacing:0px'><span =
style=3D'font-size:10.5pt'>&nbsp;&nbsp; Ephemeral-REQ-15: Section 7.9 of =
the [I-D.ietf-i2rs-architecture]</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; states the I2RS architecture =
does not include multi-message atomicity</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; and roll-back =
mechanisms.&nbsp; I2RS notes multiple operations in one =
or</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; more messages handling can =
handle errors within the set of operations</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; in many ways.&nbsp; No =
multi-message commands SHOULD cause errors to =
be</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; inserted into the I2RS =
ephemeral data-store.</span><o:p></o:p></pre></div><p class=3DMsoNormal =
style=3D'margin-bottom:12.0pt'>Proposed:<o:p></o:p></p><div =
style=3D'border:solid #CCCCCC 1.0pt;padding:8.0pt 8.0pt 8.0pt =
8.0pt'><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; Ephemeral-REQ-15: Section 7.9 =
of the [I-D.ietf-i2rs-architecture]</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; states the I2RS architecture =
does not include multi-message atomicity</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; and roll-back =
mechanisms.&nbsp; I2RS notes multiple operations in one =
or</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; more messages handling can =
handle errors within the set of operations</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; in many ways.&nbsp; No =
multi-message commands SHOULD cause errors to =
be</span><o:p></o:p></pre><pre =
style=3D'margin-bottom:7.9pt;background:#FFFDF5;word-break:break-all'><sp=
an style=3D'font-size:10.5pt'>&nbsp;&nbsp; inserted into the ephemeral =
state.</span><o:p></o:p></pre></div><p class=3DMsoNormal><span =
style=3D'color:#1F497D'>&nbsp;</span><o:p></o:p></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Accepted change for -15. </span><o:p></o:p></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&nbsp;</span><o:p></o:p></p><p>Thanks,<br>Rob<o:p></o:p></p><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div></div></body></html>
------=_NextPart_000_4B7A_01D1D2E1.D49FC4D0--


From nobody Thu Jun 30 12:38:31 2016
Return-Path: <evoit@cisco.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 E076812D0CF for <i2rs@ietfa.amsl.com>; Thu, 30 Jun 2016 12:38:29 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -15.936
X-Spam-Level: 
X-Spam-Status: No, score=-15.936 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-1.426, SPF_PASS=-0.001, T_KAM_HTML_FONT_INVALID=0.01, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.com
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 2xlXsHpHT8II for <i2rs@ietfa.amsl.com>; Thu, 30 Jun 2016 12:38:27 -0700 (PDT)
Received: from alln-iport-8.cisco.com (alln-iport-8.cisco.com [173.37.142.95]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 9383A12B05C for <i2rs@ietf.org>; Thu, 30 Jun 2016 12:38:27 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=21384; q=dns/txt; s=iport; t=1467315507; x=1468525107; h=from:to:cc:subject:date:message-id:references: in-reply-to:mime-version; bh=K5CzBrhNfMo8lrBaRfnTt9QJMBqvPbjs0pAoSjJXFhg=; b=MyxS5JM2JsgMLkq0gzyjL5hO9QHhkOdWmL/hYA/UL8q9zcBfGGvt3/ib XYr6pupGoT0MiWUMdDd2QUiDHcjoNgjN6tv/zagCwAhyJOieebfBUS1q7 eF8YBlCLgkIHYH4748e4cXj+pMCaTPOJc/u83KaKy3aLwIP7dNgxsiqlS I=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0CKAgD1c3VX/5tdJa1bgnBOVn0GtEaFA?= =?us-ascii?q?YF8hhcCHIEgOBQBAQEBAQEBZSeETAEBAQQjCkEGBRACAQYCDgMEAQEoAwICAjA?= =?us-ascii?q?UCQgCBA4FCIgolk+dHZAUAQEBAQEBAQEBAQEBAQEBAQEBAQEBHIYohE2EdoJLg?= =?us-ascii?q?loFmQsBjjmBcY1AhlWJLwEeNoIIHIFMbohCfwEBAQ?=
X-IronPort-AV: E=Sophos;i="5.26,553,1459814400";  d="scan'208,217";a="291990807"
Received: from rcdn-core-4.cisco.com ([173.37.93.155]) by alln-iport-8.cisco.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 30 Jun 2016 19:38:26 +0000
Received: from XCH-RTP-014.cisco.com (xch-rtp-014.cisco.com [64.101.220.154]) by rcdn-core-4.cisco.com (8.14.5/8.14.5) with ESMTP id u5UJcQIj011904 (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=FAIL); Thu, 30 Jun 2016 19:38:26 GMT
Received: from xch-rtp-013.cisco.com (64.101.220.153) by XCH-RTP-014.cisco.com (64.101.220.154) with Microsoft SMTP Server (TLS) id 15.0.1210.3; Thu, 30 Jun 2016 15:38:25 -0400
Received: from xch-rtp-013.cisco.com ([64.101.220.153]) by XCH-RTP-013.cisco.com ([64.101.220.153]) with mapi id 15.00.1210.000; Thu, 30 Jun 2016 15:38:25 -0400
From: "Eric Voit (evoit)" <evoit@cisco.com>
To: Susan Hares <shares@ndzh.com>
Thread-Topic: [i2rs] Review of draft-ietf-i2rs-ephemeral-state-11
Thread-Index: AQLFTksMOMokz5ko+uSOkEHfh/xdsgG0QEYAApbOvHWd+OppIIAAAQ+ggABpPgD//73JsA==
Date: Thu, 30 Jun 2016 19:38:25 +0000
Message-ID: <cb124be31a094f10b50fbdd219323ae2@XCH-RTP-013.cisco.com>
References: <4f70e94d-f73b-73a7-c41b-9ab5ffeeda6f@cisco.com> <4a5201d1d2ea$9eef05e0$dccd11a0$@ndzh.com> <33da1b11-f55a-b1ac-2b44-d376ccf4dd9f@cisco.com> <4acf01d1d2f0$09221e70$1b665b50$@ndzh.com> <da139b3fdb4a4b54950459e810fcbb7b@XCH-RTP-013.cisco.com> <4b7901d1d303$5bacf800$1306e800$@ndzh.com>
In-Reply-To: <4b7901d1d303$5bacf800$1306e800$@ndzh.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-ms-exchange-transport-fromentityheader: Hosted
x-originating-ip: [10.118.56.231]
Content-Type: multipart/alternative; boundary="_000_cb124be31a094f10b50fbdd219323ae2XCHRTP013ciscocom_"
MIME-Version: 1.0
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/9PoDPhz4uSsNfN-uvuf94VKZIiI>
Cc: "i2rs@ietf.org" <i2rs@ietf.org>
Subject: Re: [i2rs] Review of draft-ietf-i2rs-ephemeral-state-11
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 30 Jun 2016 19:38:30 -0000

--_000_cb124be31a094f10b50fbdd219323ae2XCHRTP013ciscocom_
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64

RnJvbTogU3VzYW4gSGFyZXMsIEp1bmUgMzAsIDIwMTYgMzoxMyBQTQ0KDQpFcmljOg0KDQpUaGFu
ayB5b3UgZm9yIHlvdXIgY29tbWVudHM6ICBTZWUgY29tbWVudHMgYmVsb3cuDQoNClN1ZQ0KDQpG
cm9tOiBpMnJzIFttYWlsdG86aTJycy1ib3VuY2VzQGlldGYub3JnXSBPbiBCZWhhbGYgT2YgRXJp
YyBWb2l0IChldm9pdCkNClNlbnQ6IFRodXJzZGF5LCBKdW5lIDMwLCAyMDE2IDI6NTIgUE0NClRv
OiBTdXNhbiBIYXJlcw0KQ2M6IGkycnNAaWV0Zi5vcmc8bWFpbHRvOmkycnNAaWV0Zi5vcmc+DQpT
dWJqZWN0OiBSZTogW2kycnNdIFJldmlldyBvZiBkcmFmdC1pZXRmLWkycnMtZXBoZW1lcmFsLXN0
YXRlLTExDQoNCg0KPkNvbW1lbnQgIzINCj5Jc27igJl0IGFsbCBkYXRhIGluIE9wZXJhdGlvbmFs
IGRhdGEgc3RvcmVzIGVwaGVtZXJhbD8gIEkgc2VlIHRoZSBtYWlsaW5nIGxpc3QgZGlzY3Vzc2lv
bnMgb24gdGhpcyB0ZXJtaW5vbG9neSB0b3BpYyBmb3IgdGhlIHJlcXVpcmVtZW50cyBlYXJsaWVy
IGluIHRoZSBkb2N1bWVudC4gIFRoaXMgaXMgd2hlcmUgeW91IHNhaWQ6IOKAnEVwaGVtZXJhbCBz
dGF0ZSBpcyBkZWZpbmVkIGFzICJlcGhlbWVyYWwgY29uZmlndXJhdGlvbiBzdGF0ZSIgYW5kIG9w
ZXJhdGlvbmFsIHN0YXRlLuKAnSAgQnV0IHRoZSA+dGVybWlub2xvZ3kgZml4IGRvZXNu4oCZdCBz
ZWVtIHRvIGhhdmUgbWFkZSBpdCBkb3duIGhlcmUuDQpTdWU6IFdlIHRob3VnaHQgdGhpcyB3YXMg
bW9yZSBzcGVjaWZpYy4gIEkgY2FuIGNoYW5nZSBpdCB0byDigJxFcGhlbWVyYWwgc3RhdGXigJ0u
DQpFcmljOiBjb25zaXN0ZW5jeSB3aXRoIGhpZ2hlciByZXF1aXJlbWVudHMgbWFrZXMgc2Vuc2Uu
DQoNCg0KUHViLVN1Yi1SRVEtMDI6DQpDb21tZW50ICMzOg0KPkJ1aWxkaW5nIG9mZiBDb21tZW50
ICMyLCBpcyB0aGVyZSBzdWNoIGEgdGhpbmcgYXMgRXBoZW1lcmFsIGRhdGEgaW4gT3BlcmF0aW9u
YWwgZGF0YT8gIE9yIGFyZSB5b3UgdGFsa2luZyBmaWx0ZXJpbmcgc28gdGhhdCBvbmx5IGNoYW5n
ZXMgaW4gT3BlcmF0aW9uYWwgZGF0YSBhcmUgc2VudC4gICBJIGJlbGlldmUgeW91IGFyZSBpbnRl
bmRpbmcgdGhlIHNlY29uZC4gICBJbiB0aGF0IGNhc2UgdGhlcmUgbWlnaHQgbmVlZCB0byBiZSBz
cGVjaWFsIHR5cGVzIG9mIGZpbHRlcnMgPm5lZWRlZC4gIEZpbHRlcnMgc3VjaCBhcyBhIGNvdW50
IG9mIHRoZSBudW1iZXIgb2Ygb2JqZWN0cyB1bmRlciBhIHRyZWUgKGUuZy4sIG51bWJlciBvZiBy
b3V0ZXMpLCBvciByYW5nZSBiYXNlZCBmaWx0ZXJzIGZvciBhbiBvcGVyYXRpb25hbCB2YWx1ZS4N
Cg0KU3VlOiBXZSBoYXZlIGVwaGVtZXJhbCBkYXRhIG1vZGVscyB3aXRoIG9wZXJhdGlvbmFsIHN0
YXRlLiAgVGVjaG5pY2FsbHksIHRoZSBkYXRhIGlzIGJvdGggZXBoZW1lcmFsICh1bmRlciBhbiBl
cGhlbWVyYWwgbW9kZWwpIGFuZCBvcGVyYXRpb25hbCBzdGF0ZS4gICBUaGUgZGlmZmljdWx0eSBp
cyB0aGF0IHRoaXMgY29uZmxpY3RzIHdpdGggc29tZSBkYXRhIG1vZGVscy4NCkVyaWM6IEkgdW5k
ZXJzdGFuZCBub3cuICAgQXMgYW4gYXNpZGUgY29tbWVudCwgdGhlIHR5cGVzIG9mIGZpbHRlcmlu
ZyBuZWVkZWQgd2lsbCBiZSB2YXJpZWQgYW5kIGNvbXBsZXguICBUaGV5IHdpbGwgbmVlZCB0byBi
ZSBzcGVjaWZpZWQgbGF0ZXIsIGFuZCBzaG91bGQgZGlyZWN0bHkgY29ycmVzcG9uZCB3aXRoIHRo
ZSBmaWx0ZXJzIHdoaWNoIHdlIG5lZWQgdG8gc3VwcG9ydCB2aWEgaW4gZHJhZnQtaWV0Zi1uZXRj
b25mLXlhbmctcHVzaC4NCg0KU2VjdGlvbiAyLCBCdWxsZXRzIDUgJiA5IGFuZCBTZWN0aW9uIDc6
DQo+UHJpb3JpdHkgQ29sbGlzaW9uLiAgQ291bGQgeW91IGV4cGxpY2l0bHkgc2F5IHdoZW4gdGhl
IHByaW9yaXR5IG9mIG9uZSB3cml0ZSB3aWxsIHByZXZlbnQgYSBsb3dlciBwcmlvcml0eSB3cml0
ZSBmcm9tIG9jY3VycmluZz8gIElzIGl0IHRoZSBjb21wbGV0aW9uIG9mIGFuZCByZXNwb25zZSB0
byBzb21lIFBPU1Q/ICBJIGRvbuKAmXQga25vdyB3aGF0IHRpbWUtb2YtdXNlIG1lYW5zLg0KPg0K
SW4gUkVTVENPTkYsICB0aGUgdXBkYXRpbmcgcHJvY2VzcyB3aWxsIGNoZWNrIHRoZSBwcmlvcml0
eSBvZiB0aGUgZXhpc3Rpbmcgd3JpdGUuICBUaGlzIGNoZWNrIHdpbGwgb2NjdXIgYXQgbGVhc3Qg
dGhlIGNvbXBsZXRpb24gb2YgdGhlIFBPU1QgZm9yIGFuIG92ZXItd3JpdGUgb2YgYW4gZXhpc3Rp
bmcgcG9zdC4gIFNpbmNlIHRoZSBSRVNUQ09ORiBwb3N0cyBhcmUgbm90IHNpbXVsdGFuZW91cyAo
YnV0IHJhdGhlciAxIGF0IGEgdGltZSksIHRoZSBjaGVjayB3aWxsIG9jY3VyIGEgc2luZ2xlIHdy
aXRlLg0KSW4gTkVUQ09ORiwgdGhpcyB3aWxsIGJlIGF0IGVkaXQtY29uZmlnIHN0YWdlLiBCb3Ro
IG9mIHRoZXNlIHN0YWdlcyB3ZXJlIGRlZmluZWQgYXMg4oCcdGltZSBvZiB1c2XigJ0g4oCTIGJl
Y2F1c2UgaXQgd2FzIHdoZW4gdGhlIHVwZGF0ZSB3YXMgdG8gb2NjdXIuDQoNCkVyaWM6IEkgdGhp
bmsgaXQgaXMgcG9zc2libGUgdGhhdCBSRVNUQ09ORiBhbmQgTkVUQ09ORiBwb3N0cyBjYW4gY29t
ZSBpbiBjb25jdXJyZW50bHkgZnJvbSBhbHRlcm5hdGl2ZSBzb3VyY2VzLiAgSSB0aGluayBkZXRl
Y3RpbmcgdGhpcyBpcyBvbmUgb2YgdGhlIHB1cnBvc2VzIG9mIEVUYWcgaW4gZHJhZnQtaWV0Zi1u
ZXRjb25mLXJlc3Rjb25mLTEzIHNlY3Rpb24gMy40LjEuMi4gICBJdCBtaWdodCBiZSB3b3J0aCBo
YXZlIHRoZSByZXF1aXJlbWVudCBzdGF0ZSB0aGF0IHByaW9yaXR5IG11c3QgYmUgY29uc2lkZXJl
ZCBmb3IgYm90aCBjb21wbGV0ZWQgZXBoZW1lcmFsIHBvc3RzLCBhcyB3ZWxsIGFzIHBvc3RzIGlu
IHByb2dyZXNzLg0KDQovRXJpYw0KDQpEbyB5b3UgaGF2ZSBhbiBhbHRlcm5hdGUgc3VnZ2VzdGlv
bj8NCg0KRXJpYw0KDQoNCg==

--_000_cb124be31a094f10b50fbdd219323ae2XCHRTP013ciscocom_
Content-Type: text/html; charset="utf-8"
Content-Transfer-Encoding: base64

PGh0bWwgeG1sbnM6dj0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTp2bWwiIHhtbG5zOm89InVy
bjpzY2hlbWFzLW1pY3Jvc29mdC1jb206b2ZmaWNlOm9mZmljZSIgeG1sbnM6dz0idXJuOnNjaGVt
YXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6d29yZCIgeG1sbnM6bT0iaHR0cDovL3NjaGVtYXMubWlj
cm9zb2Z0LmNvbS9vZmZpY2UvMjAwNC8xMi9vbW1sIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
VFIvUkVDLWh0bWw0MCI+DQo8aGVhZD4NCjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIg
Y29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4NCjxtZXRhIG5hbWU9IkdlbmVyYXRv
ciIgY29udGVudD0iTWljcm9zb2Z0IFdvcmQgMTQgKGZpbHRlcmVkIG1lZGl1bSkiPg0KPHN0eWxl
PjwhLS0NCi8qIEZvbnQgRGVmaW5pdGlvbnMgKi8NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6
Q2FsaWJyaTsNCglwYW5vc2UtMToyIDE1IDUgMiAyIDIgNCAzIDIgNDt9DQpAZm9udC1mYWNlDQoJ
e2ZvbnQtZmFtaWx5OlRhaG9tYTsNCglwYW5vc2UtMToyIDExIDYgNCAzIDUgNCA0IDIgNDt9DQpA
Zm9udC1mYWNlDQoJe2ZvbnQtZmFtaWx5OkNvbnNvbGFzOw0KCXBhbm9zZS0xOjIgMTEgNiA5IDIg
MiA0IDMgMiA0O30NCi8qIFN0eWxlIERlZmluaXRpb25zICovDQpwLk1zb05vcm1hbCwgbGkuTXNv
Tm9ybWFsLCBkaXYuTXNvTm9ybWFsDQoJe21hcmdpbjowaW47DQoJbWFyZ2luLWJvdHRvbTouMDAw
MXB0Ow0KCWZvbnQtc2l6ZToxMi4wcHQ7DQoJZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiIs
InNlcmlmIjsNCgljb2xvcjpibGFjazt9DQpoMg0KCXttc28tc3R5bGUtcHJpb3JpdHk6OTsNCglt
c28tc3R5bGUtbGluazoiSGVhZGluZyAyIENoYXIiOw0KCW1zby1tYXJnaW4tdG9wLWFsdDphdXRv
Ow0KCW1hcmdpbi1yaWdodDowaW47DQoJbXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG87DQoJbWFy
Z2luLWxlZnQ6MGluOw0KCWZvbnQtc2l6ZToxOC4wcHQ7DQoJZm9udC1mYW1pbHk6IlRpbWVzIE5l
dyBSb21hbiIsInNlcmlmIjsNCgljb2xvcjp3aW5kb3d0ZXh0Ow0KCWZvbnQtd2VpZ2h0OmJvbGQ7
fQ0KYTpsaW5rLCBzcGFuLk1zb0h5cGVybGluaw0KCXttc28tc3R5bGUtcHJpb3JpdHk6OTk7DQoJ
Y29sb3I6Ymx1ZTsNCgl0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO30NCmE6dmlzaXRlZCwgc3Bh
bi5Nc29IeXBlcmxpbmtGb2xsb3dlZA0KCXttc28tc3R5bGUtcHJpb3JpdHk6OTk7DQoJY29sb3I6
cHVycGxlOw0KCXRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7fQ0KcA0KCXttc28tc3R5bGUtcHJp
b3JpdHk6OTk7DQoJbXNvLW1hcmdpbi10b3AtYWx0OmF1dG87DQoJbWFyZ2luLXJpZ2h0OjBpbjsN
Cgltc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0bzsNCgltYXJnaW4tbGVmdDowaW47DQoJZm9udC1z
aXplOjEyLjBwdDsNCglmb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIiwic2VyaWYiOw0KCWNv
bG9yOmJsYWNrO30NCnByZQ0KCXttc28tc3R5bGUtcHJpb3JpdHk6OTk7DQoJbXNvLXN0eWxlLWxp
bms6IkhUTUwgUHJlZm9ybWF0dGVkIENoYXIiOw0KCW1hcmdpbjowaW47DQoJbWFyZ2luLWJvdHRv
bTouMDAwMXB0Ow0KCWZvbnQtc2l6ZToxMC4wcHQ7DQoJZm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3
IjsNCgljb2xvcjpibGFjazt9DQpwLk1zb0FjZXRhdGUsIGxpLk1zb0FjZXRhdGUsIGRpdi5Nc29B
Y2V0YXRlDQoJe21zby1zdHlsZS1wcmlvcml0eTo5OTsNCgltc28tc3R5bGUtbGluazoiQmFsbG9v
biBUZXh0IENoYXIiOw0KCW1hcmdpbjowaW47DQoJbWFyZ2luLWJvdHRvbTouMDAwMXB0Ow0KCWZv
bnQtc2l6ZTo4LjBwdDsNCglmb250LWZhbWlseToiVGFob21hIiwic2Fucy1zZXJpZiI7DQoJY29s
b3I6YmxhY2s7fQ0Kc3Bhbi5IZWFkaW5nMkNoYXINCgl7bXNvLXN0eWxlLW5hbWU6IkhlYWRpbmcg
MiBDaGFyIjsNCgltc28tc3R5bGUtcHJpb3JpdHk6OTsNCgltc28tc3R5bGUtbGluazoiSGVhZGlu
ZyAyIjsNCglmb250LXdlaWdodDpib2xkO30NCnNwYW4uSFRNTFByZWZvcm1hdHRlZENoYXINCgl7
bXNvLXN0eWxlLW5hbWU6IkhUTUwgUHJlZm9ybWF0dGVkIENoYXIiOw0KCW1zby1zdHlsZS1wcmlv
cml0eTo5OTsNCgltc28tc3R5bGUtbGluazoiSFRNTCBQcmVmb3JtYXR0ZWQiOw0KCWZvbnQtZmFt
aWx5OkNvbnNvbGFzOw0KCWNvbG9yOmJsYWNrO30NCnNwYW4uQmFsbG9vblRleHRDaGFyDQoJe21z
by1zdHlsZS1uYW1lOiJCYWxsb29uIFRleHQgQ2hhciI7DQoJbXNvLXN0eWxlLXByaW9yaXR5Ojk5
Ow0KCW1zby1zdHlsZS1saW5rOiJCYWxsb29uIFRleHQiOw0KCWZvbnQtZmFtaWx5OiJUYWhvbWEi
LCJzYW5zLXNlcmlmIjsNCgljb2xvcjpibGFjazt9DQpzcGFuLkVtYWlsU3R5bGUyMw0KCXttc28t
c3R5bGUtdHlwZTpwZXJzb25hbDsNCglmb250LWZhbWlseToiQ2FsaWJyaSIsInNhbnMtc2VyaWYi
Ow0KCWNvbG9yOiMxRjQ5N0Q7fQ0Kc3Bhbi5FbWFpbFN0eWxlMjQNCgl7bXNvLXN0eWxlLXR5cGU6
cGVyc29uYWw7DQoJZm9udC1mYW1pbHk6IkNhbGlicmkiLCJzYW5zLXNlcmlmIjsNCgljb2xvcjoj
MUY0OTdEO30NCnNwYW4uRW1haWxTdHlsZTI1DQoJe21zby1zdHlsZS10eXBlOnBlcnNvbmFsOw0K
CWZvbnQtZmFtaWx5OiJDYWxpYnJpIiwic2Fucy1zZXJpZiI7DQoJY29sb3I6IzFGNDk3RDt9DQpz
cGFuLkVtYWlsU3R5bGUyNg0KCXttc28tc3R5bGUtdHlwZTpwZXJzb25hbDsNCglmb250LWZhbWls
eToiQ2FsaWJyaSIsInNhbnMtc2VyaWYiOw0KCWNvbG9yOiMxRjQ5N0Q7fQ0Kc3Bhbi5FbWFpbFN0
eWxlMjcNCgl7bXNvLXN0eWxlLXR5cGU6cGVyc29uYWwtcmVwbHk7DQoJZm9udC1mYW1pbHk6IkNh
bGlicmkiLCJzYW5zLXNlcmlmIjsNCgljb2xvcjojMUY0OTdEO30NCi5Nc29DaHBEZWZhdWx0DQoJ
e21zby1zdHlsZS10eXBlOmV4cG9ydC1vbmx5Ow0KCWZvbnQtc2l6ZToxMC4wcHQ7fQ0KQHBhZ2Ug
V29yZFNlY3Rpb24xDQoJe3NpemU6OC41aW4gMTEuMGluOw0KCW1hcmdpbjoxLjBpbiAxLjBpbiAx
LjBpbiAxLjBpbjt9DQpkaXYuV29yZFNlY3Rpb24xDQoJe3BhZ2U6V29yZFNlY3Rpb24xO30NCi0t
Pjwvc3R5bGU+PCEtLVtpZiBndGUgbXNvIDldPjx4bWw+DQo8bzpzaGFwZWRlZmF1bHRzIHY6ZXh0
PSJlZGl0IiBzcGlkbWF4PSIxMDI2IiAvPg0KPC94bWw+PCFbZW5kaWZdLS0+PCEtLVtpZiBndGUg
bXNvIDldPjx4bWw+DQo8bzpzaGFwZWxheW91dCB2OmV4dD0iZWRpdCI+DQo8bzppZG1hcCB2OmV4
dD0iZWRpdCIgZGF0YT0iMSIgLz4NCjwvbzpzaGFwZWxheW91dD48L3htbD48IVtlbmRpZl0tLT4N
CjwvaGVhZD4NCjxib2R5IGJnY29sb3I9IndoaXRlIiBsYW5nPSJFTi1VUyIgbGluaz0iYmx1ZSIg
dmxpbms9InB1cnBsZSI+DQo8ZGl2IGNsYXNzPSJXb3JkU2VjdGlvbjEiPg0KPHAgY2xhc3M9Ik1z
b05vcm1hbCI+PGI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6JnF1
b3Q7VGFob21hJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6d2luZG93dGV4dCI+
RnJvbTo8L3NwYW4+PC9iPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5
OiZxdW90O1RhaG9tYSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOndpbmRvd3Rl
eHQiPiBTdXNhbiBIYXJlcywgSnVuZSAzMCwgMjAxNiAzOjEzIFBNPGJyPg0KPGJyPg0KPG86cD48
L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQt
c2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNl
cmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPkVyaWM6DQo8bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8
cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZh
bWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFG
NDk3RCI+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+
PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZx
dW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPlRoYW5rIHlvdSBmb3Ig
eW91ciBjb21tZW50czogJm5ic3A7U2VlIGNvbW1lbnRzIGJlbG93LjxvOnA+PC9vOnA+PC9zcGFu
PjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0
O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztj
b2xvcjojMUY0OTdEIj48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNv
Tm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtD
YWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+U3VlDQo8
bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0i
Zm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3Nh
bnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9w
Pg0KPGRpdj4NCjxkaXYgc3R5bGU9ImJvcmRlcjpub25lO2JvcmRlci10b3A6c29saWQgI0I1QzRE
RiAxLjBwdDtwYWRkaW5nOjMuMHB0IDBpbiAwaW4gMGluIj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwi
PjxiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O1RhaG9t
YSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOndpbmRvd3RleHQiPkZyb206PC9z
cGFuPjwvYj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjEwLjBwdDtmb250LWZhbWlseTomcXVvdDtU
YWhvbWEmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjp3aW5kb3d0ZXh0Ij4gaTJy
cyBbPGEgaHJlZj0ibWFpbHRvOmkycnMtYm91bmNlc0BpZXRmLm9yZyI+bWFpbHRvOmkycnMtYm91
bmNlc0BpZXRmLm9yZzwvYT5dDQo8Yj5PbiBCZWhhbGYgT2YgPC9iPkVyaWMgVm9pdCAoZXZvaXQp
PGJyPg0KPGI+U2VudDo8L2I+IFRodXJzZGF5LCBKdW5lIDMwLCAyMDE2IDI6NTIgUE08YnI+DQo8
Yj5Ubzo8L2I+IFN1c2FuIEhhcmVzPGJyPg0KPGI+Q2M6PC9iPiA8YSBocmVmPSJtYWlsdG86aTJy
c0BpZXRmLm9yZyI+aTJyc0BpZXRmLm9yZzwvYT48YnI+DQo8Yj5TdWJqZWN0OjwvYj4gUmU6IFtp
MnJzXSBSZXZpZXcgb2YgZHJhZnQtaWV0Zi1pMnJzLWVwaGVtZXJhbC1zdGF0ZS0xMTxvOnA+PC9v
OnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPC9kaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48bzpw
PiZuYnNwOzwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250
LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1z
ZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+DQo8
cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZh
bWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFG
NDk3RCI+Jmd0O0NvbW1lbnQgIzI8bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNv
Tm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtD
YWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+Jmd0O0lz
buKAmXQgYWxsIGRhdGEgaW4gT3BlcmF0aW9uYWwgZGF0YSBzdG9yZXMgZXBoZW1lcmFsPyZuYnNw
OyBJIHNlZSB0aGUgbWFpbGluZyBsaXN0IGRpc2N1c3Npb25zIG9uIHRoaXMgdGVybWlub2xvZ3kg
dG9waWMgZm9yIHRoZSByZXF1aXJlbWVudHMgZWFybGllciBpbiB0aGUgZG9jdW1lbnQuJm5ic3A7
DQogVGhpcyBpcyB3aGVyZSB5b3Ugc2FpZDog4oCcPGk+RXBoZW1lcmFsIHN0YXRlIGlzIGRlZmlu
ZWQgYXMgJnF1b3Q7ZXBoZW1lcmFsIGNvbmZpZ3VyYXRpb24gc3RhdGUmcXVvdDsgYW5kIG9wZXJh
dGlvbmFsIHN0YXRlPC9pPi7igJ0mbmJzcDsgQnV0IHRoZSAmZ3Q7dGVybWlub2xvZ3kgZml4IGRv
ZXNu4oCZdCBzZWVtIHRvIGhhdmUgbWFkZSBpdCBkb3duIGhlcmUuPG86cD48L286cD48L3NwYW4+
PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7
Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2Nv
bG9yOiMxRjQ5N0QiPlN1ZTogV2UgdGhvdWdodCB0aGlzIHdhcyBtb3JlIHNwZWNpZmljLiZuYnNw
OyBJIGNhbiBjaGFuZ2UgaXQgdG8g4oCcRXBoZW1lcmFsIHN0YXRl4oCdLiZuYnNwOw0KPG86cD48
L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQt
c2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNl
cmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPkVyaWM6IGNvbnNpc3RlbmN5IHdpdGggaGlnaGVyIHJl
cXVpcmVtZW50cyBtYWtlcyBzZW5zZS48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0i
TXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVv
dDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+PG86
cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5
bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVv
dDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFu
PjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0
O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztj
b2xvcjojMUY0OTdEIj5QdWItU3ViLVJFUS0wMjoNCjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjxw
IGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFt
aWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0
OTdEIj5Db21tZW50ICMzOjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3Jt
YWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGli
cmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj4mZ3Q7QnVpbGRp
bmcgb2ZmIENvbW1lbnQgIzIsIGlzIHRoZXJlIHN1Y2ggYSB0aGluZyBhcyBFcGhlbWVyYWwgZGF0
YSBpbiBPcGVyYXRpb25hbCBkYXRhPyZuYnNwOyBPciBhcmUgeW91IHRhbGtpbmcgZmlsdGVyaW5n
IHNvIHRoYXQgb25seSBjaGFuZ2VzIGluIE9wZXJhdGlvbmFsIGRhdGENCiBhcmUgc2VudC4mbmJz
cDsmbmJzcDsgSSBiZWxpZXZlIHlvdSBhcmUgaW50ZW5kaW5nIHRoZSBzZWNvbmQuJm5ic3A7Jm5i
c3A7IEluIHRoYXQgY2FzZSB0aGVyZSBtaWdodCBuZWVkIHRvIGJlIHNwZWNpYWwgdHlwZXMgb2Yg
ZmlsdGVycyAmZ3Q7bmVlZGVkLiZuYnNwOyBGaWx0ZXJzIHN1Y2ggYXMgYSBjb3VudCBvZiB0aGUg
bnVtYmVyIG9mIG9iamVjdHMgdW5kZXIgYSB0cmVlIChlLmcuLCBudW1iZXIgb2Ygcm91dGVzKSwg
b3IgcmFuZ2UgYmFzZWQgZmlsdGVycyBmb3IgYW4gb3BlcmF0aW9uYWwgdmFsdWUuPG86cD48L286
cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6
ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlm
JnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNs
YXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5
OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdE
Ij5TdWU6IFdlIGhhdmUgZXBoZW1lcmFsIGRhdGEgbW9kZWxzIHdpdGggb3BlcmF0aW9uYWwgc3Rh
dGUuJm5ic3A7IFRlY2huaWNhbGx5LCB0aGUgZGF0YSBpcyBib3RoIGVwaGVtZXJhbCAodW5kZXIg
YW4gZXBoZW1lcmFsIG1vZGVsKSBhbmQgb3BlcmF0aW9uYWwgc3RhdGUuJm5ic3A7Jm5ic3A7IFRo
ZQ0KIGRpZmZpY3VsdHkgaXMgdGhhdCB0aGlzIGNvbmZsaWN0cyB3aXRoIHNvbWUgZGF0YSBtb2Rl
bHMuIDxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0
eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1
b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj5FcmljOiBJIHVuZGVyc3RhbmQgbm93
LiZuYnNwOyZuYnNwOyBBcyBhbiBhc2lkZSBjb21tZW50LCB0aGUgdHlwZXMgb2YgZmlsdGVyaW5n
IG5lZWRlZCB3aWxsIGJlIHZhcmllZCBhbmQgY29tcGxleC4mbmJzcDsgVGhleSB3aWxsIG5lZWQg
dG8gYmUgc3BlY2lmaWVkIGxhdGVyLCBhbmQgc2hvdWxkIGRpcmVjdGx5DQogY29ycmVzcG9uZCB3
aXRoIHRoZSBmaWx0ZXJzIHdoaWNoIHdlIG5lZWQgdG8gc3VwcG9ydCB2aWEgaW4gZHJhZnQtaWV0
Zi1uZXRjb25mLXlhbmctcHVzaC48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNv
Tm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtD
YWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+PG86cD4m
bmJzcDs8L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9
ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtz
YW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPlNlY3Rpb24gMiwgQnVsbGV0cyA1ICZhbXA7
IDkgYW5kIFNlY3Rpb24gNzo8bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9y
bWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxp
YnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+Jmd0O1ByaW9y
aXR5IENvbGxpc2lvbi4mbmJzcDsgQ291bGQgeW91IGV4cGxpY2l0bHkgc2F5IHdoZW4gdGhlIHBy
aW9yaXR5IG9mIG9uZSB3cml0ZSB3aWxsIHByZXZlbnQgYSBsb3dlciBwcmlvcml0eSB3cml0ZSBm
cm9tIG9jY3VycmluZz8mbmJzcDsgSXMgaXQgdGhlIGNvbXBsZXRpb24gb2YgYW5kDQogcmVzcG9u
c2UgdG8gc29tZSBQT1NUPyZuYnNwOyBJIGRvbuKAmXQga25vdyB3aGF0IHRpbWUtb2YtdXNlIG1l
YW5zLiZuYnNwOyA8bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48
c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1
b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+Jmd0OzxvOnA+Jm5ic3A7
PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250
LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1z
ZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj5JbiBSRVNUQ09ORiwgJm5ic3A7dGhlIHVwZGF0aW5n
IHByb2Nlc3Mgd2lsbCBjaGVjayB0aGUgcHJpb3JpdHkgb2YgdGhlIGV4aXN0aW5nIHdyaXRlLiZu
YnNwOyBUaGlzIGNoZWNrIHdpbGwgb2NjdXIgYXQgbGVhc3QgdGhlIGNvbXBsZXRpb24gb2YgdGhl
IFBPU1QgZm9yIGFuIG92ZXItd3JpdGUNCiBvZiBhbiBleGlzdGluZyBwb3N0LiZuYnNwOyBTaW5j
ZSB0aGUgUkVTVENPTkYgcG9zdHMgYXJlIG5vdCBzaW11bHRhbmVvdXMgKGJ1dCByYXRoZXIgMSBh
dCBhIHRpbWUpLCB0aGUgY2hlY2sgd2lsbCBvY2N1ciBhIHNpbmdsZSB3cml0ZS4mbmJzcDsmbmJz
cDsNCjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0
eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1
b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj5JbiBORVRDT05GLCB0aGlzIHdpbGwg
YmUgYXQgZWRpdC1jb25maWcgc3RhZ2UuIEJvdGggb2YgdGhlc2Ugc3RhZ2VzIHdlcmUgZGVmaW5l
ZCBhcyDigJx0aW1lIG9mIHVzZeKAnSDigJMgYmVjYXVzZSBpdCB3YXMgd2hlbiB0aGUgdXBkYXRl
IHdhcyB0byBvY2N1ci4NCjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3Jt
YWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGli
cmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj48bzpwPiZuYnNw
OzwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9u
dC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMt
c2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+RXJpYzogSSB0aGluayBpdCBpcyBwb3NzaWJsZSB0
aGF0IFJFU1RDT05GIGFuZCBORVRDT05GIHBvc3RzIGNhbiBjb21lIGluIGNvbmN1cnJlbnRseSBm
cm9tIGFsdGVybmF0aXZlIHNvdXJjZXMuICZuYnNwO0kgdGhpbmsgZGV0ZWN0aW5nIHRoaXMgaXMg
b25lIG9mIHRoZSBwdXJwb3Nlcw0KIG9mIEVUYWcgaW4gZHJhZnQtaWV0Zi1uZXRjb25mLXJlc3Rj
b25mLTEzIHNlY3Rpb24gMy40LjEuMi4mbmJzcDsmbmJzcDsgSXQgbWlnaHQgYmUgd29ydGggaGF2
ZSB0aGUgcmVxdWlyZW1lbnQgc3RhdGUgdGhhdCBwcmlvcml0eSBtdXN0IGJlIGNvbnNpZGVyZWQg
Zm9yIGJvdGggY29tcGxldGVkIGVwaGVtZXJhbCBwb3N0cywgYXMgd2VsbCBhcyBwb3N0cyBpbiBw
cm9ncmVzcy48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3Bh
biBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7
LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+PG86cD4mbmJzcDs8L286cD48
L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZTox
MS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1
b3Q7O2NvbG9yOiMxRjQ5N0QiPi9FcmljPG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9
Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1
b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPjxv
OnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0
eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1
b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj5EbyB5b3UgaGF2ZSBhbiBhbHRlcm5h
dGUgc3VnZ2VzdGlvbj8NCjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3Jt
YWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGli
cmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj48bzpwPiZuYnNw
OzwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9u
dC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMt
c2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+RXJpYzxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjxw
IGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFt
aWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0
OTdEIj48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+DQo8ZGl2IHN0eWxlPSJib3JkZXI6bm9u
ZTtib3JkZXItbGVmdDpzb2xpZCBibHVlIDEuNXB0O3BhZGRpbmc6MGluIDBpbiAwaW4gNC4wcHQi
Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PG86cD4mbmJzcDs8L286cD48L3A+DQo8L2Rpdj4NCjwv
ZGl2Pg0KPC9ib2R5Pg0KPC9odG1sPg0K

--_000_cb124be31a094f10b50fbdd219323ae2XCHRTP013ciscocom_--


From nobody Thu Jun 30 12:47:20 2016
Return-Path: <shares@ndzh.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 9CD2712D639 for <i2rs@ietfa.amsl.com>; Thu, 30 Jun 2016 12:47:19 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.749
X-Spam-Level: *
X-Spam-Status: No, score=1.749 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, HTML_MESSAGE=0.001, RDNS_NONE=0.793, T_KAM_HTML_FONT_INVALID=0.01] autolearn=no autolearn_force=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 vo2ti7aTsHZn for <i2rs@ietfa.amsl.com>; Thu, 30 Jun 2016 12:47:18 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 28C1212D635 for <i2rs@ietf.org>; Thu, 30 Jun 2016 12:47:18 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=174.124.165.235; 
From: "Susan Hares" <shares@ndzh.com>
To: "'Eric Voit \(evoit\)'" <evoit@cisco.com>
References: <4f70e94d-f73b-73a7-c41b-9ab5ffeeda6f@cisco.com> <4a5201d1d2ea$9eef05e0$dccd11a0$@ndzh.com> <33da1b11-f55a-b1ac-2b44-d376ccf4dd9f@cisco.com> <4acf01d1d2f0$09221e70$1b665b50$@ndzh.com> <da139b3fdb4a4b54950459e810fcbb7b@XCH-RTP-013.cisco.com> <4b7901d1d303$5bacf800$1306e800$@ndzh.com> <cb124be31a094f10b50fbdd219323ae2@XCH-RTP-013.cisco.com>
In-Reply-To: <cb124be31a094f10b50fbdd219323ae2@XCH-RTP-013.cisco.com>
Date: Thu, 30 Jun 2016 15:46:47 -0400
Message-ID: <4be601d1d308$23b923b0$6b2b6b10$@ndzh.com>
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="----=_NextPart_000_4BE7_01D1D2E6.9CA8E340"
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQLFTksMOMokz5ko+uSOkEHfh/xdsgG0QEYAApbOvHUB+LnyvQFPVasIAoDY6RsCHhOZqJ254U2g
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/LkUOqhudhHqUMRZxUHLh9BWlsxo>
Cc: i2rs@ietf.org
Subject: Re: [i2rs] Review of draft-ietf-i2rs-ephemeral-state-11
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 30 Jun 2016 19:47:19 -0000

This is a multipart message in MIME format.

------=_NextPart_000_4BE7_01D1D2E6.9CA8E340
Content-Type: text/plain;
	charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Eric:=20

=20

For version -13, the following  changes will be made:=20

=20

   Pub-Sub-REQ-01: The Subscription Service MUST support=20

   subscriptions against ephemeral state in operational data stores, =
configuration data stores or both.

  =20

   Pub-Sub-REQ-02: The Subscription Service MUST support filtering=20

   so that subscribed updates under a target node might publish only=20

   ephemeral state in operational data or configuration data, or publish =
both=20

   ephemeral and operational data.

=20

=20

Ephemeral-REQ-12:

Will have the following text after it=20


   Note:RESTCONF and NETCONF posts can come in concurrently from =
alternative sources=20

   (see  ETag in <xref target=3D"draft-ietf-netconf-restconf"></xref> =
section 3.4.1.2 usage).

   Therefore the collision detection and comparison of priority needs to =
occur both

   for both type of updates (POST or edit-config) at the point of =
comparison.=20

 =20

Does this resolve your comments?=20

=20

Sue=20

=20

From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Eric Voit (evoit)
Sent: Thursday, June 30, 2016 3:38 PM
To: Susan Hares
Cc: i2rs@ietf.org
Subject: Re: [i2rs] Review of draft-ietf-i2rs-ephemeral-state-11

=20

From: Susan Hares, June 30, 2016 3:13 PM

Eric:=20

=20

Thank you for your comments:  See comments below.

=20

Sue=20

=20

From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Eric Voit (evoit)
Sent: Thursday, June 30, 2016 2:52 PM
To: Susan Hares
Cc: i2rs@ietf.org
Subject: Re: [i2rs] Review of draft-ietf-i2rs-ephemeral-state-11

=20

=20

>Comment #2

>Isn=E2=80=99t all data in Operational data stores ephemeral?  I see the =
mailing list discussions on this terminology topic for the requirements =
earlier in the document.  This is where you said: =E2=80=9CEphemeral =
state is defined as "ephemeral configuration state" and operational =
state.=E2=80=9D  But the >terminology fix doesn=E2=80=99t seem to have =
made it down here.

Sue: We thought this was more specific.  I can change it to =
=E2=80=9CEphemeral state=E2=80=9D. =20

Eric: consistency with higher requirements makes sense.

=20

=20

Pub-Sub-REQ-02:=20

Comment #3:

>Building off Comment #2, is there such a thing as Ephemeral data in =
Operational data?  Or are you talking filtering so that only changes in =
Operational data are sent.   I believe you are intending the second.   =
In that case there might need to be special types of filters >needed.  =
Filters such as a count of the number of objects under a tree (e.g., =
number of routes), or range based filters for an operational value.

=20

Sue: We have ephemeral data models with operational state.  Technically, =
the data is both ephemeral (under an ephemeral model) and operational =
state.   The difficulty is that this conflicts with some data models.=20

Eric: I understand now.   As an aside comment, the types of filtering =
needed will be varied and complex.  They will need to be specified =
later, and should directly correspond with the filters which we need to =
support via in draft-ietf-netconf-yang-push.

=20

Section 2, Bullets 5 & 9 and Section 7:

>Priority Collision.  Could you explicitly say when the priority of one =
write will prevent a lower priority write from occurring?  Is it the =
completion of and response to some POST?  I don=E2=80=99t know what =
time-of-use means. =20

>=20

In RESTCONF,  the updating process will check the priority of the =
existing write.  This check will occur at least the completion of the =
POST for an over-write of an existing post.  Since the RESTCONF posts =
are not simultaneous (but rather 1 at a time), the check will occur a =
single write.  =20

In NETCONF, this will be at edit-config stage. Both of these stages were =
defined as =E2=80=9Ctime of use=E2=80=9D =E2=80=93 because it was when =
the update was to occur.=20

=20

Eric: I think it is possible that RESTCONF and NETCONF posts can come in =
concurrently from alternative sources.  I think detecting this is one of =
the purposes of ETag in draft-ietf-netconf-restconf-13 section 3.4.1.2.  =
 It might be worth have the requirement state that priority must be =
considered for both completed ephemeral posts, as well as posts in =
progress.

=20

/Eric

=20

Do you have an alternate suggestion?=20

=20

Eric

=20

=20


------=_NextPart_000_4BE7_01D1D2E6.9CA8E340
Content-Type: text/html;
	charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" =
xmlns:o=3D"urn:schemas-microsoft-com:office:office" =
xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" =
xmlns=3D"http://www.w3.org/TR/REC-html40"><head><meta =
http-equiv=3DContent-Type content=3D"text/html; charset=3Dutf-8"><meta =
name=3DGenerator content=3D"Microsoft Word 14 (filtered =
medium)"><style><!--
/* Font Definitions */
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
	{font-family:Tahoma;
	panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
	{font-family:Consolas;
	panose-1:2 11 6 9 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0in;
	margin-bottom:.0001pt;
	font-size:12.0pt;
	font-family:"Times New Roman","serif";
	color:black;}
h2
	{mso-style-priority:9;
	mso-style-link:"Heading 2 Char";
	mso-margin-top-alt:auto;
	margin-right:0in;
	mso-margin-bottom-alt:auto;
	margin-left:0in;
	font-size:18.0pt;
	font-family:"Times New Roman","serif";
	color:windowtext;
	font-weight:bold;}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:blue;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:purple;
	text-decoration:underline;}
p
	{mso-style-priority:99;
	mso-margin-top-alt:auto;
	margin-right:0in;
	mso-margin-bottom-alt:auto;
	margin-left:0in;
	font-size:12.0pt;
	font-family:"Times New Roman","serif";
	color:black;}
pre
	{mso-style-priority:99;
	mso-style-link:"HTML Preformatted Char";
	margin:0in;
	margin-bottom:.0001pt;
	font-size:10.0pt;
	font-family:"Courier New";
	color:black;}
p.MsoAcetate, li.MsoAcetate, div.MsoAcetate
	{mso-style-priority:99;
	mso-style-link:"Balloon Text Char";
	margin:0in;
	margin-bottom:.0001pt;
	font-size:8.0pt;
	font-family:"Tahoma","sans-serif";
	color:black;}
span.Heading2Char
	{mso-style-name:"Heading 2 Char";
	mso-style-priority:9;
	mso-style-link:"Heading 2";
	font-weight:bold;}
span.HTMLPreformattedChar
	{mso-style-name:"HTML Preformatted Char";
	mso-style-priority:99;
	mso-style-link:"HTML Preformatted";
	font-family:Consolas;
	color:black;}
span.BalloonTextChar
	{mso-style-name:"Balloon Text Char";
	mso-style-priority:99;
	mso-style-link:"Balloon Text";
	font-family:"Tahoma","sans-serif";
	color:black;}
span.EmailStyle23
	{mso-style-type:personal;
	font-family:"Calibri","sans-serif";
	color:#1F497D;}
span.EmailStyle24
	{mso-style-type:personal;
	font-family:"Calibri","sans-serif";
	color:#1F497D;}
span.EmailStyle25
	{mso-style-type:personal;
	font-family:"Calibri","sans-serif";
	color:#1F497D;}
span.EmailStyle26
	{mso-style-type:personal;
	font-family:"Calibri","sans-serif";
	color:#1F497D;}
span.EmailStyle27
	{mso-style-type:personal;
	font-family:"Calibri","sans-serif";
	color:#1F497D;}
span.EmailStyle28
	{mso-style-type:personal-reply;
	font-family:"Calibri","sans-serif";
	color:#1F497D;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-size:10.0pt;}
@page WordSection1
	{size:8.5in 11.0in;
	margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
	{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]--></head><body bgcolor=3Dwhite =
lang=3DEN-US link=3Dblue vlink=3Dpurple><div class=3DWordSection1><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Eric: <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>For version -13, the following =C2=A0changes will be made: =
<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>=C2=A0=C2=A0 Pub-Sub-REQ-01: The Subscription Service MUST support =
<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>=C2=A0=C2=A0=C2=A0subscriptions against ephemeral state in =
operational data stores, configuration data stores or =
both.<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>=C2=A0=C2=A0 <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>=C2=A0=C2=A0=C2=A0Pub-Sub-REQ-02: The Subscription Service MUST =
support filtering <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>=C2=A0=C2=A0=C2=A0so that subscribed updates under a target node =
might publish only <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>=C2=A0=C2=A0=C2=A0ephemeral state in operational data or =
configuration data, or publish both <o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>=C2=A0=C2=A0=C2=A0ephemeral and operational =
data.<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Ephemeral-REQ-12:<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Will have the following text after it <o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><br>=C2=A0=C2=A0=C2=A0Note:RESTCONF and NETCONF posts can come in =
concurrently from alternative sources <o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>=C2=A0=C2=A0=C2=A0(see=C2=A0 ETag in &lt;xref =
target=3D&quot;draft-ietf-netconf-restconf&quot;&gt;&lt;/xref&gt; =
section 3.4.1.2 usage).<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>=C2=A0=C2=A0 Therefore the collision detection and comparison of =
priority needs to occur both<o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>=C2=A0=C2=A0 for both type of updates (POST or edit-config) at the =
point of comparison. <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>=C2=A0=C2=A0<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Does this resolve your comments? <o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Sue <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><div><div =
style=3D'border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in =
0in 0in'><p class=3DMsoNormal><b><span =
style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif";color:windowt=
ext'>From:</span></b><span =
style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif";color:windowt=
ext'> i2rs [mailto:i2rs-bounces@ietf.org] <b>On Behalf Of </b>Eric Voit =
(evoit)<br><b>Sent:</b> Thursday, June 30, 2016 3:38 PM<br><b>To:</b> =
Susan Hares<br><b>Cc:</b> i2rs@ietf.org<br><b>Subject:</b> Re: [i2rs] =
Review of =
draft-ietf-i2rs-ephemeral-state-11<o:p></o:p></span></p></div></div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p><p class=3DMsoNormal =
style=3D'margin-bottom:12.0pt'><b><span =
style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif";color:windowt=
ext'>From:</span></b><span =
style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif";color:windowt=
ext'> Susan Hares, June 30, 2016 3:13 PM<o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Eric: <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Thank you for your comments: &nbsp;See comments =
below.<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Sue <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><div><div =
style=3D'border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in =
0in 0in'><p class=3DMsoNormal><b><span =
style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif";color:windowt=
ext'>From:</span></b><span =
style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif";color:windowt=
ext'> i2rs [<a =
href=3D"mailto:i2rs-bounces@ietf.org">mailto:i2rs-bounces@ietf.org</a>] =
<b>On Behalf Of </b>Eric Voit (evoit)<br><b>Sent:</b> Thursday, June 30, =
2016 2:52 PM<br><b>To:</b> Susan Hares<br><b>Cc:</b> <a =
href=3D"mailto:i2rs@ietf.org">i2rs@ietf.org</a><br><b>Subject:</b> Re: =
[i2rs] Review of =
draft-ietf-i2rs-ephemeral-state-11<o:p></o:p></span></p></div></div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&gt;Comment #2<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&gt;Isn=E2=80=99t all data in Operational data stores =
ephemeral?&nbsp; I see the mailing list discussions on this terminology =
topic for the requirements earlier in the document.&nbsp; This is where =
you said: =E2=80=9C<i>Ephemeral state is defined as &quot;ephemeral =
configuration state&quot; and operational state</i>.=E2=80=9D&nbsp; But =
the &gt;terminology fix doesn=E2=80=99t seem to have made it down =
here.<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Sue: We thought this was more specific.&nbsp; I can change it to =
=E2=80=9CEphemeral state=E2=80=9D.&nbsp; <o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Eric: consistency with higher requirements makes =
sense.<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Pub-Sub-REQ-02: <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Comment #3:<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&gt;Building off Comment #2, is there such a thing as Ephemeral data =
in Operational data?&nbsp; Or are you talking filtering so that only =
changes in Operational data are sent.&nbsp;&nbsp; I believe you are =
intending the second.&nbsp;&nbsp; In that case there might need to be =
special types of filters &gt;needed.&nbsp; Filters such as a count of =
the number of objects under a tree (e.g., number of routes), or range =
based filters for an operational value.<o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Sue: We have ephemeral data models with operational state.&nbsp; =
Technically, the data is both ephemeral (under an ephemeral model) and =
operational state.&nbsp;&nbsp; The difficulty is that this conflicts =
with some data models. <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Eric: I understand now.&nbsp;&nbsp; As an aside comment, the types of =
filtering needed will be varied and complex.&nbsp; They will need to be =
specified later, and should directly correspond with the filters which =
we need to support via in =
draft-ietf-netconf-yang-push.<o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Section 2, Bullets 5 &amp; 9 and Section 7:<o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&gt;Priority Collision.&nbsp; Could you explicitly say when the =
priority of one write will prevent a lower priority write from =
occurring?&nbsp; Is it the completion of and response to some =
POST?&nbsp; I don=E2=80=99t know what time-of-use means.&nbsp; =
<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>&gt;<o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>In RESTCONF, &nbsp;the updating process will check the priority of =
the existing write.&nbsp; This check will occur at least the completion =
of the POST for an over-write of an existing post.&nbsp; Since the =
RESTCONF posts are not simultaneous (but rather 1 at a time), the check =
will occur a single write.&nbsp;&nbsp; <o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>In NETCONF, this will be at edit-config stage. Both of these stages =
were defined as =E2=80=9Ctime of use=E2=80=9D =E2=80=93 because it was =
when the update was to occur. <o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Eric: I think it is possible that RESTCONF and NETCONF posts can come =
in concurrently from alternative sources. &nbsp;I think detecting this =
is one of the purposes of ETag in draft-ietf-netconf-restconf-13 section =
3.4.1.2.&nbsp;&nbsp; It might be worth have the requirement state that =
priority must be considered for both completed ephemeral posts, as well =
as posts in progress.<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>/Eric<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Do you have an alternate suggestion? <o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'>Eric<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><div =
style=3D'border:none;border-left:solid blue 1.5pt;padding:0in 0in 0in =
4.0pt'><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div></div></body></html>
------=_NextPart_000_4BE7_01D1D2E6.9CA8E340--


From nobody Thu Jun 30 12:55:15 2016
Return-Path: <evoit@cisco.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 C992612D610 for <i2rs@ietfa.amsl.com>; Thu, 30 Jun 2016 12:55:13 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -15.936
X-Spam-Level: 
X-Spam-Status: No, score=-15.936 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-1.426, SPF_PASS=-0.001, T_KAM_HTML_FONT_INVALID=0.01, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.com
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 tl40saKlHrCn for <i2rs@ietfa.amsl.com>; Thu, 30 Jun 2016 12:55:11 -0700 (PDT)
Received: from rcdn-iport-6.cisco.com (rcdn-iport-6.cisco.com [173.37.86.77]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 2C32D12D5FD for <i2rs@ietf.org>; Thu, 30 Jun 2016 12:55:11 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=31232; q=dns/txt; s=iport; t=1467316511; x=1468526111; h=from:to:cc:subject:date:message-id:references: in-reply-to:mime-version; bh=iYWQs/irOLdF4Yc0+YIY501Z05b2aQdc51BGU8ljHKA=; b=J9UNxbhFDKhIT/3jA77gbK1+Uss4/CahOnt7WEl+OhhnWesEEsY75l5C 6FLjihZ9NJm6Kwa0uuSHSQB2fH2EwzIopQDmpz6TpHvJ/0+YB+Vj4N1Yl HXxkXduw44fiFrsbNcEDXp5SWX4qx9LAB4konUSV9LPhzvlrSTdr2eGqN k=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0AMAgDSd3VX/5ldJa1bgnBOVn0GuUeBf?= =?us-ascii?q?IYXAhyBIDgUAQEBAQEBAWUnhEwBAQEEIwpBBgUQAgEGAg4DBAEBDhMHAwICAjA?= =?us-ascii?q?UCQgCBA4FCIgollydHZAVAQEBAQEBAQEBAQEBAQEBAQEBAQEBHIYohE2EdoJLg?= =?us-ascii?q?loFk1WFNgGOOYFxjUCGVYkvAR42gggcgUxuiEJ/AQEB?=
X-IronPort-AV: E=Sophos;i="5.26,553,1459814400";  d="scan'208,217";a="120874918"
Received: from rcdn-core-2.cisco.com ([173.37.93.153]) by rcdn-iport-6.cisco.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 30 Jun 2016 19:55:10 +0000
Received: from XCH-RTP-012.cisco.com (xch-rtp-012.cisco.com [64.101.220.152]) by rcdn-core-2.cisco.com (8.14.5/8.14.5) with ESMTP id u5UJt9QH020674 (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=FAIL); Thu, 30 Jun 2016 19:55:10 GMT
Received: from xch-rtp-013.cisco.com (64.101.220.153) by XCH-RTP-012.cisco.com (64.101.220.152) with Microsoft SMTP Server (TLS) id 15.0.1210.3; Thu, 30 Jun 2016 15:55:08 -0400
Received: from xch-rtp-013.cisco.com ([64.101.220.153]) by XCH-RTP-013.cisco.com ([64.101.220.153]) with mapi id 15.00.1210.000; Thu, 30 Jun 2016 15:55:08 -0400
From: "Eric Voit (evoit)" <evoit@cisco.com>
To: Susan Hares <shares@ndzh.com>
Thread-Topic: [i2rs] Review of draft-ietf-i2rs-ephemeral-state-11
Thread-Index: AQLFTksMOMokz5ko+uSOkEHfh/xdsgG0QEYAApbOvHWd+OppIIAAAQ+ggABpPgD//73JsIAAS8aA//+/NIA=
Date: Thu, 30 Jun 2016 19:55:08 +0000
Message-ID: <cbf009f25e624ced9755a2dfaedb8c8a@XCH-RTP-013.cisco.com>
References: <4f70e94d-f73b-73a7-c41b-9ab5ffeeda6f@cisco.com> <4a5201d1d2ea$9eef05e0$dccd11a0$@ndzh.com> <33da1b11-f55a-b1ac-2b44-d376ccf4dd9f@cisco.com> <4acf01d1d2f0$09221e70$1b665b50$@ndzh.com> <da139b3fdb4a4b54950459e810fcbb7b@XCH-RTP-013.cisco.com> <4b7901d1d303$5bacf800$1306e800$@ndzh.com> <cb124be31a094f10b50fbdd219323ae2@XCH-RTP-013.cisco.com> <4be601d1d308$23b923b0$6b2b6b10$@ndzh.com>
In-Reply-To: <4be601d1d308$23b923b0$6b2b6b10$@ndzh.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-ms-exchange-transport-fromentityheader: Hosted
x-originating-ip: [10.118.56.231]
Content-Type: multipart/alternative; boundary="_000_cbf009f25e624ced9755a2dfaedb8c8aXCHRTP013ciscocom_"
MIME-Version: 1.0
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/OQJiN30y_iKiT2ldxiRoy5wnLFU>
Cc: "i2rs@ietf.org" <i2rs@ietf.org>
Subject: Re: [i2rs] Review of draft-ietf-i2rs-ephemeral-state-11
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 30 Jun 2016 19:55:14 -0000

--_000_cbf009f25e624ced9755a2dfaedb8c8aXCHRTP013ciscocom_
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64

V29ya3MgZm9yICBtZQ0KDQpFcmljOg0KDQpGb3IgdmVyc2lvbiAtMTMsIHRoZSBmb2xsb3dpbmcg
IGNoYW5nZXMgd2lsbCBiZSBtYWRlOg0KDQogICBQdWItU3ViLVJFUS0wMTogVGhlIFN1YnNjcmlw
dGlvbiBTZXJ2aWNlIE1VU1Qgc3VwcG9ydA0KICAgc3Vic2NyaXB0aW9ucyBhZ2FpbnN0IGVwaGVt
ZXJhbCBzdGF0ZSBpbiBvcGVyYXRpb25hbCBkYXRhIHN0b3JlcywgY29uZmlndXJhdGlvbiBkYXRh
IHN0b3JlcyBvciBib3RoLg0KDQogICBQdWItU3ViLVJFUS0wMjogVGhlIFN1YnNjcmlwdGlvbiBT
ZXJ2aWNlIE1VU1Qgc3VwcG9ydCBmaWx0ZXJpbmcNCiAgIHNvIHRoYXQgc3Vic2NyaWJlZCB1cGRh
dGVzIHVuZGVyIGEgdGFyZ2V0IG5vZGUgbWlnaHQgcHVibGlzaCBvbmx5DQogICBlcGhlbWVyYWwg
c3RhdGUgaW4gb3BlcmF0aW9uYWwgZGF0YSBvciBjb25maWd1cmF0aW9uIGRhdGEsIG9yIHB1Ymxp
c2ggYm90aA0KICAgZXBoZW1lcmFsIGFuZCBvcGVyYXRpb25hbCBkYXRhLg0KDQoNCkVwaGVtZXJh
bC1SRVEtMTI6DQpXaWxsIGhhdmUgdGhlIGZvbGxvd2luZyB0ZXh0IGFmdGVyIGl0DQoNCiAgIE5v
dGU6UkVTVENPTkYgYW5kIE5FVENPTkYgcG9zdHMgY2FuIGNvbWUgaW4gY29uY3VycmVudGx5IGZy
b20gYWx0ZXJuYXRpdmUgc291cmNlcw0KICAgKHNlZSAgRVRhZyBpbiA8eHJlZiB0YXJnZXQ9ImRy
YWZ0LWlldGYtbmV0Y29uZi1yZXN0Y29uZiI+PC94cmVmPiBzZWN0aW9uIDMuNC4xLjIgdXNhZ2Up
Lg0KICAgVGhlcmVmb3JlIHRoZSBjb2xsaXNpb24gZGV0ZWN0aW9uIGFuZCBjb21wYXJpc29uIG9m
IHByaW9yaXR5IG5lZWRzIHRvIG9jY3VyIGJvdGgNCiAgIGZvciBib3RoIHR5cGUgb2YgdXBkYXRl
cyAoUE9TVCBvciBlZGl0LWNvbmZpZykgYXQgdGhlIHBvaW50IG9mIGNvbXBhcmlzb24uDQoNCkRv
ZXMgdGhpcyByZXNvbHZlIHlvdXIgY29tbWVudHM/DQoNClN1ZQ0KDQpGcm9tOiBpMnJzIFttYWls
dG86aTJycy1ib3VuY2VzQGlldGYub3JnXSBPbiBCZWhhbGYgT2YgRXJpYyBWb2l0IChldm9pdCkN
ClNlbnQ6IFRodXJzZGF5LCBKdW5lIDMwLCAyMDE2IDM6MzggUE0NClRvOiBTdXNhbiBIYXJlcw0K
Q2M6IGkycnNAaWV0Zi5vcmc8bWFpbHRvOmkycnNAaWV0Zi5vcmc+DQpTdWJqZWN0OiBSZTogW2ky
cnNdIFJldmlldyBvZiBkcmFmdC1pZXRmLWkycnMtZXBoZW1lcmFsLXN0YXRlLTExDQoNCkZyb206
IFN1c2FuIEhhcmVzLCBKdW5lIDMwLCAyMDE2IDM6MTMgUE0NCkVyaWM6DQoNClRoYW5rIHlvdSBm
b3IgeW91ciBjb21tZW50czogIFNlZSBjb21tZW50cyBiZWxvdy4NCg0KU3VlDQoNCkZyb206IGky
cnMgW21haWx0bzppMnJzLWJvdW5jZXNAaWV0Zi5vcmddIE9uIEJlaGFsZiBPZiBFcmljIFZvaXQg
KGV2b2l0KQ0KU2VudDogVGh1cnNkYXksIEp1bmUgMzAsIDIwMTYgMjo1MiBQTQ0KVG86IFN1c2Fu
IEhhcmVzDQpDYzogaTJyc0BpZXRmLm9yZzxtYWlsdG86aTJyc0BpZXRmLm9yZz4NClN1YmplY3Q6
IFJlOiBbaTJyc10gUmV2aWV3IG9mIGRyYWZ0LWlldGYtaTJycy1lcGhlbWVyYWwtc3RhdGUtMTEN
Cg0KDQo+Q29tbWVudCAjMg0KPklzbuKAmXQgYWxsIGRhdGEgaW4gT3BlcmF0aW9uYWwgZGF0YSBz
dG9yZXMgZXBoZW1lcmFsPyAgSSBzZWUgdGhlIG1haWxpbmcgbGlzdCBkaXNjdXNzaW9ucyBvbiB0
aGlzIHRlcm1pbm9sb2d5IHRvcGljIGZvciB0aGUgcmVxdWlyZW1lbnRzIGVhcmxpZXIgaW4gdGhl
IGRvY3VtZW50LiAgVGhpcyBpcyB3aGVyZSB5b3Ugc2FpZDog4oCcRXBoZW1lcmFsIHN0YXRlIGlz
IGRlZmluZWQgYXMgImVwaGVtZXJhbCBjb25maWd1cmF0aW9uIHN0YXRlIiBhbmQgb3BlcmF0aW9u
YWwgc3RhdGUu4oCdICBCdXQgdGhlID50ZXJtaW5vbG9neSBmaXggZG9lc27igJl0IHNlZW0gdG8g
aGF2ZSBtYWRlIGl0IGRvd24gaGVyZS4NClN1ZTogV2UgdGhvdWdodCB0aGlzIHdhcyBtb3JlIHNw
ZWNpZmljLiAgSSBjYW4gY2hhbmdlIGl0IHRvIOKAnEVwaGVtZXJhbCBzdGF0ZeKAnS4NCkVyaWM6
IGNvbnNpc3RlbmN5IHdpdGggaGlnaGVyIHJlcXVpcmVtZW50cyBtYWtlcyBzZW5zZS4NCg0KDQpQ
dWItU3ViLVJFUS0wMjoNCkNvbW1lbnQgIzM6DQo+QnVpbGRpbmcgb2ZmIENvbW1lbnQgIzIsIGlz
IHRoZXJlIHN1Y2ggYSB0aGluZyBhcyBFcGhlbWVyYWwgZGF0YSBpbiBPcGVyYXRpb25hbCBkYXRh
PyAgT3IgYXJlIHlvdSB0YWxraW5nIGZpbHRlcmluZyBzbyB0aGF0IG9ubHkgY2hhbmdlcyBpbiBP
cGVyYXRpb25hbCBkYXRhIGFyZSBzZW50LiAgIEkgYmVsaWV2ZSB5b3UgYXJlIGludGVuZGluZyB0
aGUgc2Vjb25kLiAgIEluIHRoYXQgY2FzZSB0aGVyZSBtaWdodCBuZWVkIHRvIGJlIHNwZWNpYWwg
dHlwZXMgb2YgZmlsdGVycyA+bmVlZGVkLiAgRmlsdGVycyBzdWNoIGFzIGEgY291bnQgb2YgdGhl
IG51bWJlciBvZiBvYmplY3RzIHVuZGVyIGEgdHJlZSAoZS5nLiwgbnVtYmVyIG9mIHJvdXRlcyks
IG9yIHJhbmdlIGJhc2VkIGZpbHRlcnMgZm9yIGFuIG9wZXJhdGlvbmFsIHZhbHVlLg0KDQpTdWU6
IFdlIGhhdmUgZXBoZW1lcmFsIGRhdGEgbW9kZWxzIHdpdGggb3BlcmF0aW9uYWwgc3RhdGUuICBU
ZWNobmljYWxseSwgdGhlIGRhdGEgaXMgYm90aCBlcGhlbWVyYWwgKHVuZGVyIGFuIGVwaGVtZXJh
bCBtb2RlbCkgYW5kIG9wZXJhdGlvbmFsIHN0YXRlLiAgIFRoZSBkaWZmaWN1bHR5IGlzIHRoYXQg
dGhpcyBjb25mbGljdHMgd2l0aCBzb21lIGRhdGEgbW9kZWxzLg0KRXJpYzogSSB1bmRlcnN0YW5k
IG5vdy4gICBBcyBhbiBhc2lkZSBjb21tZW50LCB0aGUgdHlwZXMgb2YgZmlsdGVyaW5nIG5lZWRl
ZCB3aWxsIGJlIHZhcmllZCBhbmQgY29tcGxleC4gIFRoZXkgd2lsbCBuZWVkIHRvIGJlIHNwZWNp
ZmllZCBsYXRlciwgYW5kIHNob3VsZCBkaXJlY3RseSBjb3JyZXNwb25kIHdpdGggdGhlIGZpbHRl
cnMgd2hpY2ggd2UgbmVlZCB0byBzdXBwb3J0IHZpYSBpbiBkcmFmdC1pZXRmLW5ldGNvbmYteWFu
Zy1wdXNoLg0KDQpTZWN0aW9uIDIsIEJ1bGxldHMgNSAmIDkgYW5kIFNlY3Rpb24gNzoNCj5Qcmlv
cml0eSBDb2xsaXNpb24uICBDb3VsZCB5b3UgZXhwbGljaXRseSBzYXkgd2hlbiB0aGUgcHJpb3Jp
dHkgb2Ygb25lIHdyaXRlIHdpbGwgcHJldmVudCBhIGxvd2VyIHByaW9yaXR5IHdyaXRlIGZyb20g
b2NjdXJyaW5nPyAgSXMgaXQgdGhlIGNvbXBsZXRpb24gb2YgYW5kIHJlc3BvbnNlIHRvIHNvbWUg
UE9TVD8gIEkgZG9u4oCZdCBrbm93IHdoYXQgdGltZS1vZi11c2UgbWVhbnMuDQo+DQpJbiBSRVNU
Q09ORiwgIHRoZSB1cGRhdGluZyBwcm9jZXNzIHdpbGwgY2hlY2sgdGhlIHByaW9yaXR5IG9mIHRo
ZSBleGlzdGluZyB3cml0ZS4gIFRoaXMgY2hlY2sgd2lsbCBvY2N1ciBhdCBsZWFzdCB0aGUgY29t
cGxldGlvbiBvZiB0aGUgUE9TVCBmb3IgYW4gb3Zlci13cml0ZSBvZiBhbiBleGlzdGluZyBwb3N0
LiAgU2luY2UgdGhlIFJFU1RDT05GIHBvc3RzIGFyZSBub3Qgc2ltdWx0YW5lb3VzIChidXQgcmF0
aGVyIDEgYXQgYSB0aW1lKSwgdGhlIGNoZWNrIHdpbGwgb2NjdXIgYSBzaW5nbGUgd3JpdGUuDQpJ
biBORVRDT05GLCB0aGlzIHdpbGwgYmUgYXQgZWRpdC1jb25maWcgc3RhZ2UuIEJvdGggb2YgdGhl
c2Ugc3RhZ2VzIHdlcmUgZGVmaW5lZCBhcyDigJx0aW1lIG9mIHVzZeKAnSDigJMgYmVjYXVzZSBp
dCB3YXMgd2hlbiB0aGUgdXBkYXRlIHdhcyB0byBvY2N1ci4NCg0KRXJpYzogSSB0aGluayBpdCBp
cyBwb3NzaWJsZSB0aGF0IFJFU1RDT05GIGFuZCBORVRDT05GIHBvc3RzIGNhbiBjb21lIGluIGNv
bmN1cnJlbnRseSBmcm9tIGFsdGVybmF0aXZlIHNvdXJjZXMuICBJIHRoaW5rIGRldGVjdGluZyB0
aGlzIGlzIG9uZSBvZiB0aGUgcHVycG9zZXMgb2YgRVRhZyBpbiBkcmFmdC1pZXRmLW5ldGNvbmYt
cmVzdGNvbmYtMTMgc2VjdGlvbiAzLjQuMS4yLiAgIEl0IG1pZ2h0IGJlIHdvcnRoIGhhdmUgdGhl
IHJlcXVpcmVtZW50IHN0YXRlIHRoYXQgcHJpb3JpdHkgbXVzdCBiZSBjb25zaWRlcmVkIGZvciBi
b3RoIGNvbXBsZXRlZCBlcGhlbWVyYWwgcG9zdHMsIGFzIHdlbGwgYXMgcG9zdHMgaW4gcHJvZ3Jl
c3MuDQoNCi9FcmljDQoNCkRvIHlvdSBoYXZlIGFuIGFsdGVybmF0ZSBzdWdnZXN0aW9uPw0KDQpF
cmljDQoNCg0K

--_000_cbf009f25e624ced9755a2dfaedb8c8aXCHRTP013ciscocom_
Content-Type: text/html; charset="utf-8"
Content-Transfer-Encoding: base64

PGh0bWwgeG1sbnM6dj0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTp2bWwiIHhtbG5zOm89InVy
bjpzY2hlbWFzLW1pY3Jvc29mdC1jb206b2ZmaWNlOm9mZmljZSIgeG1sbnM6dz0idXJuOnNjaGVt
YXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6d29yZCIgeG1sbnM6bT0iaHR0cDovL3NjaGVtYXMubWlj
cm9zb2Z0LmNvbS9vZmZpY2UvMjAwNC8xMi9vbW1sIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
VFIvUkVDLWh0bWw0MCI+DQo8aGVhZD4NCjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIg
Y29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4NCjxtZXRhIG5hbWU9IkdlbmVyYXRv
ciIgY29udGVudD0iTWljcm9zb2Z0IFdvcmQgMTQgKGZpbHRlcmVkIG1lZGl1bSkiPg0KPHN0eWxl
PjwhLS0NCi8qIEZvbnQgRGVmaW5pdGlvbnMgKi8NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6
Q2FsaWJyaTsNCglwYW5vc2UtMToyIDE1IDUgMiAyIDIgNCAzIDIgNDt9DQpAZm9udC1mYWNlDQoJ
e2ZvbnQtZmFtaWx5OlRhaG9tYTsNCglwYW5vc2UtMToyIDExIDYgNCAzIDUgNCA0IDIgNDt9DQpA
Zm9udC1mYWNlDQoJe2ZvbnQtZmFtaWx5OkNvbnNvbGFzOw0KCXBhbm9zZS0xOjIgMTEgNiA5IDIg
MiA0IDMgMiA0O30NCi8qIFN0eWxlIERlZmluaXRpb25zICovDQpwLk1zb05vcm1hbCwgbGkuTXNv
Tm9ybWFsLCBkaXYuTXNvTm9ybWFsDQoJe21hcmdpbjowaW47DQoJbWFyZ2luLWJvdHRvbTouMDAw
MXB0Ow0KCWZvbnQtc2l6ZToxMi4wcHQ7DQoJZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiIs
InNlcmlmIjsNCgljb2xvcjpibGFjazt9DQpoMg0KCXttc28tc3R5bGUtcHJpb3JpdHk6OTsNCglt
c28tc3R5bGUtbGluazoiSGVhZGluZyAyIENoYXIiOw0KCW1zby1tYXJnaW4tdG9wLWFsdDphdXRv
Ow0KCW1hcmdpbi1yaWdodDowaW47DQoJbXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG87DQoJbWFy
Z2luLWxlZnQ6MGluOw0KCWZvbnQtc2l6ZToxOC4wcHQ7DQoJZm9udC1mYW1pbHk6IlRpbWVzIE5l
dyBSb21hbiIsInNlcmlmIjsNCgljb2xvcjp3aW5kb3d0ZXh0Ow0KCWZvbnQtd2VpZ2h0OmJvbGQ7
fQ0KYTpsaW5rLCBzcGFuLk1zb0h5cGVybGluaw0KCXttc28tc3R5bGUtcHJpb3JpdHk6OTk7DQoJ
Y29sb3I6Ymx1ZTsNCgl0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO30NCmE6dmlzaXRlZCwgc3Bh
bi5Nc29IeXBlcmxpbmtGb2xsb3dlZA0KCXttc28tc3R5bGUtcHJpb3JpdHk6OTk7DQoJY29sb3I6
cHVycGxlOw0KCXRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7fQ0KcA0KCXttc28tc3R5bGUtcHJp
b3JpdHk6OTk7DQoJbXNvLW1hcmdpbi10b3AtYWx0OmF1dG87DQoJbWFyZ2luLXJpZ2h0OjBpbjsN
Cgltc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0bzsNCgltYXJnaW4tbGVmdDowaW47DQoJZm9udC1z
aXplOjEyLjBwdDsNCglmb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIiwic2VyaWYiOw0KCWNv
bG9yOmJsYWNrO30NCnByZQ0KCXttc28tc3R5bGUtcHJpb3JpdHk6OTk7DQoJbXNvLXN0eWxlLWxp
bms6IkhUTUwgUHJlZm9ybWF0dGVkIENoYXIiOw0KCW1hcmdpbjowaW47DQoJbWFyZ2luLWJvdHRv
bTouMDAwMXB0Ow0KCWZvbnQtc2l6ZToxMC4wcHQ7DQoJZm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3
IjsNCgljb2xvcjpibGFjazt9DQpwLk1zb0FjZXRhdGUsIGxpLk1zb0FjZXRhdGUsIGRpdi5Nc29B
Y2V0YXRlDQoJe21zby1zdHlsZS1wcmlvcml0eTo5OTsNCgltc28tc3R5bGUtbGluazoiQmFsbG9v
biBUZXh0IENoYXIiOw0KCW1hcmdpbjowaW47DQoJbWFyZ2luLWJvdHRvbTouMDAwMXB0Ow0KCWZv
bnQtc2l6ZTo4LjBwdDsNCglmb250LWZhbWlseToiVGFob21hIiwic2Fucy1zZXJpZiI7DQoJY29s
b3I6YmxhY2s7fQ0Kc3Bhbi5IZWFkaW5nMkNoYXINCgl7bXNvLXN0eWxlLW5hbWU6IkhlYWRpbmcg
MiBDaGFyIjsNCgltc28tc3R5bGUtcHJpb3JpdHk6OTsNCgltc28tc3R5bGUtbGluazoiSGVhZGlu
ZyAyIjsNCglmb250LXdlaWdodDpib2xkO30NCnNwYW4uSFRNTFByZWZvcm1hdHRlZENoYXINCgl7
bXNvLXN0eWxlLW5hbWU6IkhUTUwgUHJlZm9ybWF0dGVkIENoYXIiOw0KCW1zby1zdHlsZS1wcmlv
cml0eTo5OTsNCgltc28tc3R5bGUtbGluazoiSFRNTCBQcmVmb3JtYXR0ZWQiOw0KCWZvbnQtZmFt
aWx5OkNvbnNvbGFzOw0KCWNvbG9yOmJsYWNrO30NCnNwYW4uQmFsbG9vblRleHRDaGFyDQoJe21z
by1zdHlsZS1uYW1lOiJCYWxsb29uIFRleHQgQ2hhciI7DQoJbXNvLXN0eWxlLXByaW9yaXR5Ojk5
Ow0KCW1zby1zdHlsZS1saW5rOiJCYWxsb29uIFRleHQiOw0KCWZvbnQtZmFtaWx5OiJUYWhvbWEi
LCJzYW5zLXNlcmlmIjsNCgljb2xvcjpibGFjazt9DQpzcGFuLkVtYWlsU3R5bGUyMw0KCXttc28t
c3R5bGUtdHlwZTpwZXJzb25hbDsNCglmb250LWZhbWlseToiQ2FsaWJyaSIsInNhbnMtc2VyaWYi
Ow0KCWNvbG9yOiMxRjQ5N0Q7fQ0Kc3Bhbi5FbWFpbFN0eWxlMjQNCgl7bXNvLXN0eWxlLXR5cGU6
cGVyc29uYWw7DQoJZm9udC1mYW1pbHk6IkNhbGlicmkiLCJzYW5zLXNlcmlmIjsNCgljb2xvcjoj
MUY0OTdEO30NCnNwYW4uRW1haWxTdHlsZTI1DQoJe21zby1zdHlsZS10eXBlOnBlcnNvbmFsOw0K
CWZvbnQtZmFtaWx5OiJDYWxpYnJpIiwic2Fucy1zZXJpZiI7DQoJY29sb3I6IzFGNDk3RDt9DQpz
cGFuLkVtYWlsU3R5bGUyNg0KCXttc28tc3R5bGUtdHlwZTpwZXJzb25hbDsNCglmb250LWZhbWls
eToiQ2FsaWJyaSIsInNhbnMtc2VyaWYiOw0KCWNvbG9yOiMxRjQ5N0Q7fQ0Kc3Bhbi5FbWFpbFN0
eWxlMjcNCgl7bXNvLXN0eWxlLXR5cGU6cGVyc29uYWw7DQoJZm9udC1mYW1pbHk6IkNhbGlicmki
LCJzYW5zLXNlcmlmIjsNCgljb2xvcjojMUY0OTdEO30NCnNwYW4uRW1haWxTdHlsZTI4DQoJe21z
by1zdHlsZS10eXBlOnBlcnNvbmFsOw0KCWZvbnQtZmFtaWx5OiJDYWxpYnJpIiwic2Fucy1zZXJp
ZiI7DQoJY29sb3I6IzFGNDk3RDt9DQpzcGFuLkVtYWlsU3R5bGUyOQ0KCXttc28tc3R5bGUtdHlw
ZTpwZXJzb25hbC1yZXBseTsNCglmb250LWZhbWlseToiQ2FsaWJyaSIsInNhbnMtc2VyaWYiOw0K
CWNvbG9yOiMxRjQ5N0Q7fQ0KLk1zb0NocERlZmF1bHQNCgl7bXNvLXN0eWxlLXR5cGU6ZXhwb3J0
LW9ubHk7DQoJZm9udC1zaXplOjEwLjBwdDt9DQpAcGFnZSBXb3JkU2VjdGlvbjENCgl7c2l6ZTo4
LjVpbiAxMS4waW47DQoJbWFyZ2luOjEuMGluIDEuMGluIDEuMGluIDEuMGluO30NCmRpdi5Xb3Jk
U2VjdGlvbjENCgl7cGFnZTpXb3JkU2VjdGlvbjE7fQ0KLS0+PC9zdHlsZT48IS0tW2lmIGd0ZSBt
c28gOV0+PHhtbD4NCjxvOnNoYXBlZGVmYXVsdHMgdjpleHQ9ImVkaXQiIHNwaWRtYXg9IjEwMjYi
IC8+DQo8L3htbD48IVtlbmRpZl0tLT48IS0tW2lmIGd0ZSBtc28gOV0+PHhtbD4NCjxvOnNoYXBl
bGF5b3V0IHY6ZXh0PSJlZGl0Ij4NCjxvOmlkbWFwIHY6ZXh0PSJlZGl0IiBkYXRhPSIxIiAvPg0K
PC9vOnNoYXBlbGF5b3V0PjwveG1sPjwhW2VuZGlmXS0tPg0KPC9oZWFkPg0KPGJvZHkgYmdjb2xv
cj0id2hpdGUiIGxhbmc9IkVOLVVTIiBsaW5rPSJibHVlIiB2bGluaz0icHVycGxlIj4NCjxkaXYg
Y2xhc3M9IldvcmRTZWN0aW9uMSI+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0i
Zm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3Nh
bnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+V29ya3MgZm9yJm5ic3A7IG1lPG86cD48L286
cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6
ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlm
JnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4NCjxkaXYg
c3R5bGU9ImJvcmRlcjpub25lO2JvcmRlci1sZWZ0OnNvbGlkIGJsdWUgMS41cHQ7cGFkZGluZzow
aW4gMGluIDBpbiA0LjBwdCI+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9u
dC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMt
c2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+RXJpYzoNCjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4N
CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQt
ZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjoj
MUY0OTdEIj48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFs
Ij48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJp
JnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+Rm9yIHZlcnNpb24g
LTEzLCB0aGUgZm9sbG93aW5nICZuYnNwO2NoYW5nZXMgd2lsbCBiZSBtYWRlOg0KPG86cD48L286
cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6
ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlm
JnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNs
YXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5
OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdE
Ij4mbmJzcDsmbmJzcDsgUHViLVN1Yi1SRVEtMDE6IFRoZSBTdWJzY3JpcHRpb24gU2VydmljZSBN
VVNUIHN1cHBvcnQNCjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwi
PjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkm
cXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj4mbmJzcDsmbmJzcDsm
bmJzcDtzdWJzY3JpcHRpb25zIGFnYWluc3QgZXBoZW1lcmFsIHN0YXRlIGluIG9wZXJhdGlvbmFs
IGRhdGEgc3RvcmVzLCBjb25maWd1cmF0aW9uIGRhdGEgc3RvcmVzIG9yIGJvdGguPG86cD48L286
cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6
ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlm
JnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPiZuYnNwOyZuYnNwOw0KPG86cD48L286cD48L3NwYW4+PC9w
Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9u
dC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9y
OiMxRjQ5N0QiPiZuYnNwOyZuYnNwOyZuYnNwO1B1Yi1TdWItUkVRLTAyOiBUaGUgU3Vic2NyaXB0
aW9uIFNlcnZpY2UgTVVTVCBzdXBwb3J0IGZpbHRlcmluZw0KPG86cD48L286cD48L3NwYW4+PC9w
Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9u
dC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9y
OiMxRjQ5N0QiPiZuYnNwOyZuYnNwOyZuYnNwO3NvIHRoYXQgc3Vic2NyaWJlZCB1cGRhdGVzIHVu
ZGVyIGEgdGFyZ2V0IG5vZGUgbWlnaHQgcHVibGlzaCBvbmx5DQo8bzpwPjwvbzpwPjwvc3Bhbj48
L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtm
b250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29s
b3I6IzFGNDk3RCI+Jm5ic3A7Jm5ic3A7Jm5ic3A7ZXBoZW1lcmFsIHN0YXRlIGluIG9wZXJhdGlv
bmFsIGRhdGEgb3IgY29uZmlndXJhdGlvbiBkYXRhLCBvciBwdWJsaXNoIGJvdGgNCjxvOnA+PC9v
OnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNp
emU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJp
ZiZxdW90Oztjb2xvcjojMUY0OTdEIj4mbmJzcDsmbmJzcDsmbmJzcDtlcGhlbWVyYWwgYW5kIG9w
ZXJhdGlvbmFsIGRhdGEuPG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1h
bCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJy
aSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPjxvOnA+Jm5ic3A7
PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250
LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1z
ZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+DQo8
cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZh
bWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFG
NDk3RCI+RXBoZW1lcmFsLVJFUS0xMjo8bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0i
TXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVv
dDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+V2ls
bCBoYXZlIHRoZSBmb2xsb3dpbmcgdGV4dCBhZnRlciBpdA0KPG86cD48L286cD48L3NwYW4+PC9w
Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9u
dC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9y
OiMxRjQ5N0QiPjxicj4NCiZuYnNwOyZuYnNwOyZuYnNwO05vdGU6UkVTVENPTkYgYW5kIE5FVENP
TkYgcG9zdHMgY2FuIGNvbWUgaW4gY29uY3VycmVudGx5IGZyb20gYWx0ZXJuYXRpdmUgc291cmNl
cw0KPG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5
bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVv
dDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPiZuYnNwOyZuYnNwOyZuYnNwOyhzZWUm
bmJzcDsgRVRhZyBpbiAmbHQ7eHJlZiB0YXJnZXQ9JnF1b3Q7ZHJhZnQtaWV0Zi1uZXRjb25mLXJl
c3Rjb25mJnF1b3Q7Jmd0OyZsdDsveHJlZiZndDsgc2VjdGlvbiAzLjQuMS4yIHVzYWdlKS48bzpw
PjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9u
dC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMt
c2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+Jm5ic3A7Jm5ic3A7IFRoZXJlZm9yZSB0aGUgY29s
bGlzaW9uIGRldGVjdGlvbiBhbmQgY29tcGFyaXNvbiBvZiBwcmlvcml0eSBuZWVkcyB0byBvY2N1
ciBib3RoPG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4g
c3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90Oywm
cXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPiZuYnNwOyZuYnNwOyBmb3IgYm90
aCB0eXBlIG9mIHVwZGF0ZXMgKFBPU1Qgb3IgZWRpdC1jb25maWcpIGF0IHRoZSBwb2ludCBvZiBj
b21wYXJpc29uLg0KPG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+
PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZx
dW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPiZuYnNwOyZuYnNwOzxv
OnA+PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJm
b250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fu
cy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj5Eb2VzIHRoaXMgcmVzb2x2ZSB5b3VyIGNvbW1l
bnRzPw0KPG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4g
c3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90Oywm
cXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPjxvOnA+Jm5ic3A7PC9vOnA+PC9z
cGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEu
MHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90
Oztjb2xvcjojMUY0OTdEIj5TdWUNCjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJN
c29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90
O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj48bzpw
PiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+DQo8ZGl2Pg0KPGRpdiBzdHlsZT0iYm9yZGVyOm5vbmU7
Ym9yZGVyLXRvcDpzb2xpZCAjQjVDNERGIDEuMHB0O3BhZGRpbmc6My4wcHQgMGluIDBpbiAwaW4i
Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PGI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMC4wcHQ7
Zm9udC1mYW1pbHk6JnF1b3Q7VGFob21hJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29s
b3I6d2luZG93dGV4dCI+RnJvbTo8L3NwYW4+PC9iPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTAu
MHB0O2ZvbnQtZmFtaWx5OiZxdW90O1RhaG9tYSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7
O2NvbG9yOndpbmRvd3RleHQiPiBpMnJzIFs8YSBocmVmPSJtYWlsdG86aTJycy1ib3VuY2VzQGll
dGYub3JnIj5tYWlsdG86aTJycy1ib3VuY2VzQGlldGYub3JnPC9hPl0NCjxiPk9uIEJlaGFsZiBP
ZiA8L2I+RXJpYyBWb2l0IChldm9pdCk8YnI+DQo8Yj5TZW50OjwvYj4gVGh1cnNkYXksIEp1bmUg
MzAsIDIwMTYgMzozOCBQTTxicj4NCjxiPlRvOjwvYj4gU3VzYW4gSGFyZXM8YnI+DQo8Yj5DYzo8
L2I+IDxhIGhyZWY9Im1haWx0bzppMnJzQGlldGYub3JnIj5pMnJzQGlldGYub3JnPC9hPjxicj4N
CjxiPlN1YmplY3Q6PC9iPiBSZTogW2kycnNdIFJldmlldyBvZiBkcmFmdC1pZXRmLWkycnMtZXBo
ZW1lcmFsLXN0YXRlLTExPG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8L2Rpdj4NCjxw
IGNsYXNzPSJNc29Ob3JtYWwiPjxvOnA+Jm5ic3A7PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05v
cm1hbCIgc3R5bGU9Im1hcmdpbi1ib3R0b206MTIuMHB0Ij48Yj48c3BhbiBzdHlsZT0iZm9udC1z
aXplOjEwLjBwdDtmb250LWZhbWlseTomcXVvdDtUYWhvbWEmcXVvdDssJnF1b3Q7c2Fucy1zZXJp
ZiZxdW90Oztjb2xvcjp3aW5kb3d0ZXh0Ij5Gcm9tOjwvc3Bhbj48L2I+PHNwYW4gc3R5bGU9ImZv
bnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7VGFob21hJnF1b3Q7LCZxdW90O3NhbnMt
c2VyaWYmcXVvdDs7Y29sb3I6d2luZG93dGV4dCI+IFN1c2FuIEhhcmVzLCBKdW5lIDMwLCAyMDE2
DQogMzoxMyBQTTxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxz
cGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVv
dDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj5FcmljOg0KPG86cD48L286
cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6
ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlm
JnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNs
YXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5
OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdE
Ij5UaGFuayB5b3UgZm9yIHlvdXIgY29tbWVudHM6ICZuYnNwO1NlZSBjb21tZW50cyBiZWxvdy48
bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0i
Zm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3Nh
bnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9w
Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9u
dC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9y
OiMxRjQ5N0QiPlN1ZQ0KPG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1h
bCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJy
aSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPjxvOnA+Jm5ic3A7
PC9vOnA+PC9zcGFuPjwvcD4NCjxkaXY+DQo8ZGl2IHN0eWxlPSJib3JkZXI6bm9uZTtib3JkZXIt
dG9wOnNvbGlkICNCNUM0REYgMS4wcHQ7cGFkZGluZzozLjBwdCAwaW4gMGluIDBpbiI+DQo8cCBj
bGFzcz0iTXNvTm9ybWFsIj48Yj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjEwLjBwdDtmb250LWZh
bWlseTomcXVvdDtUYWhvbWEmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjp3aW5k
b3d0ZXh0Ij5Gcm9tOjwvc3Bhbj48L2I+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMC4wcHQ7Zm9u
dC1mYW1pbHk6JnF1b3Q7VGFob21hJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6
d2luZG93dGV4dCI+IGkycnMgWzxhIGhyZWY9Im1haWx0bzppMnJzLWJvdW5jZXNAaWV0Zi5vcmci
Pm1haWx0bzppMnJzLWJvdW5jZXNAaWV0Zi5vcmc8L2E+XQ0KPGI+T24gQmVoYWxmIE9mIDwvYj5F
cmljIFZvaXQgKGV2b2l0KTxicj4NCjxiPlNlbnQ6PC9iPiBUaHVyc2RheSwgSnVuZSAzMCwgMjAx
NiAyOjUyIFBNPGJyPg0KPGI+VG86PC9iPiBTdXNhbiBIYXJlczxicj4NCjxiPkNjOjwvYj4gPGEg
aHJlZj0ibWFpbHRvOmkycnNAaWV0Zi5vcmciPmkycnNAaWV0Zi5vcmc8L2E+PGJyPg0KPGI+U3Vi
amVjdDo8L2I+IFJlOiBbaTJyc10gUmV2aWV3IG9mIGRyYWZ0LWlldGYtaTJycy1lcGhlbWVyYWwt
c3RhdGUtMTE8bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjwvZGl2Pg0KPHAgY2xhc3M9
Ik1zb05vcm1hbCI+PG86cD4mbmJzcDs8L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48
c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1
b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+PG86cD4mbmJzcDs8L286
cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6
ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlm
JnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPiZndDtDb21tZW50ICMyPG86cD48L286cD48L3NwYW4+PC9w
Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9u
dC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9y
OiMxRjQ5N0QiPiZndDtJc27igJl0IGFsbCBkYXRhIGluIE9wZXJhdGlvbmFsIGRhdGEgc3RvcmVz
IGVwaGVtZXJhbD8mbmJzcDsgSSBzZWUgdGhlIG1haWxpbmcgbGlzdCBkaXNjdXNzaW9ucyBvbiB0
aGlzIHRlcm1pbm9sb2d5IHRvcGljIGZvciB0aGUgcmVxdWlyZW1lbnRzIGVhcmxpZXIgaW4gdGhl
IGRvY3VtZW50LiZuYnNwOw0KIFRoaXMgaXMgd2hlcmUgeW91IHNhaWQ6IOKAnDxpPkVwaGVtZXJh
bCBzdGF0ZSBpcyBkZWZpbmVkIGFzICZxdW90O2VwaGVtZXJhbCBjb25maWd1cmF0aW9uIHN0YXRl
JnF1b3Q7IGFuZCBvcGVyYXRpb25hbCBzdGF0ZTwvaT4u4oCdJm5ic3A7IEJ1dCB0aGUgJmd0O3Rl
cm1pbm9sb2d5IGZpeCBkb2VzbuKAmXQgc2VlbSB0byBoYXZlIG1hZGUgaXQgZG93biBoZXJlLjxv
OnA+PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJm
b250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fu
cy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj5TdWU6IFdlIHRob3VnaHQgdGhpcyB3YXMgbW9y
ZSBzcGVjaWZpYy4mbmJzcDsgSSBjYW4gY2hhbmdlIGl0IHRvIOKAnEVwaGVtZXJhbCBzdGF0ZeKA
nS4mbmJzcDsNCjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxz
cGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVv
dDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj5FcmljOiBjb25zaXN0ZW5j
eSB3aXRoIGhpZ2hlciByZXF1aXJlbWVudHMgbWFrZXMgc2Vuc2UuPG86cD48L286cD48L3NwYW4+
PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7
Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2Nv
bG9yOiMxRjQ5N0QiPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29O
b3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0Nh
bGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj48bzpwPiZu
YnNwOzwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0i
Zm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3Nh
bnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+UHViLVN1Yi1SRVEtMDI6DQo8bzpwPjwvbzpw
Pjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXpl
OjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYm
cXVvdDs7Y29sb3I6IzFGNDk3RCI+Q29tbWVudCAjMzo8bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8
cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZh
bWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFG
NDk3RCI+Jmd0O0J1aWxkaW5nIG9mZiBDb21tZW50ICMyLCBpcyB0aGVyZSBzdWNoIGEgdGhpbmcg
YXMgRXBoZW1lcmFsIGRhdGEgaW4gT3BlcmF0aW9uYWwgZGF0YT8mbmJzcDsgT3IgYXJlIHlvdSB0
YWxraW5nIGZpbHRlcmluZyBzbyB0aGF0IG9ubHkgY2hhbmdlcyBpbiBPcGVyYXRpb25hbCBkYXRh
DQogYXJlIHNlbnQuJm5ic3A7Jm5ic3A7IEkgYmVsaWV2ZSB5b3UgYXJlIGludGVuZGluZyB0aGUg
c2Vjb25kLiZuYnNwOyZuYnNwOyBJbiB0aGF0IGNhc2UgdGhlcmUgbWlnaHQgbmVlZCB0byBiZSBz
cGVjaWFsIHR5cGVzIG9mIGZpbHRlcnMgJmd0O25lZWRlZC4mbmJzcDsgRmlsdGVycyBzdWNoIGFz
IGEgY291bnQgb2YgdGhlIG51bWJlciBvZiBvYmplY3RzIHVuZGVyIGEgdHJlZSAoZS5nLiwgbnVt
YmVyIG9mIHJvdXRlcyksIG9yIHJhbmdlIGJhc2VkIGZpbHRlcnMgZm9yIGFuIG9wZXJhdGlvbmFs
IHZhbHVlLjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFu
IHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDss
JnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj48bzpwPiZuYnNwOzwvbzpwPjwv
c3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjEx
LjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVv
dDs7Y29sb3I6IzFGNDk3RCI+U3VlOiBXZSBoYXZlIGVwaGVtZXJhbCBkYXRhIG1vZGVscyB3aXRo
IG9wZXJhdGlvbmFsIHN0YXRlLiZuYnNwOyBUZWNobmljYWxseSwgdGhlIGRhdGEgaXMgYm90aCBl
cGhlbWVyYWwgKHVuZGVyIGFuIGVwaGVtZXJhbCBtb2RlbCkgYW5kIG9wZXJhdGlvbmFsIHN0YXRl
LiZuYnNwOyZuYnNwOyBUaGUNCiBkaWZmaWN1bHR5IGlzIHRoYXQgdGhpcyBjb25mbGljdHMgd2l0
aCBzb21lIGRhdGEgbW9kZWxzLiA8bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNv
Tm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtD
YWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+RXJpYzog
SSB1bmRlcnN0YW5kIG5vdy4mbmJzcDsmbmJzcDsgQXMgYW4gYXNpZGUgY29tbWVudCwgdGhlIHR5
cGVzIG9mIGZpbHRlcmluZyBuZWVkZWQgd2lsbCBiZSB2YXJpZWQgYW5kIGNvbXBsZXguJm5ic3A7
IFRoZXkgd2lsbCBuZWVkIHRvIGJlIHNwZWNpZmllZCBsYXRlciwgYW5kIHNob3VsZCBkaXJlY3Rs
eQ0KIGNvcnJlc3BvbmQgd2l0aCB0aGUgZmlsdGVycyB3aGljaCB3ZSBuZWVkIHRvIHN1cHBvcnQg
dmlhIGluIGRyYWZ0LWlldGYtbmV0Y29uZi15YW5nLXB1c2guPG86cD48L286cD48L3NwYW4+PC9w
Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9u
dC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9y
OiMxRjQ5N0QiPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3Jt
YWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGli
cmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj5TZWN0aW9uIDIs
IEJ1bGxldHMgNSAmYW1wOyA5IGFuZCBTZWN0aW9uIDc6PG86cD48L286cD48L3NwYW4+PC9wPg0K
PHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1m
YW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMx
RjQ5N0QiPiZndDtQcmlvcml0eSBDb2xsaXNpb24uJm5ic3A7IENvdWxkIHlvdSBleHBsaWNpdGx5
IHNheSB3aGVuIHRoZSBwcmlvcml0eSBvZiBvbmUgd3JpdGUgd2lsbCBwcmV2ZW50IGEgbG93ZXIg
cHJpb3JpdHkgd3JpdGUgZnJvbSBvY2N1cnJpbmc/Jm5ic3A7IElzIGl0IHRoZSBjb21wbGV0aW9u
IG9mIGFuZA0KIHJlc3BvbnNlIHRvIHNvbWUgUE9TVD8mbmJzcDsgSSBkb27igJl0IGtub3cgd2hh
dCB0aW1lLW9mLXVzZSBtZWFucy4mbmJzcDsgPG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xh
c3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6
JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0Qi
PiZndDs8bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48
c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1
b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+SW4gUkVTVENPTkYsICZu
YnNwO3RoZSB1cGRhdGluZyBwcm9jZXNzIHdpbGwgY2hlY2sgdGhlIHByaW9yaXR5IG9mIHRoZSBl
eGlzdGluZyB3cml0ZS4mbmJzcDsgVGhpcyBjaGVjayB3aWxsIG9jY3VyIGF0IGxlYXN0IHRoZSBj
b21wbGV0aW9uIG9mIHRoZSBQT1NUIGZvciBhbiBvdmVyLXdyaXRlDQogb2YgYW4gZXhpc3Rpbmcg
cG9zdC4mbmJzcDsgU2luY2UgdGhlIFJFU1RDT05GIHBvc3RzIGFyZSBub3Qgc2ltdWx0YW5lb3Vz
IChidXQgcmF0aGVyIDEgYXQgYSB0aW1lKSwgdGhlIGNoZWNrIHdpbGwgb2NjdXIgYSBzaW5nbGUg
d3JpdGUuJm5ic3A7Jm5ic3A7DQo8bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNv
Tm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtD
YWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+SW4gTkVU
Q09ORiwgdGhpcyB3aWxsIGJlIGF0IGVkaXQtY29uZmlnIHN0YWdlLiBCb3RoIG9mIHRoZXNlIHN0
YWdlcyB3ZXJlIGRlZmluZWQgYXMg4oCcdGltZSBvZiB1c2XigJ0g4oCTIGJlY2F1c2UgaXQgd2Fz
IHdoZW4gdGhlIHVwZGF0ZSB3YXMgdG8gb2NjdXIuDQo8bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8
cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZh
bWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFG
NDk3RCI+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+
PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZx
dW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPkVyaWM6IEkgdGhpbmsg
aXQgaXMgcG9zc2libGUgdGhhdCBSRVNUQ09ORiBhbmQgTkVUQ09ORiBwb3N0cyBjYW4gY29tZSBp
biBjb25jdXJyZW50bHkgZnJvbSBhbHRlcm5hdGl2ZSBzb3VyY2VzLiAmbmJzcDtJIHRoaW5rIGRl
dGVjdGluZyB0aGlzIGlzIG9uZSBvZiB0aGUgcHVycG9zZXMNCiBvZiBFVGFnIGluIGRyYWZ0LWll
dGYtbmV0Y29uZi1yZXN0Y29uZi0xMyBzZWN0aW9uIDMuNC4xLjIuJm5ic3A7Jm5ic3A7IEl0IG1p
Z2h0IGJlIHdvcnRoIGhhdmUgdGhlIHJlcXVpcmVtZW50IHN0YXRlIHRoYXQgcHJpb3JpdHkgbXVz
dCBiZSBjb25zaWRlcmVkIGZvciBib3RoIGNvbXBsZXRlZCBlcGhlbWVyYWwgcG9zdHMsIGFzIHdl
bGwgYXMgcG9zdHMgaW4gcHJvZ3Jlc3MuPG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9
Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1
b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPjxv
OnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0
eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1
b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj4vRXJpYzxvOnA+PC9vOnA+PC9zcGFu
PjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0
O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztj
b2xvcjojMUY0OTdEIj48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNv
Tm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtD
YWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+RG8geW91
IGhhdmUgYW4gYWx0ZXJuYXRlIHN1Z2dlc3Rpb24/DQo8bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8
cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZh
bWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFG
NDk3RCI+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+
PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZx
dW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPkVyaWM8bzpwPjwvbzpw
Pjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXpl
OjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYm
cXVvdDs7Y29sb3I6IzFGNDk3RCI+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPg0KPGRpdiBz
dHlsZT0iYm9yZGVyOm5vbmU7Ym9yZGVyLWxlZnQ6c29saWQgYmx1ZSAxLjVwdDtwYWRkaW5nOjBp
biAwaW4gMGluIDQuMHB0Ij4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxvOnA+Jm5ic3A7PC9vOnA+
PC9wPg0KPC9kaXY+DQo8L2Rpdj4NCjwvZGl2Pg0KPC9ib2R5Pg0KPC9odG1sPg0K

--_000_cbf009f25e624ced9755a2dfaedb8c8aXCHRTP013ciscocom_--


From nobody Thu Jun 30 14:10:48 2016
Return-Path: <linda.dunbar@huawei.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 BE97C126579 for <i2rs@ietfa.amsl.com>; Thu, 30 Jun 2016 14:10:46 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.647
X-Spam-Level: 
X-Spam-Status: No, score=-5.647 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-1.426, SPF_PASS=-0.001] autolearn=ham autolearn_force=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 Yj3ELfq_24gM for <i2rs@ietfa.amsl.com>; Thu, 30 Jun 2016 14:10:44 -0700 (PDT)
Received: from lhrrgout.huawei.com (lhrrgout.huawei.com [194.213.3.17]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 4B392128874 for <i2rs@ietf.org>; Thu, 30 Jun 2016 14:10:43 -0700 (PDT)
Received: from 172.18.7.190 (EHLO lhreml706-cah.china.huawei.com) ([172.18.7.190]) by lhrrg01-dlp.huawei.com (MOS 4.3.7-GA FastPath queued) with ESMTP id CRV73829; Thu, 30 Jun 2016 21:10:41 +0000 (GMT)
Received: from DFWEML703-CAH.china.huawei.com (10.193.5.177) by lhreml706-cah.china.huawei.com (10.201.5.182) with Microsoft SMTP Server (TLS) id 14.3.235.1; Thu, 30 Jun 2016 22:10:39 +0100
Received: from DFWEML501-MBB.china.huawei.com ([10.193.5.179]) by DFWEML703-CAH.china.huawei.com ([10.193.5.177]) with mapi id 14.03.0235.001; Thu, 30 Jun 2016 14:10:35 -0700
From: Linda Dunbar <linda.dunbar@huawei.com>
To: Susan Hares <shares@ndzh.com>, "i2rs@ietf.org" <i2rs@ietf.org>
Thread-Topic: [i2rs] FW: I-D Action: draft-ietf-i2rs-ephemeral-state-10.txt- 2 week WG LC (6/21 to 7/5/2016)
Thread-Index: AdHL8TY2HwZzOeimSrWcu3cbB6JCQQHIoSlA
Date: Thu, 30 Jun 2016 21:10:35 +0000
Message-ID: <4A95BA014132FF49AE685FAB4B9F17F657ED93AA@dfweml501-mbb>
References: <004901d1cbf1$85b87430$91295c90$@ndzh.com>
In-Reply-To: <004901d1cbf1$85b87430$91295c90$@ndzh.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-originating-ip: [10.47.141.100]
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-CFilter-Loop: Reflected
X-Mirapoint-Virus-RAPID-Raw: score=unknown(0), refid=str=0001.0A090206.57758AD1.005A, ss=1, re=0.000, recu=0.000, reip=0.000,  cl=1, cld=1, fgs=0, ip=0.0.0.0, so=2013-06-18 04:22:30, dmn=2013-03-21 17:37:32
X-Mirapoint-Loop-Id: b52f281f3e3f4e50c890b62fcad02939
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/mENapq6nqKlqT1SsW9AwFQtUT5w>
Cc: 'Russ White' <russ@riw.us>
Subject: Re: [i2rs] FW: I-D Action: draft-ietf-i2rs-ephemeral-state-10.txt- 2 week WG LC (6/21 to 7/5/2016)
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 30 Jun 2016 21:10:47 -0000

I have reviewed the i2rs-ephemera-state draft. I think it is in good shape.=
=20

Support,=20

Linda=20

-----Original Message-----
From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Susan Hares
Sent: Tuesday, June 21, 2016 2:17 PM
To: i2rs@ietf.org
Cc: 'Russ White'
Subject: [i2rs] FW: I-D Action: draft-ietf-i2rs-ephemeral-state-10.txt- 2 w=
eek WG LC (6/21 to 7/5/2016)

This begins a 2 WG LC last call on the text of
draft-ietf-i2rs-ephemeral-state-10.txt.   There are 15 requirement for I2RS
ephemeral state, and 2 requirements for ephemeral state utilized by pub/sub
documents.  =20

Sue Hares and Russ White=20

-----Original Message-----
From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of internet-drafts@ietf=
.org
Sent: Tuesday, June 21, 2016 2:57 PM
To: i-d-announce@ietf.org
Cc: i2rs@ietf.org
Subject: [i2rs] I-D Action: draft-ietf-i2rs-ephemeral-state-10.txt


A New Internet-Draft is available from the on-line Internet-Drafts director=
ies.
This draft is a work item of the Interface to the Routing System of the IET=
F.

        Title           : I2RS Ephemeral State Requirements
        Authors         : Jeff Haas
                          Susan Hares
	Filename        : draft-ietf-i2rs-ephemeral-state-10.txt
	Pages           : 11
	Date            : 2016-06-21

Abstract:
   This document covers requests to the NETMOD and NETCONF Working
   Groups for functionality to support the ephemeral state requirements
   to implement the I2RS architecture.


The IETF datatracker status page for this draft is:
https://datatracker.ietf.org/doc/draft-ietf-i2rs-ephemeral-state/

There's also a htmlized version available at:
https://tools.ietf.org/html/draft-ietf-i2rs-ephemeral-state-10

A diff from the previous version is available at:
https://www.ietf.org/rfcdiff?url2=3Ddraft-ietf-i2rs-ephemeral-state-10


Please note that it may take a couple of minutes from the time of submissio=
n 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/

_______________________________________________
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


From nobody Thu Jun 30 14:15:27 2016
Return-Path: <linda.dunbar@huawei.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 AD7C912B00D for <i2rs@ietfa.amsl.com>; Thu, 30 Jun 2016 14:15:26 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.646
X-Spam-Level: 
X-Spam-Status: No, score=-5.646 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-1.426, SPF_PASS=-0.001] autolearn=ham autolearn_force=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 ktKVrY-wBc_4 for <i2rs@ietfa.amsl.com>; Thu, 30 Jun 2016 14:15:24 -0700 (PDT)
Received: from lhrrgout.huawei.com (lhrrgout.huawei.com [194.213.3.17]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 0F550126579 for <i2rs@ietf.org>; Thu, 30 Jun 2016 14:15:23 -0700 (PDT)
Received: from 172.18.7.190 (EHLO lhreml704-cah.china.huawei.com) ([172.18.7.190]) by lhrrg02-dlp.huawei.com (MOS 4.3.7-GA FastPath queued) with ESMTP id CMY65916; Thu, 30 Jun 2016 21:15:21 +0000 (GMT)
Received: from DFWEML703-CAH.china.huawei.com (10.193.5.177) by lhreml704-cah.china.huawei.com (10.201.5.130) with Microsoft SMTP Server (TLS) id 14.3.235.1; Thu, 30 Jun 2016 22:15:18 +0100
Received: from DFWEML501-MBB.china.huawei.com ([10.193.5.179]) by DFWEML703-CAH.china.huawei.com ([10.193.5.177]) with mapi id 14.03.0235.001; Thu, 30 Jun 2016 14:15:16 -0700
From: Linda Dunbar <linda.dunbar@huawei.com>
To: Susan Hares <shares@ndzh.com>
Thread-Topic: [i2rs] relationship between "draft-ietf-i2rs-pkt-eca-data-model-00.txt" and "draft-ietf-i2rs-fb-rib-data-model-00"?
Thread-Index: AdHSXNyx59TLVxWvQ8i98HJYWSAu6QAtznAAAAAHHnA=
Date: Thu, 30 Jun 2016 21:15:15 +0000
Message-ID: <4A95BA014132FF49AE685FAB4B9F17F657ED93D0@dfweml501-mbb>
References: <4A95BA014132FF49AE685FAB4B9F17F657ED8E6F@dfweml501-mbb> <49ba01d1d2d9$6a616900$3f243b00$@ndzh.com>
In-Reply-To: <49ba01d1d2d9$6a616900$3f243b00$@ndzh.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-originating-ip: [10.47.141.100]
Content-Type: multipart/alternative; boundary="_000_4A95BA014132FF49AE685FAB4B9F17F657ED93D0dfweml501mbb_"
MIME-Version: 1.0
X-CFilter-Loop: Reflected
X-Mirapoint-Virus-RAPID-Raw: score=unknown(0), refid=str=0001.0A090204.57758BEA.00A2, ss=1, re=0.000, recu=0.000, reip=0.000,  cl=1, cld=1, fgs=0, ip=0.0.0.0, so=2013-06-18 04:22:30, dmn=2013-03-21 17:37:32
X-Mirapoint-Loop-Id: 7880ffa375d6b044c5d6c7dbeb8f1746
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/jBHbetN8dQPtWbvQgO3b19T4G_c>
Cc: "i2rs@ietf.org" <i2rs@ietf.org>
Subject: Re: [i2rs] relationship between "draft-ietf-i2rs-pkt-eca-data-model-00.txt" and "draft-ietf-i2rs-fb-rib-data-model-00"?
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 30 Jun 2016 21:15:27 -0000

--_000_4A95BA014132FF49AE685FAB4B9F17F657ED93D0dfweml501mbb_
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

Sue,

Both those drafts are about YANG data models of Forwarding Rules based on "=
L1/L2/L3/L4 header Matching Conditions". Why have two different YANG data m=
odels?

p.s. pkt-eca-data-model even have L1 matching, which doesn't makes sense to=
 me. L1 is the transmission bit streams, terminated by the physical layer.

Linda

From: Susan Hares [mailto:shares@ndzh.com]
Sent: Thursday, June 30, 2016 9:12 AM
To: Linda Dunbar
Cc: i2rs@ietf.org
Subject: RE: [i2rs] relationship between "draft-ietf-i2rs-pkt-eca-data-mode=
l-00.txt" and "draft-ietf-i2rs-fb-rib-data-model-00"?

Linda:

The English text may be similar, but the yang data modules are different in=
 the drafts.  Since filters are still under consideration, I wanted to hand=
le draft-ietf-i2rs-pkt-eca-data-model separately from the FB-RIB.  The draf=
ts can be merged or left separate.

Is there a reason to merge these drafts?

Sue


From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Linda Dunbar
Sent: Wednesday, June 29, 2016 7:21 PM
To: Susan Hares
Cc: i2rs@ietf.org<mailto:i2rs@ietf.org>
Subject: [i2rs] relationship between "draft-ietf-i2rs-pkt-eca-data-model-00=
.txt" and "draft-ietf-i2rs-fb-rib-data-model-00"?

Sue, qin and Russ,

It seems to me that there are a lot of overlap between the following two dr=
afts:


-        draft-ietf-i2rs-pkt-eca-data-model-00.txt

-        draft-ietf-i2rs-fb-rib-data-model-00

they are all on forwarding packets based on matching criteria of various pa=
cket headers (L2/L3/L4).

Why need two separate IDs?
Can we merge them?

Just curious.

Linda

--_000_4A95BA014132FF49AE685FAB4B9F17F657ED93D0dfweml501mbb_
Content-Type: text/html; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" xmlns:o=3D"urn:schemas-micr=
osoft-com:office:office" xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" xmlns=3D"http:=
//www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3Dus-ascii"=
>
<meta name=3D"Generator" content=3D"Microsoft Word 12 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
	{font-family:SimSun;
	panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
	{font-family:Tahoma;
	panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
	{font-family:"\@SimSun";
	panose-1:2 1 6 0 3 1 1 1 1 1;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0in;
	margin-bottom:.0001pt;
	font-size:11.0pt;
	font-family:"Calibri","sans-serif";}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:blue;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:purple;
	text-decoration:underline;}
p.MsoAcetate, li.MsoAcetate, div.MsoAcetate
	{mso-style-priority:99;
	mso-style-link:"Balloon Text Char";
	margin:0in;
	margin-bottom:.0001pt;
	font-size:8.0pt;
	font-family:"Tahoma","sans-serif";}
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
	{mso-style-priority:34;
	margin-top:0in;
	margin-right:0in;
	margin-bottom:0in;
	margin-left:.5in;
	margin-bottom:.0001pt;
	font-size:11.0pt;
	font-family:"Calibri","sans-serif";}
span.EmailStyle18
	{mso-style-type:personal;
	font-family:"Calibri","sans-serif";
	color:windowtext;}
span.EmailStyle19
	{mso-style-type:personal;
	font-family:"Calibri","sans-serif";
	color:#1F497D;}
span.BalloonTextChar
	{mso-style-name:"Balloon Text Char";
	mso-style-priority:99;
	mso-style-link:"Balloon Text";
	font-family:"Tahoma","sans-serif";}
span.EmailStyle22
	{mso-style-type:personal-reply;
	font-family:"Calibri","sans-serif";
	color:#1F497D;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-size:10.0pt;}
@page WordSection1
	{size:8.5in 11.0in;
	margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
	{page:WordSection1;}
/* List Definitions */
@list l0
	{mso-list-id:1351177674;
	mso-list-type:hybrid;
	mso-list-template-ids:1865419534 1915669136 67698691 67698693 67698689 676=
98691 67698693 67698689 67698691 67698693;}
@list l0:level1
	{mso-level-start-at:0;
	mso-level-number-format:bullet;
	mso-level-text:-;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;
	font-family:"Calibri","sans-serif";
	mso-fareast-font-family:SimSun;
	mso-bidi-font-family:"Times New Roman";}
@list l0:level2
	{mso-level-tab-stop:1.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l0:level3
	{mso-level-tab-stop:1.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l0:level4
	{mso-level-tab-stop:2.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l0:level5
	{mso-level-tab-stop:2.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l0:level6
	{mso-level-tab-stop:3.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l0:level7
	{mso-level-tab-stop:3.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l0:level8
	{mso-level-tab-stop:4.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l0:level9
	{mso-level-tab-stop:4.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
ol
	{margin-bottom:0in;}
ul
	{margin-bottom:0in;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang=3D"EN-US" link=3D"blue" vlink=3D"purple">
<div class=3D"WordSection1">
<p class=3D"MsoNormal"><span style=3D"color:#1F497D">Sue, <o:p></o:p></span=
></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D"><o:p>&nbsp;</o:p></spa=
n></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D">Both those drafts are =
about YANG data models of Forwarding Rules based on &#8220;L1/L2/L3/L4 head=
er Matching Conditions&#8221;. Why have two different YANG data models?
<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D"><o:p>&nbsp;</o:p></spa=
n></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D">p.s. pkt-eca-data-mode=
l even have L1 matching, which doesn&#8217;t makes sense to me. L1 is the t=
ransmission bit streams, terminated by the physical layer.
<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D"><o:p>&nbsp;</o:p></spa=
n></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D">Linda<o:p></o:p></span=
></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D"><o:p>&nbsp;</o:p></spa=
n></p>
<div>
<div style=3D"border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in =
0in 0in">
<p class=3D"MsoNormal"><b><span style=3D"font-size:10.0pt;font-family:&quot=
;Tahoma&quot;,&quot;sans-serif&quot;">From:</span></b><span style=3D"font-s=
ize:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;"> Susan Ha=
res [mailto:shares@ndzh.com]
<br>
<b>Sent:</b> Thursday, June 30, 2016 9:12 AM<br>
<b>To:</b> Linda Dunbar<br>
<b>Cc:</b> i2rs@ietf.org<br>
<b>Subject:</b> RE: [i2rs] relationship between &quot;draft-ietf-i2rs-pkt-e=
ca-data-model-00.txt&quot; and &quot;draft-ietf-i2rs-fb-rib-data-model-00&q=
uot;?<o:p></o:p></span></p>
</div>
</div>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D">Linda: <o:p></o:p></sp=
an></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D"><o:p>&nbsp;</o:p></spa=
n></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D">The English text may b=
e similar, but the yang data modules are different in the drafts.&nbsp; Sin=
ce filters are still under consideration, I wanted to handle draft-ietf-i2r=
s-pkt-eca-data-model separately from the
 FB-RIB. &nbsp;The drafts can be merged or left separate.&nbsp; <o:p></o:p>=
</span></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D"><o:p>&nbsp;</o:p></spa=
n></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D">Is there a reason to m=
erge these drafts?<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D"><o:p>&nbsp;</o:p></spa=
n></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D">Sue <o:p></o:p></span>=
</p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D"><o:p>&nbsp;</o:p></spa=
n></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D"><o:p>&nbsp;</o:p></spa=
n></p>
<div>
<div style=3D"border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in =
0in 0in">
<p class=3D"MsoNormal"><b><span style=3D"font-size:10.0pt;font-family:&quot=
;Tahoma&quot;,&quot;sans-serif&quot;">From:</span></b><span style=3D"font-s=
ize:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;"> i2rs [<a=
 href=3D"mailto:i2rs-bounces@ietf.org">mailto:i2rs-bounces@ietf.org</a>]
<b>On Behalf Of </b>Linda Dunbar<br>
<b>Sent:</b> Wednesday, June 29, 2016 7:21 PM<br>
<b>To:</b> Susan Hares<br>
<b>Cc:</b> <a href=3D"mailto:i2rs@ietf.org">i2rs@ietf.org</a><br>
<b>Subject:</b> [i2rs] relationship between &quot;draft-ietf-i2rs-pkt-eca-d=
ata-model-00.txt&quot; and &quot;draft-ietf-i2rs-fb-rib-data-model-00&quot;=
?<o:p></o:p></span></p>
</div>
</div>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">Sue, qin and Russ, <o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">It seems to me that there are a lot of overlap betwe=
en the following two drafts:<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoListParagraph" style=3D"text-indent:-.25in;mso-list:l0 level=
1 lfo2"><![if !supportLists]><span style=3D"mso-list:Ignore">-<span style=
=3D"font:7.0pt &quot;Times New Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;
</span></span><![endif]>draft-ietf-i2rs-pkt-eca-data-model-00.txt<o:p></o:p=
></p>
<p class=3D"MsoListParagraph" style=3D"text-indent:-.25in;mso-list:l0 level=
1 lfo2"><![if !supportLists]><span style=3D"mso-list:Ignore">-<span style=
=3D"font:7.0pt &quot;Times New Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;
</span></span><![endif]>draft-ietf-i2rs-fb-rib-data-model-00<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">they are all on forwarding packets based on matching=
 criteria of various packet headers (L2/L3/L4).
<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">Why need two separate IDs? <o:p></o:p></p>
<p class=3D"MsoNormal">Can we merge them? <o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">Just curious. <o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">Linda <o:p></o:p></p>
</div>
</body>
</html>

--_000_4A95BA014132FF49AE685FAB4B9F17F657ED93D0dfweml501mbb_--


From nobody Thu Jun 30 14:53:35 2016
Return-Path: <shares@ndzh.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 3EF7912B046; Thu, 30 Jun 2016 14:53:29 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.739
X-Spam-Level: *
X-Spam-Status: No, score=1.739 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845, HTML_MESSAGE=0.001, RDNS_NONE=0.793] autolearn=no autolearn_force=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 IibSJQS4_Fvh; Thu, 30 Jun 2016 14:53:26 -0700 (PDT)
Received: from hickoryhill-consulting.com (unknown [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 85E9D1288B8; Thu, 30 Jun 2016 14:53:26 -0700 (PDT)
X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=174.124.165.235; 
From: "Susan Hares" <shares@ndzh.com>
To: "'Linda Dunbar'" <linda.dunbar@huawei.com>
References: <4A95BA014132FF49AE685FAB4B9F17F657ED8E6F@dfweml501-mbb> <49ba01d1d2d9$6a616900$3f243b00$@ndzh.com> <4A95BA014132FF49AE685FAB4B9F17F657ED93D0@dfweml501-mbb>
In-Reply-To: <4A95BA014132FF49AE685FAB4B9F17F657ED93D0@dfweml501-mbb>
Date: Thu, 30 Jun 2016 17:52:49 -0400
Message-ID: <00ce01d1d319$befba120$3cf2e360$@ndzh.com>
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="----=_NextPart_000_00CF_01D1D2F8.37EBAED0"
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQHncFAgf84dghdL2BTfsUw/dGlBUAHyHSyaARNDNPmfvx2zMA==
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com 
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/PRRp5JlLn0QE8VSZNxijnhaTY8I>
Cc: i2nsf@ietf.org, i2rs@ietf.org
Subject: Re: [i2rs] relationship between "draft-ietf-i2rs-pkt-eca-data-model-00.txt" and "draft-ietf-i2rs-fb-rib-data-model-00"?
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 30 Jun 2016 21:53:29 -0000

This is a multipart message in MIME format.

------=_NextPart_000_00CF_01D1D2F8.37EBAED0
Content-Type: multipart/alternative;
	boundary="----=_NextPart_001_00D0_01D1D2F8.37EBAED0"


------=_NextPart_001_00D0_01D1D2F8.37EBAED0
Content-Type: text/plain;
	charset="us-ascii"
Content-Transfer-Encoding: 7bit

Linda:

 

The reason for three different yang modules (fb-rib, fb-rib-type,
pkt-eca-policy)  is modularity of the work.    The
draft-ietf-i2rs-fb-rib-data-model contains two modules (fb-rib-types,
fb-rib), and draft-ietf-i2rs-pkt-eca-policy-data-model contains
pkt-eca-policy.  I could put these all in one module if it is more
convenient. 

 

The modularity of the yang modules are to focus :

1)      pkt-eca-policy - packet ECA policy 

2)      Fb-rib-type: on modules definitions for fb-rib 

3)      fb-rib:  operat (using if-feature) 

 

I've attached just the change for the next revision of pkt-eca-policy that
includes the packet filter suggestions from I2NSF.   This version of the
module is validated via pyang. 

 

 

Sue 

 

 

 

 

 

The L1 header involves the Sonet ring or OTN or DWDM as describe below: 

 

  // L1 header match identities 

               identity l1-header-match-type {

      description

      " L1 header type for match ";

    }

  

  identity l1-hdr-sonet-type {

    base l1-header-match-type;

    description

      " L1 header sonet match ";

   }

   

   identity l1-hdr-OTN-type {

       base l1-header-match-type;

       description

      " L1 header OTN match ";

               }

               

               identity l1-hdr-dwdm-type {

       base l1-header-match-type;

                 description

      " L1 header DWDM match ";

               }

 

 

 

 

From: Linda Dunbar [mailto:linda.dunbar@huawei.com] 
Sent: Thursday, June 30, 2016 5:15 PM
To: Susan Hares
Cc: i2rs@ietf.org
Subject: RE: [i2rs] relationship between
"draft-ietf-i2rs-pkt-eca-data-model-00.txt" and
"draft-ietf-i2rs-fb-rib-data-model-00"?

 

Sue, 

 

Both those drafts are about YANG data models of Forwarding Rules based on
"L1/L2/L3/L4 header Matching Conditions". Why have two different YANG data
models? 

 

p.s. pkt-eca-data-model even have L1 matching, which doesn't makes sense to
me. L1 is the transmission bit streams, terminated by the physical layer. 

 

Linda

 

From: Susan Hares [mailto:shares@ndzh.com] 
Sent: Thursday, June 30, 2016 9:12 AM
To: Linda Dunbar
Cc: i2rs@ietf.org
Subject: RE: [i2rs] relationship between
"draft-ietf-i2rs-pkt-eca-data-model-00.txt" and
"draft-ietf-i2rs-fb-rib-data-model-00"?

 

Linda: 

 

The English text may be similar, but the yang data modules are different in
the drafts.  Since filters are still under consideration, I wanted to handle
draft-ietf-i2rs-pkt-eca-data-model separately from the FB-RIB.  The drafts
can be merged or left separate.  

 

Is there a reason to merge these drafts?

 

Sue 

 

 

From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Linda Dunbar
Sent: Wednesday, June 29, 2016 7:21 PM
To: Susan Hares
Cc: i2rs@ietf.org
Subject: [i2rs] relationship between
"draft-ietf-i2rs-pkt-eca-data-model-00.txt" and
"draft-ietf-i2rs-fb-rib-data-model-00"?

 

Sue, qin and Russ, 

 

It seems to me that there are a lot of overlap between the following two
drafts:

 

-          draft-ietf-i2rs-pkt-eca-data-model-00.txt

-          draft-ietf-i2rs-fb-rib-data-model-00

 

they are all on forwarding packets based on matching criteria of various
packet headers (L2/L3/L4). 

 

Why need two separate IDs? 

Can we merge them? 

 

Just curious. 

 

Linda 


------=_NextPart_001_00D0_01D1D2F8.37EBAED0
Content-Type: text/html;
	charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" =
xmlns:o=3D"urn:schemas-microsoft-com:office:office" =
xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" =
xmlns=3D"http://www.w3.org/TR/REC-html40"><head><meta =
http-equiv=3DContent-Type content=3D"text/html; =
charset=3Dus-ascii"><meta name=3DGenerator content=3D"Microsoft Word 14 =
(filtered medium)"><style><!--
/* Font Definitions */
@font-face
	{font-family:SimSun;
	panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
	{font-family:Tahoma;
	panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
	{font-family:"\@SimSun";
	panose-1:2 1 6 0 3 1 1 1 1 1;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0in;
	margin-bottom:.0001pt;
	font-size:11.0pt;
	font-family:"Calibri","sans-serif";}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:blue;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:purple;
	text-decoration:underline;}
p.MsoAcetate, li.MsoAcetate, div.MsoAcetate
	{mso-style-priority:99;
	mso-style-link:"Balloon Text Char";
	margin:0in;
	margin-bottom:.0001pt;
	font-size:8.0pt;
	font-family:"Tahoma","sans-serif";}
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
	{mso-style-priority:34;
	margin-top:0in;
	margin-right:0in;
	margin-bottom:0in;
	margin-left:.5in;
	margin-bottom:.0001pt;
	font-size:11.0pt;
	font-family:"Calibri","sans-serif";}
span.BalloonTextChar
	{mso-style-name:"Balloon Text Char";
	mso-style-priority:99;
	mso-style-link:"Balloon Text";
	font-family:"Tahoma","sans-serif";}
span.EmailStyle20
	{mso-style-type:personal;
	font-family:"Calibri","sans-serif";
	color:windowtext;}
span.EmailStyle21
	{mso-style-type:personal;
	font-family:"Calibri","sans-serif";
	color:#1F497D;}
span.EmailStyle22
	{mso-style-type:personal;
	font-family:"Calibri","sans-serif";
	color:#1F497D;}
span.EmailStyle23
	{mso-style-type:personal-reply;
	font-family:"Calibri","sans-serif";
	color:#1F497D;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-size:10.0pt;}
@page WordSection1
	{size:8.5in 11.0in;
	margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
	{page:WordSection1;}
/* List Definitions */
@list l0
	{mso-list-id:760490528;
	mso-list-type:hybrid;
	mso-list-template-ids:-271537488 67698705 67698713 67698715 67698703 =
67698713 67698715 67698703 67698713 67698715;}
@list l0:level1
	{mso-level-text:"%1\)";
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l0:level2
	{mso-level-number-format:alpha-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l0:level3
	{mso-level-number-format:roman-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:right;
	text-indent:-9.0pt;}
@list l0:level4
	{mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l0:level5
	{mso-level-number-format:alpha-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l0:level6
	{mso-level-number-format:roman-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:right;
	text-indent:-9.0pt;}
@list l0:level7
	{mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l0:level8
	{mso-level-number-format:alpha-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l0:level9
	{mso-level-number-format:roman-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:right;
	text-indent:-9.0pt;}
@list l1
	{mso-list-id:1168401316;
	mso-list-type:hybrid;
	mso-list-template-ids:1361102960 67698705 67698713 67698715 67698703 =
67698713 67698715 67698703 67698713 67698715;}
@list l1:level1
	{mso-level-text:"%1\)";
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l1:level2
	{mso-level-number-format:alpha-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l1:level3
	{mso-level-number-format:roman-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:right;
	text-indent:-9.0pt;}
@list l1:level4
	{mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l1:level5
	{mso-level-number-format:alpha-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l1:level6
	{mso-level-number-format:roman-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:right;
	text-indent:-9.0pt;}
@list l1:level7
	{mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l1:level8
	{mso-level-number-format:alpha-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l1:level9
	{mso-level-number-format:roman-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:right;
	text-indent:-9.0pt;}
@list l2
	{mso-list-id:1351177674;
	mso-list-type:hybrid;
	mso-list-template-ids:1865419534 1915669136 67698691 67698693 67698689 =
67698691 67698693 67698689 67698691 67698693;}
@list l2:level1
	{mso-level-start-at:0;
	mso-level-number-format:bullet;
	mso-level-text:-;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;
	font-family:"Calibri","sans-serif";
	mso-fareast-font-family:SimSun;
	mso-bidi-font-family:"Times New Roman";}
@list l2:level2
	{mso-level-tab-stop:1.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l2:level3
	{mso-level-tab-stop:1.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l2:level4
	{mso-level-tab-stop:2.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l2:level5
	{mso-level-tab-stop:2.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l2:level6
	{mso-level-tab-stop:3.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l2:level7
	{mso-level-tab-stop:3.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l2:level8
	{mso-level-tab-stop:4.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l2:level9
	{mso-level-tab-stop:4.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l3
	{mso-list-id:2000766481;
	mso-list-type:hybrid;
	mso-list-template-ids:-327273706 67698705 67698713 67698715 67698703 =
67698713 67698715 67698703 67698713 67698715;}
@list l3:level1
	{mso-level-text:"%1\)";
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l3:level2
	{mso-level-number-format:alpha-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l3:level3
	{mso-level-number-format:roman-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:right;
	text-indent:-9.0pt;}
@list l3:level4
	{mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l3:level5
	{mso-level-number-format:alpha-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l3:level6
	{mso-level-number-format:roman-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:right;
	text-indent:-9.0pt;}
@list l3:level7
	{mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l3:level8
	{mso-level-number-format:alpha-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l3:level9
	{mso-level-number-format:roman-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:right;
	text-indent:-9.0pt;}
ol
	{margin-bottom:0in;}
ul
	{margin-bottom:0in;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]--></head><body lang=3DEN-US link=3Dblue =
vlink=3Dpurple><div class=3DWordSection1><p class=3DMsoNormal><span =
style=3D'color:#1F497D'>Linda:<o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'color:#1F497D'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span style=3D'color:#1F497D'>The reason for three =
different yang modules (fb-rib, fb-rib-type, pkt-eca-policy) &nbsp;is =
modularity of the work.&nbsp; &nbsp;&nbsp;The =
&nbsp;draft-ietf-i2rs-fb-rib-data-model contains two modules =
(fb-rib-types, fb-rib), and draft-ietf-i2rs-pkt-eca-policy-data-model =
contains &nbsp;pkt-eca-policy.&nbsp; I could put these all in one module =
if it is more convenient. <o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'color:#1F497D'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span style=3D'color:#1F497D'>The modularity of the =
yang modules are to focus :<o:p></o:p></span></p><p =
class=3DMsoListParagraph style=3D'text-indent:-.25in;mso-list:l0 level1 =
lfo5'><![if !supportLists]><span style=3D'color:#1F497D'><span =
style=3D'mso-list:Ignore'>1)<span style=3D'font:7.0pt "Times New =
Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
</span></span></span><![endif]><span =
style=3D'color:#1F497D'>pkt-eca-policy &#8211; packet ECA policy =
<o:p></o:p></span></p><p class=3DMsoListParagraph =
style=3D'text-indent:-.25in;mso-list:l0 level1 lfo5'><![if =
!supportLists]><span style=3D'color:#1F497D'><span =
style=3D'mso-list:Ignore'>2)<span style=3D'font:7.0pt "Times New =
Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
</span></span></span><![endif]><span =
style=3D'color:#1F497D'>Fb-rib-type: on modules definitions for fb-rib =
<o:p></o:p></span></p><p class=3DMsoListParagraph =
style=3D'text-indent:-.25in;mso-list:l0 level1 lfo5'><![if =
!supportLists]><span style=3D'color:#1F497D'><span =
style=3D'mso-list:Ignore'>3)<span style=3D'font:7.0pt "Times New =
Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
</span></span></span><![endif]><span =
style=3D'color:#1F497D'>fb-rib:&nbsp; operat (using if-feature) =
<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#1F497D'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span style=3D'color:#1F497D'>I&#8217;ve attached just =
the change for the next revision of pkt-eca-policy that includes the =
packet filter suggestions from I2NSF. &nbsp;&nbsp;This version of the =
module is validated via pyang. <o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'color:#1F497D'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'color:#1F497D'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span style=3D'color:#1F497D'>Sue =
<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#1F497D'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'color:#1F497D'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'color:#1F497D'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'color:#1F497D'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'color:#1F497D'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span style=3D'color:#1F497D'>The L1 header involves =
the Sonet ring or OTN or DWDM as describe below: =
<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#1F497D'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span style=3D'color:#1F497D'>&nbsp; // L1 header =
match identities <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#1F497D'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; identity l1-header-match-type =
{<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#1F497D'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
description<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#1F497D'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot; L1 header =
type for match &quot;;<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#1F497D'>&nbsp;&nbsp;&nbsp; }<o:p></o:p></span></p><p =
class=3DMsoNormal><span style=3D'color:#1F497D'>&nbsp; =
<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#1F497D'>&nbsp;&nbsp;identity l1-hdr-sonet-type =
{<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#1F497D'>&nbsp;&nbsp;&nbsp; base =
l1-header-match-type;<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#1F497D'>&nbsp;&nbsp;&nbsp; =
description<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#1F497D'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot; L1 header =
sonet match &quot;;<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#1F497D'>&nbsp;&nbsp; }<o:p></o:p></span></p><p =
class=3DMsoNormal><span style=3D'color:#1F497D'>&nbsp;&nbsp; =
<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#1F497D'>&nbsp;&nbsp;&nbsp;identity l1-hdr-OTN-type =
{<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#1F497D'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; base =
l1-header-match-type;<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#1F497D'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
description<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#1F497D'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot; L1 header =
OTN match &quot;;<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#1F497D'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'color:#1F497D'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'color:#1F497D'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; identity l1-hdr-dwdm-type =
{<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#1F497D'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; base =
l1-header-match-type;<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#1F497D'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp; =
description<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#1F497D'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot; L1 header =
DWDM match &quot;;<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#1F497D'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'color:#1F497D'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span style=3D'color:#1F497D'> =
<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#1F497D'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'color:#1F497D'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'color:#1F497D'><o:p>&nbsp;</o:p></span></p><div><div =
style=3D'border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in =
0in 0in'><p class=3DMsoNormal><b><span =
style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span>=
</b><span style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif"'> =
Linda Dunbar [mailto:linda.dunbar@huawei.com] <br><b>Sent:</b> Thursday, =
June 30, 2016 5:15 PM<br><b>To:</b> Susan Hares<br><b>Cc:</b> =
i2rs@ietf.org<br><b>Subject:</b> RE: [i2rs] relationship between =
&quot;draft-ietf-i2rs-pkt-eca-data-model-00.txt&quot; and =
&quot;draft-ietf-i2rs-fb-rib-data-model-00&quot;?<o:p></o:p></span></p></=
div></div><p class=3DMsoNormal><o:p>&nbsp;</o:p></p><p =
class=3DMsoNormal><span style=3D'color:#1F497D'>Sue, =
<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#1F497D'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span style=3D'color:#1F497D'>Both those drafts are =
about YANG data models of Forwarding Rules based on &#8220;L1/L2/L3/L4 =
header Matching Conditions&#8221;. Why have two different YANG data =
models? <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#1F497D'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span style=3D'color:#1F497D'>p.s. pkt-eca-data-model =
even have L1 matching, which doesn&#8217;t makes sense to me. L1 is the =
transmission bit streams, terminated by the physical layer. =
<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#1F497D'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'color:#1F497D'>Linda<o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'color:#1F497D'><o:p>&nbsp;</o:p></span></p><div><div =
style=3D'border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in =
0in 0in'><p class=3DMsoNormal><b><span =
style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span>=
</b><span style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif"'> =
Susan Hares [<a =
href=3D"mailto:shares@ndzh.com">mailto:shares@ndzh.com</a>] =
<br><b>Sent:</b> Thursday, June 30, 2016 9:12 AM<br><b>To:</b> Linda =
Dunbar<br><b>Cc:</b> <a =
href=3D"mailto:i2rs@ietf.org">i2rs@ietf.org</a><br><b>Subject:</b> RE: =
[i2rs] relationship between =
&quot;draft-ietf-i2rs-pkt-eca-data-model-00.txt&quot; and =
&quot;draft-ietf-i2rs-fb-rib-data-model-00&quot;?<o:p></o:p></span></p></=
div></div><p class=3DMsoNormal><o:p>&nbsp;</o:p></p><p =
class=3DMsoNormal><span style=3D'color:#1F497D'>Linda: =
<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#1F497D'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span style=3D'color:#1F497D'>The English text may be =
similar, but the yang data modules are different in the drafts.&nbsp; =
Since filters are still under consideration, I wanted to handle =
draft-ietf-i2rs-pkt-eca-data-model separately from the FB-RIB. &nbsp;The =
drafts can be merged or left separate.&nbsp; <o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'color:#1F497D'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span style=3D'color:#1F497D'>Is there a reason to =
merge these drafts?<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#1F497D'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span style=3D'color:#1F497D'>Sue =
<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#1F497D'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'color:#1F497D'><o:p>&nbsp;</o:p></span></p><div><div =
style=3D'border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in =
0in 0in'><p class=3DMsoNormal><b><span =
style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span>=
</b><span style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif"'> =
i2rs [<a =
href=3D"mailto:i2rs-bounces@ietf.org">mailto:i2rs-bounces@ietf.org</a>] =
<b>On Behalf Of </b>Linda Dunbar<br><b>Sent:</b> Wednesday, June 29, =
2016 7:21 PM<br><b>To:</b> Susan Hares<br><b>Cc:</b> <a =
href=3D"mailto:i2rs@ietf.org">i2rs@ietf.org</a><br><b>Subject:</b> =
[i2rs] relationship between =
&quot;draft-ietf-i2rs-pkt-eca-data-model-00.txt&quot; and =
&quot;draft-ietf-i2rs-fb-rib-data-model-00&quot;?<o:p></o:p></span></p></=
div></div><p class=3DMsoNormal><o:p>&nbsp;</o:p></p><p =
class=3DMsoNormal>Sue, qin and Russ, <o:p></o:p></p><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p><p class=3DMsoNormal>It seems to =
me that there are a lot of overlap between the following two =
drafts:<o:p></o:p></p><p class=3DMsoNormal><o:p>&nbsp;</o:p></p><p =
class=3DMsoListParagraph style=3D'text-indent:-.25in;mso-list:l2 level1 =
lfo2'><![if !supportLists]><span style=3D'mso-list:Ignore'>-<span =
style=3D'font:7.0pt "Times New =
Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
</span></span><![endif]>draft-ietf-i2rs-pkt-eca-data-model-00.txt<o:p></o=
:p></p><p class=3DMsoListParagraph =
style=3D'text-indent:-.25in;mso-list:l2 level1 lfo2'><![if =
!supportLists]><span style=3D'mso-list:Ignore'>-<span =
style=3D'font:7.0pt "Times New =
Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
</span></span><![endif]>draft-ietf-i2rs-fb-rib-data-model-00<o:p></o:p></=
p><p class=3DMsoNormal><o:p>&nbsp;</o:p></p><p class=3DMsoNormal>they =
are all on forwarding packets based on matching criteria of various =
packet headers (L2/L3/L4). <o:p></o:p></p><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p><p class=3DMsoNormal>Why need two =
separate IDs? <o:p></o:p></p><p class=3DMsoNormal>Can we merge them? =
<o:p></o:p></p><p class=3DMsoNormal><o:p>&nbsp;</o:p></p><p =
class=3DMsoNormal>Just curious. <o:p></o:p></p><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p><p class=3DMsoNormal>Linda =
<o:p></o:p></p></div></body></html>
------=_NextPart_001_00D0_01D1D2F8.37EBAED0--

------=_NextPart_000_00CF_01D1D2F8.37EBAED0
Content-Type: application/octet-stream;
	name="ietf-pkt-eca-policy@2016-06-26.yang"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
	filename="ietf-pkt-eca-policy@2016-06-26.yang"

  module ietf-pkt-eca-policy {
    namespace "urn:ietf:params:xml:ns:yang:ietf-pkt-eca-policy"; 
   // replace with iana namespace when assigned
    prefix "pkt-eca-policy";
    
	import ietf-routing {
	   prefix "rt";
	 }
	import ietf-interfaces {
       prefix "if";
    }
	import ietf-inet-types {
       prefix inet;
       //rfc6991
     }

	import ietf-i2rs-rib { 
     prefix "i2rs-rib";
	}  

  // meta
    organization "IETF I2RS WG";

  contact
     "email: shares@ndzh.com 
	  email: russ.white@riw.com
	  email: linda.dunbar@huawei.com
      email: bill.wu@huawei.com";  

  description
    "This module describes a basic network policy
	model with filter per layer."; 
	
	revision "2016-06-26" {
	   description "sec ond revision";
	   reference "draft-ietf-i2rs-pkt-eca-policy-dm-03";
	 }
	 
 
  // interfaces - no identity  matches  
   

  // L1 header match identities 
	identity l1-header-match-type {
      description
      " L1 header type for match ";
    }
  
  identity l1-hdr-sonet-type {
    base l1-header-match-type;
    description
      " L1 header sonet match ";
   }
   
   identity l1-hdr-OTN-type {
       base l1-header-match-type;
       description
      " L1 header OTN match ";
	}
	
	identity l1-hdr-dwdm-type {
       base l1-header-match-type;
	  description
      " L1 header DWDM match ";
	}

	// L2 header match identities 
    identity l2-header-match-type {
    description
      " l2 header type for match ";
    }
  
  identity l2-802-1Q {
    base l2-header-match-type;
    description
      " l2 header type for 802.1Q match ";
   }
   
   identity l2-802-11 {
     base l2-header-match-type;
     description
      " l2 header type for 802.11 match ";
	}
	
	identity l2-802-15 {
     base l2-header-match-type;
	 description
      " l2 header type for 802.15 match ";
	}
	
	identity l2-NVGRE {
      base l2-header-match-type;
      description
      " l2 header type for NVGRE match ";
	}
	identity l2-mpls {
         base l2-header-match-type;
		 description
      " l2 header type for MPLS match ";
	} 
	
	identity l2-VXLAN {
     base l2-header-match-type;
	 description
      " l2 header type for VXLAN match ";
	} 
	
	
	// L3 header match identities 
	identity l3-header-match-type {
    description
      " l3 header type for match ";
    }
	
	identity l3-ipv4-hdr {
	 base l3-header-match-type;
	 description
      " l3 header type for IPv4 match ";
	}
	
	identity l3-ipv6-hdr {
	 base l3-header-match-type;
	 description
      " l3 header type for IPv6 match ";
	}
	 
	identity l3-gre-tunnel {
	 base l3-header-match-type;
           description "l3 header r 
           type for GRE tunnel match ";
	}
	
	identity l3-icmp-header {
 	  base l3-header-match-type;
	  description "L3 header match for ICMP";
	 }
	 
	identity l3-ipsec-ah-header {
 	  base l3-header-match-type;
	  description "AH IPSEC header ";
	 }
	
	identity l3-ipsec-esp-header {
 	  base l3-header-match-type;
	  description "AH IPSEC header ";
	 }
	
	// L4 header match identities 
	
	identity l4-header-match-type {
	 description "L4 header
	 match types. (TCP, UDP,
	 SCTP, UDPLite, etc. )";
	 }
	 
	 identity l4-tcp-header {
 	  base l4-header-match-type;
          description "L4 header for TCP";
	 }
	 
	 identity l4-udp-header {
 	  base l4-header-match-type;
	  description "L4 header match for UDP";
	 }
	 
	 identity l4-udplite {
 	  base l4-header-match-type;
	  description "L4 header match for
            UDP lite";
	 }	 

	 identity l4-sctp-header {
 	  base l4-header-match-type;
	  description "L4 header match for SCTP";
	  }	  

	 
	 // Service header identities 
	 
	 identity service-header-match-type {
	  description "service header
	   match types: service function path 
	   (sf-path)), SF-chain, sf-discovery, 
	    and others (added here)";
	 }
	  
	  identity sf-chain-meta-match {
  	    base service-header-match-type;
	    description "service header match for
		meta-match header";
	}
	  
	  identity sf-path-meta-match {
  	    base  service-header-match-type;
	  	description "service header match for
		 path-match header";
	}
	 
	identity rule-status-type {
     description "status
	 values for rule: invalid (0),
	 valid (1), valid and installed (2)";
    }
   
	identity rule-status-invalid {
       base rule-status-type;
	   description "invalid rule status.";
    }
   
    identity rule-status-valid {
       base rule-status-type;
	   description "This status indicates
	    a valid rule.";
	   
	}
 
    identity rule-status-valid-installed {
       base rule-status-type;
  	   description "This status indicates
        an installed rule.";
    }
    identity rule-status-valid-inactive {
       base rule-status-type;
	   description "This status indicates
		a valid ruled that is not installed.";
    }
	
   identity rule-cr-type {
     description "status
	 values for rule: FMR (0), ADTP (1), 
	 Longest-match (2)";
    }
   
	identity rule-cr-FMR {
           base rule-cr-type;
	   description "first match resolution.";
    }
	
	identity rule-cr-ADTP {
       base rule-cr-type;
	   description "ADTP resolution.";
    }
   
   	
	identity rule-cr-longest {
       base rule-cr-type;
	   description "longest match resolution.";
    }
   
   
     grouping interface-match {
	   leaf match-if-name {
   		type if:interface-ref;
	    description "match on interface name";
	   }
	   description "interface
	   has name, description, type, enabled
	   as potential matches";
	 }
	 
	 grouping interface-actions {
	   description 
	   "interface action up/down and
	    enable/disable";
		leaf interface-up {
		 type boolean;
		 description 
		  "action to put interface up";
		 }
		leaf interface-down {
		  type boolean;
		 description 
		  "action to put interface down";
		  }
		leaf interface-enable {
		  type boolean;
		   description 
		  "action to enable interface";
		  }
		leaf interface-disable {
     	 type boolean;
	 	 description 
		  "action to disable interface";
		}
	}
	
	 
	 grouping L1-header-match {
		choice l1-header-match-type {
		  case l1-hdr-sonet-type {
		  // sonet matches
		  }
		  case L1-hdr-OTN-type {
		  // OTN matches
		  }
		  case L1-hdr-dwdm-type {
		  // DWDM matches 
		  }
	    description 
		   "The Layer 1 header match choices";
		}
	    description 
		   "The Layer 1 header match includes
		    any reference to L1 technology";
	 }
	 
	 grouping L1-header-actions {
		  leaf l1-hdr-sonet-act {
		   type uint8;
		   description "sonet actions";
		  }
		  leaf l1-hdr-OTN-act {
		   type uint8; 
		   description "OTN actions";
		  }
		  leaf l1-hdr-dwdm-act {
		     type uint8;
		    description "DWDM actions";
		  } 
		 description "L1 header match 
		  types";
	  }
	 
	 grouping L2-802-1Q-header {
	     description
		 "This is short-term 802.1 header
		  match which will be replaced
		  by reference to IEEE yang when 
		  it arrives. Qtag 1 is 802.1Q
		  Qtag2 is 802.1AD";
		  
		  leaf vlan-present {
  		    type boolean;
		    description " Include VLAN in header";
			}
		  leaf qtag1-present {
  		    type boolean;
		     description " This flag value indicates 
			 inclusion of one 802.1Q tag in header";
			}
		  leaf qtag2-present{
  		    type boolean;
  	        description "This flag indicates the 
			   inclusion of second 802.1Q tag in header";
		    }
		  
		  leaf dest-mac {
	       type uint64;  //change to uint48
           description "IEEE destination MAC value 
		      from the header";
		   }
		  leaf src-mac {
 		    type uint64;  		//change to uint48
		   description "IEEE source MAC 
		    from the header";

			}
		  leaf vlan-tag {
	  		type uint16;
		   description "IEEE VLAN Tag
		    from the header";
			}
	 	  leaf qtag1 { 
  			type uint32;
		    description "Qtag1 value
			 from the header";
			}
		  leaf qtag2 {
  		     type uint32;
		  	 description "Qtag1 value
			 from the header";
		  }
		  leaf L2-ethertype {
  			type uint16;
			description "Ether type
			from the header";
		  }
	   }
	
		 
	 grouping L2-VXLAN-header {
	    container vxlan-header { 
		  uses i2rs-rib:ipv4-header;
		  leaf vxlan-network-id {
		      type uint32;
  		      description "VLAN network id";
		     }
		  description " choices for 
		    L2-VLAN header matches.
			Outer-header only.  
			Need to fix inner header. ";
	   }
	    description
		"This VXLAN header may
		be replaced by actual VXLAN yang
		module reference";
	 }
	  
	 grouping L2-NVGRE-header {

		 container nvgre-header {
		    uses L2-802-1Q-header;
		    uses i2rs-rib:ipv4-header;
		  leaf gre-version {
  		    type uint8;
		    description "L2-NVGRE GRE version";
		    }
		  leaf gre-proto {
  		    type uint16;
		    description "L2-NVGRE protocol value";
			}
		  leaf virtual-subnet-id {
             type uint32;
		     description "L2-NVGRE subnet id value";
             }
          leaf flow-id {
             type uint16;
		     description "L2-NVGRE Flow id value";
		  }
		    // uses L2-802-1Q-header;
	    description
		  "This NVGRE header may
		  be replaced by actual NVGRE yang
		   module reference";
	    }
		description "Grouping for 
		   L2 NVGRE header.";
	 }
	  
 	 
	 grouping L2-header-match {

	    choice l2-header-match-type {
		     case l2-802-1Q {
			   uses L2-802-1Q-header;
			 }
			 case l2-802-11 {
			   // matches for 802.11 headers
			 }
			 case l2-802-15 {
		      // matches for 802.1 Ethernet
		     }
			 case l2-NVGRE {
			  // matches for NVGRE 
			  uses L2-NVGRE-header;
			 }
			 case l2-VXLAN-header {
			  uses L2-VXLAN-header;
			 }
			 case l2-mpls-header {
			   uses i2rs-rib:mpls-header;
			 }
		 description "Choice of L2 
		    headers for L2 match";
		}
        description
   	       " The layer 2 header match includes
		   any reference to L2 technology";
	 }
	 
	 grouping L2-NVGRE-mod-acts {
	  // actions for NVGRE 
	   leaf set-vsid {
    	type boolean;
	      description 
		  "Boolean flag to set VSID in packet";
		}
	   leaf set-flowid {
   	      type boolean;
	      description 
		   "Boolean flag to set VSID in packet";
		}
	   leaf vsi {
	    type uint32;
		description 
		  "VSID value to set in packet";			 
		}
	   leaf flow-id {
		 type uint16; 
	     description 
		 "flow-id value to set in packet";
	   }
	   description "L2-NVRE Actions";
	 } 
	 
	 grouping L2-VXLAN-mod-acts {
	   leaf set-network-id {
 	      type boolean;
	      description 
		 "flag to set network id in packet";
	   }
	   leaf network-id {
   	     type uint32;
		 description 
		 "network id value to set in packet";
	   }
	   description "VXLAN header
	     modification actions.";
	 }
	 
	 grouping L2-mpls-mod-acts {
	   leaf pop {
   	   type boolean;
	    description 
		 "Boolean flag to pop mpls header";
	   }
	   leaf push {
		type boolean;
	    description 
		 "Boolean flag to push value into
 		 mpls header";
	   }
	   leaf mpls-label {
		 type uint32;
	   	 description 
		 "mpls label to push in header";
		}
		description "MPLS modify
		 header actions";
	 }
	 
	 grouping l2-header-mod-actions {
		leaf l2-802-1Q {
		  type uint8;
		  description "actions for 802.1Q";
		 }
		leaf l2-802-11 {
		  type uint8; 
		  description "actions for 802.11";
		  }
		leaf l2-802-15 {
		  type uint8;
		  description "ations for 802.15";
		}   
        
		uses L2-NVGRE-mod-acts; 
        uses L2-VXLAN-mod-acts;
		uses L2-mpls-mod-acts;
	   
		description
		 " The layer 2 header match includes
		   any reference to L2 technology";
	 }  
	 
	 
	grouping L3-header-match {

	    choice L3-header-match-type {
		   case l3-ipv4-hdr {
		     uses i2rs-rib:ipv4-header;
		   }
		   case l3-ipv6-hdr {
		     uses i2rs-rib:ipv6-header;
		   }
		   case L3-gre-tunnel {
		     uses i2rs-rib:gre-header;
		   }
	   	     description "match for L3 
			 headers for IPv4, IPv6, 
			  and GRE tunnels";
		}
        description "match for L3 headers";
	 }
	 
	grouping ipv4-encapsulate-gre {
	    leaf encapsulate {
            type boolean;
	        description "flag to encapsulate headers";
		  }
	     leaf ipv4-dest-address {
 		  	type inet:ipv4-address;
			description "Destination Address for GRE header";
		 }
		leaf ipv4-source-address {
 			 type inet:ipv4-address;
		     description "Source Address for GRE header";		 
		 }
		description "encapsulation actions for IPv4 headers";
	 }
	 
	grouping L3-header-actions {
	  choice l3-header-act-type {
		case l3-ipv4-hdr {
		    leaf set-ttl {
			  type boolean;
			  description "flag to set TTL";
		    }
			leaf set-dscp {
			  type boolean;
			  description "flag to set DSCP";
			}
		    leaf ttl-value {
			  type uint8;
			  description "TTL value to set";
			}
			leaf dscp-val {
              type uint8; 
			  description "dscp value to set";
			  }
            }
		case l3-ipv6-hdr {
		    leaf set-next-header {
			  type boolean;
			  description 
			   "flag to set next routing 
			   header in IPv6 header";
			}
			leaf set-traffic-class {
			  type boolean;
			  description 
			   "flag to set traffic class
			   in IPv6 header";

			 }
			leaf set-flow-label {
			   type boolean;
	 		   description 
			   "flag to set flow label 
			     in IPv6 header";
			}
			leaf set-hop-limit {
			   type boolean;
			   description "flag 
			    to set hop limit in 
				L3 packet";
			 }
			leaf ipv6-next-header {
			   type uint8;
	 		   description "value to 
			   set in next IPv6 header";
			 }
			leaf ipv6-traffic-class {
			   type uint8;
			   description "value to set
				in traffic class";
		
			}
			leaf ipv6-flow-label {
			   type uint16;
  			    description "value to set
				  in IPOv6 flow label";
			}
			leaf ipv6-hop-limit {
			   type uint8;
  			   description "value to set
			     in hop count";
		    }
		}
		   
		case L3-gre-tunnel {
		    leaf decapsulate {
			   type boolean; 
	     	   description "flag to 
			    decapsulate GRE packet";
			 }
		     description "GRE tunnel 
                 actions" ;
		 }
		description "actions that can 
		   be performed on L3 header";
	  }
	  description "actions to 
	   be performed on L3 header";
	}

	 
	 grouping tcp-header-match {
	   leaf tcp-src-port {
   	     type uint16; 
	     description "source port match value";
		 }
	   leaf tcp-dst-port {
   	     type uint16;
         description "dest port value
		  to match";
		 }
		 leaf sequence-number {
		  type uint32;
		  description "sequence number 
		   value to match";
		 }
		 leaf ack-number {
		 type uint32;
		 description "action value to
		  match";
		 }
	   description "match for TCP
		 header";
	}
	   
	 grouping tcp-header-action {
	   leaf set-tcp-src-port {
	     type boolean;
   	     description "flag to set 
		   source port value";
	   }
	   leaf set-tcp-dst-port {
   	    type boolean;
   	    description "flag to set source port value";
	   }

	   leaf tcp-s-port {
   	     type uint16; 
	     description "source port match value";
		 }
	   leaf tcp-d-port {
   	     type uint16;
         description "dest port value
		  to match";
	    }
	    leaf seq-num {
		  type uint32;
		  description "sequence number 
		   value to match";
		 }
		 leaf ack-num {
		 type uint32;
		 description "action value to
		  match";
		 }
	   description "Actions to 
	      modify TCP header";
	}
	 
	grouping udp-header-match {
	    leaf udp-src-port {
		 type uint16;
 	     description "UDP source 
		   port match value";
		 }
		leaf udp-dst-port {
		  type uint16;
	      description "UDP Destination 
		    port match value";
		 }
	    description "match values for 
		  UDP header";
	    
	}
	
	grouping udp-header-action {
	    leaf set-udp-src-port {
 		 type boolean;
	     description "flag to set 
		   UDP source port match value";
		 }
		leaf set-udp-dst-port {
		 type boolean;
   	     description 
		   "flag to set UDP destination port match value";
		 }
		leaf udp-s-port {
		 type uint16;
 	     description "UDP source 
		   port match value";
		 }
		leaf udp-d-port {
		  type uint16;
	      description "UDP Destination 
		    port match value";
		 }
	    
	   description "actions to set
	    values in UDP header";
	}
	
	grouping sctp-chunk {
		leaf chunk-type {
		  type uint8;
		  description "sctp chunk type value";
		}
		leaf chunk-flag {
		  type uint8;
		  description "sctp chunk type 
		   flag value";
	    }
	   
		leaf chunk-length {
		  type uint16;
		  description "sctp chunk length";
	    }
	   
	   leaf chunk-data-byte-zero {
		  type uint32;
		  description "byte zero of 
		   stcp chunk data"; 
	   }
	   description "sctp chunck
	    header match fields";
	}
	
	 grouping sctp-header-match {
  	    uses sctp-chunk;
	    leaf stcp-src-port {
		 type uint16;
	     description "sctp header match 
		   source port value";
		}
		leaf sctp-dst-port {
		 type uint16;
	      description "sctp header match 
		  destination port value";
		}
		leaf sctp-verify-tag {
		 type uint32; 
 	     description "sctp header match 
		   verification tag value";
		}
		description "SCTP header 
		     match values";
	}
	
	grouping sctp-header-action {
	    leaf set-stcp-src-port {
		 type boolean;
	     description "set source port in sctp header";
		}
		leaf set-stcp-dst-port {
		 type boolean;
	     description "set destination port in sctp header";
		}
		leaf set-stcp-chunk1 {
		 type boolean;
 	     description "set chunk value in sctp header";
		}
		leaf chunk-type-value  {
		  type uint8;
		  description "sctp chunk type value";
		}
		leaf chunk-flag-value {
		  type uint8;
		  description "sctp chunk type 
		   flag value";
	    }
	   
		leaf chunk-len {
		  type uint16;
		  description "sctp chunk length";
	    }
	   
	   leaf chunk-data-bzero {
		  type uint32;
		  description "byte zero of 
		   stcp chunk data"; 
	   }
	   description "sctp qos actions";
	}
	
	
	grouping L4-header-match {
	     choice l4-header-match-type {
		   case l4-tcp-header {
		     uses tcp-header-match;
		   }
		   case l4-udp-header {
		     uses udp-header-match;
		   }
		   case l4-sctp {
		     uses sctp-header-match;
		   }
		 description "L4 match
      		 header choices";
		 }
	    description "L4 header 
		  match type";
	}
	 
	 	 
	grouping L4-header-actions {
	     uses tcp-header-action;
	     uses udp-header-action;
	     uses sctp-header-action;
		description "L4 header matches";
	 }
	 
    grouping service-header-match {
		choice service-header-match-type {
		  case sf-chain-meta-match {
		   description "uses 
		   sfc-sfc:service-function-chain-grouping:
		   + sfc-sfc:service-function-chain";
		  }
		   case sf-path-meta-match {
		    description "uses 
			sfc-spf:service-function-paths:
			+ sfc-spf:service-function-path";
		   }
		description "SFC header match
		 choices";
		}
	    description "SFC header and path
		 matches";
	}	
	
	grouping sfc-header-actions {
		choice service-header-match-type {
		  case sf-chain-meta-match {
		    leaf set-chain {
			  type boolean;
		       description "flag to set 
			   chain in sfc.  Should 
			   be amended to use SFC service
			   chain matching.
			  uses sfc-sfc:service-function-chain-grouping:
			  + sfc-sfc:service-function-chain";	
		     }
		  }
		  case sf-path-meta-match {
		    leaf set-path {
			 type boolean;
		     description "flag to set path in 
			 sfc header. Amend to use sfc-spf 
			  function headers. Uses 
			  sfc-spf:service-function-paths:
			  + sfc-spf:service-function-path."; 
		    }
		  }
		description "choices in SFC for
		 chain match and path match."; 
		}
	  description "modify action for 
	    SFC header.";
	}		

		   
   grouping rule_status {
	  leaf rule-status {
   	    type string;
		description "status information
		 free form string.";
	  }
	  leaf rule-inactive-reason {
	    type string; 
 	    description "description of 
		why rule is inactive";
	  }
	  leaf rule-install-reason {
	    type string; 
	    description "response on rule installed";
	  }	
	  leaf rule-installer {
	    type string; 
	     description "client id of installer";
	  }	
	  leaf refcnt {
	    type uint16;
        description "reference count on rule. ";
      }
      description 
	   "rule operational status";
	}
	
// group status 
	grouping groups-status  {
	  list group_opstate {
	    key "grp-name";
	    leaf grp-name {
	    type string; 
	    description "eca group name";
	   }
	   leaf rules-installed {
	    type uint32;
		description "rules in 
		 group installed";
	   }
	   list rules_status {
	    key "rule-name";
		leaf rule-name {
		 type string;
		 description "name of rule ";
		}
	    leaf rule-order {
		 type uint32;
		 description "rule-order";
		}
		description "rules per 
  		group";
	   }
	   description "group operational
  	    status";
	 }
	description "group to rules 
	    list";
	}
	
// links between rule to group 
 	 
	 grouping rule-group-link {
	  list rule-group {
	   key rule-name;
	   leaf rule-name {
	     type string; 
	     description "rule name";
	   }
	   leaf group-name {
	      type string;
		  description "group name";
	   }
	   description "link between
	     group and link";
	  }
	  description "rule-name to
	   group link";
	}
	
// rule status by name 
	grouping rules_opstate {
	   list rules_status {
		key "rule-order rule-name";
		  leaf rule-order {
		   type uint32;
		   description "order of rules";
		  }
		leaf rule-name {
		 type string; 
		 description "rule name";
		}
	    uses rule_status; 
		description "eca rule list";
	  }
	 description "rules 
		operational state";
	}
	
// rule statistics by name and order 
	grouping rules_opstats {
		list rule-stat {
   	      key "rule-order rule-name";
		  leaf rule-order {
		   type uint32;
		   description "order of rules";
		  }
          leaf rule-name {
		   type string; 
		   description "name of rule";
		  }  
		  leaf pkts-matched {
		    type uint64;
		    description "number of 
		     packets that matched filter";
		   }
		  leaf pkts-modified {
		    type uint64;
		    description "number of 
		     packets that filter caused
		     to be modified";
		   }
		   	leaf pkts-dropped {
		    type uint64;
		    description "number of 
		     packets that filter caused
		     to be modified";
		   }
         	leaf bytes-dropped {
		    type uint64;
		    description "number of 
		     packets that filter caused
		     to be modified";
		   }
		   leaf pkts-forwarded {
		    type uint64;
		    description "number of 
		     packets that filter caused
		     to be forwarded.";
		    }
		    leaf bytes-forwarded {
		    type uint64;
		    description "number of 
		     packets that filter caused
		     to be forwarded.";
		    }	
			
			description "list of 
			operational statistics for each
			rule.";
		 }
		 description "statistics
		    on packet filter matches, and
		    based on matches on many were 
		    modified and/or forwarded";
	}
     
   
   
   grouping packet-size-match {
	 leaf l1-size-match {
	    type uint32;
	    description "L1 packet match size.";
		 }
	 leaf l2-size-match {
	    type uint32;
	 	description "L2 packet match size.";
		}
	 leaf l3-size-match {
	    type uint32;
	    description "L3 packet match size."; 
		}
	 leaf l4-size-match {
	    type uint32;
 	    description "L4 packet match size."; 
		}
	 leaf service-meta-size {
	    type uint32;
 	    description "service meta info match size."; 
		}
	 leaf service-meta-payload {
		type uint32; 
  	    description "service meta-play match size"; 
	   }
     description "packet size by layer
	 only non-zero values are matched";
	}
	
	grouping time-day-match {

      leaf hour {
	    type uint8; 
	    description "hour 
		of day in 24  hours. 
		(add range)";
	  }
	  leaf minute {
	     type uint8;
		 description 
		 "minute in day.";
	  }
	  leaf second {
	     type uint8;
		  description 
		  "second in day.";
	  }
	
	description "matches for 
	  time of day.";
	  
	}
	
		
	grouping user-event-match {
       leaf user-name {
	    type string;
	    description "name of user
		 event";
	   }
	   leaf match-string {
	    type string;
		description "user match 
		string";
	   }
	
	description "matches for 
	  time of day.";
	  
	}
	
	
	grouping eca-event-matches {
	   uses time-day-match; 
	   uses user-event-match;
	   description "matches for events
	    which include: 
		time of day, and 
		user specified matches.";

	}
	
    grouping eca-pkt-matches {
	  uses interface-match;
	  uses L1-header-match;
	  uses L2-header-match;
	  uses L3-header-match;
	  uses L4-header-match;
	  uses service-header-match;
	  uses packet-size-match;
	  description "ECA matches";  
	}
	
     grouping user-status-matches {
	  leaf user {
	   type string; 
	   description "user";
	  }
	  leaf region {
	   type string; 
	   description "region";
	   }
	  leaf state {
	   type string; 
	   description "state";
	  }
	
	  leaf user-status {
	   type string;
	   description "status of user";
	  }
	  
	  description "user status 
	  matches - region, 
	  target, location";
	}
	
	grouping eca-condition-matches {
	   uses eca-pkt-matches;
	   uses user-status-matches;
	   description "pkt
	    and user status matches";
	}
	
	grouping eca-qos-actions {
	  leaf cnt-actions {
            type uint32;
   	    description "count of ECA actions"; 
	   }
	  list qos-actions { 
	     key "action-id";
             leaf action-id {
	     type uint32; 
             description "action id";
	     }
	     uses interface-actions; 
	     uses L1-header-actions;
	     uses l2-header-mod-actions;
	     uses L3-header-actions;
	     uses L4-header-actions; 
	  
	    description "ECA set or change
	     packet Actions. Actions may be
		 added here for interface, 
		 L1, L2, L3, L4 nad service forwarding
		 headers.";	 
	   }
          description "eca- qos actions"; 
	 }
	 
	 grouping ip-next-fwd {
		leaf rib-name {
		  type string; 
		  description "name of RIB";  
	    }
	  leaf next-hop-name {
	    type string;
		description "name of next hop"; 	  
		}
  	  description "ECA set or change
		packet Actions";
	 }
	 
	grouping eca-ingress-actions {
	  leaf permit { 
	   type boolean; 
	   description "permit ingress
	    traffic.  False 
		means to deny.";
	  }
	  leaf mirror {
	   type boolean; 
	   description "copy bytes
	    ingressed to mirror port";
	  }
	  description "ingress eca match";
	}
	
	grouping eca-fwd-actions {
      leaf interface-fwd {
	     type if:interface-ref;
	     description "name of interface to forward on";
	  }
      uses i2rs-rib:nexthop;
	  uses ip-next-fwd;
	  leaf drop-packet {
	   type boolean;
   	   description "drop packet flag";
	  }
  	  description "ECA forwarding actions";
	}
	
  grouping eca-security-actions {
     leaf actions-exist {
	type boolean;
        description "existance of 
         eca security actions";
     }
     description "content actions 
	  for security. Needs more 
	  description.";
  }
	
  grouping eca-egress-actions {
    leaf packet-rate {
	  type uint32;
	  description "maximum packet-rate";
    }
   leaf byte-rate {
          type uint64;
	  description "maximum byte-rate ";
    }
    description "packet security actions";
  }
  
  	
    grouping policy-conflict-resolution {
	  list resolution-strategy {
	   key "strategy-id"; 
	   leaf strategy-id {
	     type uint32; 
	     description "Id for strategy";
	   }
	   leaf stategy-name {
	    type string; 
		description "name of strategy";
	   }
	   leaf filter-strategy {
	     type string;
	     description "type of resolution";

	   }
	   leaf global-strategy {
	     type boolean; 
	     description "global strategy";	   
	  }
	  leaf mandatory-strategy {
	   type boolean; 
	   description "required strategy";
	  }
	  leaf local-strategy {
	   type boolean; 
	   description "local strategy";
	  }
	  leaf resolution-fcn {
	   type uint64;
	   description "resolution function id ";
	  }
	  leaf resolution-value {
	   type uint64; 
	   description "resolution value";
	  }
	  leaf resolution-info {
	   type string; 
	   description "resolution info";
	  }
	  list associate-ext-data {
	     key "ext-data-id";
		 leaf ext-data-id {
		   type uint64; 
		   description "ID of external data";
		 }
		 leaf ext-data {
		   type string; 
		   description "external data";
		 }
	        description "linked external data";
	  }
	  description "list of strategies";
	 } 	 
	  description "policy conflict
	    resolution strategies";
	}

	
	grouping cfg-external-data {
          list cfg-ext-data { 
	    key "cfg-ext-data-id";
	     leaf cfg-ext-data-id {
	     type uint64; 
	     description "id for external data";
	    }
	    leaf data-type {
	     type uint32; 
	     description "external data type ID";
	     }
	     leaf priority {
	      type uint64;
	      description "priority of data";
	     }
	    leaf other-data {
	     type string; 
	     description "string 
                  external data";
	    } 
	  description "external data";
	} 
         description "external data list";
    }


     grouping pkt-eca-policy-set {   
         list groups {
	    key "group-name"; 
		leaf group-name {
		  type string;
		  description 
		   "name of group of rules";
		 } 
		leaf vrf-name {
		  type string; 
		  description "VRF name";
		}
		uses rt:address-family;
		list group-rule-list {
		  key "rule-name";
		  leaf rule-name {
		   type string;
		   description "name of rule";
		   }
		  leaf rule-order-id {
		    type uint16; 
			description "rule-order-id";
		  }
		   description "rules per group"; 
	        }
		description "pkt eca rule groups";
	  }
	  list eca-rules {
		key "order-id";
		ordered-by user;
		leaf order-id {
		   type uint16;
		   description "Number of order
		    in ordered list (ascending)";
		}
		leaf eca-rule-name {
		    type string;
		   	description "name of rule";
		}
		 leaf installer {
		   type string;
  		   description 
			 "Id of I2RS client 
			  that installs this rule.";
                 }
		  uses eca-event-matches;
		  uses eca-ingress-actions;
		  uses eca-qos-actions;
		  uses eca-security-actions;
		  uses eca-fwd-actions;
		  uses eca-egress-actions;
		  uses cfg-external-data;
	          uses policy-conflict-resolution;

  		  description "ECA rules";
      	   }  // end of rule 
	 description "Policy sets.";
   } 
   
   grouping pkt-eca-opstate { 
    uses groups-status;
	uses rule-group-link;
    uses rules_opstate;   
	uses rules_opstats; 
	 description "pkt eca policy 
	  op-state main";
   }  
   

 container pkt-eca-policy-opstate {  
   config "false"; 
   uses pkt-eca-opstate;
   description "operational state";
   }
 
 }

------=_NextPart_000_00CF_01D1D2F8.37EBAED0--


From nobody Thu Jun 30 17:13:31 2016
Return-Path: <alex@cisco.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 6CA1F12B004 for <i2rs@ietfa.amsl.com>; Thu, 30 Jun 2016 17:13:30 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -15.946
X-Spam-Level: 
X-Spam-Status: No, score=-15.946 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-1.426, SPF_PASS=-0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.com
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 D3XnEW0iFyX2 for <i2rs@ietfa.amsl.com>; Thu, 30 Jun 2016 17:13:28 -0700 (PDT)
Received: from alln-iport-2.cisco.com (alln-iport-2.cisco.com [173.37.142.89]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id CD14212D0A0 for <i2rs@ietf.org>; Thu, 30 Jun 2016 17:13:27 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=8214; q=dns/txt; s=iport; t=1467332007; x=1468541607; h=from:to:cc:subject:date:message-id:mime-version; bh=kRaS9BmlHZD/RHoyLF5mHR9JAb/BTsO58v4y5xW8NUQ=; b=HDpC0M8h7IEgUuJv9YPsVHGm8xjVJj7cucntoTOlGCX2FJRrI2QgS36d kutLgD1E/4Q23jjuMJ5cvzA1gHQyVELihStDzxVwvN9RSoSl7FcTpre/c iOv1rvZOoORB4RVzJP82OL2QwfEtcJXNhEpjiWdykBNWd+DjcNHjmLYUj w=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0AJBgBbtHVX/5ldJa1bgnBOVoEDtEqGf?= =?us-ascii?q?IYXgTY7EQEBAQEBAQFlJ4RTJwZMEgGBACYBBA4NiCjEKgEBAQEBAQEBAgEBAQE?= =?us-ascii?q?BAQEBAR6VEQWZCwGBMI0JjzGQBAE0IINwiTB/AQEB?=
X-IronPort-AV: E=Sophos;i="5.26,554,1459814400";  d="scan'208,217";a="290720928"
Received: from rcdn-core-2.cisco.com ([173.37.93.153]) by alln-iport-2.cisco.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 01 Jul 2016 00:13:26 +0000
Received: from XCH-RTP-002.cisco.com (xch-rtp-002.cisco.com [64.101.220.142]) by rcdn-core-2.cisco.com (8.14.5/8.14.5) with ESMTP id u610DQHM028781 (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=FAIL); Fri, 1 Jul 2016 00:13:26 GMT
Received: from xch-rtp-001.cisco.com (64.101.220.141) by XCH-RTP-002.cisco.com (64.101.220.142) with Microsoft SMTP Server (TLS) id 15.0.1210.3; Thu, 30 Jun 2016 20:13:25 -0400
Received: from xch-rtp-001.cisco.com ([64.101.220.141]) by XCH-RTP-001.cisco.com ([64.101.220.141]) with mapi id 15.00.1210.000; Thu, 30 Jun 2016 20:13:25 -0400
From: "Alexander Clemm (alex)" <alex@cisco.com>
To: "Susan Hares (shares@ndzh.com)" <shares@ndzh.com>
Thread-Topic: Comments re: draft-i2rs-ephemeral-state-12
Thread-Index: AdHTLLXVK5j65/HKSm+eYJHHuRfLTg==
Date: Fri, 1 Jul 2016 00:13:25 +0000
Message-ID: <9394d0df0b724551b691959366dc2310@XCH-RTP-001.cisco.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-ms-exchange-transport-fromentityheader: Hosted
x-originating-ip: [10.41.59.56]
Content-Type: multipart/alternative; boundary="_000_9394d0df0b724551b691959366dc2310XCHRTP001ciscocom_"
MIME-Version: 1.0
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/USF56RY1OlToPooFaJH8TSL7pLY>
Cc: "i2rs@ietf.org" <i2rs@ietf.org>
Subject: [i2rs] Comments re: draft-i2rs-ephemeral-state-12
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Fri, 01 Jul 2016 00:13:30 -0000

--_000_9394d0df0b724551b691959366dc2310XCHRTP001ciscocom_
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

Hi Susan,

this document looks very good & I clearly support it.

Just two very minor comments:


-          editorial nits - page  2:  "Sections 7" --> "Section 7"; "is I2R=
S protocol requirement" --> "is an I2RS protocol requirement"



-          I consider Ephemeral-REQ-03 as very important ("may have constra=
ints that refer to operational state").  I am wondering, should the draft m=
ention how to deal with the fact that it is possible for operational state =
to dynamically change.  I would think it is might be worth stating somethin=
g to the effect that constraints should be assessed when ephemeral state is=
 written, and that situations are conceivable where violations of such cons=
traints might occur due to changing of operational state after the write oc=
curred.   By the nature of the issue, the framework must allow for that; ho=
w to deal with such a situation and maintain integrity of the ephemeral con=
figuration in such cases is up to the client.


One thought re: section 9, clearly we have a requirement to support subscri=
ptions against ephemeral data; is there a requirement for subscriptions to =
be ephemeral themselves?  (I think it is implicitly supported via dynamic s=
ubscriptions.)

Thanks
--- Alex


--_000_9394d0df0b724551b691959366dc2310XCHRTP001ciscocom_
Content-Type: text/html; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" xmlns:o=3D"urn:schemas-micr=
osoft-com:office:office" xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" xmlns=3D"http:=
//www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3Dus-ascii"=
>
<meta name=3D"Generator" content=3D"Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
	{font-family:Wingdings;
	panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0in;
	margin-bottom:.0001pt;
	font-size:11.0pt;
	font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:#0563C1;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:#954F72;
	text-decoration:underline;}
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
	{mso-style-priority:34;
	margin-top:0in;
	margin-right:0in;
	margin-bottom:0in;
	margin-left:.5in;
	margin-bottom:.0001pt;
	font-size:11.0pt;
	font-family:"Calibri",sans-serif;}
span.EmailStyle17
	{mso-style-type:personal-compose;
	font-family:"Calibri",sans-serif;
	color:windowtext;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-family:"Calibri",sans-serif;}
@page WordSection1
	{size:8.5in 11.0in;
	margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
	{page:WordSection1;}
/* List Definitions */
@list l0
	{mso-list-id:1312293574;
	mso-list-type:hybrid;
	mso-list-template-ids:1858396632 1240229748 67698691 67698693 67698689 676=
98691 67698693 67698689 67698691 67698693;}
@list l0:level1
	{mso-level-start-at:0;
	mso-level-number-format:bullet;
	mso-level-text:-;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;
	font-family:"Calibri",sans-serif;
	mso-fareast-font-family:Calibri;
	mso-bidi-font-family:"Times New Roman";}
@list l0:level2
	{mso-level-number-format:bullet;
	mso-level-text:o;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;
	font-family:"Courier New";}
@list l0:level3
	{mso-level-number-format:bullet;
	mso-level-text:\F0A7;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;
	font-family:Wingdings;}
@list l0:level4
	{mso-level-number-format:bullet;
	mso-level-text:\F0B7;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;
	font-family:Symbol;}
@list l0:level5
	{mso-level-number-format:bullet;
	mso-level-text:o;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;
	font-family:"Courier New";}
@list l0:level6
	{mso-level-number-format:bullet;
	mso-level-text:\F0A7;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;
	font-family:Wingdings;}
@list l0:level7
	{mso-level-number-format:bullet;
	mso-level-text:\F0B7;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;
	font-family:Symbol;}
@list l0:level8
	{mso-level-number-format:bullet;
	mso-level-text:o;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;
	font-family:"Courier New";}
@list l0:level9
	{mso-level-number-format:bullet;
	mso-level-text:\F0A7;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;
	font-family:Wingdings;}
ol
	{margin-bottom:0in;}
ul
	{margin-bottom:0in;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang=3D"EN-US" link=3D"#0563C1" vlink=3D"#954F72">
<div class=3D"WordSection1">
<p class=3D"MsoNormal">Hi Susan,<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">this document looks very good &amp; I clearly suppor=
t it.&nbsp; &nbsp;&nbsp;<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">Just two very minor comments:<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoListParagraph" style=3D"text-indent:-.25in;mso-list:l0 level=
1 lfo1"><![if !supportLists]><span style=3D"mso-list:Ignore">-<span style=
=3D"font:7.0pt &quot;Times New Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;
</span></span><![endif]>editorial nits &#8211; page&nbsp; 2:&nbsp; &#8220;S=
ections 7&#8221; --&gt; &#8220;Section 7&#8221;; &#8220;is I2RS protocol re=
quirement&#8221; --&gt; &#8220;is an I2RS protocol requirement&#8221;<o:p><=
/o:p></p>
<p class=3D"MsoListParagraph"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoListParagraph" style=3D"text-indent:-.25in;mso-list:l0 level=
1 lfo1"><![if !supportLists]><span style=3D"mso-list:Ignore">-<span style=
=3D"font:7.0pt &quot;Times New Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;
</span></span><![endif]>I consider Ephemeral-REQ-03 as very important (&#82=
20;may have constraints that refer to operational state&#8221;).&nbsp; I am=
 wondering, should the draft mention how to deal with the fact that it is p=
ossible for operational state to dynamically change.&nbsp;
 I would think it is might be worth stating something to the effect that co=
nstraints should be assessed when ephemeral state is written, and that situ=
ations are conceivable where violations of such constraints might occur due=
 to changing of operational state
 after the write occurred.&nbsp; &nbsp;By the nature of the issue, the fram=
ework must allow for that; how to deal with such a situation and maintain i=
ntegrity of the ephemeral configuration in such cases is up to the client.&=
nbsp;
<o:p></o:p></p>
<p class=3D"MsoListParagraph"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">One thought re: section 9, clearly we have a require=
ment to support subscriptions against ephemeral data; is there a requiremen=
t for subscriptions to be ephemeral themselves? &nbsp;(I think it is implic=
itly supported via dynamic subscriptions.)&nbsp;
 &nbsp;<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">Thanks<o:p></o:p></p>
<p class=3D"MsoNormal">--- Alex<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
</div>
</body>
</html>

--_000_9394d0df0b724551b691959366dc2310XCHRTP001ciscocom_--

