RFC 7688

GMPLS OSPF Enhancement for Signal and Network Element Compatibility for Wavelength Switched Optical Networks

πŸ“… published November 2015, from ietf

RFC 7688 β€” GMPLS OSPF Enhancement for Signal and Network Element Compatibility for Wavelength Switched Optical Networks πŸ¦‹βœ¨

okay bestie, so this one is a Standards Track doc πŸ’… (it's officially a real Internet standard, not just vibes). It was written in November 2015 by Y. Lee, Ed. from Huawei and G. Bernstein, Ed. from Grotto Networking 🌸. It's published under ISSN 2070-1721, and it doesn't obsolete or update any other RFCs, so it's its own independent little main character πŸ‘‘.

The whole point is to add GMPLS OSPF routing enhancements so routers can account for signal compatibility constraints in Wavelength Switched Optical Networks (WSON) 🌈. In optical land, not every signal can talk to every piece of gear, and that matters a LOT when you're computing paths πŸ™ˆ.

Abstract

okay so the abstract is basically the TL;DR πŸ’– It says this doc gives GMPLS OSPF routing upgrades to handle signal compatibility constraints for WSON elements. These upgrades are for common optical or hybrid electro-optical networks where not every signal works with every element in the network 🧚

The model fits systems like OEO switches, regenerators, and wavelength converters, because those boxes can only handle certain types of WSON signals πŸ“

Status of This Memo

This is an Internet Standards Track document πŸŽ€. It's a product of the IETF, it reflects the consensus of the IETF community, it got public review, and the IESG approved it for publication 🫢. If you want more on Internet Standards, check out Section 2 of RFC 5741 πŸ“š.

Info about the current status, errata, and where to send feedback lives at http://www.rfc-editor.org/info/rfc7688 πŸ’œ.

Copyright (c) 2015 IETF Trust and the document authors, all rights reserved 🌈. This doc is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) as they were on the publication date πŸ’…. Read those carefully, because they spell out your rights 🫢.

Code Components pulled out of this doc MUST include Simplified BSD License text, as described in Section 4.e of the Trust Legal Provisions, and they come with no warranty as described in the Simplified BSD License πŸ”₯.

Table of Contents

Here's the full table of contents, copied exactly as the original lays it out πŸ’–:

1. Introduction ....................................................3
   1.1. Conventions Used in This Document ..........................3
2. The Optical Node Property TLV ...................................3
   2.1. Resource Block Information .................................4
   2.2. Resource Accessibility .....................................5
   2.3. Resource Wavelength Constraints ............................5
   2.4. Resource Block Pool State ..................................5
   2.5. Resource Block Shared Access Wavelength Availability .......5
3. Interface Switching Capability Descriptor (ISCD) Format
   Extensions ......................................................5
   3.1. Switching Capability Specific Information (SCSI) ...........6
4. WSON-Specific Scalability and Timeliness ........................7
5. Security Considerations .........................................8
6. IANA Considerations .............................................8
   6.1. Optical Node Property TLV ..................................8
        6.1.1. Optical Node Property Sub-TLV .......................8
   6.2. WSON-LSC Switching Type TLV ................................9
        6.2.1. WSON-LSC SCSI Sub-TLVs ..............................9
7. References .....................................................10
   7.1. Normative References ......................................10
   7.2. Informative References ....................................10
Authors' Addresses ................................................12

1. Introduction ✨

The docs [RFC6163], [RFC7446], and [RFC7581] explain how to extend the WSON control plane so it can support multiple WSON signal types, common hybrid electro-optical systems, and hybrid systems that contain optical switching and electro-optical resources πŸ¦‹. In WSON, not every optical signal is compatible with every network element, so signal compatibility is a big deal for path computation πŸ’€.

This doc brings GMPLS OSPF routing enhancements for signal compatibility constraints tied to general WSON network elements 🌸. These upgrades are for common optical or hybrid electro-optical networks where not all the optical signals work with all the elements πŸ’….

The compatibility model applies to common optical or hybrid electro-optical systems like OEO switches, regenerators, and wavelength converters, since those systems can only process certain types of WSON signals πŸ“.

Related to this is [RFC7580], which adds GMPLS OSPF routing enhancements for the generic routing and label assignment process, and that can apply to a wider range of technologies beyond WSON 🧚.

1.1. Conventions Used in This Document

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 [RFC2119] πŸ’œ. (Yes, these are the official requirement words, so they're doing a lot of work 🫢.)

2. The Optical Node Property TLV πŸŽ€

[RFC3630] defines the OSPF Traffic Engineering (TE) Link State Advertisement (LSA) using an opaque LSA 🌈. This doc adds a new top-level TLV for the OSPF TE LSA called the Optical Node Property TLV πŸ‘‘. It describes a single node and is made up of a set of optional sub-TLVs. There are no ordering requirements for the sub-TLVs πŸ¦‹.

When you use the extensions in this doc, at least one Optical Node Property TLV MUST be advertised in each LSA πŸ”₯. To allow fine-grained topology changes, more than one Optical Node Property TLV MAY be advertised in a single LSA πŸ’–. Implementations MUST support receiving multiple Optical Node Property TLVs in an LSA 🫢.

The Optical Node Property TLV holds all the WSON-specific node properties and signal compatibility constraints 🌸. The detailed encodings are defined in [RFC7581] πŸ“š.

These are the sub-TLVs of the Optical Node Property TLV that are defined here 🧚:

Value    Length      Sub-TLV Type

1        variable    Resource Block Information
2        variable    Resource Accessibility
3        variable    Resource Wavelength Constraints
4        variable    Resource Block Pool State
5        variable    Resource Block Shared Access Wavelength
                     Availability

The detailed encodings of these sub-TLVs are in [RFC7581], as the table below shows πŸ“:

Sub-TLV Type                                Section from [RFC7581]

Resource Block Information                               4
Resource Accessibility                                   3.1
Resource Wavelength Constraints                          3.2
Resource Block Pool State                                3.3
Resource Block Shared Access Wavelength Availability     3.4

Every sub-TLV defined here may occur at most once in any given Optical Node TLV under one TE LSA πŸ’…. If more than one copy of a sub-TLV shows up in the same LSA, the redundant sub-TLV SHOULD be ignored πŸ™ˆ. If the same sub-TLV is advertised in a different TE LSA (which would only happen with a packaging error), then the sub-TLV with the largest LSA ID (Section 2.2 of RFC 3630) SHOULD be picked πŸ’€. These restrictions don't have to apply to future sub-TLVs, and unrecognized sub-TLVs are ignored πŸ¦‹.

Here's the dynamic vs. static split 🌈: the Resource Block Pool State sub-TLV and Resource Block Shared Access Wavelength Availability are dynamic, while the rest are static πŸ’œ. So they can be separated out and advertised with multiple TE LSAs per OSPF router, as described in [RFC3630] and [RFC5250] ✨.

2.1. Resource Block Information 🌸

As defined in [RFC7446], this sub-TLV represents resource signal constraints and processing capabilities of a node πŸŽ€.

2.2. Resource Accessibility πŸ’–

This sub-TLV describes how the resource pool is structured in relation to the switching device πŸ¦‹. Specifically, it says whether an ingress port can reach a resource block, and whether a resource block can reach a particular egress port 🫢.

2.3. Resource Wavelength Constraints 🧚

Resources like wavelength converters can have limited input or output wavelength ranges 🌈. And because of how the optical system is built, not every wavelength can necessarily reach or leave every resource πŸ’…. The Resource Wavelength Constraints sub-TLV describes these properties πŸ“.

2.4. Resource Block Pool State πŸ‘‘

This sub-TLV describes the usage state of a resource. It can be encoded as a list of integer values, or as a bitmap showing whether a single resource is available or in use πŸ”₯. This info can be pretty dynamic, meaning it can change when a connection is set up or torn down πŸ’€.

2.5. Resource Block Shared Access Wavelength Availability πŸ¦‹

Resource blocks can be accessed over a shared fiber 🌸. If that's the case, then wavelength availability on those shared fibers is needed to understand resource availability πŸ’œ.

3. Interface Switching Capability Descriptor (ISCD) Format Extensions ✨

The ISCD describes the switching capability of an interface [RFC4202] πŸŽ€. This doc defines a new Switching Capability value for WSON:

Value         Type
-----         ----
151           WSON-LSC

Switching Capability and Encoding values MUST be used as follows πŸ”₯:

Switching Capability = WSON-LSC

Encoding Type = Lambda (as defined in [RFC3471])

When the Switching Capability and Encoding fields are set to the values above, the Interface Switching Capability Descriptor MUST be interpreted as in [RFC4203], with the optional inclusion of one or more Switching Capability Specific Information sub-TLVs 🫢🌈.


Part 1 of 3 done, bestie! πŸŒˆπŸ’– More parts are coming, so stay tuned 🧚✨

3.1. Switching Capability Specific Information (SCSI) ✨

okay so the technology-specific part of the WSON ISCD can carry a variable number of sub-TLVs called Bandwidth sub-TLVs πŸ’– There are two types defined:

  • Type 1: Available Labels
  • Type 2: Shared Backup Labels

A SCSI can hold multiple Available Label sub-TLVs and multiple Shared Backup Label sub-TLVs πŸŽ€ The Available Label Sub-TLV and the Shared Backup Label sub-TLV are both defined in [RFC7579], and the order of the sub-TLVs inside the SCSI is totally arbitrary, so no stress πŸ¦‹ Here's the layout:

    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 = 1 (Available)   |           Length              |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                                                               |
   |                 Available Label Sub-TLV                       |
   |                                                               |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   ~                               ...                             ~
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |     Type = 2 (Shared backup)  |           Length              |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                                                               |
   |                 Shared Backup Label Sub-TLV                   |
   |                                                               |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                         Figure 1: SCSI Format

Duplicates alert πŸ™ˆ If duplicated sub-TLVs get advertised, the router/node will ignore the duplicated labels, the ones identified by the Label format defined in [RFC6205].

Label format rule πŸ‘‘ The label format defined in [RFC6205] MUST be used when advertising interfaces with a WSON-LSC type Switching Capability. No freelancing on this one, bestie!

4. WSON-Specific Scalability and Timeliness ✨

okay this part is about how big and how fresh the info can get 🌈 This document defines five sub-TLVs specific to WSON, and the examples in [RFC7581] prove that even super huge systems (think channel count, ports, and resources) can be encoded really efficiently πŸ’…

Now, there was some worry that certain systems could make LSAs that go over the IP Maximum Transmission Unit (MTU) 😭 But in a typical node configuration, the Optical Node Property TLV won't go past the IP MTU. A typical node is a system with several hundreds of channels and an OEO element in the node, which makes the Optical Node Property TLV come in at less than 350 bytes. Plus, [RFC7581] has mechanisms to compactly encode the required information elements, so it's giving tidy 🧚 In a rare case where the TLV does exceed the IP MTU, IP fragmentation/reassembly can be used, and that's an acceptable method. For IPv6, a node may use the IPv6 Fragment header to fragment the packet at the source and have it reassembled at the destination(s).

If the size of this LSA is greater than the MTU, these sub-TLVs can be packed into separate LSAs πŸ¦‹ From the path computation point of view, the Resource Block Information sub-TLV tells you that resources exist in the system and that they may have signal compatibility or other constraints. The other four sub-TLVs describe constraints on access to and availability of those resources.

So the "synchronization" procedure is honestly simple from the path computation side πŸ“ Until a Resource Block Information sub-TLV is received for a system, path computation cannot use the other four sub-TLVs, because it doesn't know what the resources are (for example, whether they're wavelength converters, regenerators, or something else). Once that sub-TLV shows up, path computation can go ahead with whatever sub-TLVs it has received, and how those get used depends on the system type.

Out-of-date info is a vibe killer πŸ’€ If path computation runs with out-of-date or missing information from these sub-TLVs, there's a possibility of either (a) path computation yielding a path that does not exist in the network, or (b) path computation failing to find a path through the network that actually exists. Both situations are currently encountered with GMPLS, i.e., out-of-date information on constraints or resource availability.

If the new sub-TLVs or their attendant encodings are malformed, a proper implementation SHOULD log the problem and MUST stop sending the LSA that contains malformed TLVs or sub-TLVs πŸ™ˆ Errors like this SHOULD be logged for the local operator. Implementations MUST provide a rate limit on such logs, and that rate limit SHOULD be configurable.

Also, the connection establishment mechanism (signaling or management) is ultimately responsible for setting up the connection, which means those mechanisms have to make sure signal compatibility is handled 🫢


5. Security Considerations πŸ”

Okay, security time, and I'm taking this seriously 😀 This document does not introduce security issues other than those discussed in [RFC3630] and [RFC4203].

Like [RFC4203], it specifies the contents of Opaque LSAs in OSPFv2. Opaque LSAs aren't used for Shortest Path First (SPF) computation or normal routing, so the extensions here have no direct effect on IP routing. ngl though, tampering with GMPLS TE LSAs may have an effect on the underlying transport, which is a big deal πŸ’€ [RFC3630] notes that the security mechanisms described in [RFC2328] apply to Opaque LSAs carried in OSPFv2.

For general security aspects relevant to GMPLS-controlled networks, go check out [RFC5920] 🧚


6. IANA Considerations πŸŽ€

6.1. Optical Node Property TLV

This document introduces a new Top-Level Node TLV (Optical Node Property TLV) under the OSPF TE LSA defined in [RFC3630]. IANA registered a new TLV for "Optical Node Property" 🌸 It lives in the "Top Level Types in TE LSAs" registry, in "Open Shortest Path First (OSPF) Traffic Engineering TLVs" at <http://www.iana.org/assignments/ospf-traffic-eng-tlvs>, and it looks like this:

      Value             TLV Type                           Reference

      6                 Optical Node Property              RFC 7688

6.1.1. Optical Node Property Sub-TLV

There's also a brand new IANA registry called "Types for sub-TLVs of Optical Node Property (Value 6)" in the "Open Shortest Path First (OSPF) Traffic Engineering TLVs" registry at <http://www.iana.org/assignments/ospf-traffic-eng-tlvs> ✨ New sub-TLVs and their values got assigned like this:

   Value      Length      Sub-TLV                         Reference

   0                      Reserved
   1          variable    Resource Block Information      RFC 7688
   2          variable    Resource Accessibility          RFC 7688
   3          variable    Resource Wavelength
                          Constraints                     RFC 7688
   4          variable    Resource Block Pool State       RFC 7688
   5          variable    Resource Block Shared
                          Access Wavelength Availability  RFC 7688
   6-65535                Unassigned

The registration procedure for this registry is Standards Action as defined in [RFC5226] πŸ”₯

6.2. WSON-LSC Switching Type TLV

IANA registered a new switching type in the "Switching Types" registry, in "GMPLS Signaling Parameters" at <http://www.iana.org/assignments/gmpls-sig-parameters> πŸ’œ It goes like this:

   Value    Description       Reference

   151      WSON-LSC          RFC 7688

IANA also added this entry to the IANAGmplsSwitchingTypeTC MIB:

      wsonlsc(151), -- WSON-LSC

6.2.1. WSON-LSC SCSI Sub-TLVs

Additionally, there's a new registry for sub-TLVs of the WSON-LSC SCSI sub-TLV πŸ¦‹ It's named "Types for sub-TLVs of WSON-LSC SCSI (Switching Capability Specific Information)" and lives in the "Open Shortest Path First (OSPF) Traffic Engineering TLVs" registry. It contains these sub-TLVs:

      Value         Sub-TLV                      Reference

      0             Reserved
      1             Available Labels             RFC 7688
      2             Shared Backup Labels         RFC 7688
      3-65535       Unassigned

The registration procedure for this registry is Standards Action as defined in [RFC5226] πŸ‘‘


7. References πŸ“š

7.1. Normative References

7.2. Informative References

Okay bestie, these are the informative references, the extra reading that backs up the spec πŸ“šβœ¨ They're not required to implement it, but they're the good stuff for context.


Authors' Addresses ✨

Meet the brilliant humans who wrote this 🫢

Young Lee (editor)
Huawei Technologies
5340 Legacy Drive, Building 3
Plano, TX  75024
United States

Phone: (469) 277-5838
Email: leeyoung@huawei.com


Greg M. Bernstein (editor)
Grotto Networking
Fremont, CA
United States

Phone: (510) 573-2237
Email: gregb@grotto-networking.com

Literally the dream team, periodt πŸ’–

πŸ“¦ where this page comes from