RFC 4863

Wildcard Pseudowire Type

πŸ“… published May 2007, from ietf

RFC 4863: Wildcard Pseudowire Type πŸŽ€

okay bestie, this is RFC 4863, and it's giving "pseudowire setup but make it flexible" πŸ’… It's from May 2007, written by L. Martini and G. Swallow over at Cisco Systems, Inc. It's a Standards Track doc, so it's an actual official protocol spec, not just vibes. The header doesn't list any RFCs it obsoletes or updates, so it's not replacing or patching anything else 🌸


Status of This Memo ✨

This doc is an Internet standards track protocol spec for the Internet community, and it's open for discussion and suggestions for improvements πŸ’– For the current standardization state and status of this protocol, check the "Internet Official Protocol Standards" (STD 1). Distribution of this memo is unlimited 🫢

Copyright (C) The IETF Trust (2007).

Abstract

Okay so pseudowire signaling needs the Pseudowire Type (PW Type) to be the same in both directions πŸ” Sometimes it's way easier to set the PW Type at just one endpoint, but with any LDP-based signaling, each PW endpoint has to start its own unidirectional LSP. To keep those two LSP setups independent, the endpoint that doesn't know the PW Type needs a way to start an LSP anyway 🧚 This doc defines a Wildcard PW Type for exactly that. Iconic ✨

Table of Contents

   1. Introduction ....................................................2
      1.1. Conventions and Terminology ................................2
   2. Wildcard PW Type ................................................3
   3. Procedures ......................................................3
      3.1. Procedures When Sending the Wildcard FEC ...................3
      3.2. Procedures When Receiving the Wildcard FEC .................3
   4. Security Considerations .........................................4
   5. IANA Considerations .............................................4
   6. References ......................................................4
      6.1. Normative References .......................................4
      6.2. Informative References .....................................4

1. Introduction πŸ¦‹

So, pseudowire signaling needs the PW Type to match in both directions πŸ’œ For some applications, it's way easier to configure that info at just one PW endpoint. But in any LDP-based signaling, each PW endpoint has to start the creation of a unidirectional LSP.

Per the procedures in [CONTROL], both Label Mapping messages have to carry the PW type, and the two unidirectional mapping messages have to agree. Which means under the current procedures, the endpoint that isn't configured has to sit around and wait for a Label Mapping message just to learn the PW Type before it can signal its own unidirectional LSP. Awkward 😭

For some applications this gets really annoying. Picture an ingress Provider Edge (PE) acting as a gateway between a layer 2 network and layer 2 attachment circuits on remote PEs. Now say the setup has to start from the layer 2 network, but that layer 2 signaling doesn't have enough info to figure out the PW Type. The info is only known at the PE that supports the targeted attachment circuit πŸ™ˆ

So in this kind of situation, you really want the two LSPs that make up a pseudowire to stay independent. The fix is a way for a PW endpoint (that doesn't know the PW Type ahead of time) to still start creating an LSP. This doc defines a wildcard PW Type to handle that 🌈

1.1. Conventions and Terminology

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 RFC 2119 [KEYWORDS].

This doc doesn't introduce any new terminology πŸ“– It does assume you already know the terms in [CONTROL] and RFC 3985, "Pseudo Wire Emulation Edge-to-Edge (PWE3) Architecture" [ARCH].

2. Wildcard PW Type πŸ’…

So a PE can kick off the signaling exchange for a pseudowire without knowing the pseudowire type, a new PW Type gets defined. The codepoint is 0x7FFF. Here's what it means:

  1. To the targeted PE, this value means it has to figure out the PW Type (for both directions) and send that back in a Label Mapping message to the initiating PE.
  2. For the procedures of [CONTROL], this PW Type gets treated as matching any PW Type other than itself. So the targeted PE may respond with any valid PW Type other than the wildcard PW Type πŸ”₯

3. Procedures πŸ‘‘

3.1. Procedures When Sending the Wildcard FEC

When a PE isn't configured to use a specific PW Type for a particular pseudowire but still wants to signal an LSP for it, it sets the PW Type to "wildcard". That tells the target PE to work out the PW Type for this pseudowire 🧚

When a Label Mapping message comes in for the pseudowire, the PE checks the PW Type.

If the PW Type can be supported, the PE uses it as the PW Type for both directions ✨

If the PW Type can't be supported, or it's "wildcard", the PE MUST respond to this message with a Label Release message with an LDP Status Code of "Generic Misconfiguration Error". What happens next is out of scope for this doc, but it could include notifying the associated application (if there is one) or notifying network management πŸ’€

3.2. Procedures When Receiving the Wildcard FEC

When a targeted PE gets a Label Mapping message that indicates the wildcard PW Type, it follows the normal procedures for checking the Attachment Group Identifier (AGI) and Target Attachment Individual Identifier (TAII) values 🌸 If the targeted PE isn't configured to use a specific, non-wildcard PW Type, it MUST respond to this message with a Label Release message with an LDP Status Code of "Generic Misconfiguration Error".

Otherwise, it treats the Label Mapping message as if it had indicated the PW Type the PE is configured to use 🫢

4. Security Considerations πŸ”

Not me being dramatic, but this one matters 😭 This doc has little impact on the security aspects of [CONTROL]. The message exchanges stay the same. However, a malicious agent trying to connect to an access circuit would need one less piece of information. To guard against that, a pseudowire control entity that receives a request containing the wildcard FEC type SHOULD only proceed with setup if it's explicitly configured to do so for the particular AI in the TAI. Also, the reader should note the security considerations of [CONTROL] in general, and the ones about the Generalized PWid FEC Element in particular πŸ”₯

5. IANA Considerations 🌈

IANA has made the following allocation from the IETF consensus range of the "Pseudowire Type" registry, as defined in [IANA]:

     PW Type        Description

     0x7FFF         Wildcard

6. References πŸ“š

6.1. Normative References

  • [KEYWORDS] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997.
  • [CONTROL] Martini, L., Ed., Rosen, E., El-Aawar, N., Smith, T., and G. Heron, "Pseudowire Setup and Maintenance Using the Label Distribution Protocol (LDP)", RFC 4447, April 2006.
  • [IANA] Martini, L., "IANA Allocations for Pseudowire Edge to Edge Emulation (PWE3)", BCP 116, RFC 4446, April 2006.

6.2. Informative References

  • [ARCH] Bryant, S., Ed., and P. Pate, Ed., "Pseudo Wire Emulation Edge-to-Edge (PWE3) Architecture", RFC 3985, March 2005.

Authors' Addresses πŸ’Œ

   Luca Martini
   Cisco Systems
   9155 East Nichols Avenue, Suite 400
   Englewood, CO, 80112

   EMail: lmartini@cisco.com


   George Swallow
   Cisco Systems
   1414 Massachusetts Ave,
   Boxborough, MA 01719

   EMail: swallow@cisco.com

Copyright (C) The IETF Trust (2007).

This document is subject to the rights, licenses and restrictions contained in BCP 78, and except as set forth therein, the authors retain all their rights.

This document and the information contained herein are provided on an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

Intellectual Property

The IETF takes no position regarding the validity or scope of any Intellectual Property Rights or other rights that might be claimed to pertain to the implementation or use of the technology described in this document, or the extent to which any license under such rights might or might not be available. It also doesn't claim to have made any independent effort to identify any such rights. Info on the procedures for rights in RFC documents can be found in BCP 78 and BCP 79.

Copies of IPR disclosures made to the IETF Secretariat, any assurances of licenses to be made available, or the results of an attempt to get a general license or permission for implementers or users to use these proprietary rights can be found in the IETF online IPR repository at http://www.ietf.org/ipr.

The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights that may cover technology that may be required to implement this standard. Send that info to the IETF at ietf-ipr@ietf.org.

Acknowledgement 🫢

Funding for the RFC Editor function is currently provided by the Internet Society.

πŸ“¦ where this page comes from