Network Working Group                                            C. Lin
Internet Draft                                                  M. Chen
Intended status: Standards Track                                  H. Li
Expires: March 6, 2024                             New H3C Technologies
                                                      September 6, 2023


         IS-IS and OSPFv3 Extensions to Advertise SRv6 Service SID
                     draft-lin-lsr-srv6-service-sid-02


Abstract

   The IPv6 backbone networks only deploying IGP may be required to
   interconnect IPv4 islands. SRv6 Service SIDs like End.DT4 may be
   used to realize such requirements. This document extends IS-IS and
   OSPFv3 to advertise SRv6 Service SIDs.

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 March 6, 2024.

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
   (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 the Trust Legal Provisions and are provided without
   warranty as described in the Simplified BSD License.


Lin, et al.             Expire March 6, 2024                 [Page 1]


Internet-Draft      Advertise SRv6 Service SID in IGP      January 2023


Table of Contents


   1. Introduction...................................................2
   2. Problem Statement..............................................2
   3. IGP Solution based on SRv6.....................................3
   4. IS-IS Extensions...............................................3
   5. OSPFv3 Extensions..............................................5
   6. Extensions for TE..............................................6
   7. Example........................................................6
   8. Security Considerations........................................7
   9. IANA Considerations............................................7
   10. References....................................................7
      10.1. Normative References.....................................7
      10.2. Informative References...................................8
   Authors' Addresses................................................9

1. Introduction

   Segment Routing (SR) [RFC8402] is a source routing paradigm that
   explicitly indicates the forwarding path for packets at the ingress
   node. SRv6 refers to Segment Routing instantiated on the IPv6
   dataplane. [RFC9252] describes how BGP messages may carry SRv6
   Service SIDs to interconnect PEs and form VPNs.

   The IPv6 backbone networks only deploying IGP may be required to
   interconnect IPv4 islands. SRv6 Service SIDs like End.DT4 may be
   used to realize such requirements. This document extends IS-IS and
   OSPFv3 to advertise SRv6 Service SIDs.

2. Problem Statement

   There are situations such as those described in [RFC5565] where it
   is required to establish connectivity between 'islands' of IPv4
   networks across a transit backbone of IPv6 network.

              IPv6 Backbone
             +-------------+
   +------+  |             |  +------+
   | IPv4 |--+-A----B----C-+--| IPv4 |
   +------+  |             |  +------+
             +-------------+

   Figure 1: IPv4 Islands across IPv6 Backbone

   [RFC8950] specifies the BGP extensions to allow the advertising of
   IPv4 NLRI with a next-hop address that belongs to the IPv6 protocol.
   [RFC9252] defines procedures and messages for BGP based L3 Service

Lin, et al.             Expires March 6, 2024                [Page 2]


Internet-Draft      Advertise SRv6 Service SID in IGP    September 2023


   over SRv6, which uses SRv6 Service SIDs to interconnect PEs and form
   VPNs.

   Take the network in Figure 1 as an example. Router A and C are BGP
   speakers. They exchange the prefixes of IPv4 islands by using BGP
   IPv4 NLRIs whose next hop is the peer's IPv6 address. In addition,
   SRv6 Service SID with End.DT4 (Decapsulation and Specific IPv4 Table
   Lookup) behavior is carried in the BGP Prefix-SID attribute. When
   the traffics from IPv4 islands need to traverse the IPv6 backbone,
   router A and C encapsulate the payload in in an outer IPv6 header
   where the destination address is the SRv6 Service SID.

   For the IPv6 backbone networks not deploying BGP, for example, the
   campus network using IS-IS or OSPFv3, it is expected to extend IS-IS
   or OSPFv3 to support such services.

3. IGP Solution based on SRv6

   In an IPv6 backbone network which only deploys IGP, SRv6 Service SID
   like End.DT4 may be used to interconnect IPv4 islands.

   The edge router advertises IPv4 prefixes along with an SRv6 Service
   SID in IGP. When an ingress edge router forwards IPv4 packets across
   the IPv6 backbone, it encapsulates the payload in an outer IPv6
   header where the destination address is the SRv6 Service SID
   provided by the egress router. The edge routers must be SR-enabled,
   while the underlay between the edge routers only needs to support
   plain IPv6 forwarding. When an egress edge router receives the
   packets whose IPv6 destination address is an SRv6 Service SID
   instantiated by itself, it will decapsulate the outer IPv6 header
   and perform IPv4 table lookup to forward the inner IPv4 packet.

   Besides, the SRv6 Service SID may also be advertised with IPv6
   prefixes, which can be used to support SRv6-TE Services in IGP.

4. IS-IS Extensions

   The IS-IS SRv6 Service SID Sub-TLV is defined in this document to
   advertise SRv6 Service SIDs in IS-IS.

   The IS-IS SRv6 Service SID Sub-TLV has the following format:







Lin, et al.             Expires March 6, 2024                [Page 3]


Internet-Draft      Advertise SRv6 Service SID in IGP    September 2023


    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
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |     Type      |     Length    |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                  SRv6 SID Value (16 octets)                  //
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |     SRv6 Endpoint Behavior    |           Reserved            |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |Sub-sub-tlv-len|          Sub-sub-TLVs (variable)             //
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   o Type: TBD.

   o Length: 1 octet. The length value is variable.

   o SRv6 SID Value: 16 octets. Encodes an SRv6 SID as defined in
      [RFC8986].

   o SRv6 Endpoint Behavior: 2 octets. Encodes SRv6 Endpoint behavior
      codepoint value that is associated with SRv6 SID, as defined in
      [RFC8986].

   o Reserved: 2 octets. MUST be set to 0 by the sender and ignored by
      the receiver.

   o Sub-sub-tlv-len: 1 octet. Number of octets used by sub-sub-TLVs.

   o Sub-sub-TLVs: Optional Sub-sub-TLVs.

   IS-IS SRv6 Service SID Sub-TLV is applicable to TLVs 135, 235, 236,
   and 237. When the IS-IS SRv6 Service SID Sub-TLV appears, it means
   that the prefixes advertised in those TLV can be accessed via the
   associated SRv6 Service SID.

   The originator of IS-IS SRv6 Service SID Sub-TLV must also advertise
   the corresponding SRv6 Locator (covering prefix of the SRv6 Service
   SID) using the SRv6 Locator TLV [I-D.ietf-lsr-isis-srv6-extensions],
   so that forwarding entries for the SRv6 Locator can be installed in
   the forwarding plane of receiving routers. The Prefix Reachability
   TLV (TLV-236 or TLV-237) carrying the SRv6 Locator should also be
   advertised for SRv6 incapable routers.

   The receiver of IS-IS SRv6 Service SID Sub-TLV should check the
   reachability of that SID or its Locator. If it is reachable, the
   receiver may create forwarding entries of the associated prefix,
   with relevant instruction that the packet will be encapsulated in an


Lin, et al.             Expires March 6, 2024                [Page 4]


Internet-Draft      Advertise SRv6 Service SID in IGP    September 2023


   outer IPv6 header with the destination address of SRv6 Service SID
   and forwarded according to the SID or Locator.

   In cases where the prefix associated with SRv6 Service SID is
   reachable both by the SRv6 Service SID and the SPF computation, the
   SPF computation must be preferred when installing entries in the
   forwarding plane. This is to prevent inconsistent forwarding entries
   between SRv6 Service SID capable and incapable routers. So, it is
   recommended that the prefix associated with SRv6 Service SID is
   advertised with a metric larger than MAX_PATH_METRIC (0xFE000000).

5. OSPFv3 Extensions

   The OSPFv3 SRv6 Service SID Sub-TLV is defined in this document to
   advertise SRv6 Service SIDs in OSPFv3.

   The OSPFv3 SRv6 Service SID Sub-TLV has the following format:

    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
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |             Type              |            Length             |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                  SRv6 SID Value (16 octets)                  //
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |     SRv6 Endpoint Behavior    |           Reserved            |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                   Sub-sub-TLVs (variable)                    //
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   o Type: TBD.

   o Length: 2 octets. The length value is variable.

   o SRv6 SID Value: 16 octets. Encodes an SRv6 SID as defined in
      [RFC8986].

   o SRv6 Endpoint Behavior: 2 octets. Encodes SRv6 Endpoint behavior
      codepoint value that is associated with SRv6 SID, as defined in
      [RFC8986].

   o Reserved: 2 octets. MUST be set to 0 by the sender and ignored by
      the receiver.

   o Sub-sub-TLVs: Optional Sub-sub-TLVs.




Lin, et al.             Expires March 6, 2024                [Page 5]


Internet-Draft      Advertise SRv6 Service SID in IGP    September 2023


   OSPFv3 SRv6 Service SID Sub-TLV is applicable to External-Prefix
   TLV. The processing of OSPFv3 SRv6 Service SID Sub-TLV is similar
   with section 4.

6. Extensions for TE

   To provide SRv6 Traffic Engineering (TE) Services based on BGP, the
   egress router colors the overlay service route with a Color Extended
   Community for steering of flows for those routes into SRv6 Policies.

   IGP may also advertise the color information along with prefixes to
   support SRv6-TE Services. Such extensions will be described in the
   future version of this document.

7. Example

   An example network is shown as Figure 2. In the IPv6 backbone,
   router A, B and C run IS-IS. Router C advertises the prefix p1 in
   IPv4 island 2 using TLV-135 along with IS-IS SRv6 Service SID Sub-
   TLV carrying the End.DT4 SID s1. Router A creates a forwarding entry
   for prefix p1 with SID s1. When a packet from IPv4 island 1 to p1 in
   IPv4 island 2 needs to traverse the IPv6 backbone, router A
   encapsulates an outer IPv6 head whose DA is s1. Then the packet is
   forwarded to C. According to the function of s1, C decapsulates the
   outer IPv6 header and performs IPv4 table lookup to forward the
   inner IPv4 packet to IPv4 island 2.






















Lin, et al.             Expires March 6, 2024                [Page 6]


Internet-Draft      Advertise SRv6 Service SID in IGP    September 2023


                  <-------------------IS-IS LSP
                                       IPv4 Prefix: p1
                                        SRv6 End.DT4 SID: s1

                  |<- IPv6 Backbone ->|
   IPv4 Island 1--A---------B---------C--IPv4 Island 2

                  +-------+   +-------+
                  | IPv6  |   | IPv6  |
                  | DA=s1 |   | DA=s1 |
      +-------+   +-------+   +-------+   +-------+
      | IPv4  |   | IPv4  |   | IPv4  |   | IPv4  |
      | DA=p1 |   | DA=p1 |   | DA=p1 |   | DA=p1 |
      +-------+ > +-------+ > +-------+ > +-------+
      |Payload|   |Payload|   |Payload|   |Payload|
      +-------+   +-------+   +-------+   +-------+

   Figure 2: Example Network

8. Security Considerations

   TBD

9. IANA Considerations

   TBD

10. References

10.1. 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>.

   [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
             2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
             May 2017, <https://www.rfc-editor.org/info/rfc8174>.

   [RFC8402] Filsfils, C., Ed., Previdi, S., Ed., Ginsberg, L.,
             Decraene, B., Litkowski, S., and R. Shakir, "Segment
             Routing Architecture", RFC 8402, DOI 10.17487/RFC8402,
             July 2018, <https://www.rfc-editor.org/info/rfc8402>.

   [RFC5565] Wu, J., Cui, Y., Metz, C., and E. Rosen, "Softwire Mesh
             Framework", RFC 5565, DOI 10.17487/RFC5565, June 2009,
             <https://www.rfc-editor.org/info/rfc5565>.

Lin, et al.             Expires March 6, 2024                [Page 7]


Internet-Draft      Advertise SRv6 Service SID in IGP    September 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>.

   [RFC9252] Dawra, G., Ed., Talaulikar, K., Ed., Raszuk, R., Decraene,
             B., Zhuang, S., and J. Rabadan, "BGP Overlay Services
             Based on Segment Routing over IPv6 (SRv6)", RFC 9252, DOI
             10.17487/RFC9252, July 2022, <https://www.rfc-
             editor.org/info/rfc9252>.

10.2. Informative References

   [RFC8950] Litkowski, S., Agrawal, S., Ananthamurthy, K., and K.
             Patel, "Advertising IPv4 Network Layer Reachability
             Information (NLRI) with an IPv6 Next Hop", RFC 8950, DOI
             10.17487/RFC8950, November 2020, <https://www.rfc-
             editor.org/info/rfc8950>.

   [I-D.ietf-lsr-isis-srv6-extensions] Psenak, P., Filsfils, C.,
             Bashandy, A., Decraene, B., and Z. Hu, "IS-IS Extensions
             to Support Segment Routing over IPv6 Dataplane", draft-
             ietf-lsr-isis-srv6-extensions-19 (work in progress),
             November 2022.























Lin, et al.             Expires March 6, 2024                [Page 8]


Internet-Draft      Advertise SRv6 Service SID in IGP    September 2023


Authors' Addresses

   Changwang Lin
   New H3C Technologies

   Email: linchangwang.04414@h3c.com


   Mengxiao Chen
   New H3C Technologies

   Email: chen.mengxiao@h3c.com


   Hao Li
   New H3C Technologies

   Email: lihao@h3c.com






























Lin, et al.             Expires March 6, 2024                [Page 9]