[Nml-wg] About modelisation of the network description

Jeroen van der Ham vdham at uva.nl
Fri Mar 28 05:31:00 CDT 2008


Aaron Brown wrote:
 > Things had gotten a bit quiet so I figure I should open up a can of
 > worms :-) .

Indeed you have, I can't help but respond now...But before I do, I'd 
like to point out that a discussion such as this one is not complete 
without the required citations of Schoch's "A note on Inter-Network 
Naming, Addressing, and Routing"[1]

The 'name' of a resource indicates *what* we seek, an 'address' 
indicates *where* it is, and a 'route' tells us *how to get there*.

And Chiappa's "Endpoints and Endpoint Names"[2], which elaborates on the 
quote above.

 > If we mandate that *all* naming is completely context independent,
 > then when given a random identifier, users are completely at a loss
 > (since no context implies no domain information) as to where to get
 > information on an element.

We are not advocating random identifiers. We're saying that when using 
names we need to separate lookup and other metadata. For example, we do 
not want to forbid names such as 
"http://www.internet2.org/i2.rdf#packrat:eth0".

But the only thing you should conclude from that name is that there is 
an object called "packrat:eth0" in the Internet2 namespace, and that you 
can probably get more information at http://www.internet2.org/i2.rdf. 
But you can not directly conclude from this string that there is a 
device called "packrat", which has an interface called "eth0".
Of course in day-to-day conversation you'll use it like that, but you 
really should not design your program to work like that.


 > [It] has the added benefit of allowing you to summarize a list of
 > interfaces on packrat as 
"urn:ogf:network:domain=Internet2:node=packrat:port=*"
 > which would be impossible without the hierarchy.

You know as well as I do that making a query like that is completely 
implementation dependent. You can just as easily create a similar, 
simple query for XML, RDF, or plain text even.

 > The issue I have with meaningless, globally-unique names comes in
 > constructing the lookup service. If we have one global lookup service,
 > it's easy. If i want to know about a random id, i lookup the id in
 > that central service to find the authoritative topology service for
 > that element, and then I go look up the element's information there.

Meaningless, globally unique names do not necessitate a central lookup 
service. I believe BGP works perfectly fine for distributing information 
about the completely meaningless IP numbers. To be fair, BGP uses 
abstraction during the distribution. But we're planning to do 
abstraction before distribution anyway.

We have demonstrated several times that it is very easy to create a 
distributed lookup network with NDL, using pointers to other 
descriptions. This even provides a small level of security, since 
pointers to descriptions can only enter the lookup network when they are 
linked to.

Jeroen.

[1]: J. Schoch, "A note on Inter-Network Naming, Addressing, and 
Routing", http://ana-3.lcs.mit.edu/~jnc/tech/ien/ien19.txt
[2]: J.N. Chiappa, "Endpoints and Endpoint Names", 
http://ana.lcs.mit.edu/~jnc//tech/endpoints.txt


More information about the nml-wg mailing list