Subject: [Lsr] Enhancement related to Area Leader Sub-TLV

From: Huaimo Chen <[email-masked]>
Date: Fri, 24 May 2019 20:44:05 +0000

Hi Tony,

     An enhancement related to Area Leader Sub-TLV is briefed below for discussions.  A .pdf file is attached in the case that the formats below are messed up.

The leader of an area advertises an Area Leader Sub-TLV to indicate/instruct whether centralized or distributed mode is to be used by all the nodes in the area (Algorithm = 0: centralized mode; Algorithm = N (N>0): distributed mode and N is the algorithm to be used by every node to compute flooding topology).

Currently for IS-IS, IS-IS Area Leader Sub-TLV below is used by each of the nodes to advertise its priority for becoming the leader

    0                   1                   2                   3

    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1

   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   |     Type      |     Length    | Priority      |   Algorithm   |

   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                     (Current) IS-IS Area Leader Sub-TLV

It seems hard to understand that every node uses an Area Leader Sub-TLV to advertise its priority for becoming the leader, and at the same time to indicate/instruct whether centralized or distributed mode is to be used by all the nodes in the area.

When every node advertises an Area Leader Sub-TLV, only one for indication/instruction for flooding reduction mode is used, and all the others are not used, which consume space and processing time.

An enhancement is to let every node advertise its priority for becoming the leader and the algorithms that it supports though using a Dynamic Flooding Sub-TLV, and only the leader advertise the indication for the flooding reduction mode. To achieve this, some changes to the two Sub-TLVs and the texts related to the Sub-TLVs should be made.

For IS-IS, IS-IS Area Leader Sub-TLV is updated as follows (Priority is removed)

    0                   1                   2                   3

    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1

   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   |     Type      |     Length    | Reserved      |   Algorithm   |

   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                                                   (Updated) IS-IS Area Leader Sub-TLV

The Priority is added into IS-IS Dynamic Flooding Sub-TLV. The current IS-IS Dynamic Flooding Sub-TLV

    0                   1                   2                   3

    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1

   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   |     Type      |     Length    | Algorithm...  |

   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                   (Current) IS-IS Dynamic Flooding Sub-TLV

is changed to:

    0                   1                   2                   3

    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1

   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   |     Type      |     Length    | Priority       |Algorithm...  |

   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                   (Updated) IS-IS Dynamic Flooding Sub-TLV

Similarly for OSPF, the current OSPF Area Leader Sub-TLV below

       0                   1                   2                   3

       0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1

      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

      |              Type             |             Length            |

      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

      |    Priority   |   Algorithm   |            Reserved           |

      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                                                   (Current) OSPF Area Leader Sub-TLV

is changed to

       0                   1                   2                   3

       0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1

      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

      |              Type             |             Length            |

      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

      |    Reserved   |   Algorithm   |            Reserved           |

      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                                                   (Updated) OSPF Area Leader Sub-TLV

The current OSPF Dynamic Flooding Sub-TLV below

       0                   1                   2                   3

       0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1

      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

      |              Type             |             Length            |

      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

      | Algorithm ... |                                               |

      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                      (Current) OSPF Dynamic Flooding Sub-TLV

is changed to

       0                   1                   2                   3

       0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1

      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

      |              Type             |             Length            |

      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

      |    Priority   | Algorithm ... |                               |

      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                      (Updated) OSPF Dynamic Flooding Sub-TLV

Best Regards,

Huaimo

---

From: [email-masked]
Date: Fri, 24 May 2019 13:56:41 -0700

Hi Huaimo,

Thank you for your proposal.

The area leader sub-tlv is only advertised by systems that are willing to be area leader.  Presumably, that’s not necessarily all of the ones who support dynamic flooding.  Thus, what you’re proposing moves one byte from one TLV into another TLV that will be more commonly used. So your proposal actually consumes more LSP space.

The intention here is that the candidates for area leader advertise the Area Leader Sub-TLV.  All nodes that support dynamic flooding would advertise the Dynamic Flooding Sub-TLV. 
Since the priority is part of the Area Leader election, it makes sense for it to be part of the Area Leader Sub-TLV.

Regards,
Tony

p.s. IS-IS does not depend on word-alignment, so we typically do not leave reserved bytes in our TLV formats. OSPF is a different kettle of fish… :-)

> On May 24, 2019, at 1:44 PM, Huaimo Chen <[email-masked]> wrote:
> 
> Hi Tony,
> 
> <EnhanceOnAdvertisePriority4Leader.pdf>

---

From: Huaimo Chen <[email-masked]>
Date: Tue, 28 May 2019 02:50:12 +0000

Hi Tony,

    Thank you for your explanations.

    After moving one byte for the priority from Area Leader Sub-TLV to Dynamic Flooding Sub-TLV, only one Area Leader Sub-TLV is advertised. For an area with N nodes supporting both centralized and distributed mode, my understanding is below.

    Before moving, each of N nodes may advertise an Area Leader Sub-TLV and a Dynamic Flooding Sub-TLV. After moving, only the leader node advertises a (Updated) Area Leader Sub-TLV. Thus (N - 1) Area Leader Sub-TLVs are saved, which use space of (N-1)*S1 bytes, where S1 is the size of Area Leader Sub-TLV. Each of N nodes may advertise a (Updated) Dynamic Flooding Sub-TLV, which has one extra byte for the priority. Thus N bytes are used.

    The saving on space after moving should be (N-1)*S1 - N. S1 is 4 in IS-IS; S1 is 8 in OSPF.
For N = 1000 and IS-IS, the saving is (1000-1)*4 - 1000 = 2996 (bytes)
For N = 1000 and OSPF, the saving is (1000-1)*8 - 1000 = 6992 (bytes)

Best Regards,
Huaimo
________________________________
From: Tony Li <[email-masked]> on behalf of [email-masked] <[email-masked]>
Sent: Friday, May 24, 2019 4:56 PM
To: Huaimo Chen
Cc: [email-masked]
Subject: Re: Enhancement related to Area Leader Sub-TLV

Hi Huaimo,

Regards,
Tony

On May 24, 2019, at 1:44 PM, Huaimo Chen <[email-masked]<mailto:[email-masked]>> wrote:

Hi Tony,

is changed to:
    0                   1                   2                   3

Best Regards,
Huaimo

---

From: "Les Ginsberg (ginsberg)" <[email-masked]>
Date: Tue, 28 May 2019 15:19:09 +0000

Huaimo -

It is highly undesirable that there only be one Area Leader sub-TLV advertisement. The latest version of the draft (V2) highlights this. Please see https://tools.ietf.org/html/draft-ietf-lsr-dynamic-flooding-02#section-6.8.10

You have also not responded to Tony's point that we do not expect ALL nodes to advertise Area Leader Sub-TLV - which means the savings you calculate below isn't real.

   Les

From: Lsr <[email-masked]> On Behalf Of Huaimo Chen
Sent: Monday, May 27, 2019 7:50 PM
To: [email-masked]
Cc: [email-masked]
Subject: Re: [Lsr] Enhancement related to Area Leader Sub-TLV

Hi Tony,

Best Regards,
Huaimo
________________________________
From: Tony Li <[email-masked]<mailto:[email-masked]>> on behalf of [email-masked]<mailto:[email-masked]> <[email-masked]<mailto:[email-masked]>>
Sent: Friday, May 24, 2019 4:56 PM
To: Huaimo Chen
Cc: [email-masked]<mailto:[email-masked]>
Subject: Re: Enhancement related to Area Leader Sub-TLV

Hi Huaimo,

The area leader sub-tlv is only advertised by systems that are willing to be area leader.  Presumably, that's not necessarily all of the ones who support dynamic flooding.  Thus, what you're proposing moves one byte from one TLV into another TLV that will be more commonly used. So your proposal actually consumes more LSP space.

Regards,
Tony

p.s. IS-IS does not depend on word-alignment, so we typically do not leave reserved bytes in our TLV formats. OSPF is a different kettle of fish... :-)

Hi Tony,

is changed to:
    0                   1                   2                   3

Best Regards,
Huaimo

---

From: [email-masked]
Date: Tue, 28 May 2019 08:20:50 -0700

Hi Huaimo,

>     Before moving, each of N nodes may advertise an Area Leader Sub-TLV and a Dynamic Flooding Sub-TLV. After moving, only the leader node advertises a (Updated) Area Leader Sub-TLV.

The Area Leader sub-TLV should be advertised by all nodes that are candidates to being Area Leader.  Strictly speaking, you could choose only one, but that would become a single point of failure.  For simple redundancy, two seems a practical minimum, however it still seems somewhat risky due to the possible loss of an Area Leader after a multi-failure partition. Thus, it is likely that all N nodes will continue to advertise the Area Leader sub-TLV.

Since no sub-TLVs are withdrawn, there is no space savings.

Tony

---

From: Huaimo Chen <[email-masked]>
Date: Wed, 29 May 2019 05:02:08 +0000

Hi Les,

    It seems that it is OK for only the leader advertises Area Leader sub-TLV. After the old/current leader is down, a new leader will be elected and the new leader will advertises Area Leader sub-TLV.

    After moving priority (one byte) from Area Leader sub-TLV to Dynamic Flooding Sub-TLV, the saving on space when every node advertises a priority is (N-1)*S1 – N, where N is the number of nodes in the area, S1 is the size of Area Leader Sub-TLV. S1 is 4 in IS-IS; S1 is 8 in OSPF.  For N = 1000 and IS-IS, the saving is (1000-1)*4 - 1000 = 2996 (bytes). For N = 1000 and OSPF, the saving is (1000-1)*8 - 1000 = 6992 (bytes).

    When only one node advertises a priority, (N – 1) bytes more is used.

Best Regards,
Huaimo
________________________________
From: Les Ginsberg (ginsberg) <[email-masked]>
Sent: Tuesday, May 28, 2019 11:19 AM
To: Huaimo Chen; [email-masked]
Cc: [email-masked]
Subject: RE: Enhancement related to Area Leader Sub-TLV

Huaimo –

It is highly undesirable that there only be one Area Leader sub-TLV advertisement. The latest version of the draft (V2) highlights this. Please see https://tools.ietf.org/html/draft-ietf-lsr-dynamic-flooding-02#section-6.8.10<https://nam03.safelinks.protection.outlook.com/?url=https%3A%2F%2Ftools.ietf.org%2Fhtml%2Fdraft-ietf-lsr-dynamic-flooding-02%23section-6.8.10&data=02%7C01%7Chchen%40futurewei.com%7C87445d2f426045f3417a08d6e37fd84a%7C0fee8ff2a3b240189c753a1d5591fedc%7C1%7C0%7C636946535570312948&sdata=QxjYmBay0G6mMHqaxUWARJDcpkOsv1tTphJCze%2FcwJs%3D&reserved=0>

You have also not responded to Tony’s point that we do not expect ALL nodes to advertise Area Leader Sub-TLV – which means the savings you calculate below isn’t real.

   Les

Hi Tony,

Best Regards,

Huaimo

Hi Huaimo,

Regards,

Tony

Hi Tony,

    0                   1                   2                   3

    0                   1                   2                   3

    0                   1                   2                   3

is changed to:

    0                   1                   2                   3

       0                   1                   2                   3

      |              Type             |             Length            |

is changed to

       0                   1                   2                   3

      |              Type             |             Length            |

       0                   1                   2                   3

      |              Type             |             Length            |

      | Algorithm ... |                                               |

is changed to

       0                   1                   2                   3

      |              Type             |             Length            |

Best Regards,

Huaimo

---

From: Huaimo Chen <[email-masked]>
Date: Wed, 29 May 2019 05:12:59 +0000

Hi Tony,

    After moving, it seems OK for only the leader advertises a (Updated) Area Leader Sub-TLV. After the old/current leader dies, a new leader will be elected and the new leader will advertises a (Updated) Area Leader Sub-TLV.

    Since the other nodes do not advertise any Area Leader Sub-TLVs, the space used for advertising Area Leader Sub-TLVs by these nodes before moving should be saved.

Best Regards,

Huaimo

________________________________
From: Tony Li <[email-masked]> on behalf of [email-masked] <[email-masked]>
Sent: Tuesday, May 28, 2019 11:20 AM
To: Huaimo Chen
Cc: [email-masked]
Subject: Re: Enhancement related to Area Leader Sub-TLV

Hi Huaimo,

Tony

---

From: Tony Li <[email-masked]>
Date: Tue, 28 May 2019 23:04:01 -0700

Hi Huaimo,

>     It seems that it is OK for only the leader advertises Area Leader sub-TLV.

I disagree.  Again, without other advertisements, the entire domain is at risk of losing the Area Leader and having an uncomfortable transition.

> After the old/current leader is down, a new leader will be elected and the new leader will advertises Area Leader sub-TLV.

If only one node is advertising the Area Leader sub-TLV, then when the Area Leader fails, some other nodes will be forced to advertise that sub-TLV.  This will have to propagate (through flooding) throughout the domain before a new Area Leader is elected.  Any candidates that lose the election would likely compute and advertise a FT of their own, which would then be subsequently obsoleted. This is a non-trivial waste of computation and LSDB space and bandwidth.  There would also be a considerable churn as intermediate nodes see various different FTs at different times. This would definitely be a stress test of the FT migration mechanisms.

>     When only one node advertises a priority, (N – 1) bytes more is used.

As Les said, it is undesirable for only one node to advertise area leader candidacy.  In fact, it is preferred that as many capable nodes advertise it as possible.  Thus, there is no savings.

Tony