Subject: Re: [Isis-wg] downstream paths?

From: Radia Perlman - Boston Center for Networking <[email-masked]>
Date: Mon, 30 Apr 2001 15:38:38 -0400 (EDT)

OK. Reading Jeff Parker's reply I now understand, but perhaps
it's worth having a 2nd person explain it.

I didn't remember this from IS-IS at all (I assume
it got put in by ISO and wasn't in the original DECnet
Phase V routing algorithm), but apparently (based on
the section quoted by Jeff) you're
allowed to forward a packet destined to D to neighbor N even if
N isn't on a minimal path from you to D, but instead neighbor N
is closer to D than you are. In other words, you have a path through
neighbor N1 to D that is of cost 50, and that's your best path.
Your cost to neighbor N is, say, 5. N can get to D at a cost of 48.
If you forward through N your path will be 53, clearly worse than
your path through N1, but since N is closer to D than you (N is
48 away, you're 50 away), you're allowed to forward to N.

A neighbor closer to D than you is "downstream". So N (as well as N1)
would be downstream.

The normal Dijkstra calculation wouldn't tell you all neighbors closer
to D than you. The only way to get this is to calculate Dijkstra
from the point of view of each neighbor. That's why, if you have k
neighbors, you'd have to calculate Dijkstra from your own point of
view, plus from the point of view of each neighbor (to find out, for
each destination, which of your neighbors is closer to the destination
than you are).

And with multiple metrics, you'd have to multiply the number of Dijkstra
calculations by the number of metrics (I never did like the multiple
metric thing, especially the way ISO specified it...that you leave out
links that don't advertise that metric so you're calculating an "optimal"
path based on a subset of the links!).

So that explains why the section you quoted says if there are 4
metrics, and you want to "calculate downstream paths) i.e., find out
which neighbors are closer than you for each destination), you
"would execute the algorithm 4 * (number of neighbours +1) times"

I always thought the multiple metrics were not worth the extra
calculation and configuration (and were actually quite dangerous
given how ISO specified it since it's very nonintuitive why you
might get really horrible routes if you use any metric that isn't
universally supported on every link). I'd think this "calculating
downstream paths" would also not be worth the extra computation
and storage. Does any IS-IS implementation bother with this
"downstream paths" thing?

Radia

_______________________________________________
Isis-wg mailing list  -  [email-masked]
http://external.juniper.net/mailman/listinfo/isis-wg

---

From: Jeff Learman <[email-masked]>
Date: Mon, 30 Apr 2001 18:31:26 -0400

Radia,

Thanks for the clarification.

Your interpretation matches the only interpretation I have ever
been able to glean from the spec.  I am at a loss for why anyone
would bother to do more work to get less optimal routes, other
than to be able to do load balancing in more circumstances.
(Whether that kind of LB would actually be a good idea is another
question.)

I can't answer whether this is implemented in any integrated IS-IS
implementations, but I will be surprised if it is.  If it was, it
could not be used in conjunction with reverse path filtering,
of course.

Regards,
Jeff

---

From: "Dmitri Krioukov" <[email-masked]>
Date: Mon, 30 Apr 2001 20:53:56 -0400

It's worth to note that any non-ECMP proposal
(ISIS-OMP, for example) would require this.
--
dima.

> -----Original Message-----
> From: [email-masked]
> [mailto:[email-masked]]On Behalf Of Radia Perlman -
> Boston Center for Networking
> Sent: Monday, April 30, 2001 3:39 PM
> To: [email-masked]; [email-masked]
> Subject: Re: [Isis-wg] downstream paths?
> 
>