> From: Tony Li <[email protected]>
> for the most part we seem to be using locators to name the edges of the
> graph, not the nodes.
All depends on how you model the network! Are the graph-nodes interfaces, and
the networks the arcs (this requires multi-drop arcs, of course), or are the
networks the nodes, and interfaces the arcs?
The latter is what it-whose-name-I-don't-like-to-utter originally did, but
that meant we had to have attributes on the arcs, which after some thought I
decided was excess hair. That's because it turned out that when you started
thinking about what data you needed, arcs started to look a lot like nodes,
at least in terms of the data structures. So that led to the next step - make
everything (networks, interfaces, etc) a graph-node; you wound up with a
graph with attribute-less arcs, which only indicated connectivity. (I.e. the
data structure for node X says "I am connected to nodes A, B and C", etc -
there are no actual arc data-structures.)
I argued with the BBN guys (and gal - hi Martha!) and proposed that we have
only attribute-less arcs, and while at first everyone thought I was kind of
crazy (what an unusual happening in my life :-), after some discussion
everyone took my point that although it was a little odd, it made the
implementation, etc simpler.
So we wound up with graphs with a number of different kinds of nodes: network
nodes, interface nodes, router nodes, and abstraction nodes. (We may have had
host nodes too, I don't recall any more.)
> If we only have locators, it makes it very challenging to describe
> topology.
No, not at all. A description of the connectivity has to say 'this {thing} is
connected to that {thing}', and locators are the names for the {thing}s (and
maybe for the connection between them, too). Locators are not the
connectivity model, they are just names for elements in the connectivity
model, which you use to pass the connectivity model (or parts of it) to
another entity.
In the model above, locators are simply the names of graph nodes; more
properly, they are attributes of a graph node, and a given graph node can
have more than one (e.g. if two naming abstractions overlap on the graph).
> How do you deal with the case where there are two nodes that are both
> connected to two edges?
It all depends on how your model maps to a real network. In the model above,
your question is non-sensical, because there cannot be two arcs between a
pair of nodes. (A pair of nodes are either connected, or they aren't. That's
alll, fffolks.)
So I'm assuming you're using a model where a node is a network, and an
interface is an arc, or something like that? There, you will be able to have
more than one arc between a pair of nodes - and you will therefore need to be
able to name both nodes _and_ arcs - because otherwise you won't be able to
distinguish between the two arcs.
"Elementary, my dear Dr. Watson!" :-)
Noel
_______________________________________________
rrg mailing list
[email protected]
http://www.irtf.org/mailman/listinfo/rrg