Movatterモバイル変換


[0]ホーム

URL:



MPLS Working Group                                             S. BryantInternet-Draft                               Futurewei Technologies Inc.Intended status: Standards Track                              G. SwallowExpires: June 10, 2021                         Southend Technical Center                                                            S. Sivabalan                                                       Ciena Corporation                                                       December 07, 2020A Simple Control Protocol for MPLS SFLsdraft-bryant-mpls-sfl-control-09Abstract   Indraft-ietf-mpls-sfl-framework the concept of MPLS synonymous flow   labels (SFL) was introduced.  This document describes a simple   control protocol that runs over an associated control header to   request, withdraw, and extend the lifetime of such labels.  It is not   the only control protocol that moght be used to support SFL, but it   has the benefit of being able to be used without modifying of the   existing MPLS control prodocols.  The existance of this design is not   intended to restrict the ability to enhance an existing MPLS control   protocol to add a similar capability.   A Querier MUST wait a configured time (suggested wait of 60 seconds)   before re-attempting a Withdraw request.  No more than three Withdraw   requests SHOULD be made.  These restricctions are to prevent   overloading the control plane of the actioning router.Status of This Memo   This Internet-Draft is submitted in full conformance with the   provisions ofBCP 78 andBCP 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 athttps://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 June 10, 2021.Bryant, et al.            Expires June 10, 2021                 [Page 1]

Internet-Draft              MPLS SFL Control               December 2020Copyright Notice   Copyright (c) 2020 IETF Trust and the persons identified as the   document authors.  All rights reserved.   This document is subject toBCP 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 Contents1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .22.  Requirements Language . . . . . . . . . . . . . . . . . . . .33.  SFL Control . . . . . . . . . . . . . . . . . . . . . . . . .33.1.  SFL Control Message . . . . . . . . . . . . . . . . . . .33.2.  SFL Control Procedures  . . . . . . . . . . . . . . . . .73.2.1.  Request/Grant . . . . . . . . . . . . . . . . . . . .73.2.2.  Refresh . . . . . . . . . . . . . . . . . . . . . . .93.2.3.  Withdraw  . . . . . . . . . . . . . . . . . . . . . .103.2.4.  Timer Accuracy  . . . . . . . . . . . . . . . . . . .104.  Return Path . . . . . . . . . . . . . . . . . . . . . . . . .115.  Privacy Considerations  . . . . . . . . . . . . . . . . . . .116.  Security Considerations . . . . . . . . . . . . . . . . . . .117.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .11     7.1.  Allocation of MPLS Generalized Associated Channel (G-ACh)           Type  . . . . . . . . . . . . . . . . . . . . . . . . . .117.2.  Creation of SFL Simple Control Code Registry  . . . . . .128.  Acknowledgments . . . . . . . . . . . . . . . . . . . . . . .129.  References  . . . . . . . . . . . . . . . . . . . . . . . . .129.1.  Normative References  . . . . . . . . . . . . . . . . . .129.2.  Informative References  . . . . . . . . . . . . . . . . .13   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .131.  Introduction   In [I-D.ietf-mpls-sfl-framework] the concept of MPLS synonymous flow   labels (SFL) was introduced.  This document describes a simple   control protocol, for use in a well-managed MPLS network, that runs   over an associated control header to request, withdraw, and extend   the lifetime of such labels.  It is not the only control protocol   that moght be used to support SFL, but it has the benefit of being   able to be used without modifying of the existing MPLS controlBryant, et al.            Expires June 10, 2021                 [Page 2]

Internet-Draft              MPLS SFL Control               December 2020   prodocols.  The existance of this design is not intended to restrict   the ability to enhance an existing MPLS control protocol to add a   similar capability.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 inBCP14 [RFC2119] [RFC8174] when, and only when, they appear in all   capitals, as shown here.3.  SFL Control   EDITOR'S note look at whether we continue to useRFC6374 terms query   respond, or normal client server terms.   This section describes the process by which the [RFC6374] Querier   requests SFLs, the process by which the [RFC6374] Responder sends   them to the Querier, and the process for managing the SFL lifetime.   SFL Control Messages are carried over the SFL Control ACH.  The SFL   ACH is carried over a Pseudowire(PW) in place of the PW Control Word   (CW), over an MPLS LSP using the GAL, or over some other mutually   agreed path.  Similarly the response may be returned over a PW, over   a bidirectional LSP or over some other mutually agreed path.  SeeSection 4.3.1.  SFL Control Message   The format of an SFL Control message, which follows the Associated   Channel Header (ACH), is as follows:Bryant, et al.            Expires June 10, 2021                 [Page 3]

Internet-Draft              MPLS SFL Control               December 2020    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   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+   |Version| Flags |  Control Code |        Message Length         |   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+   |                       Session Identifier          | SFL Batch |   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+   |               Lifetime (seconds)              |   Num SFL     |   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+   |                 SFL 0                 |      LFlags           |   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+   .                                                               .   .                                                               .   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+   |                 SFL n                 |      LFlags           |   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+   |                 Forwarding Equivalence Class (FEC)            |   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                   Figure 1: SFL Control Message Format   Reserved fields MUST be set to 0 and ignored upon receipt.  The   possible values for the remaining fields are as follows:Bryant, et al.            Expires June 10, 2021                 [Page 4]

Internet-Draft              MPLS SFL Control               December 2020   Version        Protocol version. Set to zero in this specification.   Flags          Message control flags.   Control Code   Code identifying the query or response type.   Message Length Total length of this message in bytes.   Session Identifier  Set arbitrarily by the querier and used as a                  message handle.   SFL Batch      (6 bits) Used where the SFLs for this Session                  Identifier are managed across multiple SFL Control                  Messages. A given set of SFLs MUST be retained                  in the same batch.   Lifetime       The lifetime in seconds of the SFLs in this message.                  In a Query message it is the requested lifetime.                  In a Response message it is the lifetime that the                  SFLs have been allocated for by the Responder.                  The Querier MUST NOT use an SFL after expiry of                  its lifetime, a Responder MUST make the SFL                  available for at least its lifetime.   Num SFL        The number of SFLs in this SFL Batch.  This MUST be                  constant for the lifetime of the batch.   SFL n          The n'th SFL carried in this TLV.  This is an MPLS                  label which is a component of a label stack entry as                  defined inSection 2.1 of [RFC3032].  The position                  of a label within a batch is constant for the                  lifetime of the batch.  Enumeration starts at zero.   LFlags         The set of flags associated with the immediately                  preceding SFL.  See below.   FEC            The Forwarding Equivalence Class that the SFLs in                  this TLV correspond to.  This is encoded as perSection 3.4.1 of [RFC5036].   Flags: The format of the Flags field is shown below.                          +-+-+-+-+                          |R|0|0|0|                          +-+-+-+-+                   SFL Control Message Flags.Bryant, et al.            Expires June 10, 2021                 [Page 5]

Internet-Draft              MPLS SFL Control               December 2020   The meanings of the flag bits are:   R: Query/Response indicator.  Set to 0 for a Query and set      to 1 for a Response.   0: Set to zero by the Sender and ignored by the Receiver.   Control Code: Set as follows according to whether the message is a   Query or a Response as identified by the R flag.   For a Query:   0x0: SFL Request. This indicates that the responder is requested   to allocate the set of SFLs marked with the R LFlag in this   message.   0x1: SFL Refresh. This indicates that the responder is requested   to refresh the set of SFLs marked with the V LFlag in this message.   0x2: SFL Withdraw. This indicates that the querier will no longer   use the set of SFLs marked with the V Lflag and the responder   may expire their lifetime.   For a Response:   Codes 0x0-0xF are reserved for non-error responses.   0x1: SFL Grant. This indicates that the responder allocated the   set of SFLs marked with the A LFlag in this Message.   0x2: SFL Refresh-Ack. This indicates that the responder has   refreshed the set of SFLs marked with the V LFlag in this message,   and the lifetime is now as indicated by the lifetime field.   0x3: SFL Withdraw-Ack. This indicates that the responder has   received the Withdraw message and will withdraw the SFLs   0x10: Unspecified Error.  Indicates that the operation   failed for an unspecified reason.   0x11: SFL-Unable. The Responder was unable to satisfy the SFL   Request.  The details of the failure can be determined by   comparing the Request and Grant messages.   Editors Note - We need to revisit theRFC6374 errors and the protocol   to see if we need some more error codes.   The LFlags field is defined as follows:Bryant, et al.            Expires June 10, 2021                 [Page 6]

Internet-Draft              MPLS SFL Control               December 2020        0                   1        0 1 2 3 4 5 6 7 8 9 0 1       +-+-+-+-+-+-+-+-+-+-+-+-+       |0|1|2|3|        MBZ    |       +-+-+-+-+-+-+-+-+-+-+-+-+                      Figure 2: LFlags Bit Definition   Where:   0 (Valid (V))  The Label value of the corresponding SFL is valid.                  In an SFL Request setting the V Lflag indicates a                  request for the specified label value.  Where an                  SFL has a valid flag clear in a request message                  this indicates that any SFL value is acceptable.   1 (Request (R))  Indicates to the Querier that this member of the                  SFL batch is requested.  Where a value is specified                  in the request, but the Responder is unable honour                  that request, no SFL is allocated and the                  corresponding A flag MUST be cleared.   2 (Allocated (A)  Indicates to the Querier that this SFL was                  allocated.   3 (Withdraw (W))  Indicates to the Responder that this SFL is to be                  withdrawn and to the Querier that the withdrawal has                  been carried out.   MBZ            MUST be sent as zero and ignored on receive.   A flag value of one is true/set and a flag value of zero is false/   clear.  The use of these bits is described in more detail in the   following sub-sections.3.2.  SFL Control Procedures3.2.1.  Request/Grant   To request a batch of SFLs the Querier constructs an SFL Control   Request, encapsulates it in an SFL Control ACH and sends it to the   Responder via an appropriate path.  The Querier sets the Control   Message Flag to Query and the Control Code to Request.  The Querier   chooses a session identifier as a handle for this transaction and as   a way of binding this batch of SFLs to other operations that will use   members of this SFL batch.  Since members of the batch are treated as   a group, the SFL Batch identifier is used to identify different SFL   batches used in conjunction with the same session identifier.Bryant, et al.            Expires June 10, 2021                 [Page 7]

Internet-Draft              MPLS SFL Control               December 2020   The Querier sets the requested lifetime.  This is the number of   seconds from the time of the query to the time when the batch of SFLs   will expire unless refreshed.   The Num SFL field is set to the SFL batch size.   Each SFL is set as follows: if a specific value is requested (for   example for continuity across system restarts) this is written into   the SFL n field and the V LFlag set.  Otherwise, and including spare   SFLs where an allocation is not requested, the label value is set to   zero and the V LFlag is cleared.  For each SFL entry where an   allocation is requested the R LFlag is set.  All other LFlags are   cleared.   The Forwarding Equivalence Class (FEC) is set to the FEC for which   the SFLs are requested.   The Message Length is determined and filled in.   The Responder proceeds as follows:   The Responder sets the control Message Flag to Response and initially   sets the Control Code to Grant.   For each SFL with an R flag set, the Responder determines whether it   can honour the request, if so sets the A Lflag, and if the SFL value   in the query was zero it overwrites it with the allocated SFL label   value.  In all other cases it leaves the SFL value and LFlag   unchanged.   The lifetime field is updated with the lifetime of the SFLs if this   is different from the requested lifetime.   All other fields in the Query message are left unchanged and the   message is sent back to the Querier using the signaled or previously   agreed message path.   Where the offered lifetime is other than the requested lifetime the   Querier may accept the proposed value, or withdraw the SFLs and   attempt to negotiate a new set of SFLs with a different lifetime.   If the Responder is unable to allocate all of the requested SFLs it   MUST respond with a response code of SFL-Unable.  The Querier MUST   determine whether the allocated SFLs were adequate for its purposes   and MUST send a withdraw if there are not adequate.  A Querier MUST   NOT attempt to hoard labels in the hope that the residual labels   needed may become available in the future.Bryant, et al.            Expires June 10, 2021                 [Page 8]

Internet-Draft              MPLS SFL Control               December 2020   A Querier MUST wait a configured time (suggested wait of 60 seconds)   before re-attempting negotiation for a resource.  Any failure to   negotiate the required resources MUST be notified through the   management interface of both Querier and Responder.   A Querier MUST NOT send an expired SFL to a Responder since to do so   may invalidate another SFL operation.3.2.2.  Refresh   To request the lifetime refresh of a batch of SFLs the Querier   constructs an SFL Refresh Request, encapsulates it in an SFL Control   ACH and sends it to the Responder via an appropriate path.  The   Querier sets the Control Message Flag to Query and the Control Code   to Refresh.  The Querier uses the session identifier and the SFL   Batch identifier that it used to request this SFL batch.   The Querier sets the requested lifetime.  This is the number of   seconds from the time of the query to the time when the batch of SFLs   will expire unless refreshed.   The Querier sets the Num SFL field to the SFL batch size.   The Querier sets each SFL as follows: the allocated SFL label value   is written into the SFL n field and the V LFlag set.  All other   LFlags are cleared.   The Forwarding Equivalence Class (FEC) is set to the FEC for which   the SFLs are requested.   The Message Length is determined and filled in.   The Responder proceeds as follows:   The Responder sets the control Message Flag to Response and sets the   Control Code to Refresh-Ack.   The Responder sets the lifetime to the lifetime of the SFL.   All other fields in the Query message are left unchanged and the   message is sent back to the Querier using the signaled or previously   agreed message path.   Where the offered lifetime is other than the requested lifetime the   Querier may accept the proposed value, or withdraw the SFLs and   attempt to negotiate a new set of SFLs with a different lifetime.Bryant, et al.            Expires June 10, 2021                 [Page 9]

Internet-Draft              MPLS SFL Control               December 2020   A Querier MUST wait a configured time (suggested wait of 60 seconds)   before re-attempting negotiation for a resource.  Any failure to   negotiate the required resources MUST be notified through the   management interface of both Querier and Responder.3.2.3.  Withdraw   To request the withdrawal of some or all of a batch of SFLs the   Querier constructs an SFL Withdraw Request, encapsulates it in an SFL   Control ACH and sends it to the Responder via an appropriate path.   The Querier sets the Control Message Flag to Query and the Control   Code to Withdraw.  It uses the session identifier and the SFL Batch   identifier that it used to request this SFL batch.   The Querier sets the requested lifetime to zero.   The Querier sets the Num SFL field to the SFL batch size.   Each SFL being withdrawn is set as follows: the allocated SFL label   value is written into the SFL n field and the V and W LFlags set.   All other LFlags are cleared.   The Forwarding Equivalence Class (FEC) is set to the FEC for which   the SFLs are requested.   The Message Length field is determined and filled in.   The Responder proceeds as follows:   The Responder sets the control Message Flag to Response and sets the   Control Code to Withdraw-Ack.   All other fields in the Query message are left unchanged and the   message is sent back to the Querier using the signaled or previously   agreed message path.   A Querier MUST wait a configured time (suggested wait of 60 seconds)   before re-attempting a Withdraw request.  No more than three Withdraw   requests SHOULD be made.  These restricctions are to prevent   overloading the control plane of the actioning router.3.2.4.  Timer Accuracy   The lifetime of SFLs is expected to be sufficiently long that there   are no significant constraints on timer accuracy.  A node should be   conservative in its assumptions concerning the lifetime of an SFL.  A   Querier MUST stop using a SFL significantly before the expiry of its   lifetime and a Responder must maintain an SFL in active operationBryant, et al.            Expires June 10, 2021                [Page 10]

Internet-Draft              MPLS SFL Control               December 2020   significantly beyond nominal expiry.  A margin of the order of   minutes is RECOMMENDED.4.  Return Path   Where the LSP (or other MPLS construct) is multi-point to point, or   multi-point to multi- point theRFC6374 Address TLV MUST be included   in Query packet, even if the response is requested in-band, since   this is needed to provide the necessary return address for this   request.   EDITIORS NOTE - Look at this text and see if we need to make changes   regarding operation over IP.5.  Privacy Considerations   The inclusion of originating and/or flow information in a packet   provides more identity information and hence potentially degrades the   privacy of the communication.  Whilst the inclusion of the additional   granularity does allow greater insight into the flow characteristics   it does not specifically identify which node originated the packet   other than by inspection of the network at the point of ingress, or   inspection of the control protocol packets.  This privacy threat may   be mitigated by encrypting the control protocol packets, regularly   changing the synonymous labels and by concurrently using a number of   such labels.6.  Security Considerations   It is assumed that this protocol is run in a well-managed MPLS   network with strict access controls preventing unwanted parties from   generating MPLS packets.  The control protocol described in this memo   thus introduced no additional MPLS security vulnerabilities.7.  IANA Considerations7.1.  Allocation of MPLS Generalized Associated Channel (G-ACh) Type   As per the IANA considerations in [RFC5586], IANA is requested to   allocate the following Channel Type in the "MPLS Generalized   Associated Channel (G-ACh) Types" registry:   Value  Description                          TLV Follows Reference   ------ ------------------------------------ ----------- ---------   0x0XXX SFL Control                              No          This   A value of 0x5A is suggested.Bryant, et al.            Expires June 10, 2021                [Page 11]

Internet-Draft              MPLS SFL Control               December 20207.2.  Creation of SFL Simple Control Code Registry   IANA is requested to created a new "SFL Simple Control Code" registry   within the Generic Associated Channel (G-ACh) Parameters namespace.   This registry is divided into two separate parts, one for Query Codes   and the other for Response Codes, with formats and initial   allocations as follows:   Query Codes   Code Description                         Reference   ---- ----------------------------------- ---------   0x0  SFL Request                         This   0x1  SFL Refresh                         This   0x2  SFL Withdraw                        This   Response Codes   Code Description                         Reference   ---- ----------------------------------- ---------   0x0  Reserved                            This   0x1  SFL Grant                           This   0x2  SFL Refresh-Ack                     This   0x3  SFL Withdraw-Ack                    This   0x10 Unspecified Error                   This   0x11 SFL-Unable   IANA should indicate that the values 0x0 - 0xF in the Response Code   section are reserved for non-error response codes.   The range of the Code field is 0 - 255.   The allocation policy for this registry is IETF Review.8.  Acknowledgments   The authors thank Haomian Zheng for his review comments.   RFC Editor please remove this note which is used to force the   following references to appear [RFC3032] [RFC5036]9.  References9.1.  Normative ReferencesBryant, et al.            Expires June 10, 2021                [Page 12]

Internet-Draft              MPLS SFL Control               December 2020   [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>.   [RFC3032]  Rosen, E., Tappan, D., Fedorkow, G., Rekhter, Y.,              Farinacci, D., Li, T., and A. Conta, "MPLS Label Stack              Encoding",RFC 3032, DOI 10.17487/RFC3032, January 2001,              <https://www.rfc-editor.org/info/rfc3032>.   [RFC5036]  Andersson, L., Ed., Minei, I., Ed., and B. Thomas, Ed.,              "LDP Specification",RFC 5036, DOI 10.17487/RFC5036,              October 2007, <https://www.rfc-editor.org/info/rfc5036>.   [RFC5586]  Bocci, M., Ed., Vigoureux, M., Ed., and S. Bryant, Ed.,              "MPLS Generic Associated Channel",RFC 5586,              DOI 10.17487/RFC5586, June 2009,              <https://www.rfc-editor.org/info/rfc5586>.   [RFC6374]  Frost, D. and S. Bryant, "Packet Loss and Delay              Measurement for MPLS Networks",RFC 6374,              DOI 10.17487/RFC6374, September 2011,              <https://www.rfc-editor.org/info/rfc6374>.   [RFC8174]  Leiba, B., "Ambiguity of Uppercase vs Lowercase inRFC2119 Key Words",BCP 14,RFC 8174, DOI 10.17487/RFC8174,              May 2017, <https://www.rfc-editor.org/info/rfc8174>.9.2.  Informative References   [I-D.ietf-mpls-sfl-framework]              Bryant, S., Chen, M., Swallow, G., Sivabalan, S., and G.              Mirsky, "Synonymous Flow Label Framework",draft-ietf-mpls-sfl-framework-11 (work in progress), October 2020.Authors' Addresses   Stewart Bryant   Futurewei Technologies Inc.   Email: sb@stewartbryant.com   George Swallow   Southend Technical Center   Email: swallow.ietf@gmail.comBryant, et al.            Expires June 10, 2021                [Page 13]

Internet-Draft              MPLS SFL Control               December 2020   Siva Sivabalan   Ciena Corporation   Email: ssivabal@ciena.comBryant, et al.            Expires June 10, 2021                [Page 14]
Datatracker

draft-bryant-mpls-sfl-control-09
Replaced Internet-Draft (mpls WG)

DocumentDocument typeReplaced Internet-Draft (mpls WG)
Expired & archived
This document is an Internet-Draft (I-D). Anyone may submit an I-D to the IETF. This I-D isnot endorsed by the IETF and hasno formal standing in theIETF standards process.
Select version
Compare versions
AuthorsStewart Bryant,George Swallow,Siva Sivabalan
Email authors
Replaced bydraft-ietf-mpls-sfl-control
RFC streamIETF LogoIETF Logo
Intended RFC status (None)
Other formats
Additional resources Mailing list discussion
Report a datatracker bug

[8]ページ先頭

©2009-2026 Movatter.jp