LSR Working Group A. Wang
Internet-Draft China Telecom
Intended status: Standards Track A. Lindem
Expires: May 28, 2020 Cisco Systems
J. Dong
Huawei Technologies
P. Psenak
K. Talaulikar
Cisco Systems
November 25, 2019

OSPF Prefix Originator Extension
draft-ietf-lsr-ospf-prefix-originator-05

Abstract

This document defines Open Shortest Path First (OSPF) encodings to advertise the router-id of the originator of inter-area prefixes for OSPFv2 and OSPFv3 Link-State Advertisements (LSAs). The source originator is needed in several multi-area OSPF use cases.

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 May 28, 2020.

Copyright Notice

Copyright (c) 2019 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 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.


Table of Contents

1. Introduction

[I-D.ietf-ospf-mpls-elc] defines mechanisms to advertise Entropy Readable Label Depth (ERLD) for ingress Label Switching Routers (LSR) to discover other LSR's capability of performing Entropy Label based load-balancing in MPLS networks. The ingress LSR can use this information to construct the appropriate label stack for specific traffic requirements, especially in segment routed networks and other deployments requiring stacked LSPs.

However, in inter-area scenarios, the Area Border Router (ABR) does not advertise the originating OSPF router-id for inter-area prefixes. An OSPF router in one area doesn't know the origin area of inter-area prefixes and can't determine the router that originated these prefixes or the ERLD capabilities of the destination. Therefore, it is necessary to advertise the originator of these inter-area prefixes to ensure the ingress LSR can construct the appropriate label stack.

More generally, [RFC8476] defines a mechanism to advertise multiple types of supported Maximum SID Depths (MSD) at node and/or link granularity. This information will be referred when the head-end router starts to send traffic to destination prefixes. In inter-area scenario, it is also necessary for the sender to learn the capabilities of the receivers associated with the inter-area prefixes.

There is another scenario where knowing the originator of inter-area prefixes is useful. For example, Border Gateway Protocol Link-State (BGP-LS) [RFC7752] describes mechanisms using the BGP protocol to advertise Link-State information. This information can enable a Software Definition Network (SDN) controller to automatically determine the underlay network topology.

However, if the underlay network is partitioned into multiple areas and running the OSPF protocol, it is not easy for the SDN controller to rebuild the multi-area topology since ABR that connects multiple areas will normally hide the detailed topology for these non-backbone areas. If only the internal routers within backbone area run the BGP-LS protocol, they just learn and report the summary network information from the non-backbone areas. If the SDN controller can learn the originator of the inter-area prefixes, it is possible to rebuild the inter-area topology.

[RFC7794] introduces the Intermediate System to Intermediate System (IS-IS) "IPv4/IPv6 Source Router IDs" Type-Length-Value (TLV) to advertise the source of prefixes leaked from a different IS-IS level. This TLV can be used in the above scenarios. Such solution can also be applied in networks that run the OSPF protocol, but existing OSPF LSAs TLVs must be extended to include the router originating the prefix.

This draft provides such solution for the OSPFv2 [RFC2328] and OSPFv3 [RFC5340] protocols.

2. Conventions used in this document

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here.

3. Terminology

The following terms are used in this document:

4. Inter-Area Prefix Source Advertisement Use Cases

Figure 1 illustrates a topology where OSPF is running in multiple areas. R0-R4 are routers in the backbone area, S1-S4 are internal routers in area 1, and T1-T4 are internal routers in area 2. R1 and R3 are ABRs between area 0 and area 1. R2 and R4 are ABRs between area 0 and area 2. N1 is the network between router S1 and S2 and N2 is the network between router T1 and T2. Ls1 is the loopback address of Node S1 and Lt1 is the loopback address of Node T1.

                     +-----------------+
                     |IP SDN Controller|
                     +--------+--------+
                              |
                              | BGP-LS
                              |
 +---------------------+------+--------+-----+--------------+
 | +--+        +--+   ++-+   ++-+    +-++   + -+        +--+|
 | |S1+--------+S2+---+R1+---|R0+----+R2+---+T1+--------+T2||
 | +-++   N1   +-++   ++-+   +--+    +-++   ++++   N2   +-++|
 |   |           |     |               |     ||           | |
 |   |           |     |               |     ||           | |
 | +-++        +-++   ++-+           +-++   ++++        +-++|
 | |S4+--------+S3+---+R3+-----------+R4+---+T3+--------+T4||
 | +--+        +--+   ++-+           +-++   ++-+        +--+|
 |                     |               |                    |
 |                     |               |                    |
 |         Area 1      |     Area 0    |      Area 2        |
 +---------------------+---------------+--------------------+

       Figure 1: OSPF Inter-Area Prefix Originator Scenario

If S1 wants to send traffic to prefix Lt1 that is connected to T1 in another area, it should know the ERLD and MSD values associated with the node T1, and then construct the right label stack at the ingress node for traffic destined to prefix Lt1.

In another scenario, If R0 has some method to learn the originator of network N1 and reports such information to IP SDN controller, then it is possible for the controller to reconstruct the topology in the non-backbone areas. The topology reconstruction process and its limitations are described in the Appendix A and Appendix B.

5. External Prefix Source Advertisement Use Cases

Figure 2 illustrates a topology where OSPF is running in different domain that is connected by an Autonomous System Border Router (ASBR). A, B, and C are routers in the Domain 1; C, D, and E are routers in Domain 2. Router C is the ASBR between the two domains.

When router E receives an external prefix, it will redistribute it as an AS-External LSA within domain 2. When C receives such LSA, the originator information for such external prefix will be lost when it encodes the prefix information with the current LSA format field. In some situations, it will be helpful if C can advertise such originator information.

+-------------------------------------------------------------------+
|                              |                    External Prefix |
| +---+       +---+          +---+         +---+         +-|-+      |
| | A +-------+ B +----------| C +---------+ D +---------+ E |------|
| +---+       +---+          +---+         +---+         +---+      |
|        Domain 1              |                 Domain 2           |
+-------------------------------------------------------------------+

       Figure 2: OSPF External Prefix Originator Scenario

From the above scenarios, we can conclude that it is useful to define the OSPF prefix originator sub TLV .

6. Prefix Source Router-ID sub-TLV

[RFC7684] and [RFC8362] respectively define TLV-based LSAs for OSPFv2 and OSPFv3. These documents facilitate addition of new attributes for prefixes and provide the basis for a sub-TLV to advertise the "Prefix Source Router ID". For OSPFv2, this sub-TLV is a sub-TLV of OSPFv2 Extended Prefix TLV which SHOULD be included in the "OSPFv2 Extended Prefix Opaque LSA" [RFC7684] for inter-area prefixes. For OSPFv3, this sub-TLV is a sub-TLV of "Inter-Area-Prefix TLV", which SHOULD be included in the "E-Inter-Area-Prefix-LSA" [RFC8362].

The "Prefix Source Router-ID" 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           |
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 |                Prefix Source Router-ID                        |
 +---------------------------------------------------------------+
        Figure 3: Prefix Source Router-ID sub-TLV Format
   

This sub-TLV provides the same functionality as the IS-IS "IPv4/IPv6 Source Router" TLV defined in [RFC7794].

7. Elements of Procedure

The following sections describe the procedure to include the newly defined "Source Router-ID Sub-TLV" in the related LSA for inter-area prefixes and external prefixes respectively.

7.1. Inter-Area Prefixes

When an ABR, for example R2 in Figure 1, receives a Router-LSA advertisement in area 2, it SHOULD originate the corresponding "OSPFv2 Extended Prefix Opaque LSA" for OSPFv2 or "E-Inter-Area-Prefix-LSA" for OSPFv3 that includes the Source Router-ID sub-TLV for the network prefixes. For example, to identify the source router prefix Lt1 and other inter-area prefixes in Figure 1.

When a router in another area, e.g., S1, receives such LSA, it then can ascertain that prefix Lt1 is associated with node T1 and obtain the ERLD or MSD value from T1's Router-Information LSA [RFC7770] and construct the right label stack at the ingress node S1 for traffic destined to prefix Lt1.

When a router in another area, e.g., R0, receives such LSA, it learns the Prefix Source Router-id and includes it in the prefix information advertised to an SDN controller as described in [I-D.ietf-idr-bgp-ls-segment-routing-ext]. The SDN controller can then use such information to build the inter-area topology according to the process described in the Appendix A. The topology retrieval process may not suitable for some environments as stated in Appendix B.

7.2. External Prefixes

When an ASBR, for example C in Figure 2, receives an AS-External LSA for an external prefix in domain 2, it SHOULD extract the originator information from the "Advertising Router" field from the LSA header. When the prefix is advertised into domain 1 as an AS-External LSA, router C may also advertise the Source Router-ID using a AS-scoped OSPFv2 Extended Prefix Opaque LSA or as a Sub-TLV in the OSPFv3 AS-External LSA.

8. Security Considerations

Since this document extends the "OSPFv2 Extended Prefix LSA" and "OSPFv3 E-Inter-Area-Prefix LSA", the security considerations for [RFC7684] and [RFC8362] are applicable.

Modification of the "Prefix Source Sub-TLV" could be used for a Denial-of-Service attack and could inhibit the use cases described in Section 4. If the OSPF domain is vulnerable to such attacks, OSPF authentication should be used as defined for OSPFv2 in [RFC5709] and [RFC7474] and for OSPFv3 in [RFC7166].

Additionally, advertisement of the prefix source for inter-area prefixes facilitates reconstruction of the OSPF topology for other areas. Network operators may consider their topologies to be sensitive confidential data. For OSPFv3, IPsec can be used to provide confidentiality [RFC4552]. Since there is no standard defined for native OSPFv2 IPsec, some form of secure tunnel is required to provide confidentiality.

9. IANA Considerations

This specification defines the Prefix Source Router-ID sub-TLV as described in Section 6. This value should be added to the both existing "OSPFv2 Extended Prefix TLV Sub-TLVs" and "OSPFv3 Extended-LSA Sub-TLVs" registries.

The following sub-TLV is added to the "OSPFv2 Extended Prefix TLV Sub-TLVs" registry. The allocation policy is IETF Review as defined in [RFC7684]

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|    Code Point  |   Description         |           Status       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|       4        | Prefix Source Sub-TLV |   Allocation from IANA |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 4:  Code Point in "OSPFv2 Extended Prefix TLV Sub-TLVs"

The following sub-TLV is added to the "OSPFv3 Extended-LSA Sub-TLVs" registry. The allocation policy is IETF Review as defined in [RFC8362]

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|    Code Point  |   Description         |           Status       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|       27       | Prefix Source Sub-TLV |   Allocation from IANA |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 5:  Code Point in "OSPFv3 Extended-LSA Sub-TLVs"

10. Acknowledgement

Many thanks to Les Ginsberg for his suggestions on this draft. Also thanks to Jeff Tantsura, Rob Shakir, Gunter Van De Velde, Goethals Dirk, Smita Selot, Shaofu Peng, and John E Drake for their valuable comments.

11. References

11.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.
[RFC2328] Moy, J., "OSPF Version 2", STD 54, RFC 2328, DOI 10.17487/RFC2328, April 1998.
[RFC4552] Gupta, M. and N. Melam, "Authentication/Confidentiality for OSPFv3", RFC 4552, DOI 10.17487/RFC4552, June 2006.
[RFC5340] Coltun, R., Ferguson, D., Moy, J. and A. Lindem, "OSPF for IPv6", RFC 5340, DOI 10.17487/RFC5340, July 2008.
[RFC5709] Bhatia, M., Manral, V., Fanto, M., White, R., Barnes, M., Li, T. and R. Atkinson, "OSPFv2 HMAC-SHA Cryptographic Authentication", RFC 5709, DOI 10.17487/RFC5709, October 2009.
[RFC7166] Bhatia, M., Manral, V. and A. Lindem, "Supporting Authentication Trailer for OSPFv3", RFC 7166, DOI 10.17487/RFC7166, March 2014.
[RFC7474] Bhatia, M., Hartman, S., Zhang, D. and A. Lindem, "Security Extension for OSPFv2 When Using Manual Key Management", RFC 7474, DOI 10.17487/RFC7474, April 2015.
[RFC7684] Psenak, P., Gredler, H., Shakir, R., Henderickx, W., Tantsura, J. and A. Lindem, "OSPFv2 Prefix/Link Attribute Advertisement", RFC 7684, DOI 10.17487/RFC7684, November 2015.
[RFC7770] Lindem, A., Shen, N., Vasseur, JP., Aggarwal, R. and S. Shaffer, "Extensions to OSPF for Advertising Optional Router Capabilities", RFC 7770, DOI 10.17487/RFC7770, February 2016.
[RFC7794] Ginsberg, L., Decraene, B., Previdi, S., Xu, X. and U. Chunduri, "IS-IS Prefix Attributes for Extended IPv4 and IPv6 Reachability", RFC 7794, DOI 10.17487/RFC7794, March 2016.
[RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, May 2017.
[RFC8362] Lindem, A., Roy, A., Goethals, D., Reddy Vallem, V. and F. Baker, "OSPFv3 Link State Advertisement (LSA) Extensibility", RFC 8362, DOI 10.17487/RFC8362, April 2018.
[RFC8476] Tantsura, J., Chunduri, U., Aldrin, S. and P. Psenak, "Signaling Maximum SID Depth (MSD) Using OSPF", RFC 8476, DOI 10.17487/RFC8476, December 2018.

11.2. Informative References

[I-D.ietf-idr-bgp-ls-segment-routing-ext] Previdi, S., Talaulikar, K., Filsfils, C., Gredler, H. and M. Chen, "BGP Link-State extensions for Segment Routing", Internet-Draft draft-ietf-idr-bgp-ls-segment-routing-ext-16, June 2019.
[I-D.ietf-ospf-mpls-elc] Xu, X., Kini, S., Psenak, P., Filsfils, C., Litkowski, S. and M. Bocci, "Signaling Entropy Label Capability and Entropy Readable Label-stack Depth Using OSPF", Internet-Draft draft-ietf-ospf-mpls-elc-12, October 2019.
[RFC7752] Gredler, H., Medved, J., Previdi, S., Farrel, A. and S. Ray, "North-Bound Distribution of Link-State and Traffic Engineering (TE) Information Using BGP", RFC 7752, DOI 10.17487/RFC7752, March 2016.

Appendix A. Inter-Area Topology Retrieval Process

When an IP SDN Controller receives BGP-LS [RFC7752] information, it should compare the prefix Network Layer Reachability Information (NLRI) that is included in the BGP-LS NLRI. When it encounters the same prefix but with different source router ID, it should extract the corresponding area-ID, rebuild the link between these two source routers in the non-backbone area. Below is one example that based on the Figure 1:

Assuming we want to rebuild the connection between router S1 and router S2 located in area 1:

  1. Normally, router S1 will advertise prefix N1 within its router-LSA.
  2. When this router-LSA reaches the ABR router R1, it will convert it into summary-LSA, add the Prefix Source Router-ID sub-TLV, which is router id of S1 in this example.
  3. R1 then floods this extension summary-LSA to R0, which is using the BGP-LS protocol with IP SDN Controller. The controller then knows the prefix for N1 is from S1.
  4. Router S2 will perform a similar process, and the controller will also learn that prefix N1 is also from S2.
  5. Then it can reconstruct the link between S1 and S2, using the prefix N1. The topology within Area 1 can then be reconstructed accordingly.

Iterating the above process continuously, the IP SDN controller can retrieve a detailed topology that spans multiple areas.

Appendix B. Special Considerations on Inter-Area Topology Retrieval

The above topology retrieval process can be applied in the case where each point-to-point or multi-access link connecting routers is assigned a unique prefix. However, there are some situations where this heuristic cannot be applied. Specifically, the cases where the link is unnumbered or the prefix corresponding to the link is an anycast prefix.

The Appendix A heuristic to rebuild the topology can normally be used if all links are numbered. For anycast prefixes, if it corresponds to the loopback interface and has a host prefix length, i.e., 32 for IPv4 prefixes and 128 for IPv6 prefixes, Appendix A can also applied since these anycast prefixes are not required to reconstruct the topology.

Authors' Addresses

Aijun Wang China Telecom Beiqijia Town, Changping District Beijing, 102209 China EMail: wangaj3@chinatelecom.cn
Acee Lindem Cisco Systems 301 Midenhall Way Cary, NC 27513 USA EMail: acee@cisco.com
Jie Dong Huawei Technologies Beijing, China EMail: jie.dong@huawei.com
Peter Psenak Cisco Systems Pribinova Street 10 Bratislava, Eurovea Centre, Central 3 81109 Slovakia EMail: ppsenak@cisco.com
Ketan Talaulikar Cisco Systems S.No. 154/6, Phase I, Hinjawadi Pune, 411 057 India EMail: ketant@cisco.com