Internet DRAFT - draft-han-spring-srv6-underlay-tunnel-programming
draft-han-spring-srv6-underlay-tunnel-programming
SPRING L. Han
Internet-Draft M. Wang
Intended status: Standards Track China mobile
Expires: 16 November 2023 R. Chen
A. Liu
ZTE Corporation
15 May 2023
SRv6 Underlay tunnel Programming
draft-han-spring-srv6-underlay-tunnel-programming-03
Abstract
This document defines a new SRv6 Endpoint behavior which can be used
for SRv6 underlay tunnel (e.g.L1 channel) Programming, called
END.BXC, this behavior are used to bind an underlay tunnel.
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 https://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
This Internet-Draft will expire on 16 November 2023.
Copyright Notice
Copyright (c) 2023 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents (https://trustee.ietf.org/
license-info) in effect on the date of publication of this document.
Please review these documents carefully, as they describe your rights
and restrictions with respect to this document. Code Components
extracted from this document must include Revised BSD License text as
described in Section 4.e of the Trust Legal Provisions and are
provided without warranty as described in the Revised BSD License.
Han, et al. Expires 16 November 2023 [Page 1]
Internet-Draft Underlay tunnel Programming with SRv6 May 2023
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Requirements Language . . . . . . . . . . . . . . . . . . . . 2
3. Problems and Solutions . . . . . . . . . . . . . . . . . . . 2
3.1. Problems . . . . . . . . . . . . . . . . . . . . . . . . 2
3.2. END.BXC Function . . . . . . . . . . . . . . . . . . . . 3
3.2.1. END.BXC with ARG: . . . . . . . . . . . . . . . . . . 4
3.2.2. END.BXC without ARG: . . . . . . . . . . . . . . . . 5
3.2.3. Procedures . . . . . . . . . . . . . . . . . . . . . 5
4. Benefits . . . . . . . . . . . . . . . . . . . . . . . . . . 5
5. Deployment Status . . . . . . . . . . . . . . . . . . . . . . 6
6. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 6
7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 6
8. Security Considerations . . . . . . . . . . . . . . . . . . . 6
9. Normative References . . . . . . . . . . . . . . . . . . . . 6
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 7
1. Introduction
The Segment Routing over IPv6 (SRv6) Network Programming framework
enables a network operator or an application to specify a packet
processing program by encoding a sequence of instructions in the IPv6
packet header as described in [RFC8986].
Each instruction is implemented on one or several nodes in the
network and identified by an SRv6 Segment Identifier in the packet.
This document defines a new SRv6 Endpoint behavior which can be used
for SRv6 underlay tunnel (e.g.L1 channel) Programming, called
END.BXC, this behavior are used to bind an underlay tunnel.
2. Requirements Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC 2119 [RFC2119].
3. Problems and Solutions
3.1. Problems
Han, et al. Expires 16 November 2023 [Page 2]
Internet-Draft Underlay tunnel Programming with SRv6 May 2023
+---------------------------------------------------------------------------+
| E2E SRv6 Policy |
+-+-+ +-+-+ +-+-+ +-+-+
|PE1+-----------------------------+PE2|---------|PE3+-----------------------+PE4|
+-+-+ +-+-+ +-+-+ +-+-+
| |
+---------------------------------------------------------------------------+
+---------------------------------+ +--------------------------+
| MTN/FGU Channel | | SRv6 Policy |
+-+-+ +--+ +--+ +--+ +-+-+ +-+-+ +--+ +--+ +-+-+
|PE1+---+P1+----+P2+--- +P3+----->+PE2|--------->|PE3+----+P4+----+P5+----->+PE4|
+-+-+ +--+ +--+ +--+ +-+-+ +-+-+ +--+ +--+ +-+-+
| Network A | | Network B |
+---------------------------------+ +--------------------------+
Figure 1
Usecase1:
The above Figure shows two different network domains. Network A
deploy ITU-T MTN/OTN, and Network B deploy SRv6. Due to network
evolution requirements, The edge nodes of the Network A are upgraded
to support SRv6,but the forwarding node not upgraded.
Services are running between PE1 and PE4. The operator need to
deploy E2E SRv6 Policy across network A and network B.
Since the forwarding nodes of Network A are not forwarded based on
packet based, and it is also invisible to the end to end controller,
so it cannot be programmed into the SRv6 Policy. The edge nodes of
the Network A upgraded to SRv6 can be programmed into SRv6 Policy,
and through the END.BXC behavior defined in this document, so E2E
SRv6 can traverses the ITU-T MTN/OTN network.
Usecase2:
Network A deploy multiple Forwarding technology (like SRv6 and MTN,
etc.), and Network B deploy SRv6. However, customers require meet
some SLA (like low latency, etc.) in the network A. The E2E SRv6
Policy which programmed the SRv6 END.BXC to the segment list can meet
some customer's SLA.
3.2. END.BXC Function
The SID format is defined in [RFC8986]. An SRv6 SID cosisits of
three parts: LOC:FUNCT:ARG, The format of an SRv6 SID is shown below.
Han, et al. Expires 16 November 2023 [Page 3]
Internet-Draft Underlay tunnel Programming with SRv6 May 2023
+------------------------------------------------------------------+
| Locator | Function | ARG |
+------------------------------------------------------------------+
Figure 2
END.BXC is a variant of the End behavior. This is a SRv6
instantiation of a Binding SID. Any SID instance of this behavior is
associated with an underlay tunnel(e.g.L1 channel). Typical types of
the L1 channel include MTN, and OTN.
This End.BXC SID can support the Penultimate Segment Pop (PSP) of the
SRH, Ultimate Segment Pop (USP) of the SRH, and Ultimate Segment
Decapsulation (USD) flavors defined in [RFC8986] either individually
or in combinations. The SRH processing of the End.BXC behavior with
PSP, USP, and USD is the same as [RFC8986].
End.BXC can support ARG identifying different channel types and
channel ID spaces or no ARG, it is up to the controller to decide
whether if the ARG to use.
3.2.1. END.BXC with ARG:
An SRv6 Endpoint behavior may require additional information for its
processing (e.g., related to the flow or service), This information
may be encoded in the ARG part of the SID as defined in [RFC8986].
This section defines the ARG part of the END.BXC SID. The high bit
part of ARG is used to encode Channel Type, and the low bit part of
ARG is used to encapsulate Channel ID. The Channel is uniquely
identified by channel type and channel ID. The format of ARG in
END.BXC SID is shown in Figure 2.
+------------------------------------------------+
|channel Type| channel ID |
+------------------------------------------------+
Figure 3
The allocation of the Channel Type and the Channel ID are local to
the SR Segment Endpoint Node instantiating this behavior. The ARG
length is determined by the local configuration and is announced into
the network. In addition, the Channel Type length and the Channel ID
length are also locally configured and is announced into the network.
The detailed protocol extension will be considered, and will be
described in other documents.
Han, et al. Expires 16 November 2023 [Page 4]
Internet-Draft Underlay tunnel Programming with SRv6 May 2023
When N receives a packet destined to S and S is a local End.BXC SID,
the line S14 from the End processing defined in [RFC8986] is replaced
by the following:
S14. Get the channel type and channel ID from the lower bit of S.
S15. Find channel X based on channel type and channel ID
S16. Update IPv6 DA with Segment List[Segments Left]
S17. Forward the packet to the new destination via channel X.
3.2.2. END.BXC without ARG:
In this section,ARG part are not be used.We only defines END.BXC SID.
When N receives a packet destined to S and S is a local End.BXC SID,
the line S15 from the End processing defined in [RFC8986] is replaced
by the following:
S15 Forward the packet to the new destination via channel X.
The END.BXC behavior is advertised to the network. The detailed
protocol extension will be considered, and will be described in other
documents.
3.2.3. Procedures
Here we will describe the data plane procedures by taking examples,
and we will discuss the use-case mentioned under section 3.
In Figure 1, Network A deploy ITU-T MTN/OTN, and Network B deploy
SRv6. PE1,PE2,PE3 and PE4 are deployed SRv6, and PE1, P1 to p3,and
PE3 are deployed ITU-T MTN/OTN. One END.BXC SID is assigned for the
underlay tunnel P1 to P3, so the E2E SRv6 path is <PE1::END.BXC,
PE2::END.X, PE3::END.B6, PE4::DT6>.
4. Benefits
There are some obvious benefits by using the END.BXC function.
Fisrtly, as shown from the usecases above, with the END.BXC function,
it can build an end-to-end SRv6 tunnel even across an underlay
connection (called channel). Using the END.BXC function, it is
different with the END.X function, since the END.X just forwards to
an endpoint with cross-connect to a 'layer-3 adjacency'. That would
be more complicated for consistency of end-to-end SRv6 policy.
Secondly, with the END.BXC function, it defines the separate underlay
channel ID, this can differentiate the L3 adjacency and underlay
connection ID to simplify the allocation of SID. This can also
maintain a separate underlay ID namespace and reduce the number of L3
route tables. Thirdly, if we use the ARGs of the END.BXC, it can be
Han, et al. Expires 16 November 2023 [Page 5]
Internet-Draft Underlay tunnel Programming with SRv6 May 2023
more easier for scalability of diversity of underlay connections.
5. Deployment Status
The SRv6 END.BXC Function mechanism has been implemented by ZTE, and
China Mobile has successfully completed the basic verification of
this function. For example, In August 2022, China Mobile
successfully validated SRv6 END.BXC Function in field trail, and In
March 2023, China Mobile successfully validated the orchestrates end-
to-end SRv6 path (include end. BXC )functions in field trail. The
END.BXC function is used in the SPN domain to support steering SRv6
services to the highly reliable MTN Channel, realizing the
coordination between the MTN Channel and the end-to-end SRv6 tunnel
in the SPN domain, and meeting the SRv6 end-to-end low-latency and
high-reliability service quality.
6. Acknowledgements
The authors would like to thank Jianzhong Wen for valuable
suggestions.
7. IANA Considerations
The document defines a new SRv6 Endpoint behavior called End.BXC.
This I-D requests the IANA to allocate, within the "SRv6 Endpoint
Behaviors" registry in the "Segment Routing" registry group, the
following allocations:
Value Endpoint Behavior Reference
---------------------------------------------------------------
TBD1 End.BXC [This.ID]
TBD2 End.BXC with PSP [This.ID]
TBD3 End.BXC with USP [This.ID]
TBD4 End.BXC with USD [This.ID]
TBD5 End.BXC with PSP, USP & USD [This.ID]
8. Security Considerations
TBD.
9. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997,
<https://www.rfc-editor.org/info/rfc2119>.
Han, et al. Expires 16 November 2023 [Page 6]
Internet-Draft Underlay tunnel Programming with SRv6 May 2023
[RFC8986] Filsfils, C., Ed., Camarillo, P., Ed., Leddy, J., Voyer,
D., Matsushima, S., and Z. Li, "Segment Routing over IPv6
(SRv6) Network Programming", RFC 8986,
DOI 10.17487/RFC8986, February 2021,
<https://www.rfc-editor.org/info/rfc8986>.
Authors' Addresses
Liuyan Han
China mobile
Beijing
China
Email: hanliuyan@chinamobile.com
Minxue Wang
China mobile
Beijing
China
Email: wangminxue@chinamobile.com
Ran Chen
ZTE Corporation
Nanjing
China
Email: chen.ran@zte.com.cn
aihua Liu
ZTE Corporation
Shenzhen
China
Email: liu.aihua@zte.com.cn
Han, et al. Expires 16 November 2023 [Page 7]