Hi Italo,

My interpretation of the NMDA guidelines are thus:

- If multiple clients are writing the same values to <running> then the clients 
must coordinate between themselves to ensure that the correct values are 
written to <running>, otherwise the last verified change written to <running> 
wins.  Locks can be used to coordinate client writes to <running> if required.

- If multiple clients are writing to different datastores, e.g. one client is 
writing to <running> and another is writing to some form of ephemeral 
datastore, then the ephemeral datastore definition must specify what mechanism 
is used to resolve configuration conflicts between configuration datastores.  
Naively, my starting point would be to say that configuration in an ephemeral 
datastore should override configuration that is in <running>.

- If the decision is from a data node configured in <running> and a data node 
injected by the system into <operational> then it is up to the device to decide 
how to resolve these (i.e. the system chooses which version of the data node to 
use, and the result of that decision is tagged in <operational> using the 
origin metadata).  Generally, I would expect an explicitly configured data node 
in <running> should take precedence over system generated config, but there 
might be cases where this doesn't make sense, and perhaps there might be cases 
where the data model recommends different behaviour.

- I would assume that there is only a single <operational> datastore.  I'm not 
sure whether NMDA explicitly requires this, but we couldn't think of any 
scenario where multiple operational datastores would be helpful.

Thanks,
Rob


> -----Original Message-----
> From: Teas <[email protected]> On Behalf Of Italo Busi
> Sent: 18 June 2019 18:24
> To: Juergen Schoenwaelder <[email protected]>
> Cc: [email protected]; Tarek Saad <[email protected]>; Andy Bierman
> <[email protected]>; [email protected]
> Subject: Re: [Teas] [netmod] Key collision between configured and
> ephemeral list entries
> 
> Hi Juergen,
> 
> What is the DS architecture you have in mind with multiple client creating
> entries?
> 
> Are the two clients creating entries in the same <running> DS or in two
> different <running> DS?
> 
> In the latter case, the two clients could also rely on different
> <operational> DS and therefore can assign the same name to different
> entries (since they will be instantiated in different DS). There is no
> need for them to avoid name clash
> 
> In the former case, a name clash would cause one client to override the
> configuration of another client
> 
> Are the two clients aware of each other?
> 
> I take the opportunity to clarify one point (not sure I have been clear
> about it). I do not think we need to define any rule which is enforced by
> the server to avoid name clashes since the server cannot understand
> whether the name clash is intentional or not. I think we just need to
> define some known/common/standard rules that allow the client(s) to avoid
> creating unintended name clashes.
> 
> Thanks, Italo
> 
> -----Original Message-----
> From: Juergen Schoenwaelder [mailto:[email protected]]
> Sent: martedì 11 giugno 2019 20:37
> To: Italo Busi <[email protected]>
> Cc: Andy Bierman <[email protected]>; [email protected]; Tarek Saad
> <[email protected]>; [email protected]
> Subject: Re: [netmod] [Teas] Key collision between configured and
> ephemeral list entries
> 
> On Tue, Jun 11, 2019 at 05:43:27PM +0000, Italo Busi wrote:
> 
> > [Italo Busi] If the client knows the prefix used by the server, it can
> > pick up a different prefix and use it to tag its own entries. I think
> > this rule is not really complex and it seems much simpler than
> > managing unintended name clashes
> 
> A prefix only helps a little. Once you have multiple clients creating
> entries, you will have to handle collisions again. Sometimes solving the
> more general case leads to solutions that also work nicely in simpler
> special cases.
> 
> /js
> 
> --
> Juergen Schoenwaelder           Jacobs University Bremen gGmbH
> Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
> Fax:   +49 421 200 3103         <https://www.jacobs-university.de/>
> 
> _______________________________________________
> Teas mailing list
> [email protected]
> https://www.ietf.org/mailman/listinfo/teas

_______________________________________________
netmod mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/netmod

Reply via email to