CF Requirements: 2) Identity Vocabulary

View: New views
4 Messages — Rating Filter:   Alert me  

CF Requirements: 2) Identity Vocabulary

by Harry Mussman :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

GENI Control Framework WG Members, interested GENI participants, and
Giridhar Manepalli of CNRI,


A first DRAFT (v01.3) of the GENI Control Framework Requirements
document has been completed, and can be found at
http://groups.geni.net/geni/wiki/GeniControlFrameworkRequirements 

A discussion of the document on February 25, 2009 resulted in the
identification of 10 discussion items, which can be found at
http://groups.geni.net/geni/attachment/wiki/GeniControlFrameworkRequir
ements/030609_CFRequireReviewTopics.pdf



This email begins a discussion thread on:  2)  Identity Vocabulary

I would like to invite Giridhar Manepalli of CNRI to begin the
discussion, and then others are invited to join in.  CNRI is working
on the Digital Object Architecture project for GENI, and has extensive
expertise in large registries.



2a)  During the discussion, Larry Lannom of CNRI made the point that a
system like GENI needs a precise vocabulary or ontology,  that is
shared by all suites. (This is absolutely essential when multiple GENI
suites that are federated together, as expected.) This will apply to
principals, aggregates and slices.

2b)  The current DRAFT states:  
"Each principal (also aggregate, component, slice) shall have a
globally-unique name and/or a globally unique numerical identifier."

2c)  Discussion:
Current prototype implementations use a UUID as a unique identifier,
which is a long "random number" that is (with a very high probability)
unique within one suite, and also among all suites.  

However, there is no way to take a UUID and decide which suite it is
in, and thus there is no way to find a UUID in a suite registry
without checking the registries of all suites.

2d)  A proposed solution is to have the requirements read:  
"Each principal (also aggregate, component, slice) shall have a
globally-unique name and/or a globally unique numerical identifier,
where part of the name and/or numerical identifier directly specifies
the identity of the GENI suite."

2e)  Continued discussion:
If this is done with a numerical identifier, the identifier could be
broken into fields:
    suiteID.elementID
This is the approach taken in the CNRI Handle System, and it is known
to be robust and very scalable.  Somewhere, there must be a mapping
from suiteID to GENI suite.  Where?
The elementID must be unique within a suite, and could be a UUID or a
number picked by another method that can be assured to be unique.
Which methods make the most sense?

If a suite wants to use unique names, how could that be arranged?
Is there a place for URNs?



We look forward to a continuing, lively discussion, working towards a
'rough consensus".

Harry E. Mussman
Control Framework Systems Engineer

GENI Project Office
BBN Technologies
10 Moulton Street
Cambridge, MA 02138
(617) 873-4282 - Office
(781) 266-8479 - Mobile
(617) 873-4888 - Fax
hmussman@...
www.bbn.com



_______________________________________________
control-wg mailing list
control-wg@...
http://lists.geni.net/mailman/listinfo/control-wg

Parent Message unknown Re: [geni-dev] CF Requirements: 2) Identity Vocabulary

by Robert P Ricci :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Thus spake Max Ott on Thu, Mar 19, 2009 at 09:15:26AM +1100:
> Ilia Baldine is using NDL in ORCA and I have been trying to at least  
> convert RSpec into an ontology (all my tools fails to parse the  
> current spec).

One thing you might try is looking at the working RSpec draft from
ProtoGENI, which is less ambitions that the spec you are looking at, but
is in better shape to see actual use.
 
> Coming back to relationships mentioned above, there are some  
> interesting 'complications'. Let's pick a simple resource, such as a  
> computer. That obviously should have a identifier. At some stage we  
> replace the disk. Does the resource get a new identifier? It's not the  
> same anymore, it's performance and capabilities may have changed. So  
> our inventory ontology (or database schema) breaks this down into  
> related resources which make up an other one. (Is a computer now an  
> aggregate as it aggregates such "atomic" resources as motherboard,  
> memory, disk, ...)

I think the main value in giving the computer it own identifier (as
opposed to simply being an aggregate of the identifiers of the resources
that comprise it), besides the obvious convenience factor, is that one
of the key things that these identifiers will be used in, for example,
tickets, and it seems pretty clear that if I have a slice of this
computer, and the disk gets replaced, I still want a persistent
identifier with which to talk about the computer that my slice resides
on.
 

> Not sure if this fundamentally solves the problem. How do we ensure  
> uniqueness of the Suite ID (another UUID) and how do we initially find  
> all the entry points to the various suites?  If we assume that in  
> order to bootstrap the system we need a way to find out about all the  
> registries first, or have a hierarchical structure where everyone  
> knows THE registry and it knows (indirectly) every available suite,  
> then obviously we start with the relevant knowledge.
>
> I guess, if nothing else it limits the number of  identifiers we are  
> looking for and it's a rather stable set. Any gossiping scheme would  
> work very well.

We've been talking about doing something like this with human readable
names (HRNs) that look something like DNS names. (I believe the
PlanetLab cluster is doing something similar as well.) We definitely
think that set of roots will be small enough for a simple centralized
registry of them to handle. We're not using DNS and IPv6 for lookups,
though. :)

--
/-----------------------------------------------------------
| Robert P Ricci <ricci@...> | <ricci@...>
| Research Associate, University of Utah Flux Group
| www.flux.utah.edu | www.emulab.net
\-----------------------------------------------------------

_______________________________________________
control-wg mailing list
control-wg@...
http://lists.geni.net/mailman/listinfo/control-wg

Re: [geni-dev] CF Requirements: 2) Identity Vocabulary

by Max Ott-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


On 20/03/2009, at 4:22 AM, Robert P Ricci wrote:
>
> One thing you might try is looking at the working RSpec draft from
> ProtoGENI, which is less ambitions that the spec you are looking at,  
> but
> is in better shape to see actual use.

Can you please send me a link for that?

> I think the main value in giving the computer it own identifier (as
> opposed to simply being an aggregate of the identifiers of the  
> resources
> that comprise it), besides the obvious convenience factor, is that one
> of the key things that these identifiers will be used in, for example,
> tickets, and it seems pretty clear that if I have a slice of this
> computer, and the disk gets replaced, I still want a persistent
> identifier with which to talk about the computer that my slice resides
> on.

Sure, but our main objective is to support and capture the entire  
experiment life cycle. In this case it is important that I can find  
all my experiments which used a particular failing component (or a  
newly discovered bug in a specific device driver).

The main point I wanted to make is the importance of being able to  
describe all these relationships. Obviously, not all of them are of  
interest for a specific purpose.

> We've been talking about doing something like this with human readable
> names (HRNs) that look something like DNS names. (I believe the
> PlanetLab cluster is doing something similar as well.) We definitely
> think that set of roots will be small enough for a simple centralized
> registry of them to handle. We're not using DNS and IPv6 for lookups,
> though. :)

We are experimenting with XMPP where names are somewhat similar to  
email addresses. All objects in a  domain are hosted by a server which  
you can find through DNS. The pragmatic middle ground.

Cheers,
-max

_______________________________________________
control-wg mailing list
control-wg@...
http://lists.geni.net/mailman/listinfo/control-wg

Re: [geni-dev] CF Requirements: 2) Identity Vocabulary

by Robert P Ricci :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Thus spake Max Ott on Fri, Mar 20, 2009 at 11:19:13PM +1100:
> >One thing you might try is looking at the working RSpec draft from
> >ProtoGENI, which is less ambitions that the spec you are looking at,  
> >but
> >is in better shape to see actual use.
>
> Can you please send me a link for that?

Sorry, meant to send it before:

    http://www.protogeni.net/trac/protogeni/wiki/RSpec
 
--
/-----------------------------------------------------------
| Robert P Ricci <ricci@...> | <ricci@...>
| Research Associate, University of Utah Flux Group
| www.flux.utah.edu | www.emulab.net
\-----------------------------------------------------------

_______________________________________________
control-wg mailing list
control-wg@...
http://lists.geni.net/mailman/listinfo/control-wg