Internet DRAFT - draft-peng-rtgwg-mrt-frr-sr
draft-peng-rtgwg-mrt-frr-sr
RTGWG WG Shaofu. Peng
Internet-Draft Ran. Chen
Intended status: Standards Track ZTE Corporation
Expires: March 2, 2017 August 29, 2016
Maximally Redundant Trees Fast Reroute using Segment Routing
draft-peng-rtgwg-mrt-frr-sr-00.txt
Abstract
This document presents a mechanism aimed at providing segment routing
forwarding option for MRT-FRR. It defines five new MRT Profiles,
each using SR-LSP, SR-tunnel, etc., forwarding option respectively.
These MRT Profiles will be very useful in the case of segment routing
network without LDP deployed. On the other hand, MRT-FRR is also a
competitive solution comparing with others for segment routing
network.
Status of This Memo
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 http://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 March 2, 2017.
Copyright Notice
Copyright (c) 2016 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
(http://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 Simplified BSD License text as described in Section 4.e of
Peng & Chen Expires March 2, 2017 [Page 1]
Internet-Draft MRT using SR August 2016
the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Five New MRT Forwarding Options . . . . . . . . . . . . . . . 3
2.1. Option 1: MRT SR-tunnel Option . . . . . . . . . . . . . 4
2.1.1. Forwarding SR Label Unicast Traffic over MRT Paths . 5
2.1.2. Forwarding IP Unicast Traffic over MRT Paths . . . . 6
2.1.3. Inter-area Forwarding Behavior . . . . . . . . . . . 6
2.1.4. Prefixes Multiply Attached to the MRT Island . . . . 6
2.1.5. FIB examples . . . . . . . . . . . . . . . . . . . . 6
2.2. Option 2: MRT SR-LSP Tunneling with multi-prefix-sid
Option . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.2.1. Forwarding SR Label Unicast Traffic over MRT Paths . 8
2.2.2. Forwarding IP Unicast Traffic over MRT Paths . . . . 8
2.2.3. Inter-area Forwarding Behavior . . . . . . . . . . . 9
2.2.4. Prefixes Multiply Attached to the MRT Island . . . . 9
2.2.5. FIB examples . . . . . . . . . . . . . . . . . . . . 9
2.3. Option 3: MRT SR-LSP Tunneling with multi-SRGB Option . . 10
2.3.1. Forwarding SR Label Unicast Traffic over MRT Paths . 11
2.3.2. Forwarding IP Unicast Traffic over MRT Paths . . . . 12
2.3.3. Inter-area Forwarding Behavior . . . . . . . . . . . 12
2.3.4. Prefixes Multiply Attached to the MRT Island . . . . 12
2.3.5. FIB examples . . . . . . . . . . . . . . . . . . . . 12
2.4. Option 4: MRT SR-LSP Non-tunneling with multi-SRGB Option 13
2.4.1. Forwarding SR Label Unicast Traffic over MRT Paths . 14
2.4.2. Forwarding IP Unicast Traffic over MRT Paths . . . . 15
2.4.3. Inter-area Forwarding Behavior . . . . . . . . . . . 15
2.4.4. Prefixes Multiply Attached to the MRT Island . . . . 15
2.4.5. FIB examples . . . . . . . . . . . . . . . . . . . . 16
2.5. Option 5: MRT SR-LSP Non-tunneling with multi-prefix-sid
Option . . . . . . . . . . . . . . . . . . . . . . . . . 18
3. Interoperation . . . . . . . . . . . . . . . . . . . . . . . 18
3.1. Multiple Profiles Coexistence . . . . . . . . . . . . . . 19
3.2. Multiple Profiles Interworking . . . . . . . . . . . . . 20
4. Support protecting segment list . . . . . . . . . . . . . . . 21
4.1. Received segment list is {segment F or S->F, vpn label}
or {segment F or S->F} . . . . . . . . . . . . . . . . . 22
4.2. Received segment list is {segment F or S->F, segment D1
or F->D1, segment D2, ..., segment Dn, vpn label} . . . . 23
4.3. Received segment list is {segment D1, segment D2, ...,
segment Dn, vpn label} . . . . . . . . . . . . . . . . . 24
5. Security Considerations . . . . . . . . . . . . . . . . . . . 25
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 25
7. References . . . . . . . . . . . . . . . . . . . . . . . . . 26
7.1. Normative References . . . . . . . . . . . . . . . . . . 26
Peng & Chen Expires March 2, 2017 [Page 2]
Internet-Draft MRT using SR August 2016
7.2. Informative References . . . . . . . . . . . . . . . . . 26
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 27
1. Introduction
MRT-FRR [RFC7812] creates two alternate forwarding trees that are
distinct from the primary next-hop forwarding used during stable
operation. These two trees are maximally diverse from each other,
providing link and node protection for 100% of paths and failures as
long as the failure does not cut the network into multiple pieces.
MRT-FRR has defined some forwarding mechanism options, including LDP
Label Option 1A and 1B, IP Tunnel Option 2A and 2B. Among these
options, LDP Label Option 1A is a more appropriate choice, which is
selected as the forwarding mechanism in MRT default profile.
Segment Routing [I-D.ietf-spring-segment-routing] allows to enforce a
flow through any path and service chain while maintaining per-flow
state only at the ingress node of the SR domain. Segment Routing can
be directly applied to the MPLS architecture [RFC3031] with no change
on the forwarding plane. A segment is encoded as an MPLS label. An
ordered list of segments is encoded as a stack of labels. For each
IGP-prefix segment in the segment list, it will forward packet
according to shortest path to destination corresponding to the
prefix, that has similar characteristics as an LDP LSP, so we can
term it as an SR LSP. For the whole segment list, it will specify a
forwarding path, other than the normal shortest path, so we can term
it as an SR tunnel.
It is necessary to introduce MRT-FRR function as a new choice to
segment routing network for reliability. First, MRT-FRR will bring a
more competitive FRR solution to SR. Second, SR forwarding mechanism
will greatly simplify MRT-FRR function.
2. Five New MRT Forwarding Options
The following five new options for MRT forwarding mechanisms are
introduced.
1. MRT SR-tunnel Option
2. MRT SR-LSP Tunneling with multi-prefix-sid Option
3. MRT SR-LSP Tunneling with multi-SRGB Option
4. MRT SR-LSP Non-tunneling with multi-SRGB Option
5. MRT SR-LSP Non-tunneling with multi-prefix-sid Option
Peng & Chen Expires March 2, 2017 [Page 3]
Internet-Draft MRT using SR August 2016
Respectively, we can define 5 new MRT profiles. Each profile is
almost same as the default MRT profile, except the forwarding
mechanisms would be set to the above value respectively, and allocate
different MRT MT-IDs. For example, the MRT profile which support
"MRT SR-tunnel Option" forwarding mechanism would be as the
following:
MRT Algorithm: MRT Lowpoint algorithm defined in [RFC7811].
MRT-Red MT-ID: To be allocated.
MRT-Blue MT-ID: To be allocated.
GADAG Root Selection Policy: Among the routers in the MRT Island with
the lowest numerical value advertised for GADAG Root Selection
Priority, an implementation MUST pick the router with the highest
Router ID to be the GADAG root. Note that a lower numerical value
for GADAG Root Selection Priority indicates a higher preference for
selection.
Forwarding Mechanisms: MRT SR-tunnel Option
Recalculation: Recalculation of MRTs SHOULD occur. This allows the
MRT forwarding topologies to support IP/LDP fast-reroute traffic.
Area/Level Border Behavior: ABRs/LBRs SHOULD ensure that traffic
leaving the area also exits the MRT-Red or MRT-Blue forwarding
topology.
2.1. Option 1: MRT SR-tunnel Option
MRT SR-tunnel Option will treat the whole MRT-red or MRT-blue path as
a segment list. Only FEC-label binding for the default topology-
scoped FEC is needed. The specified segment list will direct the
packet along the expected MRT path, but totally in the default
topology. In order to forward packet along the expected MRT path
strictly, the specified segment list suggests to be an adjacency
segment list.
Peng & Chen Expires March 2, 2017 [Page 4]
Internet-Draft MRT using SR August 2016
____
[F]---{____}................[D]
| .
| .
| .
[S]---[N1]---[N2]---[N3].......
=======================>
MRT-Red path
Figure 1: MRT SR-tunnel Forwarding Mechanism
In Figure 1 above, supposed that the MRT-Red path is S-N1-N2-N3,
which is used to protect the default primary nexthop F. Packets
could be pushed to the SR-tunnel with segment list {N1,N2,N3} when
the primary nexthop F is failed.
We can optimize a long adjacency segment list to a short node segment
list. However, packets forwarding along a node segment list will not
ensure to be strictly forwarded along the expected MRT path, as each
node segment will always forward packets along the shortest path
according to the newest topology that maybe different with the
topology when doing optimazition, also as each transit node can do
local repair again for further failures, that could cause packet-
forwarding micro-loop among two or more routers. Note that node
segment list allows to try best to protect traffic for multiple
simultaneous failures. Using adjacency segment list or node segment
list is an implementation choice. Optimazition from a adjacency
segment list to a node segment list is out of the scope of this
document.
Note that we can support tunneling traffic along an MRT to a tunnel
endpoint that is not the destination of the traffic.
2.1.1. Forwarding SR Label Unicast Traffic over MRT Paths
When a PLR receives an SR label packet that needs to be forwarded on
the MRT-Red (for example), it first does a label swap operation,
replacing the incoming SR label assigned by the PLR for the FEC with
the SR label assigned by the tunnel endpoint for that FEC, then push
the whole label stack corresponding to the segment list of the MRT-
Red path. The packet will forward to the tunnel endpoint (also MRT
egress), then leave the MRT path to the shortest path to the
destination.
Peng & Chen Expires March 2, 2017 [Page 5]
Internet-Draft MRT using SR August 2016
2.1.2. Forwarding IP Unicast Traffic over MRT Paths
When a PLR receives an IP packet that needs to be forwarded on the
MRT-Red to a particular tunnel endpoint, it does a label stack push
operation. The label stack pushed is the segment list of the MRT-Red
path. The packet will forward to the tunnel endpoint (also MRT
egress), then leave the MRT path to the shortest path to the
destination.
2.1.3. Inter-area Forwarding Behavior
As [RFC7812] described, it is desirable for traffic leaving the area
to also exit MRT-Red or MRT-Blue and return to shortest path
forwarding. However, this option always terminates the SR-tunnel
corresponding to an MRT path at the MRT egress, the packets will
leave the MRT path and continue to be forwarded according to the
default topology-scoped SR label or IP header. There is no MRT
specific perfix-sid in this option to create MRT specific SR LIB
entry. Other considerations see "section 3. interoperation".
2.1.4. Prefixes Multiply Attached to the MRT Island
This option will use tunnel endpoint selection approach to protection
for both multihomed prefix (outside the area) and destinations
outside the MRT Island (but inside the area). The forwarding
behavior for these prefixes and ones that inside the MRT Island are
totally same.
2.1.5. FIB examples
A node S in the MRT Island will maintain the following FTN entry for
a destination prefix: (suppose that the primary nexthop is F, and the
MRT-red path is N1-N2-N3 that is used to protect the primary
nexthop.)
example 1
KEY: MT-ID 0, prefix
Primary NHLFE: F, SRGB_F[prefix-sid]
According to adjacency segment list, the backup NHLFE would be:
Backup NHLFE: N1, adj-sid-N1toN2 ;outermost label
adj-sid-N2toN3
SRGB_N3[prefix-sid]
According to node segment list, the backup NHLFE would be:
Backup NHLFE: N1, SRGB_N1[N1-sid] ;outermost label
SRGB_N1[N2-sid]
SRGB_N2[N3-sid]
SRGB_N3[prefix-sid]
Peng & Chen Expires March 2, 2017 [Page 6]
Internet-Draft MRT using SR August 2016
Also, a LIB entry for FEC (MT-ID 0, prefix) is as the following:
example 2
KEY: SRGB_S[prefix-sid]
Primary NHLFE: F, SRGB_F[prefix-sid]
According to adjacency segment list, the backup NHLFE would be:
Backup NHLFE: N1, adj-sid-N1toN2 ;outermost label
adj-sid-N2toN3
SRGB_N3[prefix-sid]
According to node segment list, the backup NHLFE would be:
Backup NHLFE: N1, SRGB_N1[N1-sid] ;outermost label
SRGB_N1[N2-sid]
SRGB_N2[N3-sid]
SRGB_N3[prefix-sid]
2.2. Option 2: MRT SR-LSP Tunneling with multi-prefix-sid Option
This Option will allocate a different FEC-label binding for each of
the three topology-scoped FECs, i.e. default-FEC, red-FEC, blue-FEC,
originated by routers inside the MRT Island. For example, When a
packet is received with an SR label corresponding to red-FEC, an MRT
transit router will determine the next hop for the MRT-Red forwarding
topology for that FEC, swap the incoming SR label with the outgoing
SR label corresponding to the MRT-Red next-hop router, and forward
the packet.
The above FEC-label binding is caculated by prefix-sid for each of
the three topology-scoped prefixes depending on default topology-
scoped SRGB. Each router inside the MRT Island supporting this
option will allocate three node-sids, i.e. default-node-sid, red-
node-sid, blue-node-sid. In fact, We only need allocate node-sid for
each of the three topology-scoped Node-flag prefixes for each router
inside the MRT Island. Other prefixes inside the MRT Island could
also be allocated the corresponding MRT topology-scoped prefix-sids
besides the default topology-scoped prefix-sid, but it is not
necessary for this option. And, prefixes outside the MRT Island,
especially outside the area/level, need never allocate MRT topology-
scoped prefix-sids, as a simple reason is that routers outsid the MRT
Island have no idea about the MRT Island. Packets to the later two
class prefixes could be tunneled in the SR-LSP to the tunnel endpoint
which is inside the MRT Island. The MRT specific prefix-sid MUST
only be advertised intra the area which the MRT Island belongs to.
Note that we can support tunneling traffic along an MRT to a tunnel
endpoint that is not the destination of the traffic.
Peng & Chen Expires March 2, 2017 [Page 7]
Internet-Draft MRT using SR August 2016
____
[F]---{____}................[D]
| .
| .
| . for node N3:
[S]---[N1]---[N2]---[N3]...... MT-default node-sid: 30
=======================> MT-red node-sid:31
MRT-Red path MT-blue node-sid:32
Figure 2: MRT SR-LSP Tunneling with multi-prefix-sid
Forwarding Mechanism
In Figure 2 above, supposed that the MRT-Red path is S-N1-N2-N3,
which is used to protect the default primary nexthop F to destination
D. Packets could be pushed to the SR LSP destinated to N3 with label
computed by MT-red node-sid 31 when the primary nexthop F is failed.
In MT-red topology there is an LSP build from ingress S to egress N3.
2.2.1. Forwarding SR Label Unicast Traffic over MRT Paths
When a PLR receives an SR label packet that matches a LIB entry
corresponding to a Node-flag prefix inside the MRT Island, and needs
to be forwarded on the MRT-Red (for example), it does a label swap
operation, replacing the incoming SR label for the FEC with the MRT-
Red SR label for that FEC received from the next-hop router in the
MRT-Red computed by the PLR. MRT transit router will determine the
next hop for the MRT-Red forwarding topology for that FEC, swap the
incoming MRT SR label with the outgoing MRT SR label learned from the
MRT-Red next-hop router, and forward the packet.
When a PLR receives an SR label packet that matches a LIB entry
corresponding to a prefix without Node-flag inside the MRT Island, or
a prefix outside the MRT Island, and needs to be forwarded on the
MRT-Red (for example) path to a tunnel endpoint inside the MRT
Island, it first does a label swap operation, replacing the incoming
SR label assigned by the PLR for the FEC with the SR label assigned
by the tunnel endpoint for that FEC, then pushes the MRT-Red SR label
to the tunnel endpoint. The packet will forward to the tunnel
endpoint (also MRT egress), then leave the MRT path to the shortest
path to the destination.
2.2.2. Forwarding IP Unicast Traffic over MRT Paths
When a PLR receives an IP packet that matches an FTN entry
corresponding to a Node-flag prefix inside the MRT Island, and needs
to be forwarded on the MRT-Red (for example), it does a label push
operation, pushing the MRT-Red SR label for that FEC received from
the next-hop router in the MRT-Red computed by the PLR. MRT transit
Peng & Chen Expires March 2, 2017 [Page 8]
Internet-Draft MRT using SR August 2016
router will determine the next hop for the MRT-Red forwarding
topology for that FEC, swap the incoming MRT SR label with the
outgoing MRT SR label learned from the MRT-Red next-hop router, and
forward the packet.
When a PLR receives an IP label packet that matches an FTN entry
corresponding to a prefix without Node-flag inside the MRT Island, or
a prefix outside the MRT Island, and needs to be forwarded on the
MRT-Red (for example) path to a tunnel endpoint inside the MRT
Island, it first pushes the SR label assigned by the tunnel endpoint
for that FEC, then pushes the MRT-Red SR label to the tunnel
endpoint. The packet will forward to the tunnel endpoint (also MRT
egress), then leave the MRT path to the shortest path to the
destination.
2.2.3. Inter-area Forwarding Behavior
This option always terminates the SR-LSP corresponding to an MRT path
at the MRT egress, the packets will leave the MRT path and continue
to be forwarded according to the default topology-scoped SR label or
IP header. Although ABR will compute the MRT specific SR LIB for an
MRT specific prefix-sid corresponding to a destination prefix with
Node-flag inside the MRT Island that the ABR belongs to, the MRT
specific prefix-sid will never leak to another area. It is
impossible for the ABR to receive packets, from one area, containing
an MRT specific SR label to the destination prefix which belongs to
another area. Other considerations see "section 3. interoperation".
2.2.4. Prefixes Multiply Attached to the MRT Island
This option will use tunnel endpoint selection approach to protection
for both multihomed prefix (outside the area) and destinations
outside the MRT Island (but inside the area). The forwarding
behavior for these prefixes and ones without Node-flag that inside
the MRT Island are totally same.
2.2.5. FIB examples
A node S in the MRT Island will maintain the following FTN entry for
a destination Node-flag prefix inside the MRT Island: (suppose that
the primary nexthop is F, and the MRT-red path is N1-N2-N3 that is
used to protect the primary nexthop.)
example 1
KEY: MT-ID 0, prefix
Primary NHLFE: F, SRGB_F[default-prefix-sid]
Backup NHLFE: N1, SRGB_N1[red-prefix-sid]
Peng & Chen Expires March 2, 2017 [Page 9]
Internet-Draft MRT using SR August 2016
Also, a LIB entry for FEC (MT-ID 0, prefix) is as the following:
example 2
KEY: SRGB_S[default-prefix-sid]
Primary NHLFE: F, SRGB_F[default-prefix-sid]
Backup NHLFE: N1, SRGB_N1[red-prefix-sid]
Nodes along the above MRT-red path will maintain the red SR LIB
entry. For example, a LIB entry for FEC (MT-red, prefix) in N1 node
is as the following:
example 3
KEY: SRGB_N1[red-prefix-sid]
NHLFE: N2, SRGB_N2[red-prefix-sid]
Node S can also maintain the following FTN entry for a destination
prefix without Node-flag inside the MRT Island or a destination
prefix outside the MRT Island: (suppose that the primary nexthop is
F, and the MRT-red path is N1-N2-N3 that is used to protect the
primary nexthop.)
example 4
KEY: MT-ID 0, prefix
Primary NHLFE: F, SRGB_F[default-prefix-sid]
Backup NHLFE: N1, SRGB_N1[red-N3-sid] ;outermost label
SRGB_N3[default-prefix-sid]
Also, a LIB entry for FEC (MT-ID 0, prefix) is as the following:
example 5
KEY: SRGB_S[default-prefix-sid]
Primary NHLFE: F, SRGB_F[default-prefix-sid]
Backup NHLFE: N1, SRGB_N1[red-N3-sid] ;outermost label
SRGB_N3[default-prefix-sid]
2.3. Option 3: MRT SR-LSP Tunneling with multi-SRGB Option
This Option will allocate a different FEC-label binding for each of
the three topology-scoped FECs, i.e. default-FEC, red-FEC, blue-FEC,
originated by routers inside the MRT Island. For example, When a
packet is received with an SR label corresponding to red-FEC, an MRT
transit router will determine the next hop for the MRT-Red forwarding
topology for that FEC, swap the incoming SR label with the outgoing
Peng & Chen Expires March 2, 2017 [Page 10]
Internet-Draft MRT using SR August 2016
SR label corresponding to the MRT-Red next-hop router, and forward
the packet.
The above FEC-label binding is caculated by prefix-sid for the
default topology-scoped prefix depending on each topology-scoped
SRGBs. Each router inside the MRT Island supporting this option will
assign three SRGBs, i.e. default-SRGB, red-SRGB, blue-SRGB. In fact,
We only need caculate MRT SR labels for Node-flag prefixes for each
router inside the MRT Island. Other prefixes inside the MRT Island
and all prefixes outside the MRT Island could also caculate the MRT
SR labels depending on the MRT topology-scoped SRGBs besides the
default SR label depending on the default topology-scoped SRGB, but
it is not necessary for this option. Packets to the later two class
prefixes could be tunneled in the SR-LSP to the tunnel endpoint which
is inside the MRT Island.
The details of advertising SRGB per multi-topology will be described
in the related IGP extension document. The MRT specific SRGB MUST
only be advertised intra the area which the MRT Island belongs to.
Note that we can support tunneling traffic along an MRT to a tunnel
endpoint that is not the destination of the traffic.
____
[F]---{____}................[D]
| .
| .
| . for node N3:
[S]---[N1]---[N2]---[N3]...... MT-default SRGB:[100~200]
=======================> MT-red SRGB:[201~300]
MRT-Red path MT-blue SRGB:[301~400]
Figure 3: MRT SR-LSP Tunneling with multi-SRGB
Forwarding Mechanism
In Figure 3 above, supposed that the MRT-Red path is S-N1-N2-N3,
which is used to protect the default primary nexthop F to destination
D. Packets could be pushed to the SR LSP destinated to N3 with label
computed by MT-red SRGB when the primary nexthop F is failed. In MT-
red topology there is an LSP build from ingress S to egress N3.
2.3.1. Forwarding SR Label Unicast Traffic over MRT Paths
Same as section 2.2.1.
Peng & Chen Expires March 2, 2017 [Page 11]
Internet-Draft MRT using SR August 2016
2.3.2. Forwarding IP Unicast Traffic over MRT Paths
Same as section 2.2.2.
2.3.3. Inter-area Forwarding Behavior
This option always terminates the SR-LSP corresponding to an MRT path
at the MRT egress, the packets will leave the MRT path and continue
to be forwarded according to the default topology-scoped SR label or
IP header. Suppose that area1 connects area2 by an ABR, MRT Island 1
is created inside area1 and MRT Island 2 inside area2. Although the
ABR will compute the MRT specific SR LIB, according to specific MRT
SRGB, for a destination prefix with Node-flag inside the MRT Island 2
that the ABR belongs to, a PLR also supporting this option inside the
MRT Island 1 will never compute the MRT specific SR LIB for this
prefix. It is impossible for the ABR to receive packets, from one
area, containing an MRT specific SR label to the destination prefix
which belongs to another area, if both MRT Islands support the same
option. Other considerations see "section 3. interoperation".
2.3.4. Prefixes Multiply Attached to the MRT Island
This option will use tunnel endpoint selection approach to protection
for both multihomed prefix (outside the area) and destinations
outside the MRT Island (but inside the area). The forwarding
behavior for these prefixes and ones without Node-flag that inside
the MRT Island are totally same.
2.3.5. FIB examples
A node S in the MRT Island will maintain the following FTN entry for
a destination Node-flag prefix inside the MRT Island: (suppose that
the primary nexthop is F, and the MRT-red path is N1-N2-N3 that is
used to protect the primary nexthop.)
example 1
KEY: MT-ID 0, prefix
Primary NHLFE: F, default_SRGB_F[prefix-sid]
Backup NHLFE: N1, red_SRGB_N1[prefix-sid]
Also, a LIB entry for FEC (MT-ID 0, prefix) is as the following:
example 2
KEY: default_SRGB_S[prefix-sid]
Primary NHLFE: F, default_SRGB_F[prefix-sid]
Backup NHLFE: N1, red_SRGB_N1[prefix-sid]
Peng & Chen Expires March 2, 2017 [Page 12]
Internet-Draft MRT using SR August 2016
Nodes along the above MRT-red path will maintain the red SR LIB
entry. For example, a LIB entry for FEC (MT-red, prefix) in N1 node
is as the following:
example 3
KEY: red_SRGB_N1[prefix-sid]
NHLFE: N2, red_SRGB_N2[prefix-sid]
Node S can also maintain the following FTN entry for a destination
prefix without Node-flag inside the MRT Island or a destination
prefix outside the MRT Island: (suppose that the primary nexthop is
F, and the MRT-red path is N1-N2-N3 that is used to protect the
primary nexthop.)
example 4
KEY: MT-ID 0, prefix
Primary NHLFE: F, default_SRGB_F[prefix-sid]
Backup NHLFE: N1, red_SRGB_N1[N3-sid] ;outermost label
default_SRGB_N3[prefix-sid]
Also, a LIB entry for FEC (MT-ID 0, prefix) is as the following:
example 5
KEY: default_SRGB_S[prefix-sid]
Primary NHLFE: F, default_SRGB_F[prefix-sid]
Backup NHLFE: N1, red_SRGB_N1[N3-sid] ;outermost label
default_SRGB_N3[prefix-sid]
2.4. Option 4: MRT SR-LSP Non-tunneling with multi-SRGB Option
This Option will allocate a different FEC-label binding for each of
the three topology-scoped FECs, i.e. default-FEC, red-FEC, blue-FEC,
originated by any routers in the SR domain. For example, When a
packet is received with an SR label corresponding to red-FEC, an MRT
transit router will determine the next hop for the MRT-Red forwarding
topology for that FEC, swap the incoming SR label with the outgoing
SR label corresponding to the MRT-Red next-hop router, and forward
the packet.
The above FEC-label binding is caculated by prefix-sid for the
default topology-scoped prefix depending on each topology-scoped
SRGBs. Each router inside the MRT Island supporting this option will
assign three SRGBs, i.e. default-SRGB, red-SRGB, blue-SRGB.
Difference between this option and the option described in section
Peng & Chen Expires March 2, 2017 [Page 13]
Internet-Draft MRT using SR August 2016
2.3 is that we create MRT SR-LSP for every destination prefix, not
only for Node-flag prefix inside the MRT Island.
Note that we only need to allocate and advertise default topology-
scoped prefix-sid in the SR domain, there are no red and blue
topology-scoped prefix-sids. But we need to advertise topology-
scoped SRGBs, i.e. default-SRGB, red-SRGB, blue-SRGB, respectively
intra the area.
The details of advertising SRGB per multi-topology will be described
in the related IGP extension document. The MRT specific SRGB MUST
only be advertised intra the area which the MRT Island belongs to.
____
[F]---{____}................[D]
| .
| .
| . for node N3:
[S]---[N1]---[N2]---[N3]...... MT-default SRGB:[100~200]
=======================> MT-red SRGB:[201~300]
MRT-Red path MT-blue SRGB:[301~400]
Figure 4: MRT SR-LSP Tunneling with multi-SRGB
Forwarding Mechanism
In Figure 4 above, supposed that the MRT-Red path is S-N1-N2-N3,
which is used to protect the default primary nexthop F to destination
D. Packets could be pushed to the SR LSP destinated to D with label
computed by MT-red SRGB when the primary nexthop F is failed. In MT-
red topology there is an LSP build from ingress S to egress D, at
node N3, the incoming label is computed by its own MT-red SRGB, the
outgoing label is computed by next-hop's MT-default SRGB.
2.4.1. Forwarding SR Label Unicast Traffic over MRT Paths
When a PLR receives an SR label packet that needs to be forwarded on
the MRT-Red (for example), it does a label swap operation, replacing
the incoming SR label for the FEC with the MRT-Red SR label for that
FEC received from the next-hop router in the MRT-Red computed by the
PLR. MRT transit router will determine the next hop for the MRT-Red
forwarding topology for that FEC, swap the incoming MRT SR label with
the outgoing MRT SR label learned from the MRT-Red next-hop router,
and forward the packet.
Peng & Chen Expires March 2, 2017 [Page 14]
Internet-Draft MRT using SR August 2016
2.4.2. Forwarding IP Unicast Traffic over MRT Paths
When a PLR receives an IP packet that needs to be forwarded on the
MRT-Red (for example), it does a label push operation, pushing the
MRT-Red SR label for the FEC received from the next-hop router in the
MRT-Red computed by the PLR. MRT transit router will determine the
next hop for the MRT-Red forwarding topology for that FEC, swap the
incoming MRT SR label with the outgoing MRT SR label learned from the
MRT-Red next-hop router, and forward the packet.
2.4.3. Inter-area Forwarding Behavior
For OSPF, the ABR is responsible for advertising the proper prefix-
sid to each neighbor. Assume that an ABR has allocated a default
topology-scoped prefix-sid for a particular destination. To those
routers in the same area as the best route to the destination, the
ABR advertises the prefix-sid as normal. However, to routers in
other areas, the ABR advertises the prefix-sid with Rainbow-Flag.
Prefix-sid with Rainbow-Flag causes the receiving routers to use
default-SRGB of the next-hop to caculate SR out-label for the MRT-
Blue MT-ID and for the MRT-Red MT-ID. The details of advertising
prefix-sid with Rainbow-Flag will be described in another document.
The ABR installs all next hops for the best area: primary next hops
for default-SRGB, MRT-Blue next hops for blue-SRGB, and MRT-Red next
hops for red-SRGB. Because the ABR advertised prefix-sid with
Rainbow-Flag to neighbors not in the best area, packets from those
neighbors will arrive at the ABR with a label caculated by default-
SRGB of the ABR and will be forwarded into the best area along the
default topology. Other considerations see "section 3.
interoperation".
The same essential behavior also applies to IS-IS if one substitutes
IS-IS level for OSPF area. More details see "Appendix A" of
[RFC7812].
2.4.4. Prefixes Multiply Attached to the MRT Island
This option will use named proxy-node approach to protection for both
multihomed prefix (outside the area) and destinations outside the MRT
Island (but inside the area).
According to [RFC7812], a proxy-node attachment router has a special
forwarding role. A proxy-node attachment router is similar with
other routers in the MRT Island to compute and install three ILM
entries for each (MT-ID 0, perfix) outside the MRT Island based on
three different FEC-label bindings. In particular, it will compute
SR out-label, for MRT SR ILM, based on the default-SRGB of the LFIN
Peng & Chen Expires March 2, 2017 [Page 15]
Internet-Draft MRT using SR August 2016
whose cost was used in the selection or the remote endpoint of the
interface that caused the router to advertise the prefix. However,
it will always compute SR out-label based on the default-SRGB of the
shortest path nexthop for default SR ILM.
Note that if the proxy-node attachment router is an ABR, and it also
belongs to another MRT Island supporting this option in the area
which the destination prefix belongs to. It will compute SR out-
label, for MRT SR ILM, based on the red-SRGB or blue-SRGB of the MRT-
red or MRT blue nexthops, in despite of whether or not advertising
the destination prefix to another area. In this case, we can refer
to section "2.4.3. Inter-area Forwarding Behavior".
When a packet is received destined to (MRT-Red, prefix) or (MRT-Blue,
prefix), if the proxy-node attachment router is an IBR, it MUST swap
to the shortest path forwarding topology (e.g., swap to the label
caculated by default-SRGB of the IN) and forward the packet to the IN
whose cost was used in the selection. If the proxy-node attachment
router is not an IBR, then the packet MUST be removed from the MRT
forwarding topology and sent along the interface(s) that caused the
router to advertise the prefix; this interface might be out of the
area/level/AS.
2.4.5. FIB examples
A node S in the MRT Island will maintain the following FTN entry for
a destination prefix: (suppose that the primary nexthop is F, and the
MRT-red path is N1-N2-N3 that is used to protect the primary
nexthop.)
example 1
KEY: MT-ID 0, prefix
Primary NHLFE: F, default_SRGB_F[prefix-sid]
Backup NHLFE: N1, red_SRGB_N1[prefix-sid]
Also, a LIB entry for FEC (MT-ID 0, prefix) is as the following:
example 2
KEY: default_SRGB_S[prefix-sid]
Primary NHLFE: F, default_SRGB_F[prefix-sid]
Backup NHLFE: N1, red_SRGB_N1[prefix-sid]
Nodes along the above MRT-red path will maintain the red SR LIB
entry. For example, a LIB entry for FEC (MT-red, prefix) in N1 node
is as the following:
Peng & Chen Expires March 2, 2017 [Page 16]
Internet-Draft MRT using SR August 2016
example 3
KEY: red_SRGB_N1[prefix-sid]
NHLFE: N2, red_SRGB_N2[prefix-sid]
In particular, if S is a proxy-node attachment router, and suppose
that the LFIN whose cost was used in the selection or the remote
endpoint of the interface that caused S to advertise the prefix is M,
the FTN entry maintained by S would be like the following:
example 4
KEY: MT-ID 0, prefix
Primary NHLFE: F, default_SRGB_F[prefix-sid]
Backup NHLFE: M, default_SRGB_M[prefix-sid]
Also, the LIB entry for FEC (MT-ID 0, prefix) maintained by S would
be like the following:
example 5
KEY: default_SRGB_S[prefix-sid]
Primary NHLFE: F, default_SRGB_F[prefix-sid]
Backup NHLFE: M, default_SRGB_M[prefix-sid]
Also, the LIB entry for FEC (MT-red, prefix) maintained by S would be
like the following:
example 6
KEY: red_SRGB_S[prefix-sid]
NHLFE: M, default_SRGB_M[prefix-sid]
As notice in section 2.4.4, when S is a proxy-node attachment router
and an ABR, and it also belongs to another MRT Island supporting this
option in the area which the destination prefix belongs to. S will
maintain FTN/LIB entries just like example 1,2,3, in despite of
whether or not advertising the destination prefix to another area.
When S has received the the prefix-sid advertisement corresponding to
(MT-ID 0, prefix) with a Rainbow-Flag from its MRT-red nexthop (an
ABR), it will maintain the FTN entry as the following:
example 7
KEY: MT-ID 0, prefix
Primary NHLFE: F, default_SRGB_F[prefix-sid]
Backup NHLFE: ABR, default_SRGB_ABR[prefix-sid]
Peng & Chen Expires March 2, 2017 [Page 17]
Internet-Draft MRT using SR August 2016
Also, a LIB entry for FEC (MT-ID 0, prefix) is as the following:
example 8
KEY: default_SRGB_S[prefix-sid]
Primary NHLFE: F, default_SRGB_F[prefix-sid]
Backup NHLFE: ABR, default_SRGB_ABR[prefix-sid]
Also, a LIB entry for FEC (MT-red, prefix) is as the following:
example 9
KEY: red_SRGB_S[prefix-sid]
NHLFE: ABR, default_SRGB_ABR[prefix-sid]
2.5. Option 5: MRT SR-LSP Non-tunneling with multi-prefix-sid Option
This Option will allocate a different FEC-label binding for each of
the three topology-scoped FECs, i.e. default-FEC, red-FEC, blue-FEC,
originated by any routers in the SR domain. For example, When a
packet is received with an red SR label corresponding to red-FEC, an
MRT transit router will determine the next hop for the MRT-Red
forwarding topology for that FEC, swap the incoming red SR label with
the outgoing red SR label corresponding to the MRT-Red next-hop
router, and forward the packet.
Difference between this option and the option described in section
2.2 is that we create MRT SR-LSP for every destination prefix, not
only for prefix with Node-flag inside the MRT Island. However, this
option can not address the destination prefixes which are outside the
MRT Island, especially outside the area/level, because routers outsid
the MRT Island have no idea about the MRT Island. It is impossible
for these routers to allocate the red or blue topology-scoped prefix-
sids, besides the default topology-scoped prefix-sid. Anorhter
reason is that an MRT specific prefix-sid can never leak between
areas.
This option is waiting for future study.
3. Interoperation
It is possible that a set of routers inside an area support two or
more options at the same time. It is also possible that one set of
routers, supporting one option, interconnect another set of routers
that support another option, both sets could be in the same area or
not. More detailed descriptions of these sceneria are given below.
Peng & Chen Expires March 2, 2017 [Page 18]
Internet-Draft MRT using SR August 2016
3.1. Multiple Profiles Coexistence
[S]---[F]---............[D]
| |
....|.......................|....
. [N1]---[N2]---[N3] .
. | | | .
. [N4]---[N5]---[N6] .
. | | | .
. [N7]---[N8]---[N9] .
. | | | .
. [N10]---[N11]---[N12] .
.................................
Figure 5: Multiple Profiles Coexistence
In Figure 5 above, the shortest path nexthop from S to D is F. S, D,
N1, N2, and N3 support the above all profiles. N4, N5, and N6
support profile with "MRT SR-LSP Tunneling with multi-prefix-sid
Option" forwarding mechanism only. N7, N8, and N9 support profile
with "MRT SR-LSP Tunneling with multi-SRGB Option" forwarding
mechanism only. N10, N11, and N12 support profile with "MRT SR-LSP
Non-tunneling with multi-SRGB Option" forwarding mechanism only. So,
there would be four MRT Islands in Figure 1. For each MRT Island,
suppose that the MRT-red nexthop from S to D is same as the shortest
path nexthop, i.e., F, the MRT-blue nexthop from S to D is Ni.
Specifically, the MRT-blue nexthop is N1 for MRT Island with "MRT SR-
tunnel Option" forwarding mechanism, the MRT-blue nexthop is ECMP
{N1,N4} for MRT Island with "MRT SR-LSP Tunneling with multi-prefix-
sid Option" forwarding mechanism, the MRT-blue nexthop is ECMP
{N1,N7} for MRT Island with "MRT SR-LSP Tunneling with multi-SRGB
Option" forwarding mechanism, the MRT-blue nexthop is ECMP {N1,N10}
for MRT Island with "MRT SR-LSP Non-tunneling with multi-SRGB Option"
forwarding mechanism.
From the perspective of node S, the FTN entry to D corresponding to
each MRT Island is different with each other, e.g., some have single
MRT-blue nexthop, some have ECMP MRT-blue nexthops. These FTN
entries MUST be distinguished by different MT-IDs.
From the perspective of node N1 (also other transit node), the ILM
entry to D corresponding to each MRT Island is also different with
each other. These ILM entries MUST be distinguished by different SR
in-label. Take a look at profile with "MRT SR-LSP Tunneling with
multi-SRGB Option" forwarding mechanism and profile with "MRT SR-LSP
Non-tunneling with multi-SRGB Option" forwarding mechanism, they both
use MRT specific SRGB to caculate MRT specific SR label for a default
topology-scoped prefix-sid. The MRT specific SRGB MUST be different
Peng & Chen Expires March 2, 2017 [Page 19]
Internet-Draft MRT using SR August 2016
between these two profiles. For the same reason, the MRT specific
prefix-sid MUST be different between the profile with "MRT SR-LSP
Tunneling with multi-prefix-sid Option" forwarding mechanism and the
profile with "MRT SR-LSP Non-tunneling with multi-prefix-sid Option"
forwarding mechanism.
3.2. Multiple Profiles Interworking
[S]-------------[A] [P]-------------[D]
| \ / |
| \ / |
| MRT Island 1 [X] MRT Island 2 |
| / \ |
| / \ |
[B] -------------[C] [Q] ------------[R]
Figure 6: Multiple Profiles Interworking
In Figure 6 above, MRT Island 1 contains S, A, B, C, X, MRT Island 2
contains X, P, Q, R, D. If MRT Island 1 is supporting the profile
with "MRT SR-tunnel Option" forwarding mechanism, MRT Island 2 could
be any other profiles. The packets to from S to destination D will
terminate the SR-tunnel corresponding to an MRT path at node X, then
return to shortest path to D.
If MRT Island 1 is supporting the profile with "MRT SR-LSP Tunneling
with multi-prefix-sid Option" or "MRT SR-LSP Tunneling with multi-
SRGB Option" forwarding mechanism, MRT Island 2 could also be any
other profiles. The packets to from S to destination D will
terminate the MRT specific SR-LSP corresponding to an MRT path at
node X, then return to shortest path to D. Note that each node in
MRT Island 1 never compute MRT specific SR LIB for destination D
which is outside MRT Island 1, although X in MRT Island 2 maybe
compute it. X will never receive a packet, from MRT Island 1, which
includes an MRT specific SR label directly to destination D.
If MRT Island 1 is supporting the profile with "MRT SR-LSP Non-
tunneling with multi-SRGB Option" forwarding mechanism, each node in
MRT Island 1 will compute MRT specific SR LIB for destination D
directly. Especially, in node X, i.e., the proxy-node attachment
router, the MRT specific SR LIB computed for destination D will
forward packets to default topology. Hence, if MRT Island 2 is also
supporting the profile with "MRT SR-LSP Non-tunneling with multi-SRGB
Option" forwarding mechanism, X will also compute MRT specific SR LIB
for destination D which will forward packets along MRT path,
overwrite the above default topology forwarding information. In this
case, X MUST advertise prefix-sid with Rainbow flag corresponding to
(MT-ID 0, prefix-D) to neighbors in MRT Island 1, in order to avoid
Peng & Chen Expires March 2, 2017 [Page 20]
Internet-Draft MRT using SR August 2016
receiving packets including an MRT specific SR label for destination
D. If MRT Island 2 is supporting "MRT SR-LSP Tunneling with multi-
SRGB Option" forwarding mechanism, X will also compute MRT specific
SR LIB for destination D which will forward packets along MRT path,
but in-label is different because of different MRT specific SRGB.
4. Support protecting segment list
As RFC7811 said, in some cases the PLR S can not find MRT alternates
to destination D for local repair to protect the primary nexthop F.
For example, if F is D, only link protection is possible. And if
both MRT-Red and MRT-Blue use the primary next hop, then the primary
next hop must be a cut-link, so either MRT could be pruned to avoid
the failed primary next-hop interface.
Thus, if S received a packet which contains a segment list only
including node segment F, we just comply with the MRT computing
result for destination F, try best to forward packet along the MRT
path which has not use the primary next hop. But if S received a
packet which contains a segment list not only including node segment
F as the first segment, but also other subsequent segments, S can
temporarily change the destination to another node D' rather than F,
and send packet along the MRT path to destination D'. A simple
condition which decided to set another destination D' is that the
original destination is a direct neighbor of S. We can easily check
this condition during computing SPF routes, and set the related flag
in the corresponding FTN/ILM entries. In dataplane, if the top label
of the label stack of the packet S received matches an SR-ILM entry
which has set the above flag to indicate the FEC is from a direct
nighbor and the primary next hop of the ILM entry is failed, in
despite of alternate next hops (e.g, MRT alternates) existing, S MAY
check if the next label of the label stack is also an SR-based label,
if so, deduce the next node-segment and directly forward the packet
to the next node-segment according to the FTN/ILM entry corresponding
to the next node-segment after twice label POP operations on the
original label stack. However, S can also simply choose to forward
packets along the alternate next hops of ILM entry corresponding to
the first segment to avoid the aboved complexities. It is a local
choice.
Similarly, if the top label of the label stack of the packet S
received matches an SR-ILM entry corresponding to a local adjacency
segment, S MAY also do the above check and process if the adjacency
is failed, and can also simply choose to forward packets along the
backup adjacencies. It is also a local choice.
It's a bit complicated for the dataplane to deduce the next node-
segment based on the label stack of the received packet. First, It
Peng & Chen Expires March 2, 2017 [Page 21]
Internet-Draft MRT using SR August 2016
can deduce the first node-segment (i.e., F) based on the SR-ILM entry
matched by the top label, the node information can get from the
prefix FEC (F) or from the remote node-id of the adjacency FEC
(S->F). Then, we can get the SRGB of the first node-segment (i.e.,
SRGB_F), and check if the next label is in SRGB_F, if so, we know
that the next segment is a prefix segment and deduce the prefix-sid,
which is then used to compute a label based on SRGB_S to match the
ILM entry correspond to the next node-segment. If the next label is
not in SRGB_F, S can check all F's local adjacencies to see if there
is a label equal to the next label, if so, we know that the next
segment is an adjacency segment and deduce the next node-segment from
the remote node-id of the matched adjacency, and an FTN entry could
be match by the next node-segment. Note that S can maintain ILM
entries for F's all local adjacencies for the above purpose, although
these ILM entries are not used to forward packets directly. The FTN
or ILM entry of the next segment could be used to directly forward
the packet to the next node-segment after twice label POP operations
on the original label stack. If the next label is neither in SRGB_F
nor matching F's any local adjacencies, it must be a non-SR label, in
this case, packets must be simply forwarded along the alternate next
hops of ILM entry corresponding to the first segment, if there are no
alternate next hops, packets would be dropped.
All possible cases are systematically described in the following
sections.
4.1. Received segment list is {segment F or S->F, vpn label} or
{segment F or S->F}
We can determine that only one SR related label existed in label
stack, and the segment is a direct neighbor along the shortest path.
In this case, only link protection is possible.
For MRT forwarding mechanism option 1, the MRT-FRR behavior is:
POP segment F or S->F
set D' = F, goto FTN entry of D', it will:
PUSH SRGB_E[SID_F] ;E is MRT Egress
PUSH the label stack of the SR-tunnel(from S to MRT Egress)
For MRT forwarding mechanism option 2, the MRT-FRR behavior is:
POP segment F or S->F
set D' = F, goto FTN entry of D', it will:
when F is inside MRT Island:
PUSH SRGB_N[mrt_SID_F] ;N is MRT Nexthop
when F is outside MRT Island:
no MRT FRR provided
Peng & Chen Expires March 2, 2017 [Page 22]
Internet-Draft MRT using SR August 2016
For MRT forwarding mechanism option 3, the MRT-FRR behavior is:
POP segment F or S->F
set D' = F, goto FTN entry of D', it will:
when F is inside MRT Island:
PUSH mrt_SRGB_N[SID_F]
when F is outside MRT Island:
no MRT FRR provided
For MRT forwarding mechanism option 4, the MRT-FRR behavior is:
POP segment F or S->F
set D' = F, goto FTN entry of D', it will:
when S is not the proxy-node attachment router:
no_rainbow:PUSH mrt_SRGB_N[SID_F]
rainbow:PUSH default_SRGB_N[SID_F]
when S is the proxy-node attachment router:
no MRT FRR provided
4.2. Received segment list is {segment F or S->F, segment D1 or F->D1,
segment D2, ..., segment Dn, vpn label}
The first segment is a direct neighbor along the shortest path,
followed by other segments.
For MRT forwarding mechanism option 1, the MRT-FRR behavior is:
POP segment F or S->F
POP segment D1 or F->D1
change D'from F to D1, goto FTN or ILM entry of D', it will:
when primary next hop for destination D' is valid:
PUSH SRGB_H[SID_D1] ;H is primary next hop
when primary next hop for destination D' is not valid::
PUSH SRGB_E[SID_D1], ;E is MRT Egress
PUSH label stack of the SR-tunnel(from S to MRT Egress)
For MRT forwarding mechanism option 2, the MRT-FRR behavior is:
Peng & Chen Expires March 2, 2017 [Page 23]
Internet-Draft MRT using SR August 2016
POP segment F or S->F
POP segment D1 or F->D1
change D'from F to D1, goto FTN or ILM entry of D', it will:
when primary next hop for destination D' is valid:
PUSH SRGB_H[default_SID_D1]
when primary next hop for destination D' is not valid:
when D1 is inside MRT Island:
PUSH SRGB_N[mrt_SID_D1] ;N is MRT Nexthop
when D1 is outside MRT Island:
PUSH SRGB_E[default_SID_D1]
PUSH SRGB_N[mrt_SID_E]
For MRT forwarding mechanism option 3, the MRT-FRR behavior is:
POP segment F or S->F
POP segment D1 or F->D1
change D'from F to D1, goto FTN or ILM entry of D', it will:
when primary next hop for destination D' is valid:
PUSH default_SRGB_H[SID_D1]
when primary next hop for destination D' is not valid:
when D1 is inside MRT Island:
PUSH mrt_SRGB_N[SID_D1]
when D1 is outside MRT Island:
PUSH default_SRGB_E[SID_D1]
PUSH mrt_SRGB_N[SID_E]
For MRT forwarding mechanism option 4, the MRT-FRR behavior is:
POP segment F or S->F
POP segment D1 or F->D1
change D'from F to D1, goto FTN or ILM entry of D', it will:
when primary next hop for destination D' is valid:
PUSH default_SRGB_H[SID_D1]
when primary next hop for destination D' is not valid:
when S is not the proxy-node attachment router:
no_rainbow:PUSH mrt_SRGB_N[SID_D1]
rainbow:PUSH default_SRGB_N[SID_D1]
when S is the proxy-node attachment router:
PUSH default_SRGB_M[SID_D1] ;M is nexthop outside Island
4.3. Received segment list is {segment D1, segment D2, ..., segment Dn,
vpn label}
The first segment is not a direct neighbor along the shortest path,
followed by other segments.
For MRT forwarding mechanism option 1, the MRT-FRR behavior is:
Peng & Chen Expires March 2, 2017 [Page 24]
Internet-Draft MRT using SR August 2016
set D' = D1, goto ILM entry of D', it will:
swap segment D1, i.e., SRGB_S[SID_D1] with SRGB_E[SID_D1]
;E is MRT Egress
PUSH label stack of the SR-tunnel(from S to MRT Egress)
For MRT forwarding mechanism option 2, the MRT-FRR behavior is:
set D' = D1, goto ILM entry of D', it will:
when D1 is inside MRT Island:
swap segment D1, i.e., SRGB_S[default_SID_D1] with
SRGB_N[mrt_SID_D1] ;N is MRT Nexthop
when D1 is outside MRT Island:
swap segment D1, i.e., SRGB_S[default_SID_D1] with
SRGB_E[default_SID_D1]
PUSH SRGB_N[mrt_SID_E]
For MRT forwarding mechanism option 3, the MRT-FRR behavior is:
set D' = D1, goto ILM entry of D', it will:
when D1 is inside MRT Island:
swap segment D1, i.e., default_SRGB_S[SID_D1] with
mrt_SRGB_N[SID_D1]
when D1 is outside MRT Island:
swap segment D1, i.e., default_SRGB_S[SID_D1] with
default_SRGB_E[SID_D1]
PUSH mrt_SRGB_N[SID_E]
For MRT forwarding mechanism option 4, the MRT-FRR behavior is:
set D' = D1, goto ILM entry of D', it will:
when S is not the proxy-node attachment router:
no_rainbow:swap segment D1, i.e., default_SRGB_S[SID_D1]
with mrt_SRGB_N[SID_D1]
rainbow:swap segment D1, i.e., default_SRGB_S[SID_D1] with
default_SRGB_N[SID_D1]
when S is the proxy-node attachment router:
swap segment D1, i.e., default_SRGB_S[SID_D1] with
default_SRGB_M[SID_D1] ;M is nexthop outside Island
5. Security Considerations
TBD.
6. IANA Considerations
TBD
Peng & Chen Expires March 2, 2017 [Page 25]
Internet-Draft MRT using SR August 2016
7. References
7.1. Normative References
[I-D.ietf-isis-segment-routing-extensions]
Previdi, S., Filsfils, C., Bashandy, A., Gredler, H.,
Litkowski, S., Decraene, B., and J. Tantsura, "IS-IS
Extensions for Segment Routing", draft-ietf-isis-segment-
routing-extensions-07 (work in progress), June 2016.
[I-D.ietf-ospf-segment-routing-extensions]
Psenak, P., Previdi, S., Filsfils, C., Gredler, H.,
Shakir, R., Henderickx, W., and J. Tantsura, "OSPF
Extensions for Segment Routing", draft-ietf-ospf-segment-
routing-extensions-09 (work in progress), July 2016.
[I-D.ietf-spring-segment-routing]
Filsfils, C., Previdi, S., Decraene, B., Litkowski, S.,
and R. Shakir, "Segment Routing Architecture", draft-ietf-
spring-segment-routing-09 (work in progress), July 2016.
[I-D.ietf-spring-segment-routing-mpls]
Filsfils, C., Previdi, S., Bashandy, A., Decraene, B.,
Litkowski, S., Horneffer, M., Shakir, R.,
jefftant@gmail.com, j., and E. Crabbe, "Segment Routing
with MPLS data plane", draft-ietf-spring-segment-routing-
mpls-05 (work in progress), July 2016.
[RFC7811] Enyedi, G., Csaszar, A., Atlas, A., Bowers, C., and A.
Gopalan, "An Algorithm for Computing IP/LDP Fast Reroute
Using Maximally Redundant Trees (MRT-FRR)", RFC 7811,
DOI 10.17487/RFC7811, June 2016,
<http://www.rfc-editor.org/info/rfc7811>.
[RFC7812] Atlas, A., Bowers, C., and G. Enyedi, "An Architecture for
IP/LDP Fast Reroute Using Maximally Redundant Trees (MRT-
FRR)", RFC 7812, DOI 10.17487/RFC7812, June 2016,
<http://www.rfc-editor.org/info/rfc7812>.
7.2. Informative References
[RFC3031] Rosen, E., Viswanathan, A., and R. Callon, "Multiprotocol
Label Switching Architecture", RFC 3031,
DOI 10.17487/RFC3031, January 2001,
<http://www.rfc-editor.org/info/rfc3031>.
Peng & Chen Expires March 2, 2017 [Page 26]
Internet-Draft MRT using SR August 2016
Authors' Addresses
Shaofu Peng
ZTE Corporation
No.68 Zijinghua Road,Yuhuatai District
Nanjing 210012
China
Email: peng.shaofu@zte.com.cn
Ran Chen
ZTE Corporation
No.50 Software Avenue,Yuhuatai District
Nanjing 210012
China
Email: chen.ran@zte.com.cn
Peng & Chen Expires March 2, 2017 [Page 27]