draft-ietf-spring-sr-replication-segment-05.txt   draft-ietf-spring-sr-replication-segment-06.txt 
Network Working Group D. Voyer, Ed. Network Working Group D. Voyer, Ed.
Internet-Draft Bell Canada Internet-Draft Bell Canada
Intended status: Standards Track C. Filsfils Intended status: Standards Track C. Filsfils
Expires: 21 February 2022 R. Parekh Expires: 28 April 2022 R. Parekh
Cisco Systems, Inc. Cisco Systems, Inc.
H. Bidgoli H. Bidgoli
Nokia Nokia
Z. Zhang Z. Zhang
Juniper Networks Juniper Networks
20 August 2021 25 October 2021
SR Replication Segment for Multi-point Service Delivery SR Replication Segment for Multi-point Service Delivery
draft-ietf-spring-sr-replication-segment-05 draft-ietf-spring-sr-replication-segment-06
Abstract Abstract
This document describes the SR Replication segment for Multi-point This document describes the SR Replication segment for Multi-point
service delivery. A SR Replication segment allows a packet to be service delivery. A SR Replication segment allows a packet to be
replicated from a Replication Node to downstream nodes. replicated from a Replication Node to downstream nodes.
Requirements Language Requirements Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
skipping to change at page 1, line 44 skipping to change at page 1, line 44
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at https://datatracker.ietf.org/drafts/current/. Drafts is at https://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on 21 February 2022. This Internet-Draft will expire on 28 April 2022.
Copyright Notice Copyright Notice
Copyright (c) 2021 IETF Trust and the persons identified as the Copyright (c) 2021 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents (https://trustee.ietf.org/ Provisions Relating to IETF Documents (https://trustee.ietf.org/
license-info) in effect on the date of publication of this document. license-info) in effect on the date of publication of this document.
Please review these documents carefully, as they describe your rights Please review these documents carefully, as they describe your rights
skipping to change at page 2, line 27 skipping to change at page 2, line 27
2. Replication Segment . . . . . . . . . . . . . . . . . . . . . 3 2. Replication Segment . . . . . . . . . . . . . . . . . . . . . 3
2.1. SR-MPLS data plane . . . . . . . . . . . . . . . . . . . 4 2.1. SR-MPLS data plane . . . . . . . . . . . . . . . . . . . 4
2.2. SRv6 data plane . . . . . . . . . . . . . . . . . . . . . 5 2.2. SRv6 data plane . . . . . . . . . . . . . . . . . . . . . 5
3. Use Cases . . . . . . . . . . . . . . . . . . . . . . . . . . 5 3. Use Cases . . . . . . . . . . . . . . . . . . . . . . . . . . 5
4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 6 4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 6
5. Security Considerations . . . . . . . . . . . . . . . . . . . 6 5. Security Considerations . . . . . . . . . . . . . . . . . . . 6
6. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 6 6. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 6
7. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 6 7. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 6
8. References . . . . . . . . . . . . . . . . . . . . . . . . . 7 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 7
8.1. Normative References . . . . . . . . . . . . . . . . . . 7 8.1. Normative References . . . . . . . . . . . . . . . . . . 7
8.2. Informative References . . . . . . . . . . . . . . . . . 7 8.2. Informative References . . . . . . . . . . . . . . . . . 8
Appendix A. Illustration of a Replication Segment . . . . . . . 8 Appendix A. Illustration of a Replication Segment . . . . . . . 8
A.1. SR-MPLS . . . . . . . . . . . . . . . . . . . . . . . . . 9 A.1. SR-MPLS . . . . . . . . . . . . . . . . . . . . . . . . . 9
A.2. SRv6 . . . . . . . . . . . . . . . . . . . . . . . . . . 10 A.2. SRv6 . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 12 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 13
1. Introduction 1. Introduction
We define a new type of segment for Segment Routing [RFC8402], called We define a new type of segment for Segment Routing [RFC8402], called
Replication segment, which allows a node (henceforth called as Replication segment, which allows a node (henceforth called as
Replication Node) to replicate packets to a set of other nodes Replication Node) to replicate packets to a set of other nodes
(called Downstream Nodes) in a Segment Routing Domain. Replication (called Downstream Nodes) in a Segment Routing Domain. Replication
segments provide building blocks for Point-to-Multipoint Service segments provide building blocks for Point-to-Multipoint Service
delivery via SR Point-to-Multipoint (SR P2MP) policy. A Replication delivery via SR Point-to-Multipoint (SR P2MP) policy. A Replication
segment can replicate packet to directly connected nodes or to segment can replicate packet to directly connected nodes or to
skipping to change at page 4, line 38 skipping to change at page 4, line 38
Replication segment will not have any Replication State and the Replication segment will not have any Replication State and the
operation is NEXT. At an egress node, the Replication SID MAY be operation is NEXT. At an egress node, the Replication SID MAY be
used to identify that portion of the multi-point service. Notice used to identify that portion of the multi-point service. Notice
that the segment on the leaf node is still referred to as a that the segment on the leaf node is still referred to as a
Replication segment for the purpose of generalization. Replication segment for the purpose of generalization.
A node can be a bud node, i.e. it is a Replication Node and a leaf A node can be a bud node, i.e. it is a Replication Node and a leaf
node of a multi-point service at the same time node of a multi-point service at the same time
[I-D.ietf-pim-sr-p2mp-policy]. [I-D.ietf-pim-sr-p2mp-policy].
There MUST not be any topological SID after a Replication SID in a
packet. Otherwise, the behavior at Downstream nodes of a Replication
segment is undefined and outside the scope of this document.
2.1. SR-MPLS data plane 2.1. SR-MPLS data plane
When the Active Segment is a Replication SID, the processing results When the Active Segment is a Replication SID, the processing results
in a POP operation and lookup of the associated Replication state. in a POP operation and lookup of the associated Replication state.
For each replication in the Replication state, the operation is a For each replication in the Replication state, the operation is a
PUSH of the downstream Replication SID and an optional segment list PUSH of the downstream Replication SID and an optional segment list
on to the packet which is forwarded to the Downstream node. For leaf on to the packet which is forwarded to the Downstream node. For leaf
nodes the inner packet is forwarded as per local configuration. nodes the inner packet is forwarded as per local configuration.
When the root of a multi-point service steers a packet to a When the root of a multi-point service steers a packet to a
skipping to change at page 5, line 18 skipping to change at page 5, line 12
the replication SID and an optional segment list on to the packet the replication SID and an optional segment list on to the packet
which is forwarded to the downstream node. which is forwarded to the downstream node.
2.2. SRv6 data plane 2.2. SRv6 data plane
In SRv6 [RFC8986], the "Endpoint with replication" behavior In SRv6 [RFC8986], the "Endpoint with replication" behavior
(End.Replicate for short) replicates a packet and forwards the packet (End.Replicate for short) replicates a packet and forwards the packet
according to a Replication state. according to a Replication state.
When processing a packet destined to a local Replication-SID, the When processing a packet destined to a local Replication-SID, the
packet is replicated to Downstream nodes in the associated packet is replicated to Downstream nodes and/or locally delivered off
Replication state. For replication, the outer header is re-used, and tree (when this is a bud/leaf node) according to the associated
replication state. For replication, the outer header is re-used, and
the Downstream Replication SID is written into the outer IPv6 header the Downstream Replication SID is written into the outer IPv6 header
destination address.If required, an optional segment list is used to destination address. If required, an optional segment list may be
encapsulate the replicated packet via H.Encaps. For a leaf node, the used on some branches using H.Encaps.Red (while some other branches
packet is decapsulated and the inner packet is forwarded as per local may not need that). Note that this H.Encaps.Red is independent from
configuration. the replication segment - it is just used to steer the replicated
traffic on a traffic engineered path to a Downstream node.
When the root of a multi-point service steers a packet into a The above also applies when the Replication segment is for the Root
Replication segment, for each replication, H.Encaps is used to node, whose upstream node has placed the Replication-SID in the
encapsulate the packet with the segment list to the Downstream node . header. A local application (e.g. MVPN/EVPN) may also apply
H.Encaps.Red and then steer the resulting traffic into the segment.
Again note that the H.Encaps.Red is independent of the Replication
segment - it is the action of the application (e.g. MVPN/EVPN
service). If the service is on a Root node, the two H.Encaps
mentioned, one for the service and other in the previous paragraph
for replication to Downstream node SHOULD be combined for
optimization (to avoid extra IPv6 encapsulation).
An End.Replicate SID MUST only appear as the ultimate SID in a SID- For the local delivery on a bud/leaf node, the action associated with
list. An implementation that receives a packet destined to a locally Replication-SID is "look at next SID in SRH". The next SID could be
instantiated End.Replicate SID that is not the ultimate segment a SID with End.DT2/4/6 local behavior (equivalent of MVPN/EVPN PMSI
SHOULD reply with ICMP Parameter Problem error (Erroneous header label in case of tunnel sharing across multiple VPNs). There may
field encountered) and discard the packet. also not be a next SID (e.g. MVPN/EVPN with one tunnel per VPN), in
which case the Replication-SID is then equivalent to End.DT2/4/6.
Note that decapsulation is not an inherent action of a Replication
segment even on a bud/leaf node.
3. Use Cases 3. Use Cases
In the simplest use case, a single Replication segment includes the In the simplest use case, a single Replication segment includes the
root node of a multi-point service and the egress/leaf nodes of the root node of a multi-point service and the egress/leaf nodes of the
service as all the Downstream Nodes. This achieves Ingress service as all the Downstream Nodes. This achieves Ingress
Replication [RFC7988] that has been widely used for MVPN [RFC6513] Replication [RFC7988] that has been widely used for MVPN [RFC6513]
and EVPN [RFC7432] BUM (Broadcast, Unknown and Multicast) traffic. and EVPN [RFC7432] BUM (Broadcast, Unknown and Multicast) traffic.
Replication segments can also be used as building blocks for Replication segments can also be used as building blocks for
skipping to change at page 8, line 17 skipping to change at page 8, line 24
srv6-net-pgm-illustration-04.txt>. srv6-net-pgm-illustration-04.txt>.
[I-D.ietf-lsr-flex-algo] [I-D.ietf-lsr-flex-algo]
Psenak, P., Hegde, S., Filsfils, C., Talaulikar, K., and Psenak, P., Hegde, S., Filsfils, C., Talaulikar, K., and
A. Gulko, "IGP Flexible Algorithm", Work in Progress, A. Gulko, "IGP Flexible Algorithm", Work in Progress,
Internet-Draft, draft-ietf-lsr-flex-algo-17, 6 July 2021, Internet-Draft, draft-ietf-lsr-flex-algo-17, 6 July 2021,
<https://www.ietf.org/archive/id/draft-ietf-lsr-flex-algo- <https://www.ietf.org/archive/id/draft-ietf-lsr-flex-algo-
17.txt>. 17.txt>.
[I-D.ietf-pim-sr-p2mp-policy] [I-D.ietf-pim-sr-p2mp-policy]
Voyer, D., Filsfils, C., Parekh, R., Bidgoli, H., and Z. (editor), D. V., Filsfils, C., Parekh, R., Bidgoli, H.,
Zhang, "Segment Routing Point-to-Multipoint Policy", Work and Z. Zhang, "Segment Routing Point-to-Multipoint
in Progress, Internet-Draft, draft-ietf-pim-sr-p2mp- Policy", Work in Progress, Internet-Draft, draft-ietf-pim-
policy-02, 19 February 2021, sr-p2mp-policy-03, 23 August 2021,
<https://www.ietf.org/archive/id/draft-ietf-pim-sr-p2mp- <https://www.ietf.org/archive/id/draft-ietf-pim-sr-p2mp-
policy-02.txt>. policy-03.txt>.
[RFC6513] Rosen, E., Ed. and R. Aggarwal, Ed., "Multicast in MPLS/ [RFC6513] Rosen, E., Ed. and R. Aggarwal, Ed., "Multicast in MPLS/
BGP IP VPNs", RFC 6513, DOI 10.17487/RFC6513, February BGP IP VPNs", RFC 6513, DOI 10.17487/RFC6513, February
2012, <https://www.rfc-editor.org/info/rfc6513>. 2012, <https://www.rfc-editor.org/info/rfc6513>.
[RFC7432] Sajassi, A., Ed., Aggarwal, R., Bitar, N., Isaac, A., [RFC7432] Sajassi, A., Ed., Aggarwal, R., Bitar, N., Isaac, A.,
Uttaro, J., Drake, J., and W. Henderickx, "BGP MPLS-Based Uttaro, J., Drake, J., and W. Henderickx, "BGP MPLS-Based
Ethernet VPN", RFC 7432, DOI 10.17487/RFC7432, February Ethernet VPN", RFC 7432, DOI 10.17487/RFC7432, February
2015, <https://www.rfc-editor.org/info/rfc7432>. 2015, <https://www.rfc-editor.org/info/rfc7432>.
 End of changes. 13 change blocks. 
29 lines changed or deleted 37 lines changed or added

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