[glue-wg] New Endpoint and Service types

Paul Millar paul.millar at desy.de
Mon Apr 7 11:51:21 EDT 2014


Hi Florido,

More comments in-line.

On 07/04/14 14:26, Florido Paganelli wrote:
[publishing as Capabilities]
>>> Hence if one has an Endpoint whose interface supports more than one
>>> protocol, one could publish:
>>>
>>> data.transfer.rfc-2660
>>> security.authentication.rfc-2660
>>> data.transfer.gfd-47
>>> and so on.
>>>
>>> What do you think? what do the others think?
>>
>> First off, having two representations for RFC-2660 (as
>> "data.transfer.rfc-2660" and "security.authentication.rfc-2660") is bad.
>
> is it?

Well, in my humble opinion :)


>> Against which capability should a client query to find an endpoint that
>> supports RFC-2660 (data.transfer, security.authentication, or both) ?
>
> both -- but I agree is cumbersome, more below
>
>> What does it mean if a storage element publishes
>> "data.transfer.rfc-2660" and not "security.authentication.rfc-2660"?
>
> that https is not fully implemented -- however, I just invented those,
> it does not mean that we shouldn't reason about those. I might agree it
> makes no sense to have one and not the other. We can just decide that
> data.transfer.rfc-2660 is enough. Mine was a quickly made up example.

OK, lets move on from this example.

>> IMHO, there should be a single, canonical way of representing that an
>> endpoint supports RFC-2660 and this should be somehow a single attribute
>> that is published.
>
> ok, but let's try to keep consistency with the string format at least

Sure.

At this stage, I'm happy if we can agree that publishing the set of RFCs 
an Endpoint supports is reasonable thing to do :-)

[..]
>> I don't care so much whether the canonical value is published as
>> Capabilities, InterfaceExtensions, SupportedProfiles or Semantics ---
>> provided precisely one is chosen as the correct way of publishing this
>> information.
>
> But you should care for consistency, that is the key to a winner model.

Firstly, consistent with GFD-147, right?
Secondly, consistent with existing enumeration values.

In GFD-147, Capability is described explicitly in terms of OGSA 
architecture classification.  OGSA v1.5 spec doesn't include references 
to RFCs.  I would take this to mean we shouldn't publish RFCs under 
Capability.

The description of InterfaceExtension is almost semantically null: "the 
identification of an extension to the interface protocol supported by 
the Endpoint." -- there's nothing about what an extension *is*, but 
there is a hint that this has something to do with protocols.

SupportedProfile also has a semantically null description (again, what 
is a profile?), but I can guess what is meant.  RFCs could be published 
as SupportedProfile legitimately, but this probably wasn't the intention 
of this attribute.

Semantics has the requirement of being human-readable.  This isn't a 
problem for RFCs but, again, probably not what was intended.

To me, publishing RFCs as InterfaceExtensions is the option most 
consistent with GFD-147.


>> Likewise, I don't care so much whether the canonical value for RFC2660
>> is 'rfc2660', 'RFC-2660', 'org.ietf.rfc-2660',
>> 'Standards.From-IETF.RFC-2660' or 'http://tools.ietf.org/rfc/rfc2660',
>> provided one purely algorithmic translation is chosen.
>>
>
> I understand all the above comments. However, we are paving the way for
> GLUE2 to be an unsuccessful schema. The reason is that we keep
> contradicting what is written in the model, we add hacks and strings the
> way we like in a non-intuitive way, such that everything can be
> interpreted in many different ways.

At the risk of repeating myself: I'm advocating having a single, 
canonical representation for supporting an RFC.  This is then not open 
to being "interpreted in many different ways."  It should be defined 
once and all implementations should use it when publishing their support 
for an RFC.

I'm not sure of this "keep contradicting ..." but for now my interests 
are in how we publish support for an RFC.

> If a capability is a feature then we should enforce that, and not start
 > putting nonsense random strings (org.ogf.rcf-2660 does
 > *not* make sense in that context.)

I don't understand: what do you mean by "a feature"?  A Capability is 
defined in terms of OGSA, so that's clear.


> what about
>
> protocol.support.rfc2660

For Capabilities we can't: this string isn't defined in the OGSA v1.5 
document.

For InterfaceExtensions it's OK  (subject to some minor changes)

However, for InterfaceExtension the value should be a URI.  Technically 
"protocol.support.rfc2600" is a URL, so a URI; however, it would be 
better if the value was either a URL with a schema-part or a properly 
scoped URN.

>>> It would be nice if this is discussed among storage
>>> services developers.
>>
>> There is a meeting coming up, but I'm not sure how much convergence
>> there'll be.
>>
>
> I wouldn't be surprised. The GLUE2 model as we speak is not even able to
> bring an agreement among those who created it. Why is that, we should
> maybe ask ourselves (and I was not part of the making of).
>
>> I think it is this groups responsibility to either accept or reject my
>> view, as expressed above.
>>
>
> It's the group responsibility to bring sanity in this string mess, not
> to accept or reject someone's opinion. We should rather try to converge
> to some consistency for the sake of interoperability.

That's what I'm trying to help facilitate, by providing concrete 
examples and concrete expressions of what I'm trying to achieve.

> WHat do you think about the above formulation, that is, generalize a
> capability string such as
>
> protocol.support.<protocol name>
> protocol.supported.<rfc name>
> protocol.supported.<document name>
>
> If you have better ideas I'd be happy to follow.

I think the fundamental problem with Capability is that it's explicitly 
tied to OGSA.

[..]
> protocol.supported.<something>  where something is described in the
> Description field. No additional field in the CSV files.

Sure.  Any algorithmic mechanism should also be easy to describe in the 
CSV file.  We should keep this in mind but, at this stage, it shouldn't 
be such a problem to fulfil that requirement.

HTH,

Paul.


More information about the glue-wg mailing list