Internet-Draft | BGP SR Policy Extensions for metric | March 2022 |
Zhang & Dong | Expires 6 September 2022 | [Page] |
SR Policy candidate paths can be represented in BGP UPDATE messages. BGP can then be used to propagate the SR Policy candidate paths to the headend nodes in the network. After SR Policy is installed on the ingress node, the packets can be steered into SR Policy through route selection. Therefore, route selection may be performed on the ingress node of the SR Policy. If there are multiple routes to the same destination, the route selection node can select routes based on the local policy. The local policy may use the IGP metric of the selected path, which is the IGP Metric of the SR Policy. Thus the BGP UPDATE message need carry the metric of each segment list of the SR Policy Candidate Path, which can be used in path selection of routing.¶
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD 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.¶
This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79.¶
Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet-Drafts is at https://datatracker.ietf.org/drafts/current/.¶
Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress."¶
This Internet-Draft will expire on 6 September 2022.¶
Copyright (c) 2022 IETF Trust and the persons identified as the document authors. All rights reserved.¶
This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Revised BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Revised BSD License.¶
[I-D.ietf-idr-segment-routing-te-policy]defines SR Policy and Tunnel Encapsulation Attributes. It defines the segment list of the SR policies. Each segment list of an SR Policy is an segment routing path, which may be calculated by path compuation element and delivered to the head node of the device by BGP Update Message. On the ingress node, when steer traffic to an SR Policy, the ingress node may need to select between multiple SR Policy paths. And the selection policy may need the path metric information. Therefore, BGP needs to carry the metric of each path when delivering the semgnet list of the SR Policy through Update messages to facilitate route selection on the device.¶
The following terminology is used in this document.¶
SR Policy: An ordered list of segments.¶
Candidate Path: the unit for signaling of an SR Policy to a headend via protocol extensions like Path Computation Element (PCE) Communication Protocol (PCEP) [RFC8664] [I-D.ietf-pce-segment-routing-policy-cp] or BGP SR Policy [I-D.ietf-idr-segment-routing-te-policy].¶
SRPM: SR Policy Module.¶
In route selection scenarios, the metric of the SR Policy segment list may be required.¶
The specific scenarios are as follows:¶
+--+ +--+ +---+ _ _ _ _ _|P1|_ _ _ _ _|P2|_ _ _ _ _|PE2|_ _ _ _ | +--+ +--+ +---+ | | | +---+ +---+ +---+ |CE1|_ _ _ _ |PE1| |CE1| +---+ +---+ +---+ | +--+ +--+ +---+ | |_ _ _ _ _|P3|_ _ _ _ _|P4|_ _ _ _ _|PE3|_ _ _ _| +--+ +--+ +---+¶
On PE1, the route prefix to CE1 has two diffierent next hop, PE2 and PE3. The next hop to PE1 uses an SR Policy1 on PE1, the endpoint of SR Policy1 is PE2. The next hop to PE2 uses an SR Policy2 on PE1, the endpoint of SR Policy2 is PE3. The prefix to CE1 want to choose a next hop based on the IGP metric of the route PE1 to PE2 and PE1 and PE3, which uses SR Policy1 and SR Policy2. Thus need the IGP metric of SR Policy semgent list on PE1.¶
As the metric is defined, the tunnel attribute encapsulation of the BGP SR Policy needs to be updated.¶
The SR Policy Encoding structure is as follows:¶
SR Policy SAFI NLRI: <Distinguisher, Policy-Color, Endpoint>¶
Attributes: Tunnel Encaps Attribute (23) Tunnel Type: SR Policy Binding SID Preference Priority Policy Name Policy Candidate Path Name Explicit NULL Label Policy (ENLP) Segment List Weight Metric Segment Segment .... ....¶
Where metric indicates the metric for the segment list.¶
A new sub-TLV called Metric sub-TLV is defined. Metric sub-TLV specifies the metric of an SR policy segment list. Each sub-TLV is encoded as shown in Figure 1.¶
Type: Metric, 1 octet, TBD.¶
Length: 6.¶
Metric Type: 1 octet. The Type of metric, can be IGP metric, TE metric, delay, ect.¶
Flags: 1 octet of flags. None are defined at this stage. Flags SHOULD be set to zero on transmission and MUST be ignored on receipt.¶
Metric Value: a 4-octet value.¶
When SR Policy headend get the SR Policy segment list with metric, how to process the metric is local policy.¶
The active candidate path of SR Policy may have several segment lists, each segment list have different metric. It is recommended that the segment lists in one candidate path have the same metric type. If the metric value of segment lists in one candidate path is different, the candidate path metric can use the minimum value as the metric of candidate path. And the SR Policy metric use the metric value of active candidate path.¶
TBD.¶
This document requests that IANA allocates a new sub-TLV type as defined in Section 4.1 from the "Sub-TLVs for SR Policy" registry as specified.¶
These extensions to BGP SR Policy do not add any new security issues to the existing protocol.¶