Flexible Algorithm with Bandwidth ConstrainsZTE Corp.liu.yao71@zte.com.cnZTE Corp.peng.shaofu@zte.com.cn
Transport
LSR Working GroupInternet-DraftFlexible AlgorithmBandwidthIGP This document proposes extensions for IGP to allow the computation based on bandwidth constraints together with the existing metric in Flexible Algorithm. defines the Flex-Algorithm as a set of parameters consisting of calculation-type, metric-type and a set of constraints. The metric includes igp-metric, te-metric, delay-metric, and etc.
While the calculation of a path based on metrics is accumulative, e.g, the path calculated based on the delay-metric is that with the smallest sum of the metrics of each link. The bandwidth of a path depends on the link with the smallest bandwidth among the links that comprise the path.
It's more appropriate that the bandwidth acts as a constraint instead of a metric in the path computation.
This document proposes extensions for IGP to allow the computation based on bandwidth constraints together with the existing metric in FLex-Algo.
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
when, and only when, they appear in all capitals, as shown here.
This document defines the ISIS bandwidth constraint Sub-TLV. It is a Sub-TLV of the ISIS FAD Sub-TLV and has the following format:where:
Type: TBALength: 1 octetsBW-Con Type: 1 octets of bandwidth constraint information.The BW-Con Type has the following values: 1: Choose the link with Maximum Link Bandwidth ( MLB defined in ). 2: Choose the link with maximum Unidirectional Available Bandwidth ( UAB defined in ). 3: Choose the link with the lowest bandwidth utilization rate.The ISIS bandwidth constraint Sub-TLV MUST NOT appear more than once in an ISIS FAD Sub-TLV. If it appears more than once, the ISIS FAD Sub-TLV MUST be ignored by the receiver.This document defines the OSPF bandwidth constraint Sub-TLV. It is a Sub-TLV of the OSPF FAD Sub-TLV [I-D.ietf-lsr-flex-algo] and has the following format:where:
Type: TBALength: 1 octetsBW-Con Type: 1 octets of bandwidth constraint information.The BW-Con Type has the following values: 1: Choose the link with Maximum Bandwidth ( MB defined in ). 2: Choose the link with maximum Unidirectional Available Bandwidth ( UAB defined in ). 3: Choose the link with the lowest bandwidth utilization rate.The OSPF bandwidth constraint Sub-TLV MUST NOT appear more than once in a OSPF FAD Sub-TLV. If it appears more than once, the OSPF FAD Sub-TLV MUST be ignored by the receiver.Routes that don't support the bandwidth constraint Sub-TLV MUST NOT participate in the corresponding Flex-Algo plane.Existing rules for calculation of Flex-Algorithm paths specified in are still applicable.As for the new bandwidth constraint, first, select the optimal path(s) only according to the bandwidth constraint. If there are multiple candidate paths satisfying the bandwidth constraint, then select the best path based on the metric computation from these candidate paths. The result of IGP flex algo shortest path calculation based on bandwidth constraints is that each participating node in flex algo plane constructs a SPT (with itself as the root) per algorithm, which contains all other participating nodes as destination nodes. Step1: Assume S is the root, and other nodes are D1, D2, D3,... Dn.Step2: Find all paths from source node S to destination node D1. Suppose there is one or more paths, and it is recorded as path-1, path-2,..., path-m, where m > =1.Step3: Initializes the current root node (cur-root) to S. Take two paths (such as path-1 and path-2) to compare to see who is more qualified for the constraint. Note that as mentioned above, the constraint conditions here refer to the combination of bandwidth constraint and metric, and compare based on bandwidth constraints firstly and then metric secondly. This can be compared in segments, that is, from the current root node to the destination node, finding a first crossed node which appears in two paths at the same time and is recorded as the current branch (cur-branch) node.Step4: Compare the path segment from the current root node to the current branch node in the two paths to see who is more qualified for the path.
If one of the two path segments is optimal and the other is suboptimal, it means that one of the two paths is optimal than the other. Add the optimal path to the "winning group". Note that if the path of the suboptimal is originally in the "winning group", the "winning group" should be cleared firstly and then new optimal path is added. The optimal path continues to compare with other paths, jump to Step3.Otherwise, if the two path fragments are both optimal, the current root node (cur root) is updated as the current branch node. If the current root node reaches the destination node, the comparison is finished, and the two paths join the "winning group" to form ECMP (equal cost multi path equivalent multipath); otherwise, continue to find the next crossed node in the two paths as the new current branch node, and jump to Step4.Step5: The above result will get the shortest paths from S to D1. Similarly, repeating Step2 for destination D2, D3,..., Dn respectively will get the shortest path from S to D2, D3,..., Dn respectively. Thus the shortest path tree with S as the root node in the flex algo plane is constructed.As shown in Figure 3, there're 5 nodes in the given FA plane, whose metric type is delay metric and the bandwidth constrain is to choose the link with the maximum total bandwidth. The bandwidth and metric for each link is shown in Table 1.LinkBandwidthMetric A-B 100 10 B-D 5 2 D-C 10 2 B-E 10 1 E-C 5 1It is required to calculate the optimal path from A to C in this FA plane.First, select the path who has the maximum bandwidth . Since the bandwidth of a path depends on the link with the smallest bandwidth, the maximum bandwidth s of path A-B-D-C and A-B-E-C are both 5. These two paths are chosen as candidate paths.Second, compare the metric values of the candidate paths. The metric of path A-B-E-C is smaller, so it is chosen as the best path. TBDType: TBADescription: bandwidth constraint Sub-TLVReference: This document. Type: TBADescription: bandwidth constraint Sub-TLVReference: This document.