[Nmc-wg] Documents review (Michael)

Jason Zurawski zurawski at internet2.edu
Thu Jan 28 07:52:32 CST 2010


Hi Michael;

You appear to have some very strong opinions that affect large portions 
of the document.  I would encourage you to please make your notes in the 
SVN copies even as we discuss things on this list so that nothing is 
forgotten.  Comments inline.


> After reviewing the documents I, as I'm sure other people did, found a
> couple of lesser important points that probably should be addressed. For
> example the copyright notice 2008-2009 -> 2008-2010. As Jason has
> already indicated that one should just send in the patches/commit to svn
> I will not go over them here.
>
> My more general points:
>
> - Subscription isn't currently implemented as a fire and forget
> MEP(perhaps we are not talking about the same subscription?)


I have added this comment for you.  Subscription may not be a regular 
message exchange right now but it is something that we must document as 
it does have implications for future services.  For example the IDC 
protocols (dynamic circuit related - something that Internet2's ION and 
AutoBAHN implement) have a subscription message that perfSONAR-PS 
services will eventually utilize and implement to gain information about 
aspects of the dynamic circuit networks.


> - Security considerations seem to be absent, like the transport layer
> that soap uses should provide integrity and privacy protection to avoid
> MITM-attacks etc.


I have added your name to the TODO list to fill out this section. 
Please research these topics and document the most important areas we 
should consider.  Security is very broad and not the focus of this work, 
but we can spend some space describing the risks and steps we can take 
to mitigate.


> - Avoid "MUST" with fuzzy concepts. only use MUST for formal, well
> scoped, unambiguous statements.
> - Avoid unnecessary statements/(verbosity without added clarity)
> Example:
> "As described in Section 3, the communication protocol is simple
> and based on the notion of Request and Response messages."
>
> "As described in Section 3, the communication protocol is simple
> and based on the notion of Request and Response messages."
>
> "As described in Section 3, communication is based on the Request
> Response MEP." (related to the point below:)
> - Ensure clear separation between concepts by choosing
> carefully/utilising the terminology used and be consistent
> Example: (from MA document)
> "The Measurement Archive protocol features three *messages* used to
> query services identifying themselves as long or short term storage
> locations of measurement data." ->Message types, message sets(as
> interfered from definition) or Message exchanges(as interfered from
> description)


If you have noticed issues like these three in the document, please 
correct - language choice does not need to be a discussion point for 
everyone.  I did not make comments inside of the documents on these two 
points since I am sure you have a better idea where you have seen the 
problems.


> - On what standards do we build? NM, NML, others? 'perfsonar URNs'? We
> probably expect some pre-existing knowledge from our readers.


Pre-existing knowledge will come from references because we (and other 
groups) should not be re-inventing the wheel.  We will not be 
re-defining concepts like URNs (there are several GFDs that describe 
this as well as work that NML will publish 'real soon now') or topology 
descriptions (also something NML will be providing).

There will of course be caveats.  For example we don't implement 
namespaces exactly as GFD.84 recommended - so we note that we liked the 
standard and made some changes to better suit our needs.  I would expect 
there to be caveats surrounding the NML work as well (unless we want to 
gang up on Freek and force him to change things to fit our exact needs :))

In general, if there is a place that needs a further explanation or 
reference please note it as you are reading.


> - Add foundation/Convey intention(improve introduction?)
> example: why do we have perfsonar(/nmc)? - not to 'sell it' but outline
> to convey intent so that one can interpret the rest of the document better.


I have added your name to the TODO list and the introduction section to 
fill this in.


> - focus more on stucture of cooperating parts and communication patterns
> and tie the message content and/or structure to it.
> avoid having just a bunch the gritty protocol details - an attached
> schema in relaxng or xsd with inline comments can already convey this -
> put differently I first need to figure out which kind of message I'm
> suppose to start sending before I even care about how it's constructed.
> - Scope, scope scope. *What* *can* and *what can't* I find in this
> document/chapter?
> - Focus on the widely used stuff first. Be critical of what you include
> now, favor adding stuff in later versions if concepts haven't beeing
> fully explorered / widely used.
> (removing something later is hard)


These are good comments, but since they are general I can't identify the 
specific areas you wish to alter.  Add some comments to the specific 
sections and subsections that need more focus or a correction in scope.

I do disagree with your synopsis of where to include schematic details. 
  I think everyone who has been with the perfSONAR project remembers 
that the schema files (and their associated comments) where not viewed 
as often as they should be.  For over 3 years there has been a call to 
document the details, at a higher level and separate from the RNC 
descriptions.  Comments in schema are the same as comments in source 
code - they give you a tiny piece of information that is worthless 
almost all of the time.  I agree that communication patterns are 
important, but message and protocol details are just as important.


> - are we intentionally not touching upon AA and Lookup functionally in
> the base document and if so why not? It feels really hard to grasp whats
> going on without introducing it.
>
> Overall I what I'm trying to stress is that the spec should be written
> as such that it enables one to easily implement it as opposed to 'just'
> documenting rules. Now this doesn't mean that it should be turned into a
> manual, as that is actually counter productive as that would only add
> verbosity where it could just as easy be placed in a separate document.
> What I mean with easy to implement strive to enable easy lookup of
> specific parts. (as that is how a spec is typically consumed)
>
> On a related note:
> While separating everything across documents so that it may be extended
> easily seemed like a good idea to me as well when we initially started,
> given how it is shaping up, I'm not sure that I still stand by it. As it
> might well increase ambiguousness as it invites violating DRY also as
> time increases having more then one document with more then one version
> might be hard to consume.

I am going to address your last point first since it effects my answer 
to the previous two: the documents are not being split to allow for easy 
extension, they are split to eliminate repetitive language and concepts. 
  This work is one part of the entire 'spec', it represents the most 
basic and fundamental set of rules and interactions that are required 
for any 'real' exchanges. I would not call the contents of the base 
useful for anything other than reference - there will probably never be 
a service that speaks 'base' for example.

There will be an IS document to describe IS (topology/lookup) messages 
and I would expect there will be an AA document as well.  There is a 
work for MAs started and MPs and TSs will want to get in on the action 
evetually.  The strength of doing it in this manner is to save time by 
trying to not violate the DRY rule.  I do not think that this document 
can be viewed as an island and judged on what it does (or does not) 
contain without considering the remaining steps this working group was 
formed to do.  While I agree with your point that the focus should be on 
easily implementation/lookup of information in the end, consider that 
the entire spec is series.  I will reiterate that for this portion of 
the spec, rules should be a primary concern.

Thanks;

-jason


More information about the Nmc-wg mailing list