Subject: [Lsr] Preference among IS-IS IPv6 route types

From: Muthu Arul Mozhi Perumal <[email-masked]>
Date: Thu, 17 Feb 2022 20:19:24 +0530

Hi,

Need some clarification on the preference among IS-IS IPv6 route types
described in RFC7775 section 3.4 and RFC5308 section 5.

RFC7775 places L1 intra-area routes and L1 external routes at the same
preference level and says that all types of routes listed for a given
preference are treated equally. There is no mention of metric.
<snip>
   This document defines the following route preferences for IPv6 routes
   advertised in TLVs 236 or 237.  Note that all types of routes listed
   for a given preference are treated equally.

   1.  L1 intra-area routes; L1 external routes

   2.  L2 intra-area routes; L2 external routes; L1->L2 inter-area
       routes; L1-L2 external routes; L2-L2 inter-area routes

   3.  L2->L1 inter-area routes; L2->L1 external routes; L1->L1 inter-
       area routes
</snip>

RFC5308 however says:
<snip>
   If multiple paths have the same best preference, then selection
   occurs based on metric.
</snip>

It is not clear whether metric is to be used for selection among L1
intra-area and external routes or is to be used for selection only with a
given route type. Can someone please clarify?

Regards,
Muthu

---

From: "Les Ginsberg (ginsberg)" <[email-masked]>
Date: Thu, 17 Feb 2022 15:26:15 +0000

Muthu –

RFC 7775 is defining preference rules between routes of different types – it is NOT discussing preference rules within a (set of) route types that have the same preference.
Such a discussion is out of scope.

Use of “lowest cost” is part of the well known Dijkstra Shortest Path First (SPF) algorithm – though there are many example of constrained SPF calculations that incorporate attributes other than cost in the choice of “best path”.
All of this is out of scope for RFC 7775.

     Les

From: Lsr <[email-masked]> On Behalf Of Muthu Arul Mozhi Perumal
Sent: Thursday, February 17, 2022 6:49 AM
To: lsr <[email-masked]>
Subject: [Lsr] Preference among IS-IS IPv6 route types

Hi,

Need some clarification on the preference among IS-IS IPv6 route types described in RFC7775 section 3.4 and RFC5308 section 5.

RFC7775 places L1 intra-area routes and L1 external routes at the same preference level and says that all types of routes listed for a given preference are treated equally. There is no mention of metric.
<snip>
   This document defines the following route preferences for IPv6 routes
   advertised in TLVs 236 or 237.  Note that all types of routes listed
   for a given preference are treated equally.

RFC5308 however says:
<snip>

It is not clear whether metric is to be used for selection among L1 intra-area and external routes or is to be used for selection only with a given route type. Can someone please clarify?

Regards,
Muthu

---

From: Muthu Arul Mozhi Perumal <[email-masked]>
Date: Thu, 17 Feb 2022 21:21:21 +0530

Hi Les,

Thanks for your response. Please see inline..

On Thu, Feb 17, 2022 at 8:56 PM Les Ginsberg (ginsberg) <[email-masked]>
wrote:

> Muthu –
>
>
>
> RFC 7775 is defining preference rules between routes of different types –
> it is NOT discussing preference rules within a (set of) route types that
> have the same preference.
>
Ok, but RFC7775 says "Note that all types of routes listed for a given
preference are treated equally". How is that to be interpreted when there
is an L1 intra-area route of metric a and an L1 external route of metric b
for the same IPv6 prefix during comparison?

Regards,
Muthu

> Use of “lowest cost” is part of the well known Dijkstra Shortest Path
> First (SPF) algorithm – though there are many example of constrained SPF
> calculations that incorporate attributes other than cost in the choice of
> “best path”.
>
> *From:* Lsr <[email-masked]> *On Behalf Of * Muthu Arul Mozhi
> Perumal
> *Sent:* Thursday, February 17, 2022 6:49 AM
> *To:* lsr <[email-masked]>
> *Subject:* [Lsr] Preference among IS-IS IPv6 route types
>
>
>
> Hi,
>
>
>

---

From: "Les Ginsberg (ginsberg)" <[email-masked]>
Date: Thu, 17 Feb 2022 16:16:14 +0000

Muthu –

Use of Equal Cost Multipath (ECMP) is commonplace.

   Les

From: Muthu Arul Mozhi Perumal <[email-masked]>
Sent: Thursday, February 17, 2022 7:51 AM
To: Les Ginsberg (ginsberg) <[email-masked]>
Cc: lsr <[email-masked]>
Subject: Re: [Lsr] Preference among IS-IS IPv6 route types

Hi Les,

On Thu, Feb 17, 2022 at 8:56 PM Les Ginsberg (ginsberg) <[email-masked]<mailto:[email-masked]>> wrote:
Muthu –

RFC 7775 is defining preference rules between routes of different types – it is NOT discussing preference rules within a (set of) route types that have the same preference.
Ok, but RFC7775 says "Note that all types of routes listed for a given preference are treated equally". How is that to be interpreted when there is an L1 intra-area route of metric a and an L1 external route of metric b for the same IPv6 prefix during comparison?

Regards,
Muthu

     Les

From: Lsr <[email-masked]<mailto:[email-masked]>> On Behalf Of Muthu Arul Mozhi Perumal
Sent: Thursday, February 17, 2022 6:49 AM
To: lsr <[email-masked]<mailto:[email-masked]>>
Subject: [Lsr] Preference among IS-IS IPv6 route types

Hi,

RFC5308 however says:
<snip>

Regards,
Muthu

---

From: Muthu Arul Mozhi Perumal <[email-masked]>
Date: Fri, 18 Feb 2022 13:29:13 +0530

Hi Les,

If we do ECMP, we'll have a traffic loop in the topology described in
Appendix A of RFC7775 b/w R1 and R2, assuming all routes are L1, right?

Seems prioritizing one of the routes (intra-area vs external) or honouring
the metric is required for avoiding this loop..

Regards,
Muthu

On Thu, Feb 17, 2022 at 9:46 PM Les Ginsberg (ginsberg) <[email-masked]>
wrote:

> *From:* Muthu Arul Mozhi Perumal <[email-masked]>
> *Sent:* Thursday, February 17, 2022 7:51 AM
> *To:* Les Ginsberg (ginsberg) <[email-masked]>
> *Cc:* lsr <[email-masked]>
> *Subject:* Re: [Lsr] Preference among IS-IS IPv6 route types
>
>
>
> Hi Les,
>
>
>
> On Thu, Feb 17, 2022 at 8:56 PM Les Ginsberg (ginsberg) <
> [email-masked]> wrote:
>
> Muthu –
>
>
>
> *From:* Lsr <[email-masked]> *On Behalf Of *Muthu Arul Mozhi Perumal

---

From: "Les Ginsberg (ginsberg)" <[email-masked]>
Date: Fri, 18 Feb 2022 14:08:45 +0000

Muthu –

Let me try to be more complete in my response.

What RFC 7775 is addressing is defining the route preference between different route types. It is necessary for interoperability that all implementations use the same preference rules in this regard.
(One of the motivations for the RFC was a real world interoperability issue that occurred because of inconsistency in this regard – see Appendix A.)

Within the preference groups defined in Sections 3.3 and 3.4, an implementation has to apply the criteria used in the SPF algorithm. If this is the well known Dijkstra lowest cost algorithm described in Annex C.2 of ISO 10589, then within the set of routes with highest preference we choose the path(s) with lowest cost.
If there are multiple paths with the same cost, an implementation may install any or all of them in forwarding even if all routes are NOT of the same type.
In your example, so long as the cost to reach the destination using the L1 intra-area route is the same as the cost to reach the destination via the L1 External route, use of either path will NOT result in looping.
And one node could install both paths – another could install only one path – and still no looping would occur.

Lack of use of ECMP might result in link utilization that is not to the liking of a customer, but no interoperability issue will occur.

So the prioritization you mention below is NOT required to avoid looping.

   Les

From: Muthu Arul Mozhi Perumal <[email-masked]>
Sent: Thursday, February 17, 2022 11:59 PM
To: Les Ginsberg (ginsberg) <[email-masked]>
Cc: lsr <[email-masked]>
Subject: Re: [Lsr] Preference among IS-IS IPv6 route types

Hi Les,

If we do ECMP, we'll have a traffic loop in the topology described in Appendix A of RFC7775 b/w R1 and R2, assuming all routes are L1, right?

Seems prioritizing one of the routes (intra-area vs external) or honouring the metric is required for avoiding this loop..

Regards,
Muthu

On Thu, Feb 17, 2022 at 9:46 PM Les Ginsberg (ginsberg) <[email-masked]<mailto:[email-masked]>> wrote:
Muthu –

   Les

From: Muthu Arul Mozhi Perumal <[email-masked]<mailto:[email-masked]>>
Sent: Thursday, February 17, 2022 7:51 AM
To: Les Ginsberg (ginsberg) <[email-masked]<mailto:[email-masked]>>
Cc: lsr <[email-masked]<mailto:[email-masked]>>
Subject: Re: [Lsr] Preference among IS-IS IPv6 route types

Hi Les,

Regards,
Muthu

     Les

Hi,

RFC5308 however says:
<snip>

Regards,
Muthu

---

From: Gyan Mishra <[email-masked]>
Date: Fri, 18 Feb 2022 21:51:56 -0500

Les

Just as a comparison and I believe that maybe what Muthu is alluding to is
that OSPF on the other hand does have a pecking order for route preference
before the equal cost time breaker comes into play.

intra-area, inter-area followed by external

So the result is not an ECMP with two different route types as the route
has to be the same type.

With ISIS that is one of the many differences between OSPF and ISIS.

I agree with your point that no loops would exist as the L1 route would be
advertised by the same or set of router(s) to get to the destination thus
no loops.

So the use of either path is valid and does not result in any loops as you
stated.

Kind Regards

Gyan

On Fri, Feb 18, 2022 at 9:09 AM Les Ginsberg (ginsberg) <ginsberg=
[email-masked]> wrote:

> What RFC 7775 is addressing is defining the route preference between
> different route types. It is necessary for interoperability that all
> implementations use the same preference rules in this regard.
>
> (One of the motivations for the RFC was a real world interoperability
> issue that occurred because of inconsistency in this regard – see Appendix
> A.)
>
>
>
> Within the preference groups defined in Sections 3.3 and 3.4, an
> implementation has to apply the criteria used in the SPF algorithm. If this
> is the well known Dijkstra lowest cost algorithm described in Annex C.2 of
> ISO 10589, then within the set of routes with highest preference we choose
> the path(s) with lowest cost.
>
> If there are multiple paths with the same cost, an implementation may
> install any or all of them in forwarding even if all routes are NOT of the
> same type.
>
> In your example, so long as the cost to reach the destination using the L1
> intra-area route is the same as the cost to reach the destination via the
> L1 External route, use of either path will NOT result in looping.
>
> Lack of use of ECMP might result in link utilization that is not to the
> liking of a customer, but no interoperability issue will occur.
>
>
>
> *Sent:* Thursday, February 17, 2022 11:59 PM
> On Thu, Feb 17, 2022 at 9:46 PM Les Ginsberg (ginsberg) <
> _______________________________________________
> Lsr mailing list
> [email-masked]
> https://www.ietf.org/mailman/listinfo/lsr
>
-- 

<http://www.verizon.com/>

*Gyan Mishra*

*Network Solutions A**rchitect *

*Email [email-masked] <[email-masked]>*

*M 301 502-1347*

---

From: "Les Ginsberg (ginsberg)" <[email-masked]>
Date: Sat, 19 Feb 2022 03:51:07 +0000

Gyan –

As RFC 5302 and RFC 7775 clearly state, IS-IS also has “a pecking order for route preference before the equal cost time breaker comes into play”.

The differences between IS-IS and OSPF largely derive from the fact that a single OSPF instance may include multiple areas – whereas a single IS-IS instance only supports a single area – with the option of participating in an L2 backbone.
So, the set of route types available in the two protocols differ – but the notion of route type preference first and cost second is consistent.

The reason it makes sense for (as an example) an L1 intra-area route to be treated the same as an L1 external route is because the path calculations for the two route types are performed over the same topology.

A historical note: The sharing of preference for internal/external routes at the same level can be traced back to RFC 1195 (circa 1990). See the NOTE in Section 3.10.2:

“NOTE: Internal routes (routes to destinations announced
         in the "IP Internal Reachability Information" field),
         and external routes using internal metrics (routes to
         destinations announced in the "IP External Reachability
         Information" field, with a metric of type "internal")
         are treated identically for the purpose of the order of
         preference of routes, and the Dijkstra calculation.”

RFC 5302 (circa 2000 in its original form RFC 2966) carefully maintained this route type preference when defining preference for route types advertised using TLVs 128 and 130.

RFC 7775 owes a great deal to RFC 5302. We simply updated the rules based on the different set of route types available when using TLVs 135/236 et al.

HTH

   Les

From: Gyan Mishra <[email-masked]>
Sent: Friday, February 18, 2022 6:52 PM
To: Les Ginsberg (ginsberg) <[email-masked]>
Cc: Muthu Arul Mozhi Perumal <[email-masked]>; lsr <[email-masked]>
Subject: Re: [Lsr] Preference among IS-IS IPv6 route types

Les

Just as a comparison and I believe that maybe what Muthu is alluding to is that OSPF on the other hand does have a pecking order for route preference before the equal cost time breaker comes into play.

So the result is not an ECMP with two different route types as the route has to be the same type.

I agree with your point that no loops would exist as the L1 route would be advertised by the same or set of router(s) to get to the destination thus no loops.

So the use of either path is valid and does not result in any loops as you stated.

Kind Regards

Gyan

On Fri, Feb 18, 2022 at 9:09 AM Les Ginsberg (ginsberg) <ginsberg=[email-masked]<mailto:[email-masked]>> wrote:
Muthu –

   Les

Hi Les,

Regards,
Muthu

   Les

Hi Les,

Regards,
Muthu

     Les

Hi,

RFC5308 however says:
<snip>

Regards,
Muthu
_______________________________________________
Lsr mailing list
[email-masked]<mailto:[email-masked]>
https://www.ietf.org/mailman/listinfo/lsr
--

[Image removed by sender.]<http://www.verizon.com/>

Gyan Mishra

Network Solutions Architect

Email [email-masked]<mailto:[email-masked]>

M 301 502-1347

---

From: Gyan Mishra <[email-masked]>
Date: Fri, 18 Feb 2022 23:20:53 -0500

Makes sense.

Thanks for the detailed explanation!

Gyan

On Fri, Feb 18, 2022 at 10:51 PM Les Ginsberg (ginsberg) <[email-masked]>
wrote:

> Gyan –
>
>
>
> As RFC 5302 and RFC 7775 clearly state, IS-IS also has “a pecking order
> for route preference before the equal cost time breaker comes into play”.
>
>
>
> The differences between IS-IS and OSPF largely derive from the fact that a
> single OSPF instance may include multiple areas – whereas a single IS-IS
> instance only supports a single area – with the option of participating in
> an L2 backbone.
>
> So, the set of route types available in the two protocols differ – but the
> notion of route type preference first and cost second is consistent.
>
>
>
> The reason it makes sense for (as an example) an L1 intra-area route to be
> treated the same as an L1 external route is because the path calculations
> for the two route types are performed over the same topology.
>
>
>
> A historical note: The sharing of preference for internal/external routes
> at the same level can be traced back to RFC 1195 (circa 1990). See the NOTE
> in Section 3.10.2:
>
>
>
> RFC 5302 (circa 2000 in its original form RFC 2966) carefully maintained
> this route type preference when defining preference for route types
> advertised using TLVs 128 and 130.
>
>
>
> RFC 7775 owes a great deal to RFC 5302. We simply updated the rules based
> on the different set of route types available when using TLVs 135/236 et al.
>
>
>
> HTH
>
>
>
>    Les
>
>
>
> *From:* Gyan Mishra <[email-masked]>
> *Sent:* Friday, February 18, 2022 6:52 PM
> *Cc:* Muthu Arul Mozhi Perumal <[email-masked]>; lsr <[email-masked]>
> *Network Solutions Architect *
>
-- 

*Gyan Mishra*

*M 301 502-1347*

---

From: Muthu Arul Mozhi Perumal <[email-masked]>
Date: Tue, 22 Feb 2022 11:46:06 +0530

Hi Les,

Thanks for your explanation -- quite helpful. Please see inline..

> issue that occurred because of inconsistency in this regard – see Appendix

Understood..

> the path(s) with lowest cost.

Makes sense and that's why I pasted a part of the foll. text from RFC5308
in my original mail:
<snip>
   If multiple paths have the same best preference, then selection
   occurs based on metric.  Any remaining multiple paths SHOULD be
   considered for equal-cost multi-path routing if the router supports
   this; otherwise, the router can select any one of the multiple paths.
</snip>

Since RFC7775 only updates RFC5308 (and not replaces it), I believe the
rule also applies to RFC7775. The text in RFC7775 that is slightly
confusing (at least for me) is:
<snip>
   Note that all types of routes listed for a given preference are treated
equally.
</snip>

Would sound better to replace it with what you said:
   "Within the preference groups defined in Sections 3.3 and 3.4, an
implementation has to apply the criteria used in the SPF algorithm."

> So the prioritization you mention below is NOT required to avoid looping.

Fully agree..

Regards,
Muthu

---

From: "Les Ginsberg (ginsberg)" <[email-masked]>
Date: Tue, 22 Feb 2022 08:15:05 +0000

Muthu –

I am glad we are in sync.

As to your suggested additional text. RFC 7775 (like its predecessor RFC 5302) is not specifying what “SPF” algorithm is being applied nor how it is calculated. It is only specifying the route type preference that MUST be used independent of the type of SPF.
In that regard, the statement

“Note that all types of routes listed for a given preference are treated equally.”

is stating exactly what is in scope for the RFC.

So I do not think your suggested additional text should be added to RFC 7775.

   Les

From: Muthu Arul Mozhi Perumal <[email-masked]>
Sent: Monday, February 21, 2022 10:16 PM
To: Les Ginsberg (ginsberg) <[email-masked]>
Cc: lsr <[email-masked]>
Subject: Re: [Lsr] Preference among IS-IS IPv6 route types

Hi Les,

On Fri, Feb 18, 2022 at 7:38 PM Les Ginsberg (ginsberg) <[email-masked]<mailto:[email-masked]>> wrote:
Muthu –

Understood..

Makes sense and that's why I pasted a part of the foll. text from RFC5308 in my original mail:
<snip>

Since RFC7775 only updates RFC5308 (and not replaces it), I believe the rule also applies to RFC7775. The text in RFC7775 that is slightly confusing (at least for me) is:
<snip>
   Note that all types of routes listed for a given preference are treated equally.
</snip>

Would sound better to replace it with what you said:
   "Within the preference groups defined in Sections 3.3 and 3.4, an implementation has to apply the criteria used in the SPF algorithm."

Fully agree..

Regards,
Muthu

   Les

Hi Les,

Regards,
Muthu

   Les

Hi Les,

Regards,
Muthu

     Les

Hi,

RFC5308 however says:
<snip>

Regards,
Muthu

---

From: Muthu Arul Mozhi Perumal <[email-masked]>
Date: Tue, 22 Feb 2022 14:37:02 +0530

Hi Les,

I've understood now, so wouldn't bother :) But I like the text in RF5302
that says:
"are treated identically for the purpose of the order of preference of
routes, and the Dijkstra calculation"

That sounds better than "are treated equally" for someone new to IS-IS like
me :)

Regards,
Muthu

On Tue, Feb 22, 2022 at 1:45 PM Les Ginsberg (ginsberg) <[email-masked]>
wrote:

> As to your suggested additional text. RFC 7775 (like its predecessor RFC
> 5302) is not specifying what “SPF” algorithm is being applied nor how it is
> calculated. It is only specifying the route type preference that MUST be
> used independent of the type of SPF.
>
> *Sent:* Monday, February 21, 2022 10:16 PM
> On Fri, Feb 18, 2022 at 7:38 PM Les Ginsberg (ginsberg) <