[Nsi-wg] Topology Abstract sent to Terena

Jerry Sobieski jerry at nordu.net
Sat Dec 10 11:32:14 CST 2011


Hi all-

I am responding to some of the issues Jeroen states in his abstract, but 
please take these as ciritique of the issues - not JvdH:-)     And then 
a brief tirade at the end:-)

*First*, NSI is technology agnostic.   This is NSI's real value and 
uniqueness.    We need to start our thinking from this first 
principle.    NSI is not a VLAN technology and does not owe VLANs any 
allegiance.    When anyone uses a particular technology as a 
justification for NSI requirements, we are in fact instituting those 
technology specifics into NSI - the discussion in Jeroens abstract 
breaks that agnostic.  We should *always* start with the minimal 
abstract notions of a "Connection" and "Network" and "Endpoints" and use 
those notions to define NSI --- And let the hardware technologies map 
their technology to the NSI model...not the other way around.    NSI has 
to work across any/many technologies - some with vlans, or labels, many 
without, some that can stack labels arbitrarilly deep, or anything else 
- and in an environment that considers autonomy and security as prime 
requirements as well.   We can do this in the abstract and technology 
agnostic - we do not need to revert back to conventional thinking and 
models of protocols mapped to specific hardware technologies.

*Second*, and with due credit to Jeroen - his fascination with labels 
IMO actually points out something really more important:  Our CS 
Reservation semantic is a simple Point-to-Point connection request.  A 
single STP as an origination point, and a single STP as a destination 
point.  This semantic works - and works quite well largely due to its 
simplicity.  But it can be slow if we need to implement it across 
oceanic latencies without much topological state information.

What Jeroen is fixated on is actually described as 
"/Point-to-Any-Point/" semantics in the literature.  Point-to-any-point 
says "I want a connection from point A to any point in the set {X, Y, or 
Z}."  If the set of endpoints happens to include 4000 STPs, the 
exhaustive search issue becomes simpler - STP selection (i.e. vlanid) 
can be done locally where the local NSA has visibility to the state 
information and is orders of magnitude faster access.  Further, this 
approach (P2AP) maintains the strict abstractions of the existing STP 
and NSI Topology model.   So I think we need to seriously consider the 
P2AP semantic for CS in v2.0.   And might as well consider if P2MP is 
needed at this time as well.

*Third*, the issue of *representation* of large sets of STPs is not 
difficult, and it is not a scaling issue.  We can have a zillion STPs at 
the edge of a NSI Network and we can represent those zillion STPs with a 
single topological STP object.  We can call it an _/"enumerated" STP/_ 
object or something similar, but it essentially allows us to describe 
those zillion abstract STPs in a very concise and compact manner.   I 
would also point out that this enumerated STP object is implemented 
almost exactly the same as Jeroen's proposal for representing labels, 
e.g. with a ranging attribute - the key difference being that it retains 
the STP as the endpoint - a very important abstraction we should not 
change.

This is important to reiterate: this enumerated STP may look and feel 
like VLAN IDs or even more generalized labels, _/but they are *not 
*labels/_ - these are simply Service Termination Points, objects that 
*reference* topological locations, described in a concise manner.   
These are not numeric labels, or vlanids. _/They are treated exactly 
like STPs are now/._  Visibility to the physical attributes of an STP is 
[still] at the discretion and control of the network that owns that 
STP.  A network may in fact map these enumerated STPs to VLANs 
internally in the network.  Thats fine and a local decision.  And this 
does not preclude some external agent from linking to that internal 
information in the topology to determine if these are VLANIDs (for 
instance) or something else.   But it does require the local network 
conciously advertising more internal information than just the boundary 
STPs.   And lack of advertising such physical information will not 
prevent PF from working effectively (given a P2AP semantic.)

Further, we still need to indicate SDP peerings with this enumerated STP 
object.  And similarly the two peering networks will need to coordinate 
on these inter-domain peerings before setting them up or advertising 
them, and just like other border protocols, both networks need to agree 
on these edge point configurations.   So the semantics for the 
"corresponding" SDP is simply extending the same semantics of the 
classic singleton SDP.   For example:    If enumSTP "A:M" is defined as 
"aa", ..., "az", and enumSTP "B:foo" from 1,2,3,...,26, then the 
corresponding SDPs would be (A:Maa,B:foo1), (A:Mab,B:foo2), 
(A:Mac,B:foo3),..., (A:Maz, B:foo26).   We can discuss the specifics of 
the compact syntax, but the key points take away is that a) we define 
the "enumerated" STP object  in a concise form, and b) the define a 
"corresponding" SDP semantic likewise. These enumerated STPs do not 
affect the rest of the abstract NSI connection service model.     I 
think this, combined with P2AP, is a good compromise to the STP/label 
discussion in which both aspects win - we can represent thousands of 
connection endpoints easily and can map easily where labels are present 
in the physical, representation is compact, and we maintain the strict 
STP abstraction; And the P2AP it represents a big step forward on the 
exhaustive search issue.   Win win win, and win.

*Fourth*, Jeroen properly points out that PathFinding (PF) and Topology 
are intimately related.  We can not address the topology issues without 
considering PF.   So IMO our first step here is to get clarity about 
what we mean by "Path", what we mean by "Path Finding", what are the 
subtle differences between "Path Selection", "Path Allocation", "Path 
Reservation", etc.   These are very important nuances IMO, and we should 
have clarity on these as we pursue the Topo/PF issues.   And we need to 
consider these in a *purely* abstract context.


Finally, with a brief foray into hardware specifics...

<tirade>
With respect to VLAN swapping...   Inability to swap VLANs is 
essentially saying your NSI network cannot cross connect - ever - 
certain STPs.   If you cannot *ever* cross connect certain STPs, there 
is no service!      I might as well advertise STPs that point to bananas 
-  I will never be able crossconnect them either but who cares?  
Advertising capabilities that can never be met is a Bad Thing. It 
injects false and misleading topological information - it could be 
considered malicious(!)

If STPs cannot be cross connected, then they are not part of the same 
_/network/_ - that is what the "network" part of /network service/ 
means.   ITS NOT A NETWORK SERVICE IF IT CAN NOT EVER ESTABLISH A 
NETWORK CONNECTION BETWEEN ITS ENDPOINTS !

These capabilities are easily represented _/properly/_ within the 
existing NSI topology model.  Its more verbose than some folks expected, 
but that is simple esthetics.   Its _/not/_ a flaw of the model, its a 
lazy network administrator who does not want to truthfully advertise 
several distinct network services.   And because they are lazy, they 
cause agents in other networks enormous delays and excess wasted 
computational cycles, and wasted bandwidth to discover that the service 
they advertised is fake.  By dissing the notion of vlan planes and 
insisting that all VLANs needed to be part of the same single NSI 
network, you hide important topology information...And then everyone 
whines about not being able to see it.   DUH!

For instance, if in the SC topology we defined individual VLAN planes 
for each non-swapping network, the pathfinders would have worked 
perfectly.   But no one wanted to do this "ooooh, its too many lines of 
data!...its not what I expected...oooh..oooh...too much xml"...and so 
they got all wrapped around the axle whining about how hard this was.
BS.  Its simple.

If there is a mechanism to accomplish something, and you don't want to 
use it, its not a flaw in the system.   If we do not like the verbosity 
of the current representation, i.e. if we don't think we want to 
replicate 20 vlan planes, there are ways to make the representation more 
compact and concise.   We can devise a more sophisticated means of 
describing the data - we do not need to change the abstractions.

But don't dis it because it takes more XML and then claim it doesn't 
work.   IT WORKS JUST FINE!

There are many ways to be more concise in the representation (i.e. the 
OWL/RDF), but they get syntactically more involved.   We need to 
recognize that this is part of the problem that Topology and pathfinding 
has had for decades:  The more information and generality you wish to 
provide in the topology in order to make better pathfinders, the more 
complex the topology representation becomes.   And the harder it becomes 
to keep it current.   The generalized representation of these network 
capabilities is non-trivial and can and will generate large data sets.   
Get over it.   You are not personnally going to process these data sets 
for a large network.  And you are not likely to build them by hand 
either - tools/NSAs/NRMs will spit out the topology files and import 
them back in.   All the data representation is used for is to exchange 
the information.   You don't need to be able to read it personally.

</tirade>

OK...breathe in, breathe out,...go to my happy place,....I am better now..

:-)
Thanks!
Jerry
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.ogf.org/pipermail/nsi-wg/attachments/20111210/3c814de8/attachment-0001.html 


More information about the nsi-wg mailing list