On Nov 19, 2024, at 11:30, Gunter van de Velde (Nokia)
<[email protected]> wrote:
# Gunter Van de Velde, RTG AD, comments for
draft-ietf-lsr-flex-algo-bw-con-15
# the referenced line numbers are derived from the idnits tool:
https://author-tools.ietf.org/api/idnits?url=https://www.ietf.org/archive/id/draft-ietf-lsr-flex-algo-bw-con-15.txt
#GENERIC COMMENTS
#================
## I found the draft well written, and the procedures are well
described.Thank you for the nice document
## This review is mostly about clarifications and consistencyand
nearly ready for IETF LC
#DETAILED COMMENTS
#=================
26 Requirements Language
25
28 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL",
"SHALL NOT",
29 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and
"OPTIONAL" in this
30 document are to be interpreted as described in RFC
2119 [RFC2119].
GV> This seems like an old boilerplate was used. The new one looks as
follows:
"
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
"OPTIONAL" in this document are to be interpreted as described in BCP
14 [RFC2119] [RFC8174] when, and only when, they appear in all
capitals, as shown here.
"
170 Section 3 defines additional Flexible Algorithm
Definition (FAD)
171 constraints that allow the network administrator to
preclude the use
172 of low bandwidth links or high delay links.
GV> Could a reference to RFC9350 be added for FAD?
236 0 1 2 3
237 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
238 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
239 | Type | Length | metric-type |
240 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
241 | Value |
242 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
244 Type : TBD1 (To be assigned by IANA)
245 Length: 4 octets
246 Metric-type: A value from the IGP metric-type
registry
247 Value : Metric value range (0 - 16,777,215)
GV> The picture is slightlyconfusing. What about the following
alternate explanation. Similar structire could be used with the other
encoding in the sections that follow.
"
Type (1 octet):
An 8-bit field assigned by IANA (To Be Determined as TBD1). This
value uniquely identifies the Metric TLV.
Length (1 octet):
An 8-bit field indicating the total length, in octets, of the
subsequent fields. For this TLV, the Length is set to 4.
Metric-Type (1 octet):
An 8-bit field specifying the type of metric. The value is taken from
the "IGP metric-type" registry maintained by IANA.
Value (3 octets):
A 24-bit unsigned integer representing the metric value. The valid
range is from 0 to 16,777,215.
"
334 If the metric type indicates a standard metric type for
which there
335 are other advertisement mechanisms (e.g., the IGP
metric, the Min
336 Unidirectional Link Delay, or the Traffic Engineering
Default
337 Metric), the Generic Metric advertisement MUST be ignored.
GV> I am slightly confused. I may misunderstandthisprocedure rule. Is
this section trying to prescribe that generic metric type TLV should
not carry a standard metric? or is it trying to prescribe that when
for a specific link there is a legacy metric type advertisement (e.g.
IGP metric) that the generic TLV must be ignored?
355 Flexible-Algorithm-specific metric. Metrics carried in FAPM will be
356 equal to the metric to reach the prefix for that
Flex-Algorithm in
357 its source area or domain. When Flex-Algorithm uses
Generic metric,
GV> Maybe a small clarification for accuracy by adding few words:
"Metrics carried in FAPM will be equal to the metric to reach the
prefix for that Flex-Algorithm in its source area or domain ***from
the ABR perspective***.".
430 If the Maximum Link Bandwidth is lower than the Minimum link
431 bandwidth advertised in FAEMB sub-TLV, the link MUST be
excluded from
432 the Flex-Algorithm topology. If a link does not have
the Maximum
GV> corner case scenario. I suspect that the existing text is written
already on purpose, but i wanted to sanity check: Is the intent to
have 'lower' or 'lower or equal'?
471 If the Min Unidirectional Link Delay value is higher
than the Maximum
472 link delay advertised in FAEMD sub-TLV, the link MUST be
excluded
473 from the Flex-Algorithm topology. If a link does not
have the Min
GV> same as above. Is this higher or higher and equal?
546 not aadvertised for a link but the FAD contains this
sub-TLV,then
GV> s/aadvertised/advertised/
564 link advertisements. Bandwidth metric is a link
attribute and for
565 the advertisement and processing of this attribute for Flex-
566 algorithm, MUST follow the the section 12 of [RFC9350]
GV> Is there special consideration for stub links? are there any
special behaviours for transit or stub links applied when a router is
configured for "overload max-metric"? (to take a router
out-of-service for maintenance, or for making an ABR less desirable
during maintenance)
653 which may cause undesired load-balancing on the links.
In such
654 cases, a device may locally apply load-balancing factor
relative to
655 the link bandwidth on the ECMP nexthops.
GV> Would it be worthwhile to say explicit that these load-balancing
mechanisms are out of scope of this document (similar as a few lines
earlier?)
683 For example,
684
685 reference bandwidth = 1000G
686
687 Granularity = 20G
688
689 The derived metric is 10 for link bandwidth in the
range 100G to
690 119G
GV> Maybe more accurate that the FLOOR function is used to rounds
number down, toward zero, to the nearest multiple of significance
746 When granularity_bw is less than or equal to
Total_link_bandwidth
747
748 Metric calculation: (Reference_bandwidth) /
749 (Total_link_bandwidth -
750 (Modulus of(Total_link_bandwidth,
751 granularity_bw)))
752
753 When granularity_bw is greater than Total_link_bandwidth
754 Metric calculation: Reference_bandwidth /
755 Total_link_bandwidth
GV> should it be mentioned that this is an integer division?
769 automatically derived metric for that link. In case of
Interface
770 Group Mode, if all the parallel links have been
advertised with the
771 Bandwidth Metric, The individual link Bandwidth Metric
MUST be used.
772 If only some links among the parallel links have the
Bandwidth Metric
773 advertisement, the Bandwidth Metric for such links MUST
be ignored
774 and automatic Metric calculation MUST be used to derive
link metric.
GV> what about following alternative writeup to make the text easier
to understand:
"
In the case of Interface Group Mode, the following procedures apply:
* When all parallel links have advertised the Bandwidth Metric: The
individual link Bandwidth Metric MUST be used for each link.
* When only a subset of the parallel links have advertised the
Bandwidth Metric: The Bandwidth Metric advertisements for those links
MUST be ignored. In this scenario, automatic metric calculation MUST
be used to derive the link metrics for all parallel links.
"
847 When the computed link bandwidth is less than Bandwidth
Threshold 1,
848 the MAX_METRIC value of 4,261,412,864 MUST be assigned
as the
849 Bandwidth Metric on the link during the Flex-Algorithm SPF
850 calculation.
851
852 When the computed link bandwidth is greater than or equal to
853 Bandwidth Threshold 1 and less than Bandwidth Threshold
2, Threshold
854 Metric 1 MUST be assigned as the Bandwidth Metric on the
link during
855 the Flex-Algorithm SPF calculation.
856
857 Similarly, when the computed link bandwidth is greater
than or equal
858 to Bandwidth Threshold 2 and less than Bandwidth
Threshold 3,
859 Threshold Metric 2 MUST be assigned as the Bandwidth
Metric on the
860 link during the Flex-Algorithm SPF calculation.
861
862 In general, when the computed link bandwidth is greater
than or equal
863 to Bandwidth Threshold X AND less than Bandwidth
Threshold X+1,
864 Threshold Metric X MUST be assigned as the Bandwidth
Metric on the
865 link during the Flex-Algorithm SPF calculation.
866
867 Finally, when the computed link bandwidth is greater
than or equal to
868 Bandwidth Threshold N, then Threshold Metric N MUST be
assigned as
869 the Bandwidth Metric on the link during Flex-Algorithm SPF
870 calculation.
GV> What about the following procedure rewrite?
"
Assignment of Bandwidth Metric Based on Computed Link Bandwidth
The Bandwidth Metric for a link during the Flex-Algorithm Shortest
Path First (SPF) calculation MUST be assigned according to the
following rules:
1. When the computed link bandwidth is less than Bandwidth Threshold 1:
* The Bandwidth Metric MUST be set to the maximum metric value of
4,261,412,864.
2. When the computed link bandwidth is greater than or equal to
Bandwidth Threshold 1 and less than Bandwidth Threshold 2:
* The Bandwidth Metric MUST be set to Threshold Metric 1.
3. When the computed link bandwidth is greater than or equal to
Bandwidth Threshold 2 and less than Bandwidth Threshold 3:
* The Bandwidth Metric MUST be set to Threshold Metric 2.
4. In general, for all integer values of X such that 1≤X<N:
* When the computed link bandwidth is greater than or equal to
Bandwidth Threshold X and less than Bandwidth Threshold X+1:
** The Bandwidth Metric MUST be set to Threshold Metric X.
5. When the computed link bandwidth is greater than or equal to
Bandwidth Threshold N:
* The Bandwidth Metric MUST be set to Threshold Metric N.
Notes:
* The term Bandwidth Threshold X refers to a predefined threshold
value corresponding to the index X.
* The term Threshold Metric X refers to the metric value associated
with Bandwidth Threshold X.
* N represents the total number of bandwidth thresholds defined in
the system.
* The maximum metric value of 4,261,412,864 indicates that the link
is considered unreachable for the purposes of the Flex-Algorithm SPF
calculation.
Implementations MUST ensure that these rules are consistently applied
to maintain interoperability and optimal path computation within the
network.
"
872 The IS-IS FADBT sub-TLV MUST NOT appear more than once
in an IS-IS
873 FAD sub-TLV. If it appears more than once, the IS-IS
FAD sub-TLV
874 MUST MUST stop participating in such flex-algorithm.
GV> s/MUST MUST/MUST/
GV> Is it deliberate that here is written to stop participating in
such flex-algo, where at line 762 is written that "the IS-IS FAD
sub-TLV MUST be ignored by the receiver.". Is this intended?
934 When granularity_bw is less than or equal to
Total_link_bandwidth
935
936 Metric calculation: (Reference_bandwidth) /
937 (Total_link_bandwidth -
938 (Modulus of(Total_link_bandwidth,
939 granularity_bw)))
940
941 When granularity_bw is greater than Total_link_bandwidth
942
943 Metric calculation: Reference_bandwidth/
944 Total_link_bandwidth
945 Figure 10: OSPF FADRB Sub-TLV
GV> I was wondering to mention that for completeness this is an
integer division?
957 automatically derived metric for that link.In case of
Interface Group
958 Mode, if all the parallel links have been advertised
with the
959 Bandwidth Metric, The individual link Bandwidth Metric
MUST be used.
960 If only some links among the parallel links have the
Bandwidth Metric
961 advertisement, the Bandwidth Metric for such links MUST
be ignored
962 and automatic Metric calculation MUST be used to derive
link metric.
GV> proposed rewrite
"
Metric Assignment in Interface Group Mode:
When a link does not have a configured Bandwidth Metric, the
automatically derived metric MUST be used for that link.
In the context of Interface Group Mode, the following rules apply to
parallel links:
* If all parallel links have advertised the Bandwidth Metric:
**The individual link Bandwidth Metrics MUST be used for each link
during path computation.
* If only some of the parallel links have advertised the Bandwidth
Metric:
** The Bandwidth Metric advertisements for those links MUST be ignored.
** Automatic metric calculation MUST be used to derive the link
metrics for all parallel links.
This approach ensures consistent metric calculation and avoids
discrepancies caused by partial Bandwidth Metric advertisements among
parallel links.
"
1036 When the computed link bandwidth is less than Bandwidth
Threshold 1 ,
1037 the MAX_METRIC value of 4,294,967,296 MUST be assigned as the
1038 Bandwidth Metric on the link during the Flex-Algorithm SPF
1039 calculation.
1040
1041 When the computed link bandwidth is greater than or equal to
1042 Bandwidth Threshold 1 and less than Bandwidth Threshold
2, Threshold
1043 Metric 1 MUST be assigned as the Bandwidth Metric on the
link during
1044 the Flex-Algorithm SPF calculation.
1045
1046 Similarly, when the computed link bandwidth is greater
than or equal
1047 to Bandwidth Threshold 2 and less than Bandwidth Threshold 3,
1048 Threshold Metric 2 MUST be assigned as the Bandwidth
Metric on the
1049 link during the Flex-Algorithm SPF calculation.
1050
1051 In general, when the computed link bandwidth is greater
than or equal
1052 to Bandwidth Threshold X AND less than Bandwidth
Threshold X+1,
1053 Threshold Metric X MUST be assigned as the Bandwidth
Metric on the
1054 link during the Flex-Algorithm SPF calculation.
1055
1056 Finally, when the computed link bandwidth is greater than
or equal to
1057 Bandwidth Threshold N, then Threshold Metric N MUST be
assigned as
1058 the Bandwidth Metric on the link during the
Flex-Algorithm SPF
1059 calculation.
GV> From readability maybe following rewrite/restructuring proposal:
"
Assignment of Bandwidth Metric Based on Computed Link Bandwidth:
The Bandwidth Metric for a link during the Flex-Algorithm Shortest
Path First (SPF) calculation MUST be assigned according to the
following rules:
1. When the computed link bandwidth is less than Bandwidth Threshold 1:
* The Bandwidth Metric MUST be set to the maximum metric value of
4,294,967,296.
2. When the computed link bandwidth is greater than or equal to
Bandwidth Threshold 1 and less than Bandwidth Threshold 2:
* The Bandwidth Metric MUST be set to Threshold Metric 1.
3. When the computed link bandwidth is greater than or equal to
Bandwidth Threshold 2 and less than Bandwidth Threshold 3:
* The Bandwidth Metric MUST be set to Threshold Metric 2.
4. In general, for all integer values of X where 1≤X<N:
* When the computed link bandwidth is greater than or equal to
Bandwidth Threshold X and less than Bandwidth Threshold X+1:
** The Bandwidth Metric MUST be set to Threshold Metric X.
5. When the computed link bandwidth is greater than or equal to
Bandwidth Threshold N:
* The Bandwidth Metric MUST be set to Threshold Metric N.
Notes:
* Bandwidth Threshold X refers to the predefined bandwidth threshold
corresponding to index X.
* Threshold Metric X is the metric value associated with Bandwidth
Threshold X.
* N represents the total number of bandwidth thresholds defined in
the system.
* The maximum metric value of 4,294,967,296 indicates that the link
is effectively considered unreachable during the Flex-Algorithm SPF
calculation.
Implementations MUST consistently apply these rules to ensure
accurate path computations and maintain interoperability within the
network.
"
G/
_______________________________________________
Lsr mailing list [email protected]
To unsubscribe send an email [email protected]