draft-keyupate-idr-bgp-prefix-sid-03.txt   draft-keyupate-idr-bgp-prefix-sid-04.txt 
IDR K. Patel IDR K. Patel
Internet-Draft S. Previdi Internet-Draft S. Previdi
Intended status: Standards Track C. Filsfils Intended status: Standards Track C. Filsfils
Expires: January 7, 2016 A. Sreekantiah Expires: January 7, 2016 A. Sreekantiah
Cisco Systems Cisco Systems
S. Ray S. Ray
Unaffiliated Unaffiliated
H. Gredler
Juniper Networks
July 6, 2015 July 6, 2015
Segment Routing Prefix SID extensions for BGP Segment Routing Prefix SID extensions for BGP
draft-keyupate-idr-bgp-prefix-sid-03 draft-keyupate-idr-bgp-prefix-sid-04
Abstract Abstract
Segment Routing (SR) architecture allows a node to steer a packet Segment Routing (SR) architecture allows a node to steer a packet
flow through any topological path and service chain by leveraging flow through any topological path and service chain by leveraging
source routing. The ingress node prepends a SR header to a packet source routing. The ingress node prepends a SR header to a packet
containing a set of "segments". Each segment represents a containing a set of "segments". Each segment represents a
topological or a service-based instruction. Per-flow state is topological or a service-based instruction. Per-flow state is
maintained only at the ingress node of the SR domain. maintained only at the ingress node of the SR domain.
skipping to change at page 2, line 31 skipping to change at page 2, line 34
Table of Contents Table of Contents
1. Segment Routing Documents . . . . . . . . . . . . . . . . . . 3 1. Segment Routing Documents . . . . . . . . . . . . . . . . . . 3
2. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3
3. BGP-Prefix-SID . . . . . . . . . . . . . . . . . . . . . . . 4 3. BGP-Prefix-SID . . . . . . . . . . . . . . . . . . . . . . . 4
3.1. MPLS Prefix Segment . . . . . . . . . . . . . . . . . . . 4 3.1. MPLS Prefix Segment . . . . . . . . . . . . . . . . . . . 4
3.2. IPv6 Prefix Segment . . . . . . . . . . . . . . . . . . . 5 3.2. IPv6 Prefix Segment . . . . . . . . . . . . . . . . . . . 5
4. BGP-Prefix-SID Attribute . . . . . . . . . . . . . . . . . . 5 4. BGP-Prefix-SID Attribute . . . . . . . . . . . . . . . . . . 5
4.1. Label-Index TLV . . . . . . . . . . . . . . . . . . . . . 6 4.1. Label-Index TLV . . . . . . . . . . . . . . . . . . . . . 6
4.2. Originator SRGB TLV . . . . . . . . . . . . . . . . . . . 7 4.2. Originator SRGB TLV . . . . . . . . . . . . . . . . . . . 7
4.3. Neighbor SRGB TLV . . . . . . . . . . . . . . . . . . . . 7 4.3. Neighbor SRGB TLV . . . . . . . . . . . . . . . . . . . . 8
5. Receiving BGP-Prefix-SID Attribute . . . . . . . . . . . . . 9 5. Receiving BGP-Prefix-SID Attribute . . . . . . . . . . . . . 9
5.1. MPLS Dataplane . . . . . . . . . . . . . . . . . . . . . 10 5.1. MPLS Dataplane . . . . . . . . . . . . . . . . . . . . . 10
5.1.1. MPLS Dataplane: Labeled Unicast . . . . . . . . . . . 10 5.1.1. MPLS Dataplane: Labeled Unicast . . . . . . . . . . . 10
5.1.2. MPLS Dataplane: Unlabeled Unicast . . . . . . . . . . 10 5.1.2. MPLS Dataplane: Unlabeled Unicast . . . . . . . . . . 10
5.2. IPv6 Dataplane . . . . . . . . . . . . . . . . . . . . . 10 5.2. IPv6 Dataplane . . . . . . . . . . . . . . . . . . . . . 11
6. Announcing BGP-Prefix-SID Attribute . . . . . . . . . . . . . 11 6. Announcing BGP-Prefix-SID Attribute . . . . . . . . . . . . . 11
6.1. MPLS Dataplane . . . . . . . . . . . . . . . . . . . . . 11 6.1. MPLS Dataplane . . . . . . . . . . . . . . . . . . . . . 11
6.1.1. MPLS Dataplane: Labeled Unicast . . . . . . . . . . . 11 6.1.1. MPLS Dataplane: Labeled Unicast . . . . . . . . . . . 12
6.1.2. MPLS Dataplane: Unlabeled Unicast . . . . . . . . . . 12 6.1.2. MPLS Dataplane: Unlabeled Unicast . . . . . . . . . . 12
6.2. IPv6 Dataplane . . . . . . . . . . . . . . . . . . . . . 12 6.2. IPv6 Dataplane . . . . . . . . . . . . . . . . . . . . . 12
7. Error Handling of BGP-Prefix-SID Attribute . . . . . . . . . 12 7. Error Handling of BGP-Prefix-SID Attribute . . . . . . . . . 13
8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 13 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 13
9. Security Considerations . . . . . . . . . . . . . . . . . . . 13 9. Security Considerations . . . . . . . . . . . . . . . . . . . 14
10. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 13 10. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 14
11. Change Log . . . . . . . . . . . . . . . . . . . . . . . . . 13 11. Change Log . . . . . . . . . . . . . . . . . . . . . . . . . 14
12. References . . . . . . . . . . . . . . . . . . . . . . . . . 13 12. References . . . . . . . . . . . . . . . . . . . . . . . . . 14
12.1. Normative References . . . . . . . . . . . . . . . . . . 13 12.1. Normative References . . . . . . . . . . . . . . . . . . 14
12.2. Informative References . . . . . . . . . . . . . . . . . 14 12.2. Informative References . . . . . . . . . . . . . . . . . 14
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 15 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 15
1. Segment Routing Documents 1. Segment Routing Documents
The main references for this document are the SR architecture defined The main references for this document are the SR architecture defined
in [I-D.ietf-spring-segment-routing]and the related use case in [I-D.ietf-spring-segment-routing]and the related use case
illustrated in [I-D.filsfils-spring-segment-routing-msdc]. illustrated in [I-D.filsfils-spring-segment-routing-msdc].
The Segment Routing Egress Peer Engineering architecture is described The Segment Routing Egress Peer Engineering architecture is described
skipping to change at page 7, line 10 skipping to change at page 7, line 10
o Label Index: 32 bit value representing the index value in the SRGB o Label Index: 32 bit value representing the index value in the SRGB
space. If the S flag is set, the index SHOULD be clear on space. If the S flag is set, the index SHOULD be clear on
transmission an MUST be ignored at reception. transmission an MUST be ignored at reception.
4.2. Originator SRGB TLV 4.2. Originator SRGB TLV
The Originator SRGB TLV is an optional TLV and has the following The Originator SRGB TLV is an optional TLV and has the following
format: format:
0 1 2 3 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 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 | Flags | | Type | Length | Flags |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Flags | SRGB Base (3 octets) | | Flags |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
| SRGB Range (3 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SRGB 1 (6 octets) |
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SRGB n (6 octets) |
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
where: where:
o Type is 2. o Type is 2.
o Length: is 8, the total length of the value portion of the TLV. o Length is the total length of the value portion of the TLV: 5 +
multiple of 12.
o Flags: 16 bits of flags. None are defined in this document. o Flags: 16 bits of flags. None are defined in this document.
Flags SHOULD be clear on transmission an MUST be ignored at Flags SHOULD be clear on transmission an MUST be ignored at
reception. reception.
o SRGB Base: the value of the first label in the SRGB. o SRGB: 3 octets of base followed by 3 octets of range. Note that
SRGB field MAY appear multiple times.
o SRGB Range: the size of the SRGB (i.e.: number of labels).
The Originator SRGB TLV contains the SRGB of the router originating The Originator SRGB TLV contains the SRGB of the router originating
the prefix to which the BGP Prefix SID is attached and MUST be kept the prefix to which the BGP Prefix SID is attached and MUST be kept
in the Prefix-SID Attribute unchanged during the propagation of the in the Prefix-SID Attribute unchanged during the propagation of the
BGP update. BGP update.
The originator SRGB describes the SRGB of the node where the BGP The originator SRGB describes the SRGB of the node where the BGP
Prefix Segment end. It is used to build SRTE policies when different Prefix Segment end. It is used to build SRTE policies when different
SRGB's are used in the fabric SRGB's are used in the fabric
([I-D.filsfils-spring-segment-routing-msdc]). ([I-D.filsfils-spring-segment-routing-msdc]).
The originator SRGB may only appear on Prefix-SID attribute attached The originator SRGB may only appear on Prefix-SID attribute attached
to prefixes of SAFI 4 (labeled unicast, [RFC3107]). to prefixes of SAFI 4 (labeled unicast, [RFC3107]).
4.3. Neighbor SRGB TLV 4.3. Neighbor SRGB TLV
The Neighbor SRGB TLV is an optional TLV and has the following The Neighbor SRGB TLV is an optional TLV and has the following
format: format:
0 1 2 3 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 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 | Flags | | Type | Length | Flags |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Flags | SRGB Base (3 octets) | | Flags |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
| SRGB Range (3 octets) | Local Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Local Address (4 or 16 octets) | | Local Address (4 or 16 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SRGB 1 (6 octets) |
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SRGB n (6 octets) |
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
where: where:
o Type is 3. o Type is 3.
o Length: is 12 or 24, the total length of the value portion of the o Length is the total length of the value portion of the TLV. When
TLV. the BGP Update contains an IPv4 prefix (AFI 1 or BGP4) the length
is 4 + multiple of 12. When the BGP update contains an IPv6
prefix (AFI 2) the length is 16 + multiple of 12.
o Flags: 16 bits of flags. None are defined in this document. o Flags: 16 bits of flags. None are defined in this document.
Flags SHOULD be clear on transmission an MUST be ignored at Flags SHOULD be clear on transmission an MUST be ignored at
reception. reception.
o SRGB Base: the value of the first label in the SRGB. o Local Address: when the BGP Update contains an IPv4 prefix (AFI 1
or BGP4) the Local Address MUST contain a 4 octet IPv4 address.
o SRGB Range: the size of the SRGB (i.e.: number of labels). When the BGP Update contains an IPv6 prefix (AFI 2) the Local
Address MUST contain a 4 octet IPv4 address.
o Local Address: if "Length" is 12, then Local Address MUST contain o SRGB: 3 octets of base followed by 3 octets of range. Note that
a 4-octet IPv4 address. If "Length" is 24, then Local Address SRGB field MAY appear multiple times.
MUST contain a 16-octet IPv6 address.
The Neighbor SRGB TLV contains the local SRGB of the BGP speaker The Neighbor SRGB TLV contains the local SRGB of the BGP speaker
originating the Neighbor SRGB TLV. originating the Neighbor SRGB TLV.
The Neighbor SRGB TLV may only be present on Prefix-SID attribute The Neighbor SRGB TLV may only be present on Prefix-SID attribute
attached to an unlabeled prefix: BGP4 ([RFC4271]) or SAFI 1. attached to an unlabeled prefix: BGP4 ([RFC4271]) or SAFI 1.
The BGP speaker originating the Neighbor SRGB TLV MUST specify the The BGP speaker originating the Neighbor SRGB TLV MUST specify the
local IPv4 or IPv6 address for the BGP session on which the local IPv4 or IPv6 address for the BGP session on which the
corresponding NLRI is being advertised. corresponding NLRI is being advertised.
skipping to change at line 704 skipping to change at page 16, line 23
170 W. Tasman Drive 170 W. Tasman Drive
San Jose, CA 95124 95134 San Jose, CA 95124 95134
USA USA
Email: asreekan@cisco.com Email: asreekan@cisco.com
Saikat Ray Saikat Ray
Unaffiliated Unaffiliated
Email: raysaikat@gmail.com Email: raysaikat@gmail.com
Hannes Gredler
Juniper Networks
Email: hannes@juniper.net
 End of changes. 16 change blocks. 
41 lines changed or deleted 68 lines changed or added

This html diff was produced by rfcdiff 1.42. The latest version is available from http://tools.ietf.org/tools/rfcdiff/