LSR Workgroup A. Lindem
Internet-Draft Cisco Systems
Intended status: Standards Track Y. Qu
Expires: March 14, 2021 Futurewei
A. Roy
Arrcus, Inc.
S. Mirtorabi
Cisco Systems
September 10, 2020
OSPF Transport Instance Extensions
draft-acee-lsr-ospf-transport-instance-00
Abstract
OSPFv2 and OSPFv3 include a reliable flooding mechanism to
disseminate routing topology and Traffic Engineering (TE) information
within a routing domain. Given the effectiveness of these
mechanisms, it is convenient to envision using the same mechanism for
dissemination of other types of information within the domain.
However, burdening OSPF with this additional information will impact
intra-domain routing convergence and possibly jeopardize the
stability of the OSPF routing domain. This document presents
mechanism to relegate this ancillary information to a separate OSPF
instance and minimize the impact.
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 14, 2021.
Lindem, et al. Expires March 14, 2021 [Page 1]
Internet-Draft OSPF Transport Instance September 2020
Copyright Notice
Copyright (c) 2020 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 . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Requirements Language . . . . . . . . . . . . . . . . . . . . 3
3. Possible Use Cases . . . . . . . . . . . . . . . . . . . . . 3
3.1. MEC Service Discovery . . . . . . . . . . . . . . . . . . 3
3.2. Application Data Dissemination . . . . . . . . . . . . . 4
4. OSPF Transport Instance . . . . . . . . . . . . . . . . . . . 4
4.1. OSPFv2 Transport Instance Packet Differentiation . . . . 4
4.2. OSPFv3 Transport Instance Packet Differentiation . . . . 5
4.3. Instance Relationship to Normal OSPF Instances . . . . . 5
4.3.1. Ships in the Night Relationship to Normal OSPF
Instances . . . . . . . . . . . . . . . . . . . . . . 5
4.3.2. Tighter Coupling with Normal OSPF Instances . . . . . 5
4.4. Network Prioritization . . . . . . . . . . . . . . . . . 5
4.5. OSPF Transport Instance Omission of Routing Calculation . 6
4.6. Non-routing Instance Separation . . . . . . . . . . . . . 6
4.7. Non-Routing Sparse Topologies . . . . . . . . . . . . . . 7
4.7.1. Remote OSPF Neighbor . . . . . . . . . . . . . . . . 7
5. OSPF Transport Instance Information Encoding . . . . . . . . 8
5.1. OSPFv2 Transport Instance Information Encoding . . . . . 8
5.2. OSPFv3 Transport Instance Information Encoding . . . . . 8
6. Manageability Considerations . . . . . . . . . . . . . . . . 9
7. Security Considerations . . . . . . . . . . . . . . . . . . . 9
8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 9
9. Acknowledgement . . . . . . . . . . . . . . . . . . . . . . . 9
10. References . . . . . . . . . . . . . . . . . . . . . . . . . 9
10.1. Normative References . . . . . . . . . . . . . . . . . . 9
10.2. Informative References . . . . . . . . . . . . . . . . . 10
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 10
Lindem, et al. Expires March 14, 2021 [Page 2]
Internet-Draft OSPF Transport Instance September 2020
1. Introduction
OSPFv2 [RFC2328] and OSPFv3 [RFC5340] include a reliable flooding
mechanism to disseminate routing topology and Traffic Engineering
(TE) information within a routing domain. Given the effectiveness of
these mechanisms, it is convenient to envision using the same
mechanism for dissemination of other types of information within the
domain. However, burdening OSPF with this additional information
will impact intra-domain routing convergence and possibly jeopardize
the stability of the OSPF routing domain. This document presents
mechanism to relegate this ancillary information to a separate OSPF
instance and minimize the impact.
This OSPF protocol extension provides functionality similar to
"Advertising Generic Information in IS-IS" [RFC6823]. Additionally,
OSPF is extended to support sparse non-routing overlay topologies
Section 4.7.
2. Requirements Language
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. Possible Use Cases
3.1. MEC Service Discovery
Multi-Access Edge Computing (MEC) plays an important role in 5G
architecture. MEC optimizes the performance for ultra-low latency
and high bandwidth services by providing networking and computing at
the edge of the network [ETSI-WP28-MEC]. To achieve this goal, it's
important to expose the network capabilities and services of a MEC to
UEs.
The followings are an incomplete list of the kind of information that
OSPF transport instance can help to disseminate:
o A network service is realized using one or more physical or
virtualized hosts in MEC, and the locations of these service
points might change. The auto-discovery of these service
locations can be achieved using an OSPF transport instance.
o UEs might be mobile, and MEC should support service continuity and
application mobility. This may require service state transferring
Lindem, et al. Expires March 14, 2021 [Page 3]
Internet-Draft OSPF Transport Instance September 2020
and synchronization. OSPF transport instance can be used to
synchronize these states.
o Network resources are limited, such as computing power, storage.
The availability of such resources is dynamic, and OSPF transport
instance can be used to populate such information, so applications
can pick the right location of such resources, hence improve user
experience and resource utilization.
3.2. Application Data Dissemination
Typically a network consists of routers from different vendors with
different capabilities, and some applications may want to know
whether a router supports certain functionality or where to find a
router supports a functionality, so it will be ideal if such kind of
information is known to all routers or a group of routers in the
network. For example, an ingress router needs to find an egress
router that supports In-situ Flow Information Telemetry (IFIT)
[I-D.wang-lsr-igp-extensions-ifit].
OSPF transport instance can be used to populate such router
capabilities/functionalities without impacting the performance of
being a routing protocol.
4. OSPF Transport Instance
In order to isolate the effects of flooding and processing of non-
routing information, it will be relegated to a separate protocol
instance. This instance should be given lower priority when
contending for router resources including processing, backplane
bandwidth, and line card bandwidth. How that is realized is an
implementation issue and is outside the scope of this document.
Throughout the document, non-routing refers to routing information
that is not used for IP or IPv6 routing calculations. The OSPF
transport instance is ideally suited for dissemination of routing
information for other protocols and layers.
4.1. OSPFv2 Transport Instance Packet Differentiation
OSPFv2 currently does not offer a mechanism to differentiate
Transport instance packets from normal instance packets sent and
received on the same interface. However, the [RFC6549] provides the
necessary packet encoding to support multiple OSPF protocol
instances.
Lindem, et al. Expires March 14, 2021 [Page 4]
Internet-Draft OSPF Transport Instance September 2020
4.2. OSPFv3 Transport Instance Packet Differentiation
Fortunately, OSPFv3 already supports separate instances within the
packet encodings. The existing OSPFv3 packet header instance ID
field will be used to differentiate packets received on the same link
(refer to section 2.4 in [RFC5340]).
4.3. Instance Relationship to Normal OSPF Instances
There are basically two alternatives for the relationship between a
normal OSPF instance and an OSPF transport instance. In both cases,
we must guarantee that any information we've received is treated as
valid if and only if the router sending it is reachable. We'll refer
to this as the "condition of reachability" in this document.
1. Ships in the Night - The OSPF transport instance has no
relationship or dependency on any other OSPF instance.
2. Child Instance - The OSPF transport instance has a child-parent
relationship with a normal OSPF instance and is dependent on this
for topology information and assuring the "condition of
reachability".
4.3.1. Ships in the Night Relationship to Normal OSPF Instances
In this mode, the OSPF transport instance is not dependent on any
other OSPF instance. It does, however, have much of the same as
topology information must be advertised to satisfy the "condition of
reachability".
Prefix information does not need to be advertised. This implies that
for OSPFv2, only router-LSAs, network-LSAs, and type 4 summary-LSAs
need to be advertised. In the router-LSAs, the stub (type 3) links
may be suppressed. For OSPFv3, this implies that router-LSAs,
network-LSAs, and inter-area-router-LSAs must be advertised.
4.3.2. Tighter Coupling with Normal OSPF Instances
Further optimizations and coupling between an OSPF transport instance
and a normal OSPF instance are beyond the scope of this document.
This is an area for future study.
4.4. Network Prioritization
While OSPFv2 (section 4.3 in [RFC2328]) are normally sent with IP
precedence Internetwork Control, any packets sent by an OSPF
transport instance will be sent with IP precedence Flash (B'011').
Lindem, et al. Expires March 14, 2021 [Page 5]
Internet-Draft OSPF Transport Instance September 2020
This is only appropriate given that this is a pretty flashy
mechanism.
Similarly, OSPFv3 transport instance packets will be sent with the
traffic class mapped to flash (B'011') as specified in ([RFC5340]).
By setting the IP/IPv6 precedence differently for OSPF transport
instance packets, normal OSPF routing instances can be given priority
during both packet transmission and reception. In fact, some router
implementations map the IP precedence directly to their internal
packet priority. However, internal router implementation decisions
are beyond the scope of this document.
4.5. OSPF Transport Instance Omission of Routing Calculation
Since the whole point of the transport instance is to separate the
routing and non-routing processing and fate sharing, a transport
instance SHOULD NOT install any IP or IPv6 routes. OSPF routers
SHOULD NOT advertise any transport instance LSAs containing IP or
IPv6 prefixes and OSPF routers receiving LSAs advertising IP or IPv6
prefixes SHOULD ignore them. This implies that an OSPFv2 transport
instance Link State Database should not include any summary-LSAs
(type 3) , AS-external-LSAs (type 5), or NSSA-LSAs (type 7) and the
router-LSAs should not include any stub (type 3) links. An OSPFv3
transport instance Link State database should not include any inter-
area-prefix-LSAs (type 0x2003), AS-external-LSAs (0x4005), NSSA-LSAs
(type 0x2007), or intra-area-prefix-LSAs (type 0x2009). If they are
erroneously advertised, they will be flooded as per standard OSPF but
MUST be ignored by OSPF routers supporting this specification.
4.6. Non-routing Instance Separation
It has been suggested that an implementation could obtain the same
level of separation between IP routing information and non-routing
information in a single instance with slight modifications to the
OSPF protocol. The authors refute this contention for the following
reasons:
o Adding internal and external mechanisms to prioritize routing
information over non-routing information are much more complex
than simply relegating the non-routing information to a separate
instance as proposed in this specification.
o The instance boundary offers much better separation for allocation
of finite resources such as buffers, memory, processor cores,
sockets, and bandwidth.
Lindem, et al. Expires March 14, 2021 [Page 6]
Internet-Draft OSPF Transport Instance September 2020
o The instance boundary decreases the level of fate sharing for
failures. Each instance may be implemented as a separate process
or task.
o With non-routing information, many times not every router in the
OSPF routing domain requires knowledge of every piece of non-
routing information. In these cases, groups of routers which need
to share information can be segregated into sparse topologies
greatly reducing the amount of non-routing information any single
router needs to maintain.
4.7. Non-Routing Sparse Topologies
With non-routing information, many times not every router in the OSPF
routing domain requires knowledge of every piece of non-routing
information. In these cases, groups of routers which need to share
information can be segregated into sparse topologies. This will
greatly reduce the amount of information any single router needs to
maintain with the core routers possibly not requiring any non-routing
information at all.
With normal OSPF, every router in an OSPF area must have every piece
of topological information and every intra-area IP or IPv6 prefix.
With non-routing information, only the routers needing to share a set
of information need be part of the corresponding sparse topology.
For directly attached routers, one only needs to configure the
desired topologies on the interfaces with routers requiring the non-
routing information. When the routers making up the sparse topology
are not part of a uniconnected graph, two alternatives exist. The
first alternative is configure tunnels to form a fully connected
graph including only those routers in the sparse topology. The
second alternative is use remote neighbors as described in
Section 4.7.1.
4.7.1. Remote OSPF Neighbor
With sparse topologies, OSPF routers sharing non-routing information
may not be directly connected. OSPF adjacencies with remote
neighbors are formed exactly as they are with regular OSPF neighbors.
The main difference is that a remote OSPF neighbor's address is
configured and IP routing is used to deliver OSPF protocol packets to
the remote neighbor. Other salient feature of the remote neighbor
include:
o All OSPF packets have the remote neighbor's configured IP address
as the IP destination address.
Lindem, et al. Expires March 14, 2021 [Page 7]
Internet-Draft OSPF Transport Instance September 2020
o The adjacency is represented in the router Router-LSA as a router
(type-1) link with the link data set to the remote neighbor's
configured IP address.
o Similar to NBMA networks, a poll-interval is configured to
determine if the remote neighbor is reachable. This value is
normally much higher than the hello interval with 40 seconds
RECOMMENDED as the default.
5. OSPF Transport Instance Information Encoding
The format of the TLVs within the body of an LSA containing non-
routing information is the same as the format used by the Traffic
Engineering Extensions to OSPF [RFC3630]. The LSA payload consists
of one or more nested Type/Length/Value (TLV) triplets. The format
of each TLV is:
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 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Value... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
TLV Format
However, each unique application using the mechanisms defined in this
document will have it's own unique ID. Whether to encode this ID as
the top-level TLV or make it part of the OSPF LSA ID is open for
debate.
The specific TLVs and sub-TLVs relating to a given application and
the corresponding IANA considerations MUST for standard applications
MUST be specified in the document corresponding to that application.
5.1. OSPFv2 Transport Instance Information Encoding
Application specific information will be flooded in opaque LSAs as
specified in [RFC5250].
5.2. OSPFv3 Transport Instance Information Encoding
Application specific information will be flooded in separate LSAs
with separate function codes. Refer to section A.4.2.1 of [RFC5340].
for information on the LS Type encoding in OSPFv3.
Lindem, et al. Expires March 14, 2021 [Page 8]
Internet-Draft OSPF Transport Instance September 2020
6. Manageability Considerations
7. Security Considerations
The security considerations for the Transport Instance will not be
different for those for OSPFv2 [RFC2328] and OSPFv3 [RFC5340].
8. IANA Considerations
No IANA actions are required.
9. Acknowledgement
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>.
[RFC2328] Moy, J., "OSPF Version 2", STD 54, RFC 2328,
DOI 10.17487/RFC2328, April 1998,
<https://www.rfc-editor.org/info/rfc2328>.
[RFC3630] Katz, D., Kompella, K., and D. Yeung, "Traffic Engineering
(TE) Extensions to OSPF Version 2", RFC 3630,
DOI 10.17487/RFC3630, September 2003,
<https://www.rfc-editor.org/info/rfc3630>.
[RFC5250] Berger, L., Bryskin, I., Zinin, A., and R. Coltun, "The
OSPF Opaque LSA Option", RFC 5250, DOI 10.17487/RFC5250,
July 2008, <https://www.rfc-editor.org/info/rfc5250>.
[RFC5340] Coltun, R., Ferguson, D., Moy, J., and A. Lindem, "OSPF
for IPv6", RFC 5340, DOI 10.17487/RFC5340, July 2008,
<https://www.rfc-editor.org/info/rfc5340>.
[RFC6549] Lindem, A., Roy, A., and S. Mirtorabi, "OSPFv2 Multi-
Instance Extensions", RFC 6549, DOI 10.17487/RFC6549,
March 2012, <https://www.rfc-editor.org/info/rfc6549>.
[RFC6823] Ginsberg, L., Previdi, S., and M. Shand, "Advertising
Generic Information in IS-IS", RFC 6823,
DOI 10.17487/RFC6823, December 2012,
<https://www.rfc-editor.org/info/rfc6823>.
Lindem, et al. Expires March 14, 2021 [Page 9]
Internet-Draft OSPF Transport Instance September 2020
[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>.
10.2. Informative References
[ETSI-WP28-MEC]
Sami Kekki, etc., "MEC in 5G Networks", 2018,
<https://www.etsi.org/images/files/ETSIWhitePapers/
etsi_wp28_mec_in_5G_FINAL.pdf>.
[I-D.wang-lsr-igp-extensions-ifit]
Wang, Y., Zhou, T., Qin, F., Chen, H., and R. Pang, "IGP
Extensions for In-situ Flow Information Telemetry (IFIT)
Capability Advertisement", draft-wang-lsr-igp-extensions-
ifit-01 (work in progress), July 2020.
Authors' Addresses
Acee Lindem
Cisco Systems
301 Midenhall Way
CARY, NC 27513
UNITED STATES
Email: acee@cisco.com
Yingzhen Qu
Futurewei
2330 Central Expressway
Santa Clara, CA 95050
USA
Email: yingzhen.qu@futurewei.com
Abhay Roy
Arrcus, Inc.
Email: abhay@arrcus.com
Lindem, et al. Expires March 14, 2021 [Page 10]
Internet-Draft OSPF Transport Instance September 2020
Sina Mirtorabi
Cisco Systems
170 West Tasman Drive
San Jose, CA 95134
USA
Email: smirtora@cisco.com
Lindem, et al. Expires March 14, 2021 [Page 11]