RFC 8780

The Path Computation Element Communication Protocol (PCEP) Extension for Wavelength Switched Optical Network (WSON) Routing and Wavelength Assignment (RWA)

πŸ“… published July 2020, from ietf

RFC 8780 Part 1: PCEP Gets an RWA Upgrade βœ¨πŸŽ€

okay bestie, this one is the PCEP extension for Routing and Wavelength Assignment (RWA) in Wavelength Switched Optical Networks (WSONs) 🌈 It's a Standards Track doc, so every requirement in here is a real rule implementers rely on. Let's get into it πŸ’…

Title: The Path Computation Element Communication Protocol (PCEP) Extension for Wavelength Switched Optical Network (WSON) Routing and Wavelength Assignment (RWA) πŸ’–

Authors: Y. Lee, Ed. (Samsung Electronics) and R. Casellas, Ed. (CTTC) πŸ‘‘

Category: Standards Track πŸ¦‹ (it's an Internet Standards Track document, approved by the IESG after public review)

Date: July 2020 🌸

RFC number: 8780 🧚 (ISSN: 2070-1721)

Nothing in the header says it obsoletes or updates another RFC, so there's no predecessor to worry about πŸ™ˆ


Abstract ✨

okay so this doc gives PCEP extensions that support RWA in WSONs. Path provisioning in WSONs needs an RWA process πŸ”₯ From a path computation point of view, wavelength assignment is basically figuring out which wavelength can be used on each hop of a path. It's an extra routing constraint on optical path computation, and it's literally the main character of this whole spec πŸ’œ

Status of This Memo ✨

This is an Internet Standards Track document πŸŽ€

It's a product of the IETF, it represents the community consensus, got public review, and was approved for publication by the IESG. If you want more on Internet Standards, check Section 2 of RFC 7841 πŸ’…

Current status, errata, and feedback info live at https://www.rfc-editor.org/info/rfc8780 🌸

Copyright (c) 2020 IETF Trust and the persons identified as the document authors. All rights reserved. πŸ’–

This doc is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://trustee.ietf.org/license-info) as in effect on the publication date. Read those carefully, they spell out your rights and restrictions 🫢 Code Components pulled from 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 that license 🌈

Table of Contents ✨

1.  Introduction
2.  Terminology
3.  Requirements Language
4.  Encoding of an RWA Path Request
  4.1.  Wavelength Assignment (WA) Object
  4.2.  Wavelength Selection TLV
  4.3.  Wavelength Restriction TLV
    4.3.1.  Link Identifier Field
    4.3.2.  Wavelength Constraint Field
  4.4.  Signal Processing Capability Restrictions
    4.4.1.  Signal Processing Exclusion
    4.4.2.  Signal Processing Inclusion
5.  Encoding of an RWA Path Reply
  5.1.  Wavelength Allocation TLV
  5.2.  Error Indicator
  5.3.  NO-PATH Indicator
6.  Manageability Considerations
  6.1.  Control of Function and Policy
  6.2.  Liveness Detection and Monitoring
  6.3.  Verifying Correct Operation
  6.4.  Requirements on Other Protocols and Functional Components
  6.5.  Impact on Network Operation
7.  Security Considerations
8.  IANA Considerations
  8.1.  New PCEP Object: Wavelength Assignment Object
  8.2.  WA Object Flag Field
  8.3.  New PCEP TLV: Wavelength Selection TLV
  8.4.  New PCEP TLV: Wavelength Restriction TLV
  8.5.  Wavelength Restriction TLV Action Values
  8.6.  New PCEP TLV: Wavelength Allocation TLV
  8.7.  Wavelength Allocation TLV Flag Field
  8.8.  New PCEP TLV: Optical Interface Class List TLV
  8.9.  New PCEP TLV: Client Signal Information TLV
  8.10. New Bit Flag for NO-PATH-VECTOR TLV
  8.11. New Error-Types and Error-Values
  8.12. New Subobjects for the Exclude Route Object
  8.13. New Subobjects for the Include Route Object
  8.14. Request for Updated Note for LMP TE Link Object Class Type
9.  References
  9.1.  Normative References
  9.2.  Informative References
Acknowledgments
Contributors
Authors' Addresses

1. Introduction πŸ¦‹

okay so [RFC5440] is the spec for PCEP, the protocol that PCCs and PCEs use to talk to each other (or PCE to PCE) πŸ’¬ That chat includes Path Computation Requests (PCReqs), Path Computation Replies (PCReps), and notifications about states tied to using a PCE for MPLS and GMPLS Traffic Engineering (TE) 🌸

A PCC is any network component that makes such a request, like an optical switching element in a Wavelength Division Multiplexing (WDM) network πŸ’– The PCE can be pretty much anywhere in the network: inside an optical switching element, a Network Management System (NMS), an Operational Support System (OSS), or its own independent network server 🧚

This doc gives PCEP extensions for RWA in WSONs, based on the requirements in [RFC6163] and [RFC7449] ✨

So what's a WSON? It's a WDM-based optical network where switching happens selectively based on the wavelength of the optical signal 🌈 Devices that can switch signals by wavelength are called Lambda Switch Capable (LSC) πŸ’… WSONs can be transparent or translucent 🫢 A transparent network is all optical devices that can switch but can't convert from one wavelength to another, all within the optical domain πŸ™ˆ Translucent networks have 3R regenerators (reamplification, reshaping, and retiming) placed sparsely, and their main job is converting one optical wavelength to another πŸ”₯

An LSC Label Switched Path (LSP) can span one or several transparent segments, which are delimited by 3R regenerators (typically electronic regenerators with optional wavelength conversion) πŸ’œ Each transparent segment, or optical path, can span multiple fiber links, and the path should get the same wavelength on each link. When that's the case, the optical path is said to satisfy the wavelength-continuity constraint πŸŽ€ Figure 1 shows how an LSC LSP relates to its transparent segments:

+---+       +-----+       +-----+      +-----+         +-----+
|   |I1     |     |       |     |      |     |       I2|     |
|   |o------|     |-------[(3R) ]------|     |--------o|     |
|   |       |     |       |     |      |     |         |     |
+---+       +-----+       +-----+      +-----+         +-----+
    (X  LSC)     (LSC  LSC)    (LSC  LSC)     (LSC  X)
     <------->   <------->       <----->     <------->
     <-----------------------><---------------------->
      Transparent Segment         Transparent Segment
    <------------------------------------------------->
                           LSC LSP

    Figure 1: Illustration of an LSC LSP and Transparent Segments

Note that two transparent segments within a WSON LSP don't need the same wavelength, because of wavelength conversion capabilities 🌸 But two optical channels sharing a common fiber link can't be given the same wavelength, otherwise the signals would interfere with each other 😭 Polarization-based multiplexing and other advanced multiplexing techniques aren't covered here, since the physical-layer aspects aren't standardized yet πŸ’€ So assigning the proper wavelength on a path is an essential requirement in optical path computation πŸ‘‘

When a switching node can do wavelength conversion, the wavelength-continuity constraint can be relaxed, so an LSP can use different wavelengths on different links along its route πŸ¦‹ Converters can be limited, though, because they're pricey, and the number of WDM channels a fiber can support is also limited πŸ™ˆ A WSON can have nodes that can't convert wavelengths, nodes with limited conversion, and nodes with full conversion, so wavelength assignment becomes an extra routing constraint to consider in all optical path computation ✨

For example (see Figure 1), in a translucent WSON, an LSC LSP can be set up between interfaces I1 and I2, spanning two transparent segments (optical paths) where the wavelength-continuity constraint applies. In other words, the same unique wavelength must be assigned to the LSP at each TE link of the segment πŸ’– If the LSC LSP induced a Forwarding Adjacency / TE link, its switching capabilities would be (X X), where X is the switching capability of I1 and I2. X can be Packet Switch Capable (PSC), Time-Division Multiplexing (TDM), and so on 🧚

This doc lines up with [RFC8779] for generic properties like label, label set, and label assignment, since a wavelength is a type of label πŸŽ€ Wavelength restrictions and constraints are also written in terms of labels, per [RFC7579] 🫢

Optical modulation properties (aka signal compatibility) are already handled in signaling in [RFC7581] and [RFC7688] 🌈 To improve signal quality and limit some optical effects, a few advanced modulation processing capabilities are used by the mechanisms in this doc πŸ’… These capabilities don't just check optical signal quality, they also constrain which sender and receiver you can pick, since they should have matching signal processing capabilities πŸ”₯ This doc includes signal compatibility constraints as part of RWA path computation. The signal processing capabilities (like modulation and Forward Error Correction (FEC)) indicated by the Optical Interface Class (OIC) MUST be compatible between the sender and receiver of the optical path across all optical elements πŸ’œ

Heads up: this doc does NOT cover optical impairments in RWA path computation. For the framework on that, see [RFC6566] πŸ™ˆ

2. Terminology 🌸

This doc uses the terminology defined in [RFC4655] and [RFC5440] ✨

3. 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 πŸŽ€

4. Encoding of an RWA Path Request πŸ¦‹

Figure 2 shows one typical PCE-based implementation, called the Combined Process (R&WA). In this setup, routing and wavelength assignment are both accessed through a single PCE 🧚 This is the base architecture in [RFC6163], and the PCEP extensions in this doc are built on top of it πŸ‘‘

                    +----------------------------+
      +-----+       |     +-------+     +--+     |
      |     |       |     |Routing|     |WA|     |
      | PCC |<----->|     +-------+     +--+     |
      |     |       |                            |
      +-----+       |             PCE            |
                    +----------------------------+

         Figure 2: Combined Process (R&WA) Architecture

That's the end of part 1! 🌈 Part 2 is coming up next, so stay tuned bestie πŸ’–πŸ«Ά

4.1. Wavelength Assignment (WA) Object ✨

Okay so the PCE has two ways to handle wavelength allocation 🌈

  • (a) Explicit Label Control [RFC3471], where the PCE decides which label to use for each interface/node along the path. The allocated labels MAY appear after an interface route subobject.
  • (b) A Label Set, where the PCE hands over a range of potential labels and each node along the path gets to allocate one from that range.

Option (b) is the distributed one. Each node allocates during signaling, which lets wavelength assignment get finished off πŸ¦‹

Also, if you've got a range of potential labels to allocate, a PCReq SHOULD convey the heuristic or mechanism used for the allocation πŸ’–

Per [RFC5440], here's what a PCReq message looks like once the Wavelength Assignment (WA) object is in the mix:

<PCReq Message> ::= <Common Header>

                       [<svec-list>]

                       <request-list>

Where:

      <request-list>::=<request>[<request-list>]

      <request>::= <RP>
                   <END-POINTS>

                   <WA>

                   [other optional objects...]

If the WA object is present in the request, it MUST be encoded after the END-POINTS object as defined in [RFC8779]. The WA object is mandatory in this document 🫢 The other optional objects can go in any order, so the order doesn't matter for them.

For the WA object, the Object-Class is 42, and the Object-Type is 1 πŸŽ€

The WA object body is laid out like this:

 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|          Reserved             |            Flags            |M|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                                                               |
//                            TLVs                             //
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                         Figure 3: WA Object

Here's the breakdown of the fields:

  • Reserved (16 bits): Reserved for future use. It SHOULD be zeroed and ignored on receipt.
  • Flags field (16 bits): Only one flag bit is allocated so far, and it's the M bit πŸ‘‘
    • M (1 bit): Wavelength Allocation Mode. The M bit tells you the mode of wavelength assignment. When M is set to 1, the label assigned by the PCE must be explicit. That means the allocated wavelength gets conveyed through Explicit Label Control for each hop of a computed LSP. When M is set to 0, the label assigned by the PCE doesn't need to be explicit. It can be suggested in the form of Label Set objects in the corresponding response, so that WA can happen in a distributed way. If M is 0, the PCE MUST return a Label Set Field as described in Section 2.6 of [RFC7579] in the response. Check Section 5 of this document for the encoding discussion of a Label Set Field in a PCRep message 🌸

All unused flags SHOULD be zeroed. IANA has created a new registry to manage the Flags field of the WA object πŸ“‹

  • TLVs (variable): The following two TLVs are defined here. At least one TLV MUST be present πŸ’…
    • Wavelength Selection TLV: The type of this TLV is 8, and it has a fixed length of 32 bits. It indicates the wavelength selection. See Section 4.2 for details.
    • Wavelength Restriction TLV: The type of this TLV is 9, and it has a variable length. It indicates wavelength restrictions. See Section 4.3 for details.

4.2. Wavelength Selection TLV πŸ¦‹

The Wavelength Selection TLV is how you indicate the wavelength selection constraint for the order of wavelength assignment that the PCE should return πŸ“ This TLV is only applied when the M bit is set in the WA object specified in Section 4.1. The TLV MUST NOT be used when the M bit is cleared. Not me using it when M is cleared πŸ™ˆ

The encoding of this TLV is specified as the WavelengthSelection sub-TLV in Section 4.2.2 of [RFC7689]. IANA has allocated a new TLV type for the Wavelength Selection TLV (Type 8) ✨


4.3. Wavelength Restriction TLV 🌈

For any request that contains a wavelength assignment, the requester (PCC) MUST specify a restriction on the wavelengths to be used πŸ’œ The PCE reads this restriction as a constraint on the tuning ability of the originating laser transmitter, or on any other maintenance-related constraints.

Note that if the LSC LSP spans different segments, the PCE must have mechanisms to know the tunability restrictions of the involved wavelength converters/regenerators. One example given is the Traffic Engineering Database (TED), reached via either IGP or NMS. Even if the PCE knows the tunability of the transmitter, the PCC must be able to apply additional constraints to the request 🫢

The format of the Wavelength Restriction TLV is as follows:

<Wavelength Restriction> ::=

               (<Action> <Count> <Reserved>

               <Link Identifiers> <Wavelength Constraint>)...

Where:

<Link Identifiers> ::= <Link Identifier> [<Link Identifiers>]

See Section 4.3.1 for the encoding of the Link Identifier field.

The fields (i.e., <Action>, <Link Identifiers>, and <Wavelength Constraint>, etc.) MAY appear together more than once, so you can specify multiple actions and their restrictions πŸ”₯

IANA has allocated a new TLV type for the Wavelength Restriction TLV (Type 9) πŸ“‹

The TLV data is laid out like this:

 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Action        |    Count      |           Reserved            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                      Link Identifiers                         |
//                          . . .                              //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                    Wavelength Constraint                      |
//                        . . . .                              //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
~                         . . . .                               ~
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Action        |    Count      |           Reserved            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                      Link Identifiers                         |
//                          . . .                              //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                    Wavelength Constraint                      |
//                        . . . .                              //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

            Figure 4: Wavelength Restriction TLV Encoding

Here's what each field means:

  • Action (8 bits):
    • 0: Inclusive List. One or more link identifiers are included in the Link Set. Each one identifies a separate link that is part of the set.
    • 1: Inclusive Range. The Link Set defines a range of links. It contains two link identifiers. The first identifier is the start of the range (inclusive), and the second is the end of the range (inclusive). All links with numeric values between the bounds are part of the set. A value of zero in either position means there is no bound on the corresponding portion of the range.
    • 2-255: Unassigned.

IANA has created a new registry to manage the Action values of the Wavelength Restriction TLV πŸ“‹

If a PCE receives an unrecognized Action value, the PCE MUST send a PCEP Error (PCErr) message with a PCEP-ERROR object with Error-Type=27 and an Error-value=3. See Section 5.2 for details 😭

Note that "links" are assumed to be bidirectional πŸ’€

  • Count (8 bits): The number of link identifiers.

Note that a PCC MAY add a Wavelength restriction that applies to all links by setting the Count field to zero and specifying just a set of wavelengths 🧚

Note that all link identifiers in the same list MUST be of the same type 🌈

  • Reserved (16 bits): Reserved for future use. It SHOULD be zeroed and ignored on receipt.
  • Link Identifiers: Identifies each link ID that the restriction applies to. The length depends on the link format and the Count field. See Section 4.3.1 for encoding of the Link Identifier field.
  • Wavelength Constraint: See Section 4.3.2 for the encoding of the Wavelength Constraint field.

Various encoding errors are possible with this TLV, like not having exactly two link identifiers in the range case, unknown identifier types, or no matching link for a given identifier. To flag errors with this encoding, a PCEP speaker MUST send a PCErr message with Error-Type=27 and Error-value=3. See Section 5.2 for details 🚨

okay so the Link Identifier field can be an IPv4 [RFC3630], an IPv6 [RFC5329], or an unnumbered interface ID [RFC4203] πŸ¦‹

<Link Identifier> ::=

           <IPv4 Address> | <IPv6 Address> | <Unnumbered IF ID>

the encoding for each case looks like this bestie πŸ’…

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     |    Reserved  (24 bits)                        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IPv4 address (4 bytes)                                        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Figure 5: IPv4 Address Field

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 = 2     |    Reserved  (24 bits)                        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IPv6 address (16 bytes)                                       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IPv6 address (continued)                                      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IPv6 address (continued)                                      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IPv6 address (continued)                                      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Figure 6: IPv6 Address Field

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 = 3     |    Reserved (24 bits)                         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                        TE Node ID (32 bits)                   |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                        Interface ID (32 bits)                 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Figure 7: Unnumbered Interface ID Address Field

Here's the breakdown of each field:

  • Type (8 bits): Indicates the type of the link identifier.
  • Reserved (24 bits): Reserved for future use and SHOULD be zeroed and ignored on receipt.
  • Link Identifier: When the Type field is 1, a 4-byte IPv4 address is encoded; when the Type field is 2, a 16-byte IPv6 address is encoded; and when the Type field is 3, a tuple of a 4-byte TE node ID and a 4-byte interface ID is encoded.

The Type field is extensible and matches the "TE_LINK Object Class type name space (Value 11)" registry created for the Link Management Protocol (LMP) [RFC4204] (see [LMP-PARAM]). IANA has added an introductory note before the aforementioned registry stating that the values have additional usage for the Link Identifier Type field. See Section 8.14. 🧚

4.3.2. Wavelength Constraint Field 🌈

the Wavelength Constraint field of the Wavelength Restriction TLV is encoded as a Label Set Field as specified in Section 2.6 of [RFC7579], with the base label encoded as a 32-bit LSC label, as defined in [RFC6205]. the Label Set format gets repeated here for convenience, with the base label internal structure included. see [RFC6205] for a description of Grid, Channel Spacing (C.S.), Identifier, and n, and see [RFC7579] for the details of each action 🫢

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Action|    Num Labels         |          Length               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|Grid | C.S.  |    Identifier   |              n                |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|     Additional fields as necessary per action                 |
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Figure 8: Wavelength Constraint Field

Here's what each bit means:

  • Action (4 bits):
    • 0: Inclusive List
    • 1: Exclusive List
    • 2: Inclusive Range
    • 3: Exclusive Range
    • 4: Bitmap Set
  • Num Labels (12 bits): It is generally the number of labels. It has a specific meaning depending on the action value.
  • Length (16 bits): It is the length in bytes of the entire Wavelength Constraint field.
  • Identifier (9 bits): The Identifier is always set to 0. If PCC receives the value of the identifier other than 0, it will ignore.

See Sections 2.6.1-2.6.3 of [RFC7579] for details on additional field discussion for each action. πŸ“š

4.4. Signal Processing Capability Restrictions πŸ’…

path computation for WSON includes checking the signal processing capabilities at each interface against the requested capability. the PCE MUST have mechanisms to know the signal processing capabilities at each interface, e.g., by means of (TED) via either IGP or NMS. moreover, a PCC should be able to indicate additional restrictions to signal processing compatibility, on either the endpoint or any given link πŸ‘‘

the supported signal processing capabilities considered in the RWA Information Model [RFC7446] are:

  • Optical Interface Class List
  • Bit Rate
  • Client Signal

the bit rate restriction is already expressed in the BANDWIDTH object in [RFC8779] πŸŽ€

in order to support the optical interface class information and the client signal information, new TLVs are introduced as endpoint restrictions in the END-POINTS type Generalized Endpoint:

  • Client Signal Information TLV
  • Optical Interface Class List TLV

the END-POINTS type Generalized Endpoint is extended as follows:

<endpoint-restriction> ::=
                      <LABEL-REQUEST> <label-restriction-list>

<label-restriction-list> ::= <label-restriction>
                             [<label-restriction-list>]

<label-restriction> ::= (<LABEL-SET>|
                        [<Wavelength Restriction>]
                        [<signal-compatibility-restriction>])

Where:

<signal-compatibility-restriction> ::=
    [<Optical Interface Class List>] [<Client Signal Information>]

The Wavelength Restriction TLV is defined in Section 4.3.

A new Optical Interface Class List TLV (Type 11) is defined; the encoding of the value part of this TLV is described in Section 4.1 of [RFC7581].

A new Client Signal Information TLV (Type 12) is defined; the encoding of the value part of this TLV is described in Section 4.2 of [RFC7581]. ✨

4.4.1. Signal Processing Exclusion 🚫

the PCC/PCE should be able to exclude particular types of signal processing along the path, so it can handle client restriction or multi-domain path computation. [RFC5521] defines how the Exclude Route Object (XRO) subobject is used. in this document, we add two new XRO Signal Processing Exclusion subobjects πŸ™ˆ

the first XRO subobject type (8) is the Optical Interface Class List, which is defined as follows:

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|X|  Type=8     |     Length    |   Reserved    | Attribute     |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
//              Optical Interface Class List                   //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Figure 9: Optical Interface Class List XRO Subobject

Refer to [RFC5521] for the definitions of X, Length, and Attribute.

  • Type (7 bits): The type of the Signaling Processing Exclusion field. IANA has assigned value 8 for the Optical Interface Class List XRO subobject type.
  • Reserved bits (8 bits): These are for future use and SHOULD be zeroed and ignored on receipt.
  • Attribute (8 bits): [RFC5521] defines several Attribute values; the only permitted Attribute values for this field are 0 (Interface) or 1 (Node).
  • Optical Interface Class List: This field is encoded as described in Section 4.1 of [RFC7581].

the second XRO subobject type (9) is the Client Signal Information, which is defined as follows:

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|X|  Type=9     |     Length    |   Reserved    |  Attribute    |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
//                Client Signal Information                    //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Figure 10: Client Signal Information XRO Subobject

Refer to [RFC5521] for the definitions of X, Length, and Attribute.

  • Type (7 bits): The type of the Signaling Processing Exclusion field. IANA has assigned value 9 for the Client Signal Information XRO subobject type.
  • Reserved bits (8 bits): These are for future use and SHOULD be zeroed and ignored on receipt.
  • Attribute (8 bits): [RFC5521] defines several Attribute values; the only permitted Attribute values for this field are 0 (Interface) or 1 (Node).
  • Client Signal Information: This field is encoded as described in Section 4.2 of [RFC7581].

the XRO needs to support the new Signaling Processing Exclusion XRO subobject types:

  • 8: Optical Interface Class List
  • 9: Client Signal Information

4.4.2. Signal Processing Inclusion πŸ¦‹

similar to the XRO subobject, the PCC/PCE should be able to include particular types of signal processing along the path, so it can handle client restriction or multi-domain path computation. [RFC5440] defines how the Include Route Object (IRO) subobject is used. in this document, we add two new Signal Processing Inclusion subobjects πŸ’–

the IRO needs to support the new IRO subobject types (8 and 9) for the PCEP IRO object [RFC5440]:

  • 8: Optical Interface Class List
  • 9: Client Signal Information

the encoding of the Signal Processing Inclusion subobjects is similar to the process in Section 4.4.1 where the 'X' field is replaced with the 'L' field; all the other fields remain the same. The 'L' field is described in [RFC3209]. 🌸

5. Encoding of an RWA Path Reply πŸŽ€

this section provides the encoding of an RWA Path Reply for a wavelength allocation request as discussed in Section 4. ✨

5.1. Wavelength Allocation TLV ✨

okay so quick recap bestie πŸ’– the PCE can do wavelength allocation in two ways:

  • (a) Explicit Label Control (ELC), where the PCE picks which label to use for each interface/node along the path 🎯
  • (b) A Label Set, where the PCE hands over a range of potential labels and each node along the path picks one from that range 🌈

Option (b) is what lets distributed label allocation (done during signaling) finish off the wavelength allocation job 🧚

The type for the Wavelength Allocation TLV is 10 (see Section 8.4). Also, this TLV is used for both (a) and (b) above. Here's the layout (Figure 11) πŸ‘€

    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
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |            Reserved           |          Flags              |M|
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                       Link Identifier                         |
   //                          . . .                              //
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                    Allocated Wavelength(s)                    |
   //                        . . . .                              //
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

               Figure 11: Wavelength Allocation TLV Encoding

Here's what each piece does:

  • Reserved (16 bits): reserved for future use πŸ”’
  • Flags (16 bits): one flag bit is allocated, and it's the M bit 🚩
    • M (1 bit): the Wavelength Allocation Mode πŸŽ€
      • 0: the allocation relies on the use of Label Sets 🌸
      • 1: the allocation is done using Explicit Label Control πŸ’…

IANA has created a new registry to manage the Flags field of the Wavelength Allocation TLV πŸ—‚οΈ

  • Link Identifier: identifies the interface that the assigned wavelength(s) is applied to. See Section 4.3.1 for encoding of the Link Identifier field πŸ”—
  • Allocated Wavelength(s): the allocated wavelength(s) that go with the link identifier. See Section 4.3.2 for encoding details ✨

This TLV is carried in a PCRep message as an Attribute TLV [RFC5420] in the Hop Attribute subobjects [RFC7570] in the Explicit Route Object (ERO) [RFC5440] πŸ¦‹


5.2. Error Indicator 🚨

so if something goes wrong with an RWA request, we've got a new Error-Type 27 (WSON RWA Error) with its own Error-values πŸ™ˆ they go inside the PCEP-ERROR object like this:

  • Error-Type=27; Error-value=1: if a PCE gets an RWA request but doesn't have enough memory to process it, the PCE MUST send a PCErr message with a PCEP-ERROR object with Error-Type=27 and Error-value=1. The PCE stops processing the request. The corresponding RWA request MUST be canceled at the PCC 😭
  • Error-Type=27; Error-value=2: if a PCE gets an RWA request but isn't capable of RWA computation, the PCE MUST send a PCErr message with a PCEP-ERROR object with Error-Type=27 and Error-value=2. The PCE stops processing the request. The corresponding RWA computation MUST be canceled at the PCC πŸ’€
  • Error-Type=27; Error-value=3: if a PCE gets an RWA request with syntactical encoding errors (for example, not exactly two link identifiers in the range case, unknown identifier types, no matching link for a given identifier, an unknown Action value, etc.), the PCE MUST send a PCErr message with a PCEP-ERROR object with Error-Type=27 and Error-value=3 🧾

5.3. NO-PATH Indicator πŸ™…β€β™€οΈ

to explain why there's no RWA for the path request, the NO-PATH object can be used in the response 🌷 its body format is defined in [RFC5440]. The object may contain a NO-PATH-VECTOR TLV to give extra info about why the path computation failed 🧩

This document defines a brand-new bit flag that goes in the Flags field of the NO-PATH-VECTOR TLV (which lives in the NO-PATH object) πŸ’œ

  • Bit 23: when this is set, the PCE is saying no feasible route was found that meets all the constraints (for example, wavelength restriction, signal compatibility, etc.) associated with RWA 🌈

6. Manageability Considerations πŸ› οΈ

Manageability of WSON RWA with PCE has to cover the considerations in the subsections below πŸ“‹

6.1. Control of Function and Policy πŸŽ›οΈ

Besides the parameters already listed in Section 8.1 of [RFC5440], a PCEP implementation SHOULD allow configuration of these PCEP session parameters on a PCC:

  • The ability to send a WSON RWA request πŸ“€

Also besides the parameters already listed in Section 8.1 of [RFC5440], a PCEP implementation SHOULD allow configuration of these PCEP session parameters on a PCE:

  • The support for WSON RWA πŸ™Œ
  • A set of WSON-RWA-specific policies (authorized sender, request rate limiter, etc.) 🚦

These parameters may be configured as defaults for any PCEP session the PCEP speaker takes part in. They may also apply to one specific session with a given PCEP peer, or to a specific group of sessions with a specific group of PCEP peers 🫢

6.2. Liveness Detection and Monitoring πŸ’“

The mechanisms in this document don't bring any new liveness detection and monitoring requirements, other than the ones already listed in Section 8.3 of [RFC5440] 🌸

6.3. Verifying Correct Operation βœ…

The mechanisms in this document don't bring any new verification requirements, other than the ones already listed in Section 8.4 of [RFC5440] 🧐

6.4. Requirements on Other Protocols and Functional Components 🧩

The PCEP Link-State mechanism [PCEP-LS] may be used to advertise WSON RWA path computation capabilities to PCCs πŸ“‘

6.5. Impact on Network Operation 🌐

The mechanisms in this document don't bring any new network operation requirements, other than the ones already listed in Section 8.6 of [RFC5440] 😌


7. Security Considerations πŸ”

okay this part is serious bestie 😭 the security considerations discussed in [RFC5440] are relevant for this document, and this document does not introduce any new security issues. If an operator wants to keep the information distributed by WSON private, PCEPS (Usage of TLS to Provide a Secure Transport for PCEP) [RFC8253] SHOULD be used πŸ›‘οΈπŸ”’


8. IANA Considerations πŸ“š

IANA maintains a registry of PCEP parameters πŸ—ƒοΈ IANA has made allocations from the subregistries described in the following sections ✨

8.1. New PCEP Object: Wavelength Assignment Object πŸŽ€

As described in Section 4.1, a new PCEP object is defined to carry wavelength-assignment-related constraints. IANA has allocated the following in the "PCEP Objects" subregistry [PCEP-NUMBERS]:

+====================+======+==========================+===========+
| Object-Class Value | Name | Object-Type              | Reference |
+====================+======+==========================+===========+
| 42                 | WA   | 0: Reserved              | RFC 8780  |
+--------------------+------+--------------------------+-----------+
|                    |      | 1: Wavelength Assignment | RFC 8780  |
+--------------------+------+--------------------------+-----------+

                             Table 1

8.2. WA Object Flag Field 🚩

As described in Section 4.1, IANA has created the "WA Object Flag Field" subregistry under the "Path Computation Element Protocol (PCEP) Numbers" registry [PCEP-NUMBERS] to manage the Flags field of the WA object. New values are to be assigned by Standards Action [RFC8126]. Each bit should be tracked with the following qualities:

  • Bit number (counting from bit 0 as the most significant bit) πŸ”’
  • Capability description πŸ“
  • Defining RFC πŸ“„

The initial contents of this registry are shown below. One bit has been allocated for the flag defined in this document:

+======+============================+===========+
| Bit  | Description                | Reference |
+======+============================+===========+
| 0-14 | Unassigned                 |           |
+------+----------------------------+-----------+
| 15   | Wavelength Allocation Mode | RFC 8780  |
+------+----------------------------+-----------+

                    Table 2

8.3. New PCEP TLV: Wavelength Selection TLV 🌈

In Section 4.2, a new PCEP TLV is defined to indicate wavelength selection constraints. IANA has made the following allocation in the "PCEP TLV Type Indicators" subregistry [PCEP-NUMBERS]:

+=======+======================+===========+
| Value | Description          | Reference |
+=======+======================+===========+
| 8     | Wavelength Selection | RFC 8780  |
+-------+----------------------+-----------+

                 Table 3

8.4. New PCEP TLV: Wavelength Restriction TLV 🚫

In Section 4.3, a new PCEP TLV is defined to indicate wavelength restrictions. IANA has made the following allocation in the "PCEP TLV Type Indicators" subregistry [PCEP-NUMBERS]:

+=======+========================+===========+
| Value | Description            | Reference |
+=======+========================+===========+
| 9     | Wavelength Restriction | RFC 8780  |
+-------+------------------------+-----------+

                  Table 4

8.5. Wavelength Restriction TLV Action Values 🎬

As described in Section 4.3, IANA has created the new "Wavelength Restriction TLV Action Values" subregistry under the "Path Computation Element Protocol (PCEP) Numbers" registry [PCEP-NUMBERS] to manage the Action values of the Action field of the Wavelength Restriction TLV. New values are assigned by Standards Action [RFC8126]. Each value should be tracked with the following qualities:

  • Value πŸ”’
  • Meaning πŸ’­
  • Defining RFC πŸ“„

The initial contents of this registry are shown below:

+=======+=================+===========+
| Value | Meaning         | Reference |
+=======+=================+===========+
| 0     | Inclusive List  | RFC 8780  |
+-------+-----------------+-----------+
| 1     | Inclusive Range | RFC 8780  |
+-------+-----------------+-----------+
| 2-255 | Unassigned      |           |
+-------+-----------------+-----------+

               Table 5

8.6. New PCEP TLV: Wavelength Allocation TLV 🎁

In Section 5.1, a new PCEP TLV is defined to indicate the allocation of the wavelength(s) by the PCE in response to a request by the PCC. IANA has made the following allocation in the "PCEP TLV Type Indicators" subregistry [PCEP-NUMBERS]:

+=======+=======================+===========+
| Value | Description           | Reference |
+=======+=======================+===========+
| 10    | Wavelength Allocation | RFC 8780  |
+-------+-----------------------+-----------+

                  Table 6

8.7. Wavelength Allocation TLV Flag Field 🌈

Okay so, like we talked about in Section 5.1, IANA made a brand new "Wavelength Allocation TLV Flag Field" subregistry inside the "Path Computation Element Protocol (PCEP) Numbers" registry [PCEP-NUMBERS] πŸ’…. It's where the Flags field of the Wavelength Allocation TLV gets managed. New values get assigned by Standards Action [RFC8126]. Each bit should be tracked with these three things:

  • Bit number (counting from bit 0 as the most significant bit)
  • Capability description
  • Defining RFC

Only one bit is defined for the flag in this document, and here's the starting registry ✨

+======+============================+===========+
| Bit  | Description                | Reference |
+======+============================+===========+
| 0-14 | Unassigned                 |           |
+------+----------------------------+-----------+
| 15   | Wavelength Allocation Mode | RFC 8780  |
+------+----------------------------+-----------+

Table 7

8.8. New PCEP TLV: Optical Interface Class List TLV πŸ¦‹

In Section 4.4, a new PCEP TLV is defined to indicate the Optical Interface Class List. IANA gave it the following allocation in the "PCEP TLV Type Indicators" subregistry [PCEP-NUMBERS] πŸŽ€

+=======+==============================+===========+
| Value | Description                  | Reference |
+=======+==============================+===========+
| 11    | Optical Interface Class List | RFC 8780  |
+-------+------------------------------+-----------+

Table 8

8.9. New PCEP TLV: Client Signal Information TLV πŸ“

Same energy here! In Section 4.4, a new PCEP TLV is defined to indicate the Client Signal Information. IANA made this allocation in the "PCEP TLV Type Indicators" subregistry [PCEP-NUMBERS] πŸ’–

+=======+===========================+===========+
| Value | Description               | Reference |
+=======+===========================+===========+
| 12    | Client Signal Information | RFC 8780  |
+-------+---------------------------+-----------+

Table 9

8.10. New Bit Flag for NO-PATH-VECTOR TLV 🚫

In Section 5.3, a new bit flag is defined to be carried in the Flags field in the NO-PATH-VECTOR TLV, which lives inside the NO-PATH object. When this flag is set, it means no feasible route was found that meets all the RWA constraints (e.g., wavelength restriction, signal compatibility, etc.) tied to an RWA path computation request. Main character energy for a "nope, nothing works" πŸ’€

IANA made the following allocation for this new bit flag in the "NO-PATH-VECTOR TLV Flag Field" subregistry [PCEP-NUMBERS] 🌸

+=====+========================+===========+
| Bit | Description            | Reference |
+=====+========================+===========+
| 23  | No RWA constraints met | RFC 8780  |
+-----+------------------------+-----------+

Table 10

8.11. New Error-Types and Error-Values 😭

In Section 5.2, new PCEP error codes are defined for WSON RWA errors. IANA made the following allocations in the "PCEP-ERROR Object Error Types and Values" subregistry [PCEP-NUMBERS] 🧚

+============+================+========================+===========+
| Error-Type | Meaning        | Error-value            | Reference |
+============+================+========================+===========+
| 27         | WSON RWA error | 0: Unassigned          | RFC 8780  |
+------------+----------------+------------------------+-----------+
|            |                | 1: Insufficient memory | RFC 8780  |
+------------+----------------+------------------------+-----------+
|            |                | 2: RWA computation not | RFC 8780  |
|            |                | supported              |           |
+------------+----------------+------------------------+-----------+
|            |                | 3: Syntactical         | RFC 8780  |
|            |                | encoding error         |           |
+------------+----------------+------------------------+-----------+
|            |                | 4-255: Unassigned      | RFC 8780  |
+------------+----------------+------------------------+-----------+

Table 11

8.12. New Subobjects for the Exclude Route Object πŸ”₯

The "Path Computation Element Protocol (PCEP) Numbers" registry contains a subregistry titled "XRO Subobjects" [PCEP-NUMBERS]. Per Section 4.4.1, IANA added the following subobjects that can be carried in the XRO πŸ‘‘

+=======+==============================+===========+
| Value | Description                  | Reference |
+=======+==============================+===========+
| 8     | Optical Interface Class List | RFC 8780  |
+-------+------------------------------+-----------+
| 9     | Client Signal Information    | RFC 8780  |
+-------+------------------------------+-----------+

Table 12

8.13. New Subobjects for the Include Route Object 🫢

The "Path Computation Element Protocol (PCEP) Numbers" registry contains a subregistry titled "IRO Subobjects" [PCEP-NUMBERS]. Per Section 4.4.2, IANA added the following subobjects that can be carried in the IRO ✨

+=======+==============================+===========+
| Value | Description                  | Reference |
+=======+==============================+===========+
| 8     | Optical Interface Class List | RFC 8780  |
+-------+------------------------------+-----------+
| 9     | Client Signal Information    | RFC 8780  |
+-------+------------------------------+-----------+

Table 13

The "TE_LINK Object Class type name space (Value 11)" registry was created for the Link Management Protocol (LMP) [RFC4204]. As discussed in Section 4.3.1, IANA added the following note at the top of the "TE_LINK Object Class type name space (Value 11)" registry [LMP-PARAM]:

   These values have additional usage for the Link Identifier Type
   field.

9. References πŸ“š

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

[RFC3209]  Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan, V.,
           and G. Swallow, "RSVP-TE: Extensions to RSVP for LSP
           Tunnels", RFC 3209, DOI 10.17487/RFC3209, December 2001,
           <https://www.rfc-editor.org/info/rfc3209>.

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

[RFC5329]  Ishiguro, K., Manral, V., Davey, A., and A. Lindem, Ed.,
           "Traffic Engineering Extensions to OSPF Version 3",
           RFC 5329, DOI 10.17487/RFC5329, September 2008,
           <https://www.rfc-editor.org/info/rfc5329>.

[RFC5440]  Vasseur, JP., Ed. and JL. Le Roux, Ed., "Path Computation
           Element (PCE) Communication Protocol (PCEP)", RFC 5440,
           DOI 10.17487/RFC5440, March 2009,
           <https://www.rfc-editor.org/info/rfc5440>.

[RFC6205]  Otani, T., Ed. and D. Li, Ed., "Generalized Labels for
           Lambda-Switch-Capable (LSC) Label Switching Routers",
           RFC 6205, DOI 10.17487/RFC6205, March 2011,
           <https://www.rfc-editor.org/info/rfc6205>.

[RFC7570]  Margaria, C., Ed., Martinelli, G., Balls, S., and B.
           Wright, "Label Switched Path (LSP) Attribute in the
           Explicit Route Object (ERO)", RFC 7570,
           DOI 10.17487/RFC7570, July 2015,
           <https://www.rfc-editor.org/info/rfc7570>.

[RFC7579]  Bernstein, G., Ed., Lee, Y., Ed., Li, D., Imajuku, W., and
           J. Han, "General Network Element Constraint Encoding for
           GMPLS-Controlled Networks", RFC 7579,
           DOI 10.17487/RFC7579, June 2015,
           <https://www.rfc-editor.org/info/rfc7579>.

[RFC7581]  Bernstein, G., Ed., Lee, Y., Ed., Li, D., Imajuku, W., and
           J. Han, "Routing and Wavelength Assignment Information
           Encoding for Wavelength Switched Optical Networks",
           RFC 7581, DOI 10.17487/RFC7581, June 2015,
           <https://www.rfc-editor.org/info/rfc7581>.

[RFC7688]  Lee, Y., Ed. and G. Bernstein, Ed., "GMPLS OSPF
           Enhancement for Signal and Network Element Compatibility
           for Wavelength Switched Optical Networks", RFC 7688,
           DOI 10.17487/RFC7688, November 2015,
           <https://www.rfc-editor.org/info/rfc7688>.

[RFC7689]  Bernstein, G., Ed., Xu, S., Lee, Y., Ed., Martinelli, G.,
           and H. Harai, "Signaling Extensions for Wavelength
           Switched Optical Networks", RFC 7689,
           DOI 10.17487/RFC7689, November 2015,
           <https://www.rfc-editor.org/info/rfc7689>.

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

[RFC8253]  Lopez, D., Gonzalez de Dios, O., Wu, Q., and D. Dhody,
           "PCEPS: Usage of TLS to Provide a Secure Transport for the
           Path Computation Element Communication Protocol (PCEP)",
           RFC 8253, DOI 10.17487/RFC8253, October 2017,
           <https://www.rfc-editor.org/info/rfc8253>.

[RFC8779]  Margaria, C., Ed., Gonzalez de Dios, O., Ed., and F.
           Zhang, Ed., "Path Computation Element Communication
           Protocol (PCEP) Extensions for GMPLS", RFC 8779,
           DOI 10.17487/RFC8779, July 2020,
           <https://www.rfc-editor.org/info/rfc8779>.

9.2. Informative References ✨

Okay bestie, time for the reading list πŸ“šπŸ’œ These are the informative references, so they're here for background and context rather than as hard requirements.

[LMP-PARAM] IANA, "Link Management Protocol (LMP) Parameters", <https://www.iana.org/assignments/lmp-parameters/>.

[PCEP-LS] Lee, Y., Zheng, H., Ceccarelli, D., Wang, W., Park, P., and B. Yoon, "PCEP Extension for Distribution of Link-State and TE information for Optical Networks", Work in Progress, Internet-Draft, draft-lee-pce-pcep-ls-optical-09, 9 March 2020, <https://tools.ietf.org/html/draft-lee-pce-pcep-ls-optical-09>.

[PCEP-NUMBERS] IANA, "Path Computation Element Protocol (PCEP) Numbers", <https://www.iana.org/assignments/pcep/>.

[RFC3471] Berger, L., Ed., "Generalized Multi-Protocol Label Switching (GMPLS) Signaling Functional Description", RFC 3471, DOI 10.17487/RFC3471, January 2003, <https://www.rfc-editor.org/info/rfc3471>.

[RFC4203] Kompella, K., Ed. and Y. Rekhter, Ed., "OSPF Extensions in Support of Generalized Multi-Protocol Label Switching (GMPLS)", RFC 4203, DOI 10.17487/RFC4203, October 2005, <https://www.rfc-editor.org/info/rfc4203>.

[RFC4204] Lang, J., Ed., "Link Management Protocol (LMP)", RFC 4204, DOI 10.17487/RFC4204, October 2005, <https://www.rfc-editor.org/info/rfc4204>.

[RFC4655] Farrel, A., Vasseur, J.-P., and J. Ash, "A Path Computation Element (PCE)-Based Architecture", RFC 4655, DOI 10.17487/RFC4655, August 2006, <https://www.rfc-editor.org/info/rfc4655>.

[RFC5420] Farrel, A., Ed., Papadimitriou, D., Vasseur, JP., and A. Ayyangar, "Encoding of Attributes for MPLS LSP Establishment Using Resource Reservation Protocol Traffic Engineering (RSVP-TE)", RFC 5420, DOI 10.17487/RFC5420, February 2009, <https://www.rfc-editor.org/info/rfc5420>.

[RFC5521] Oki, E., Takeda, T., and A. Farrel, "Extensions to the Path Computation Element Communication Protocol (PCEP) for Route Exclusions", RFC 5521, DOI 10.17487/RFC5521, April 2009, <https://www.rfc-editor.org/info/rfc5521>.

[RFC6163] Lee, Y., Ed., Bernstein, G., Ed., and W. Imajuku, "Framework for GMPLS and Path Computation Element (PCE) Control of Wavelength Switched Optical Networks (WSONs)", RFC 6163, DOI 10.17487/RFC6163, April 2011, <https://www.rfc-editor.org/info/rfc6163>.

[RFC6566] Lee, Y., Ed., Bernstein, G., Ed., Li, D., and G. Martinelli, "A Framework for the Control of Wavelength Switched Optical Networks (WSONs) with Impairments", RFC 6566, DOI 10.17487/RFC6566, March 2012, <https://www.rfc-editor.org/info/rfc6566>.

[RFC7446] Lee, Y., Ed., Bernstein, G., Ed., Li, D., and W. Imajuku, "Routing and Wavelength Assignment Information Model for Wavelength Switched Optical Networks", RFC 7446, DOI 10.17487/RFC7446, February 2015, <https://www.rfc-editor.org/info/rfc7446>.

[RFC7449] Lee, Y., Ed., Bernstein, G., Ed., Martensson, J., Takeda, T., Tsuritani, T., and O. Gonzalez de Dios, "Path Computation Element Communication Protocol (PCEP) Requirements for Wavelength Switched Optical Network (WSON) Routing and Wavelength Assignment", RFC 7449, DOI 10.17487/RFC7449, February 2015, <https://www.rfc-editor.org/info/rfc7449>.

[RFC8126] Cotton, M., Leiba, B., and T. Narten, "Guidelines for Writing an IANA Considerations Section in RFCs", BCP 26, RFC 8126, DOI 10.17487/RFC8126, June 2017, <https://www.rfc-editor.org/info/rfc8126>.


Acknowledgments 🫢

The authors would like to give a huge thank you to Adrian Farrel, Julien Meuric, Dhruv Dhody, and Benjamin Kaduk πŸ’– Their many helpful comments made this document so much better, no cap.

Contributors πŸ’…

Fatai Zhang Huawei Technologies

Email: zhangfatai@huawei.com

Cyril Margaria Nokia Siemens Networks St. Martin Strasse 76 81541 Munich Germany

Phone: +49 89 5159 16934 Email: cyril.margaria@nsn.com

Oscar Gonzalez de Dios Telefonica Investigacion y Desarrollo C/ Emilio Vargas 6 28043 Madrid Spain

Phone: +34 91 3374013 Email: ogondio@tid.es

Greg Bernstein Grotto Networking Fremont, CA United States of America

Phone: +1 510 573 2237 Email: gregb@grotto-networking.com

Authors' Addresses πŸ¦‹

Young Lee (editor) Samsung Electronics

Email: younglee.tx@gmail.com

Ramon Casellas, Editor (editor) CTTC Carl Friedrich Gauss 7 PMT Ed B4 Av. 08860 Castelldefels Barcelona Spain

Phone: +34 936452916 Email: ramon.casellas@cttc.es

That's the whole RFC, bestie! 🌈✨

πŸ“¦ where this page comes from