Internet DRAFT - draft-or-psc-cap-mode
draft-or-psc-cap-mode
Network Working Group E. Osborne
Internet-Draft Cisco Systems, Inc.
Intended status: Experimental JD. Ryoo
Expires: April 24, 2014 ETRI
H. van Helvoort
Huawei Technologies
A. D'Alessandro
Telecom Italia
T. Cheung
ETRI
October 21, 2013
Capabilities and Modes in PSC
draft-or-psc-cap-mode-01
Abstract
This document introduces capabilites and modes to PSC. A capability
is an individual behavior, and a node's set of capabilities are
signalled using the method given in this draft. A mode is a
particular combination of capabilities.
Requirements Language
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 [RFC2119].
Status of This Memo
This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://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 April 24, 2014.
Copyright Notice
Osborne, et al. Expires April 24, 2014 [Page 1]
Internet-Draft psc-cap-mode October 2013
Copyright (c) 2013 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Capabilities . . . . . . . . . . . . . . . . . . . . . . . . 3
2.1. Sending the Capabilities TLV . . . . . . . . . . . . . . 3
2.1.1. What to send . . . . . . . . . . . . . . . . . . . . 3
2.1.2. When to send it . . . . . . . . . . . . . . . . . . 4
2.2. Receiving the Capabilities TLV . . . . . . . . . . . . . 4
2.2.1. Comparing Capabilties TLVs . . . . . . . . . . . . . 4
2.2.2. Handling a missing TLV . . . . . . . . . . . . . . . 4
2.3. Handling errors . . . . . . . . . . . . . . . . . . . . . 4
2.3.1. TLV Timeout . . . . . . . . . . . . . . . . . . . . . 4
2.3.2. TLV Mismatch . . . . . . . . . . . . . . . . . . . . 5
2.3.3. Handling an error . . . . . . . . . . . . . . . . . . 5
3. Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3.1. PSC Mode . . . . . . . . . . . . . . . . . . . . . . . . 5
3.2. APS Mode . . . . . . . . . . . . . . . . . . . . . . . . 6
3.2.1. SF-P and FS priority swap . . . . . . . . . . . . . . 6
3.2.2. Modified non-revertive behavior and MS-W . . . . . . 6
3.2.3. Signal degrade . . . . . . . . . . . . . . . . . . . 6
3.2.4. Exercise . . . . . . . . . . . . . . . . . . . . . . 6
4. Backward compatability . . . . . . . . . . . . . . . . . . . 6
5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 7
6. Security Considerations . . . . . . . . . . . . . . . . . . . 7
7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 7
8. Normative References . . . . . . . . . . . . . . . . . . . . 7
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 7
1. Introduction
This document brings two things to PSC - Capabilies, and Modes. A
Capability is an individual behavior whose use is signalled in a
Capabilities TLV inside PSC, and a Mode is a predefined set of
Capabilities.
Osborne, et al. Expires April 24, 2014 [Page 2]
Internet-Draft psc-cap-mode October 2013
2. Capabilities
A Capability is an individual behavior whose use is signalled in a
Capabilities TLV inside PSC. The format of the Capabilities TLV is:
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type=Capabilities | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Options Value |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
The Length is the length of the Options Value, and is in octets. The
value for the Type field is TBD pending IANA allocation.
2.1. Sending the Capabilities TLV
There are two things to consider when sending a capabilities TLV -
what to send, and when to send it.
2.1.1. What to send
The Value of the Capabilities TLV can be any length, as long as it is
a multiple of 4 octets. An implementation MUST send only as long a
Value as it needs to. Other parts of this document discuss five
capabilities that are signalled using the 5 least significant bits;
if a node wishes to signal these five, it MUST send an Options Value
of 4 octets. A node would only send an Options Value of >4 octets if
it had more than 32 Capabilities to indicate. All unused bits MUST
be set to zero.
If the bit defined for an individual capabilitiy is set to 1, that
indicates the sending node's intent to use that capability in the
protection domain. If a bit is set to 0, the sending node does not
intend to use the indicated capability in the protection domain.
Note that it is not possible to distinguish between the intent not to
use a capability and a node's complete non-support (i.e. lack of
implemntation) of a given capabilty.
Osborne, et al. Expires April 24, 2014 [Page 3]
Internet-Draft psc-cap-mode October 2013
2.1.2. When to send it
PSC sends messages for two reasons - messages in response to external
inputs, and periodic retransmission of current status. It is not
necessary to send the Capabilties TLV with every PSC packet. Indeed,
it may be expensive to send and to parse an Capabilities TLV attached
to a packet intended to trigger a protection switch or other real-
time behavior. However, it is also true that if a node does not
periodically send its Capabilities TLV, the receiving node cannot
tell the difference between a deliberate omission of the Capabilities
TLV for performance reasons versus an accidental omission due to an
implementation issue. To guard against this, a node MUST send its
Capabilities TLV in every periodic retransmission of current status,
and MAY send its Capabilities TLV more frequently than that.
2.2. Receiving the Capabilities TLV
A node MUST establish a receive timer for the Capabilities TLV. By
default this MUST be three times the periodic retransmission timer of
five seconds - so, fifteen seconds. Both the periodic retranmission
time and the timout SHOULD be configurable by the operator. When a
node receives a Capabilties TLV it resets the timer to fifteen
seconds. If the timer expires, the node behaves as in Section 2.3.
2.2.1. Comparing Capabilties TLVs
When a node receives a Capabilites TLV it MUST compare it to its most
recent transmitted Capabilites TLV. If the two are equal, the
protection domain is said to be running in the mode indicated by that
set of capabilites (see Section 3).
2.2.2. Handling a missing TLV
As mentioned in section 2.1.2, a node may not send the Capabilties
TLV with every PSC message. However, a node MUST send the
Capabilities TLV as part of its periodic state retransmission.
2.3. Handling errors
This section covers the two possible errors - a TLV timeout and a TLV
mismatch - and the error handling procedures in both cases.
2.3.1. TLV Timeout
If the Capabilities TLV receive timer expires, a node is said to have
timed out. Whe this happens, the node MUST alert the operator and
MUST behave as in Section 2.3.4, "Handling an error".
Osborne, et al. Expires April 24, 2014 [Page 4]
Internet-Draft psc-cap-mode October 2013
2.3.2. TLV Mismatch
If the sent and received Capabilties TLVs are not equal, this
indicates a capabilities mismatch. For timer and timeout purposes, a
capabilities mismatch is treated as a missed TLV. That is, the
received TLV is not taken as an input to the receive timer for
Capabilties TLV refresh purposes. A node MAY retain the received TLV
for logging, alert or debug purposes.
2.3.3. Handling an error
If a node decides that it is in an error state in respect to the
Capabilities TLV, it MUST do two things:
1) Indicate the detected mismatch to the operator by the usual alert
mechanisms (e.g. syslog).
2) Not make any state transitions based on the contents of any PSC
messages
To expand on point 2 - assume node A is receiving NR(0,0) from its
PSC peer Z and is also receiving a mismatched set of capabilities
(e.g. received 0x4, transmitted 0x5). If Z detects a local SF-W and
wants to initiate a protection switch (that is, by sending SF(1,1)),
Node A MUST NOT react to this input by changing its state. A node
MAY increase the severity or urgency of its alarms to the operator,
but until the operator resolves the mismatch in the Capabilites TLV
the protection domain will likely operate in an inconsistent state.
3. Modes
A Mode is a given set of Capabilities. Modes are shorthand;
referring to a set of capabilites by their individual values or by
the name of their mode does not change the protocol behavior. This
document defines two modes - PSC and APS.
<< are those the right names? TBD. >>
<< how to define future modes. TBD. >>
3.1. PSC Mode
PSC Mode is defined as the lack of any Capabilities - that is, a
Capabilities set of 0x0. It is the behavior specified in RFC6378.
There are two ways to declare PSC Mode. A node can send a
Capabilities TLV of 0x0, or it can send no Capabilities TLV at all.
This is further explored in section 4.
Osborne, et al. Expires April 24, 2014 [Page 5]
Internet-Draft psc-cap-mode October 2013
3.2. APS Mode
APS Mode is defined as the use of five specific capabilties. These
capabilites are defined in other documents, but are repeated here in
order to define the mode. They are listed below. APS Mode is
indicated with a Capabilites TLV of 0x1F.
3.2.1. SF-P and FS priority swap
This feature is defined in draft-rhd-mpls-tp-psc-priority and is
assigned bit 0x1.
3.2.2. Modified non-revertive behavior and MS-W
These are both defined in draft-cdh-mpls-tp-psc-non-revertive but are
negotiated seperately.. Modified NR behavior is assigne bit 0x2 and
MS-W is assigned bit 0x4.
3.2.3. Signal degrade
This feature is defined in draft-rhd-mpls-tp-psc-sd. It is assigned
bit 0x8.
3.2.4. Exercise
This feature is defined in draft-dj-mpls-tp-exer-psc. It is assigned
bit 0x10.
4. Backward compatability
As defined in Section 3, PSC Mode is indicated either with a
Capabilties TLV of 0x0 or the lack of any Capabilities TLV. This is
to allow backward compatability between two nodes - one which can
send the Capabilities TLV, and one which cannot.
RFC6378 does not define how to handle an unrecognized TLV. There may
be some implementations that silently discard an unrecognized TLV,
and some that take more drastic steps like refusing to allow PSC to
operate. Thus, a node which has the ability to send and receive the
PSC Mode Capabilities TLV MUST be able to both send the PSC Mode
Capabilties TLV and send no Capabilities TLV at all. An
implementation MUST be configurable between these two choices.
One question that arises from this dual definition of PSC Mode is,
what happens if a node which was sending a non-null Capabilities TLV
(e.g. APS Mode) sends PSC packets without any Capabilites TLV? This
case is handled as follows:
Osborne, et al. Expires April 24, 2014 [Page 6]
Internet-Draft psc-cap-mode October 2013
If a node has never, during the life of a PSC session, received a
Capabilites TLV from a neighbor, the lack of a Capabilites TLV is
treated as receipt of a PSC Capabilites TLV. This allows for interop
between nodes which support the PSC Mode TLV and nodes which do not,
and are thus implicitly operating in PSC Mode.
If a node has received a non-null Capabilites TLV (e.g. APS Mode)
during the life of a PSC session and then receives a PSC packet with
no Capabilites TLV, the receiving node MUST treat the lack of
Capabilites TLV as simply a lack of refresh. That is, the receipt of
a PSC packet with no Capabilites TLV simply does not reset the
receive timer defined in Section 2.2
5. IANA Considerations
- A value for the Cap TLV
- A registry for the capabilities inside the Cap TLV
6. Security Considerations
None.
7. Acknowledgements
8. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997.
Authors' Addresses
Eric Osborne
Cisco Systems, Inc.
Email: eosborne@cisco.com
Jeong-Dong Ryoo
ETRI
Huub van Helvoort
Huawei Technologies
Email: Huub.van.Helvoort@huawei.com
Osborne, et al. Expires April 24, 2014 [Page 7]
Internet-Draft psc-cap-mode October 2013
Alessandro D'Alessandro
Telecom Italia
Email: alessandro.dalessandro@telecomitalia.it
Taesik Cheung
ETRI
Email: cts@etri.re.kr
Osborne, et al. Expires April 24, 2014 [Page 8]