[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Evaluation: draft-ietf-pilc-link-design - Advice for Internet Subnetwork Designers to BCP



I didn't know how to formulate my concerns at first, because it
appeared that in addition to being not quite correct in some places,
the discussion in text actually goes in a wrong direction, and
touches on some seemingly irrelevant points without discussing those
that should have been.

So, I decided to start with comments on the actual text and then
move to the meta question...

> 17 Routing
> 
>    Many subnetworks provide their own internal routing mechanisms.

The text should probably say why some do and some don't. E.g., if a
subnetwork technology can be used to construct a multi-node network,
where internal nodes do not run IP, and where the network is
self-contained and can be used for service independent from IP
routing, then subnetwork-level routing function is usually provided
(FR, ATM, Ethernet bridging and STP). If the technology is primarily
used for single-hop packet framing among IP nodes, subnetwork-level
routing is not needed.

>    Since routing is the major function of the Internet layer, the
>    question naturally arises as to the proper division of function
>    between routing at the Internet layer and routing in the subnet.

and the text does not address this question, nor does it talk
about the interactions among the routing function within the
subnetwork and at the IP level.

>    In general, routing in a subnetwork and at IP is more complementary
>    than competitive. Routing algorithms often have difficulty scaling to
>    very large networks, and a division of labor between IP and a large
>    subnetwork can often make the routing problem more tractable for
>    both.

In fact, experience shows that this is exactly the opposite.

When a large number of IP routers is connected via a subnetwork that
hides internal routing details from IP, this usually results in O(N^2)
adjacencies, flooding storms, and unforeseen convergence interactions.
In most cases, the physical topology of a subnetwork is orders of
magnitude simpler than the logical IP topology on top of it. This is
because the topology graph within the subnetwork is determined by
physical links and nodes, while the topology graph at the IP level is
essentially driven by the connectivity matrix.

With the same number of nodes, routing scales better if it operates
over the physical topology rather than when it's layered up.

>    Some subnetworks have special features that allow the use of more
>    effective or responsive routing mechanisms that cannot be implemented
>    in IP because of its need for generality. One example is the self-
>    learning bridge algorithm widely used in Ethernet networks. Another
>    is the "handoff" mechanism in cellular telephone networks,
>    particularly the "soft handoff" scheme in IS-95 CDMA.

Those who ran a large-enough bridged network with STP would hardly
agree with the statement that Ethernet bridging is more effective
and responsive.

Actually, this para adds no information, so I'd just remove it.


>    On the other hand, routing optimality can suffer when a subnetwork's
>    routing architecture hides internal structure that an IP router could
>    have used to make more efficient decisions. Such situations occur
>    most often when the subnetwork covers a large geographic area and
>    includes links of widely varying capacities, but presents itself to
>    IP as a single, fully-connected network with uniform metrics between
>    border nodes.

True

>    The subnetwork designer who decides to implement internal routing
>    should also consider whether a custom routing algorithm is warranted,
>    or if an existing Internet routing algorithm or protocol may suffice.

Not clear if this means something like GMPLS where IP control plane is
used to route non-IP stuff, or that routing is left to IP and the
subnetwork provides primarily link-level functionality.

>    Protocols and routing algorithms can be notoriously subtle, complex
>    and difficult to implement correctly. Much work can be avoided if an
>    existing protocol or off-the-shelf product can be readily used.

I'd change wording to refer to "existing implementations" as opposed
to "off-the-shelf product" here...


OK, meta issues now.

What I would expect this section to talk about is:

1. Difference between the _function_ of IP routing and the routing
   function found in some subnetworks and analysis of why
   certain subnetwork technologies have the routing  function.

2. Give a recommendation that unless there is a very compelling
   reason, routing should be left to IP.

3. If the routing function is still implemented in the subnetwork
   technology, explain what considerations should be kept in mind:

   a) Connectivity graph and its affects on IP routing, such as:
       - number of adjacencies/sessions per router to maintain
       - broadcast & connectivity (if routing treats the subnet as
         broadcast, any-to-any connectivity needs to be ensured)
       - flooding implications
       - ...

   b) Rerouting, convergence and timing with multiple layers:
       - effects of topology change and rerouting within subnetwork
         on IP routing (e.g., if the subnetwork has slow rerouting,
         IP will start reconverging)
         
       - effects of reconvergence at the IP level on the subnet
         (e.g. dynamic connection establishment)

       - combination of the two

   c) Connection model for connection-oriented subnetworks
   
      If the model assumes temporary connectivity between
      nodes (e.g., PSTN or ISDN) how will this affect IP routing
      (adjacencies going up/down, applicability of e.g. demand circuit
      extension in OSPF)

   d) Optimality and traffic engineering
   
       it's addressed in the text to some extent, but more thought
       should be given to such aspects as how traffic engineering
       within the network (pure IP and MPLS) would be done, i.e.,
       is it just "enough BW", or the subnetwork provides TE
       functionality as in ATM, for example...
   
Something along these lines should set the mind of the reader
in the right direction.

Alex