< draft-geng-detnet-dp-sol-srv6-00.txt   draft-geng-detnet-dp-sol-srv6-01.txt >
Network Working Group X. Geng Network Working Group X. Geng
Internet-Draft M. Mach Internet-Draft M. Chen
Intended status: Experimental Huawei Intended status: Experimental Huawei
Expires: September 12, 2019 March 11, 2019 Expires: January 5, 2020 Y. Zhu
China Telecom
July 04, 2019
DetNet SRv6 Data Plane Encapsulation DetNet SRv6 Data Plane Encapsulation
draft-geng-detnet-dp-sol-srv6-00 draft-geng-detnet-dp-sol-srv6-01
Abstract Abstract
This document specifies Deterministic Networking data plane operation This document specifies Deterministic Networking data plane operation
for SRv6 encapsulated user data. for SRv6 encapsulated user data.
Requirements Language Requirements Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
skipping to change at page 1, line 37 skipping to change at page 1, line 39
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 September 12, 2019. This Internet-Draft will expire on January 5, 2020.
Copyright Notice Copyright Notice
Copyright (c) 2019 IETF Trust and the persons identified as the Copyright (c) 2019 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 Provisions Relating to IETF Documents
(https://trustee.ietf.org/license-info) in effect on the date of (https://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
skipping to change at page 2, line 13 skipping to change at page 2, line 15
to this document. Code Components extracted from this document must to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License. described in the Simplified BSD License.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Terminology and Conventions . . . . . . . . . . . . . . . . . 3 2. Terminology and Conventions . . . . . . . . . . . . . . . . . 3
2.1. Terminology . . . . . . . . . . . . . . . . . . . . . . . 3 2.1. Terminology . . . . . . . . . . . . . . . . . . . . . . . 3
2.2. Conventions . . . . . . . . . . . . . . . . . . . . . . . 3 2.2. Conventions . . . . . . . . . . . . . . . . . . . . . . . 4
3. SRv6 DetNet Data Plane Overview . . . . . . . . . . . . . . . 4 3. SRv6 DetNet Data Plane Overview . . . . . . . . . . . . . . . 4
3.1. SRv6 DetNet Data Plane Layers . . . . . . . . . . . . . . 4 3.1. SRv6 DetNet Data Plane Layers . . . . . . . . . . . . . . 5
3.2. SRv6 DetNet Data Plane Scenarios . . . . . . . . . . . . 4 3.2. SRv6 DetNet Data Plane Scenarios . . . . . . . . . . . . 5
4. SRv6 DetNet Data Plane Solution Considerations . . . . . . . 6 4. SRv6 DetNet Data Plane Solution Considerations . . . . . . . 7
5. SRv6 DetNet Data Plane Solution for Service Sub-layer . . . . 7 5. SRv6 DetNet Data Plane Solution for Service Sub-layer . . . . 8
5.1. TLV Based SRv6 Data Plane Solution . . . . . . . . . . . 7 5.1. TLV Based SRv6 Data Plane Solution . . . . . . . . . . . 8
5.1.1. Encapsulation . . . . . . . . . . . . . . . . . . . . 7 5.1.1. Encapsulation . . . . . . . . . . . . . . . . . . . . 8
5.1.2. Functions . . . . . . . . . . . . . . . . . . . . . . 9 5.1.2. SRv6 Network Programming new Functions . . . . . . . 10
5.2. SID Based SRv6 Data Plane Solution . . . . . . . . . . . 10 5.2. SID Based SRv6 Data Plane Solution . . . . . . . . . . . 11
5.2.1. Encapsulation . . . . . . . . . . . . . . . . . . . . 10 5.2.1. Encapsulation . . . . . . . . . . . . . . . . . . . . 11
5.2.2. Functions . . . . . . . . . . . . . . . . . . . . . . 11 5.2.2. Functions . . . . . . . . . . . . . . . . . . . . . . 12
5.3. DetNet SID Based SRv6 Data Plane Solution . . . . . . . . 12 5.3. DetNet SID Based SRv6 Data Plane Solution . . . . . . . . 13
5.3.1. Encapulation . . . . . . . . . . . . . . . . . . . . 12 5.3.1. Encapulation . . . . . . . . . . . . . . . . . . . . 13
5.3.2. Functions . . . . . . . . . . . . . . . . . . . . . . 13 5.3.2. Functions . . . . . . . . . . . . . . . . . . . . . . 14
5.4. DetNet SRH Based SRv6 Data Plane Solution . . . . . . . . 13 6. SRv6 DetNet Data Plane Solution for Transport Sub-layer . . . 14
5.4.1. Encapsulation . . . . . . . . . . . . . . . . . . . . 13 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 14
5.4.2. Functions . . . . . . . . . . . . . . . . . . . . . . 14 8. Security Considerations . . . . . . . . . . . . . . . . . . . 14
5.5. MPLS Based SRv6 Data Plane Solution . . . . . . . . . . . 14 9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 14
6. SRv6 DetNet Data Plane Solution for Transport Sub-layer . . . 15 10. Normative References . . . . . . . . . . . . . . . . . . . . 14
7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 15 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 15
8. Security Considerations . . . . . . . . . . . . . . . . . . . 15
9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 15
10. Normative References . . . . . . . . . . . . . . . . . . . . 15
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 16
1. Introduction 1. Introduction
Deterministic Networking(DetNet) provides a capability to carry Deterministic Networking (DetNet), as described in
[I-D.ietf-detnet-architecture] provides a capability to carry
specified data flows with extremely low data loss rates and bounded specified data flows with extremely low data loss rates and bounded
latency within a network domain. DetNet is enabled by a group of latency within a network domain. DetNet is enabled by a group of
technologies, such as resource allocation, service protection and technologies, such as resource allocation, service protection and
explicit routes.([I-D.ietf-detnet-architecture]) explicit routes.
Segment Routing(SR) leverages the source routing paradigm. A ingress Segment Routing(SR) leverages the source routing paradigm. An
node steers a packet through an ordered list of instructions, called ingress node steers a packet through an ordered list of instructions,
"segments". SR can be applied over IPv6 data plane using Routing called "segments". SR can be applied over IPv6 data plane using the
Extension Header(SRH). Besides routing, the segment of SRv6 can Segment Routing Extension Header
indicate functions which are executed locally in the node where they (SRH,[I-D.ietf-6man-segment-routing-header]). A segment in segment
are defined. SRv6 network programming makes it convenient to add routing terminology is not limited to a routing/forwarding function.
sophisticated operations in the network. ([RFC8402])
This document describes how to implement DetNet with SRv6. It can A segment can be associated to an arbitrary processing of the packet
provide : 1. Source routing, which can steer the DetNet flows go in the node identified by the segment. In other words, an SRv6
through the network according to an explicit route with allocated Segment can indicate functions that are executed locally in the node
resource; 2. Network programming, which can give packet instructions where they are defined. SRv6 network Programming
in some special nodes(even all the nodes) along the path to guarantee [I-D.filsfils-spring-srv6-network-programming] describe the different
service protection and congestion protection. DetNet SRv6 segments and functions associated to them.
encapsulation and new SRv6 functions for DetNet are defined in this
document. This document describes how to implement DetNet in an SRv6 enabled
domain, including :
o Source routing, which steers the DetNet flows through the network
according to an explicit path with allocated resources;
o Network programming, which applies instructions (functions) to
packets in some special nodes (or even all the nodes) along the path
in order to guarantee, e.g., service protection and congestion
protection.
DetNet SRv6 encapsulation and new SRv6 functions
([I-D.filsfils-spring-srv6-network-programming]) for DetNet are
defined in this document. Control plane and OAM are not in the scope
of this document.
Control plane and OAM are not in the scope of this document. Control plane and OAM are not in the scope of this document.
2. Terminology and Conventions 2. Terminology and Conventions
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in [RFC2119]. document are to be interpreted as described in [RFC2119].
2.1. Terminology 2.1. Terminology
Terminologies for DetNet go along with the definition in Terminologies for DetNet go along with the definition in
[I-D.ietf-detnet-architecture]. Other terminologies are defined as [I-D.ietf-detnet-architecture] and [RFC8402]. Other terminologies
follows: are defined as follows:
o NH: The IPv6 next-header field. o NH: The IPv6 next-header field.
o SID: A Segment Identifier which represents a specific segment in a o SID: A Segment Identifier ([RFC8402]).
segment routing domain([RFC8402]).
o SRH: The Segment Routing Header o SRH: The Segment Routing Header
([I-D.ietf-6man-segment-routing-header]). ([I-D.ietf-6man-segment-routing-header]).
2.2. Conventions 2.2. Conventions
Conventions in the document are defined as follows: Conventions in the document are defined as follows:
o NH=SRH means that NH is 43 with routing type 4. o NH=SRH means that NH is 43 with routing type 4 which is (as
defined in [I-D.ietf-6man-segment-routing-header], the values
representing the SRH.
o A SID list is represented as <S1, S2, S3> where S1 is the first o A SID list is represented as <S1, S2, S3> where S1 is the first
SID to visit, S2 is the second SID to visit and S3 is the last SID SID to visit, S2 is the second SID to visit and S3 is the last SID
to visit along the SR path. to visit along the SR path.
o SRH[SL] represents the SID pointed by the SL field in the first o SRH[SL] represents the SID pointed by the SL field in the first
SRH. In our example, SRH[2] represents S1, SRH[1] represents S2 SRH. In our example, SRH[2] represents S1, SRH[1] represents S2
and SRH[0] represents S3. and SRH[0] represents S3. It has to be noted
that[I-D.ietf-6man-segment-routing-header] defines the segment
list encoding in the reverse order of the path. A path
represented by <S1,S2,S3>, will be encoded in the SRH as follows:
SegmentList[0]=S3
SegmentList[1]=S2
SegmentList[2]=S1
The reverse encoding has been defined in order to optimise the
processing time of the segment list. See [draft-ietf-6man-
segment-routing-header] for more details.
o (SA,DA) (S3, S2, S1; SL) represents an IPv6 packet with: o (SA,DA) (S3, S2, S1; SL) represents an IPv6 packet with:
IPv6 header with source and destination addresses SA and DA IPv6 header with source and destination addresses SA and DA
respectively, and next-header SRH, with SID list <S1, S2, S3> respectively, and next-header set to SRH (i.e.: 43 with type 4)
with SegmentsLeft = SL , with a list of segments(SIDs) <S1, S2, S3> with SegmentsLeft
= SL
The payload of the packet is not represented The payload of the packet is not represented
(S3, S2, S1; SL) represents the same SID list as <S1, S2, S3>, (S3, S2, S1; SL) represents the same SID list as <S1, S2, S3>,
but encoded in the SRH format where the rightmost SID in the but encoded in the SRH format where the rightmost SID in the
SRH is the first SID and the leftmost SID in the SRH is the SRH is the first SID and the leftmost SID in the SRH is the
last SID last SID
3. SRv6 DetNet Data Plane Overview 3. SRv6 DetNet Data Plane Overview
3.1. SRv6 DetNet Data Plane Layers 3.1. SRv6 DetNet Data Plane Layers
[I-D.ietf-detnet-architecture]decomposes the DetNet data plane into [I-D.ietf-detnet-architecture]decomposes the DetNet data plane into
two sub-layers: service sub-layer and transport sub-layer. Different two sub-layers: service sub-layer and transport sub-layer. Different
from DetNet MPLS data plane solution, which uses DetNet Control from DetNet MPLS data plane solution, which uses DetNet Control
Word(d-CW) and S-Label to support service sub-layer and uses T-Label Word(d-CW) and S-Label to support service sub-layer and uses T-Label
to support transport sub-layer, no explicit sub-layer division can be to support transport sub-layer, no explicit sub-layer division exists
found in SRv6 data plane. A classical SRv6 DetNet data plane in SRv6 data plane. A classical SRv6 DetNet data plane solution is
solution is showed in the picture below: showed in the picture below:
+-------------------+ +-------------------+
| Outer Ipv6 Header | | Outer Ipv6 Header |
+-------------------+ +-------------------+
| SRH | | SRH |
+-------------------+ +-------------------+ +-------------------+ +-------------------+
| Ipv6 Header | ----> | Ipv6 Header | | Ipv6 Header | ----> | Ipv6 Header |
+-------------------+ +-------------------+ +-------------------+ +-------------------+
The outer IPv6 Header with SRH is used for carrying DetNet flows. The outer IPv6 Header with the SRH is used for carrying DetNet flows.
Traffic Engineering is programmed in the segment list of SRH, and Traffic Engineering is instantiated in the segment list of SRH, and
other functions and arguments for service protection (packet other functions and arguments for service protection (packet
replication, elimination and ordering) and congestion control (packet replication, elimination and ordering) and congestion control (packet
queuing and forwarding) are also defined in SRH. queuing and forwarding) are also defined in the SRH.
3.2. SRv6 DetNet Data Plane Scenarios 3.2. SRv6 DetNet Data Plane Scenarios
| | | |
----IPv6--->|<---------------SRv6 DetNet------------->|<----IPv6--- ----IPv6--->|<---------------SRv6 DetNet------------->|<----IPv6---
| | | |
| +------+T2+----+ | | +------+T2+----+ |
+---+ +---+ +-+-+ +-+-+ +---+ +---+ +---+ +---+ +-+-+ +-+-+ +---+ +---+
| E1+----| In|--+T1+--+R1 | |R2 |--+T4+--| Eg+----+ E2| | E1+----| In|--+T1+--+R1 | |R2 |--+T4+--| Eg+----+ E2|
+---+ +---+ +-+-+ +-+-+ +---+ +---+ +---+ +---+ +-+-+ +-+-+ +---+ +---+
+-----+T3+-----+ +-----+T3+-----+
The figure above shows that an IPv6 flow is sent out from the end
station E1. The packet of the flow is encapsulated in an outer
IPv6+SRH header as a DetNet SRv6 packet in the Ingress(In) and
transported through an SRv6 DetNet domain. In the Egress(Eg), the
outer IPv6 header+SRH of the packet is popped, and the packet is sent
to the destination E2.
The figure above shows that an IPv6 flow is sent our from the end The figure above shows that an IPv6 flow is sent our from the end
station: E1. The packet of the flow is encapsulated as a DetNet SRv6 station: E1. The packet of the flow is encapsulated as a DetNet SRv6
packet in the Ingress(In) and transported through an SRv6 DetNet packet in the Ingress(In) and transported through an SRv6 DetNet
domain. In the Egress(Eg), the upper IPv6 header with SRH of the domain. In the Egress(Eg), the upper IPv6 header with SRH of the
packet is popped, and the packet is transmitted to the packet is popped, and the packet is transmitted to the
destination(E2). destination(E2).
The DetNet packet processing is as follows: The DetNet packet processing is as follows:
Ingress: Ingress:
Insert SRv6 Policy, which can steer the packet from Ingress to Inserts the SRv6 Policy that will steer the packet from Ingress to
Relay Node 1 the destination
Flow Identification and Sequence Number are carried in SRH The methods and mechanisms used for defining, instantiating and
applying the policy are outside of this document. An example of
policies are described in [I-D.ietf-spring-segment-routing-policy]
Flow Identification and Sequence Number are carried in the SRH.
Relay Node 1(Replication Node): Relay Node 1(Replication Node):
Replicate the payload and IPv6 Header with SRH Replicates the payload and IPv6 Header with the SRH. This is a
new function in the context of SRv6 Network Programming which will
associate a given SID to a replication instruction in the node
originating and advertising the SID. The replication instruction
includes:
Binding two different SRv6 Policy respectively to the original * The removal of the existing IPv6+SRH header
packet and the replicated packet, which can steer the packet from
Relay Node 1 to Relay Node 2 through two tunnels * The encapsulation into a new outer IPv6+SRH header. Each
packet (the original and the duplicated) are encapsulated into
respectively new outer IPv6+SRH headers.
Binding two different SRv6 Policies respectively to the original
packet and the replicated packet, which can steer the packets from
Relay Node 1 to Relay Node 2 through two tunnels.
Relay Node 2(Elimination Node): Relay Node 2(Elimination Node):
Eliminate the redundant packets Eliminates the redundant packets.
Binding a new SRv6 Policy to the survival packet, which can steer Binds a new SRv6 Policy to the survival packet, which steers the
the packet from Relay Node 2 to Egress. packet from Relay Node 2 to Egress.
Egress: Egress:
Decapsulate the upper Ipv6 header Decapsulates the outer Ipv6 header.
Send the packet to the End Station 2 Sends the inter packet to the End Station 2.
The DetNet packet encapsulation is as follows: The DetNet packet encapsulation is illustrated here below. It has to
be noted that, in the example below, the R2 address is a SRH SID
associated to a TBD function related to the packet replication the
node R1 has to perform. The same (or reverse) apply to node R2 which
is in charge of the discard of the duplicated packet. Here also a
new function will have a new SID allocated to it and representing the
delete of the duplication in R2.
End Station1 out : (E1,E2) End Station1 output packet: (E1,E2)
Ingress out : (In, T1)(R1,T1,SL=2)(E1,E2) Ingress output packet: (In, T1)(R1,T1, SL=2)(E1,E2)
Transit Node1 out : (In, R1)(R1,T1,SL=1)(E1,E2) Transit Node1 output packet: (In, R1)(R1,T1,SL=1)(E1,E2)
Relay Node1 out : (R2, R1)(R2,T2,SL=2)(E1,E2)/(R2, Relay Node1 output packets : (R1,T2)(R2,T2,SL=2)(E1,E2),
R1)(R2,T3,SL=2)(E1,E2) (R1,T3)(R2,T3,SL=2)(E1,E2)
Transit Node2 out : (R2, R1)(R2,T2,SL=1)(E1,E2) Transit Node2 output packet: (R1, R2)(R2,T2,SL=1)(E1,E2)
Transit Node3 out : (R2, R1)(R2,T3,SL=1)(E1,E2) Transit Node3 output packet: (R1, R2)(R2,T3,SL=1)(E1,E2)
Relay Node2 out : (Eg, R2)(Eg,T4,SL=2)(E1,E2) Relay Node2 output packet: (R2, T4)(Eg,T4,SL=2)(E1,E2)
Transit Node4 out : (Eg, R2)(Eg,T4,SL=1)(E1,E2) Transit Node4 output packet: (R2, Eg)(Eg,T4,SL=1)(E1,E2)
Egress out : (E1,E2) Egress out : (E1,E2)
4. SRv6 DetNet Data Plane Solution Considerations 4. SRv6 DetNet Data Plane Solution Considerations
To carry DetNet over SRv6, the following elements are required: To carry DetNet over SRv6, the following elements are required:
1. A method of identifying the SRv6 payload type; 1. A method of identifying the SRv6 payload type;
2. A suitable explicit route to deliver the DetNet flow ; 2. A suitable explicit path to deliver the DetNet flow ;
3. A method of indicating packet processing, such as PREOF; 3. A method of indicating packet processing, such as PREOF(Packet
Replication, Elimination and Ordering as defined in
[I-D.ietf-detnet-architecture]);
4. A method of identifying the DetNet flow; 4. A method of identifying the DetNet flow;
5. A method of carrying DetNet sequence number; 5. A method of carrying DetNet sequence number;
6. A method of carrying queuing and forwarding indication to do 6. A method of carrying queuing and forwarding indication to do
congestion protection; congestion protection;
In this design, DetNet flows are encapsulated with SRH in the Ingress In this design, DetNet flows are encapsulated in an outer IPv6+SRH
Node. The SR policy in the SRH steers the DetNet flow along a header at the Ingress Node. The SR policy identified in the SRH
selected path. The explicit route allocated to a DetNet flow, which steers the DetNet flow along a selected path. The explicit path
protect it from temporary interruptions caused by the convergence of followed by a DetNet flow, which protect it from temporary
routing, is encoded within the SID list of a SR policy. The network interruptions caused by the convergence of routing, is encoded within
device inside the DetNet domain forwards the packet according to IPv6 the SID list of the SR policy. The network device inside the DetNet
Destination Address(DA), and the IPv6 DA is updated with the SID domain forwards the packet according to IPv6 Destination Address(DA),
list. and the IPv6 DA is updated with the SID List according to SRv6
forwarding procedures defined in
[I-D.ietf-6man-segment-routing-header] and
[I-D.filsfils-spring-srv6-network-programming]
With SRv6 network programming, the SID list can also give instruments With SRv6 network programming, the SID list can also give instruments
representing a function to be called at the node in the DetNet representing a function to be called at the node in the DetNet
domain. Therefore DetNet specific functions defined in domain. Therefore DetNet specific functions defined in
[I-D.ietf-detnet-architecture], corresponding to local packet [I-D.ietf-detnet-architecture], corresponding to local packet
processing in the network, can also be implemented by SRv6. New processing in the network, can also be implemented by SRv6. New
functions associated with SIDs for DetNet are defined in this functions associated with SIDs for DetNet are defined in this
document. document.
This document describes how DetNet flows are encapsulated/identified, This document describes how DetNet flows are encapsulated/identified,
and how functions of Packet Replication/Elimination/Ordering are and how functions of Packet Replication/Elimination/Ordering are
implemented in an SRv6 domain. Congestion protection is also in the implemented in an SRv6 domain. Congestion protection is also in the
scope of this document. scope of this document.
skipping to change at page 7, line 29 skipping to change at page 8, line 39
5. SRv6 DetNet Data Plane Solution for Service Sub-layer 5. SRv6 DetNet Data Plane Solution for Service Sub-layer
This section defines options of SRv6 data plane solution to support This section defines options of SRv6 data plane solution to support
DetNet Service Sub-layer. DetNet Service Sub-layer.
5.1. TLV Based SRv6 Data Plane Solution 5.1. TLV Based SRv6 Data Plane Solution
5.1.1. Encapsulation 5.1.1. Encapsulation
An SRv6 Segment is a 128-bit value. SID is used as a shorter An SRv6 Segment is a 128-bit value. SID is used as a shorter
reference for "SRv6 Segment". SRv6 SID can also be represented as reference for "SRv6 Segment Identifier" or "SRV6 Segment". SRv6 SID
LOC:FUNCT, where LOC, abbreviated for "LOCATION", directs the can also be represented as LOC:FUNCT, where:
explicit route, FUNCT, abbreviated for "FUNCTION", directs the packet
processing in the local node
([I-D.filsfils-spring-srv6-network-programming]).
The SRH for DetNet in the outer IPv6 header is showed as follows: LOC, means "LOCATION" and defines the node associated with the SID
(i.e.: represented by the SID).
FUNCT, means "FUNCTION", and identifies the processing that the
node specified in LOC applies to the packet. See
[I-D.filsfils-spring-srv6-network-programming] for details on SRV6
Network Programming.
The SRH for DetNet in the outer IPv6 header is showed as follows,
according to [I-D.ietf-6man-segment-routing-header] and
[I-D.filsfils-spring-srv6-network-programming]:
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Next Header | Hdr Ext Len | Routing Type | Segment Left | | Next Header | Hdr Ext Len | Routing Type | Segment Left |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Last Entry | Flags | Tag | | Last Entry | Flags | Tag |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | |
| Location & Function | | Location & Function |
skipping to change at page 8, line 28 skipping to change at page 9, line 32
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | |
| Segment List[n] | | Segment List[n] |
| | | |
| | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Optional TLVs | | Optional TLVs |
| ... | | ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Two new TLVs are defined to support DetNet service protection. The SRH specification allows the use of optional TLVs. Two new TLVs
DetNet Flow Identification TLV is used to uniquely identify a DetNet are defined to support DetNet service protection. DetNet Flow
flow in an SRv6 DetNet node. DetNet sequence number is used to dis Identification TLV is used to uniquely identify a DetNet flow in an
crime packets in the same DetNet flow. They are defined as follows: SRv6 DetNet node. DetNet sequence number is used to discriminate
packets in the same DetNet flow. They are defined as follows:
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 | RESERVED | | Type | Length | RESERVED |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| RESERVED | Flow Identification | | RESERVED | Flow Identification |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
where: where:
o Type: 8bits, to be assigned by IANA. o Type: 8bits, to be assigned by IANA.
o Length: 8. o Length: 8 octets.
o RESERVED: 28 bits, MUST be 0 on transmission and ignored on o RESERVED: 28 bits, MUST be 0 on transmission and ignored on
receipt. receipt.
o Flow Identification: 20 bits, which is used for identifying DetNet o Flow Identification: 20 bits, which is used for identifying DetNet
flow. flow.
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 | RESERVED | | Type | Length | RESERVED |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|RESERVE| Sequence Number | |RESERVD| Sequence Number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
where: where:
o Type: 8 bits, to be assigned by IANA. o Type: 8 bits, to be assigned by IANA.
o Length: 8. o Length: 8.
o RESERVED: 20 bits. MUST be 0 on transmission and ignored on o RESERVED: 20 bits. MUST be 0 on transmission and ignored on
receipt. receipt.
o Sequence Number: 28 bits, which is used for indicating sequence o Sequence Number: 28 bits, which is used for indicating sequence
number of a DetNet flow. number of a DetNet flow.
5.1.2. Functions 5.1.2. SRv6 Network Programming new Functions
New SID functions are defined as follows: New SRv6 Network Programming functions are defined as follows:
5.1.2.1. End. B.Replicatioreserve the value of argument field(Inherited 5.1.2.1. End. B.Replicatioreserve the value of argument field(Inherited
argument)of segment[0] of SRH n: Packet Replication Function argument)of segment[0] of SRH n: Packet Replication Function
1. IF NH=SRH & SL>0 THEN 1. IF NH=SRH & SL>0 THEN
2. do not decrement SL nor update the IPv6 DA with SRH[SL] 2. extract the DetNet TLV values from the SRH
3. reserve the value of DetNet TLVs of SRH 3. create two new outer IPv6+SRH headers: IPv6-SRH-1 and IPv6-SRH-2
Insert the policy-instructed segment lists in each newly created
SRH (SRH-1 and SRH-2). Also, add the extracted DetNet TLVs into
SRH-1 and SRH-2.
4. add the DetNet TLVs into SRH'1 and SRH'2 4. remove the incoming outer IPv6+SRH header.
5. pop the SRH 5. create a duplication of the incoming packet.
6. replicate the packet into two packets: packet'1, packet'2 6. encapsulate the original packet into the first outer IPv6+SRH
header: (IPv6-SRH-1) (original packet)
7. insert SRH'1 to packet'1 7. encapsulate the duplicate packet into the second outer IPv6+SRH
header: (IPv6-SRH-2) (duplicate packet)
8. insert SRH'2 to packet'2 8. set the IPv6 SA as the local address of this node.
9. set the IPv6 DA of packet'1 to the first segment of the SRv6 9. set the IPv6 DA of IPv6-SRH-1 to the first segment of the SRv6
Policy of SRH'1 Policy in of SRH-1 segment list.
10. set the IPv6 DA of packet'2 to the first segment of the SRv6 10. set the IPv6 DA of IPv6-SRH-2 to the first segment of the SRv6
Policy of SRH'2 Policy in of SRH-2 segment list.
11. ELSE 11. ELSE
12. drop the packet 12. drop the packet
5.1.2.2. End. B. Elimination: Packet Elimination Function 5.1.2.2. End. B. Elimination: Packet Elimination Function
1. IF NH=SRH & SL>0 & "the packet is not a redundant packet" THEN 1. IF NH=SRH & SL>0 & "the packet is not a redundant packet" THEN
2. do not decrement SL nor update the IPv6 DA with SRH[SL] 2. do not decrement SL nor update the IPv6 DA with SRH[SL]
3. reserve the value of DetNet TLVs of SRH 3. extract the value of DetNet TLVs from the SRH
4. add the DetNet TLVs into SRH' 4. create a new outer IPv6+SRH header
5. pop the SRH 5. insert the policy-instructed segment lists in the newly created
SRH and add the retrieved DetNet TLVs in the newly created SRH
6. insert SRH' 6. remove the incoming outer IPv6+SRH header.
7. set the IPv6 DA to the first segment of the SRv6 Policy 7. set the IPv6 DA to the first segment of the SRv6 Policy in the
newly created SRH
8. ELSE 8. ELSE
9. drop the packet 9. drop the packet
5.2. SID Based SRv6 Data Plane Solution 5.2. SID Based SRv6 Data Plane Solution
5.2.1. Encapsulation 5.2.1. Encapsulation
SRv6 SID can be represented as LOC:FUNCT:ARG::, where LOC, SRv6 SID can be represented as LOC:FUNCT:ARG::, where:
abbreviated for "LOCATION", directs the explicit route, FUNCT,
abbreviated for "FUNCTION", directs the packet processing in the
local node, and ARG, abbreviated for "ARGUMENTS", provides the
additional arguments for the functions. New SID functions for DetNet
is defined in section 5.2.2.
The SRH for DetNet in the outer IPv6 header is showed as follows: LOC, means "LOCATION" and defines the node associated with the SID
(i.e.: represented by the SID).
FUNCT, means "FUNCTION", and identifies the processing that the node
specified in LOC applies to the packet.
ARG, means "ARGUMENTS" and provides the additional arguments for the
function. New SID functions for DetNet is defined in section 5.2.2.
See [I-D.filsfils-spring-srv6-network-programming] for details on
SRV6 Network Programming. The SRH for DetNet in the outer IPv6
header is illustrated as follows
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Next Header | Hdr Ext Len | Routing Type | Segment Left | | Next Header | Hdr Ext Len | Routing Type | Segment Left |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Last Entry | Flags | Tag | | Last Entry | Flags | Tag |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Location & Function | | Location & Function |
| (Segment List[0] for relay node or edge node) | | (Segment List[0] for relay node or edge node) |
skipping to change at page 11, line 33 skipping to change at page 12, line 39
| | | |
| | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Optional TLVS | | Optional TLVS |
| ... | | ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
where: where:
o LOCATION&FUNCTION: the 80 most significant bits that are used for o LOCATION&FUNCTION: the 80 most significant bits that are used for
routing; routing the packet towards the LOCATION (as defined in
[I-D.filsfils-spring-srv6-network-programming]);
o FLOW IDENTIFICATION: 20 bits, which is used for DetNet flow o FLOW IDENTIFICATION: 20 bits, in the DetNet TLVs in the SRH, used
identification in the DetNet relay node; for DetNet flow identification in the DetNet relay node;
o SEQUENCE NUMBER : 28 bits, which are used for dis crime packets in o SEQUENCE NUMBER : 28 bits, in the DetNet TLVs, used for dis crime
the same DetNet flow; packets in the same DetNet flow;
5.2.2. Functions 5.2.2. Functions
New SID functions are defined as follows: New SID functions are defined as follows:
5.2.2.1. End. B.Replication: Packet Replication Function 5.2.2.1. End. B.Replication: Packet Replication Function
1. IF NH=SRH & SL>0 THEN The function is similar as that has been defined in section 5.1.2.1.
The only difference is that instead of retrieving the TLV values,
2. do not decrement SL nor update the IPv6 DA with SRH[SL] this function retrieves the argument.
3. reserve the value of argument field(Inherited argument)of
segment[0] of SRH
4. write the inherited arguments into the argument field of
segment[0] of SRH'1 and SRH'2
5. pop the SRH
6. replicate the packet into two packets: packet'1, packet'2
7. insert SRH'1 to packet'1
8. insert SRH'2 to packet'2
9. set the IPv6 DA of packet'1 to the first segment of the SRv6
Policy of SRH'1
10. set the IPv6 DA of packet'2 to the first segment of the SRv6
Policy of SRH'2
11. ELSE
12. drop the packet
5.2.2.2. End. B. Elimination: Packet Elimination Function 5.2.2.2. End. B. Elimination: Packet Elimination Function
1. IF NH=SRH & SL>0 & "the packet is not a redundant packet" THEN The function is similar as that has been defined in section 5.1.2.2.
The only difference is that instead of retrieving the TLV values,
2. do not decrement SL nor update the IPv6 DA with SRH[SL] this function retrieves the argument.
3. write the inherited arguments into the argument field of
segment[0] of SRH'
4. pop the SRH
5. insert SRH'
6. set the IPv6 DA to the first segment of the SRv6 Policy
7. ELSE
8. drop the packet
5.3. DetNet SID Based SRv6 Data Plane Solution 5.3. DetNet SID Based SRv6 Data Plane Solution
5.3.1. Encapulation 5.3.1. Encapulation
A non-forwarding DetNet SID is defined to carry Flow Identification A non-forwarding DetNet SID is defined to carry Flow Identification
and Sequence Number. and Sequence Number.
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
skipping to change at page 13, line 37 skipping to change at page 14, line 9
| | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Optional TLVs | | Optional TLVs |
| ... | | ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
5.3.2. Functions 5.3.2. Functions
TBD TBD
5.4. DetNet SRH Based SRv6 Data Plane Solution
5.4.1. Encapsulation
A New SRH is defined to carry Flow Identification and Sequence
Number.
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Next Header | Hdr Ext Len | Routing Type | Segment Left |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Last Entry | Flags | Tag |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
| Location & Function |
| (Segment List[0] for relay node or edge node) |
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
| Segment List[n] |
| |
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Optional TLVs |
| ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Next Header | Hdr Ext Len | Routing Type | Segment Left |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Last Entry | Flags | Tag |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
| DetNet SID |
| |
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Optional TLVs |
| ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
5.4.2. Functions
TBD
5.5. MPLS Based SRv6 Data Plane Solution
SRH can be part of IPv6 Header in the picture below, and no protocol
extensions are needed in SRH. The structure keeps the same as the
definition in [I-D.ietf-detnet-dp-sol-mpls] :
+---------------------------------+
| |
| DetNet Flow |
| Payload Packet |
| |
+---------------------------------+ <--\
| DetNet Control Word | |
+---------------------------------+ +--> DetNet data plane
| S-Label | | MPLS encapsulation
+---------------------------------+ <--/
| UDP Header |
+---------------------------------+
| IPv6 Header |-------> SRH included
+---------------------------------+
| Data-Link |
+---------------------------------+
| Physical |
+---------------------------------+
6. SRv6 DetNet Data Plane Solution for Transport Sub-layer 6. SRv6 DetNet Data Plane Solution for Transport Sub-layer
TBD TBD
7. IANA Considerations 7. IANA Considerations
This document makes no request of IANA. TBD
Note to RFC Editor: this section may be removed on publication as an
RFC.
8. Security Considerations 8. Security Considerations
TBD TBD
9. Acknowledgements 9. Acknowledgements
Thank you for valuable comments from James Guichard and Andrew Mails. Thank you for valuable comments from James Guichard and Andrew Mails.
10. Normative References 10. Normative References
[I-D.filsfils-spring-srv6-network-programming] [I-D.filsfils-spring-srv6-network-programming]
Filsfils, C., Camarillo, P., Leddy, J., Filsfils, C., Camarillo, P., Leddy, J.,
daniel.voyer@bell.ca, d., Matsushima, S., and Z. Li, "SRv6 daniel.voyer@bell.ca, d., Matsushima, S., and Z. Li, "SRv6
Network Programming", draft-filsfils-spring-srv6-network- Network Programming", draft-filsfils-spring-srv6-network-
programming-07 (work in progress), February 2019. programming-07 (work in progress), February 2019.
[I-D.ietf-6man-segment-routing-header] [I-D.ietf-6man-segment-routing-header]
Filsfils, C., Previdi, S., Leddy, J., Matsushima, S., and Filsfils, C., Dukes, D., Previdi, S., Leddy, J.,
d. daniel.voyer@bell.ca, "IPv6 Segment Routing Header Matsushima, S., and d. daniel.voyer@bell.ca, "IPv6 Segment
(SRH)", draft-ietf-6man-segment-routing-header-16 (work in Routing Header (SRH)", draft-ietf-6man-segment-routing-
progress), February 2019. header-21 (work in progress), June 2019.
[I-D.ietf-detnet-architecture] [I-D.ietf-detnet-architecture]
Finn, N., Thubert, P., Varga, B., and J. Farkas, Finn, N., Thubert, P., Varga, B., and J. Farkas,
"Deterministic Networking Architecture", draft-ietf- "Deterministic Networking Architecture", draft-ietf-
detnet-architecture-11 (work in progress), February 2019. detnet-architecture-13 (work in progress), May 2019.
[I-D.ietf-detnet-dp-sol-mpls] [I-D.ietf-detnet-dp-sol-mpls]
Korhonen, J. and B. Varga, "DetNet MPLS Data Plane Korhonen, J. and B. Varga, "DetNet MPLS Data Plane
Encapsulation", draft-ietf-detnet-dp-sol-mpls-01 (work in Encapsulation", draft-ietf-detnet-dp-sol-mpls-02 (work in
progress), October 2018. progress), March 2019.
[I-D.ietf-spring-segment-routing-policy]
Filsfils, C., Sivabalan, S., daniel.voyer@bell.ca, d.,
bogdanov@google.com, b., and P. Mattes, "Segment Routing
Policy Architecture", draft-ietf-spring-segment-routing-
policy-03 (work in progress), May 2019.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997, DOI 10.17487/RFC2119, March 1997,
<https://www.rfc-editor.org/info/rfc2119>. <https://www.rfc-editor.org/info/rfc2119>.
[RFC8402] Filsfils, C., Ed., Previdi, S., Ed., Ginsberg, L., [RFC8402] Filsfils, C., Ed., Previdi, S., Ed., Ginsberg, L.,
Decraene, B., Litkowski, S., and R. Shakir, "Segment Decraene, B., Litkowski, S., and R. Shakir, "Segment
Routing Architecture", RFC 8402, DOI 10.17487/RFC8402, Routing Architecture", RFC 8402, DOI 10.17487/RFC8402,
July 2018, <https://www.rfc-editor.org/info/rfc8402>. July 2018, <https://www.rfc-editor.org/info/rfc8402>.
skipping to change at line 711 skipping to change at page 15, line 32
Xuesong Geng Xuesong Geng
Huawei Huawei
Email: gengxuesong@huawei.com Email: gengxuesong@huawei.com
Mach(Guoyi) Chen Mach(Guoyi) Chen
Huawei Huawei
Email: mach.chen@huawei.com Email: mach.chen@huawei.com
Yongqing Zhu
China Telecom
Email: zhuyq@gsta.com
 End of changes. 76 change blocks. 
260 lines changed or deleted 234 lines changed or added

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