Request for Comments: 3946 Consultant
Category: Standards Track D. Papadimitriou
Alcatel
October 2004
Generalized Multi-Protocol Label Switching (GMPLS) Extensions for
Synchronous Optical Network (SONET) and
Synchronous Digital Hierarchy (SDH) Control
Status of this Memo
This document specifies an Internet standards track protocol for the
Internet community, and requests discussion and suggestions for
improvements. Please refer to the current edition of the "Internet
Official Protocol Standards" (STD 1) for the standardization state
and status of this protocol. Distribution of this memo is unlimited.
Copyright Notice
Copyright (C) The Internet Society (2004).
Abstract
This document is a companion to the Generalized Multi-Protocol Label
Switching (GMPLS) signaling. It defines the Synchronous Optical
Network (SONET)/Synchronous Digital Hierarchy (SDH) technology
specific information needed when using GMPLS signaling.
Table of Contents
1. Introduction ................................................. 2
2. SONET and SDH Traffic Parameters ............................. 2
2.1. SONET/SDH Traffic Parameters ........................... 3
2.2. RSVP-TE Details ........................................ 9
2.3. CR-LDP Details ......................................... 9
3. SONET and SDH Labels ......................................... 10
4. Acknowledgments .............................................. 15
5. Security Considerations ...................................... 16
6. IANA Considerations .......................................... 16
7. References ................................................... 16
7.1. Normative References ................................... 16
Appendix 1 - Signal Type Values Extension for VC-3 ............... 18
Annex 1 - Examples ............................................... 18
Contributors ..................................................... 21
Authors’ Addresses ............................................... 25
Full Copyright Statement ......................................... 26
1. Introduction
As described in [RFC3945], Generalized MPLS (GMPLS) extends MPLS from
supporting packet (Packet Switching Capable - PSC) interfaces and
switching to include support of four new classes of interfaces and
switching: Layer-2 Switch Capable (L2SC), Time-Division Multiplex
(TDM), Lambda Switch Capable (LSC) and Fiber-Switch Capable (FSC). A
functional description of the extensions to MPLS signaling needed to
support the new classes of interfaces and switching is provided in
[RFC3471]. [RFC3473] describes RSVP-TE specific formats and
mechanisms needed to support all five classes of interfaces, and CR-
LDP extensions can be found in [RFC3472]. This document presents
details that are specific to Synchronous Optical Network
(SONET)/Synchronous Digital Hierarchy (SDH). Per [RFC3471],
SONET/SDH specific parameters are carried in the signaling protocol
in traffic parameter specific objects.
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in [RFC2119].
Moreover, the reader is assumed to be familiar with the terminology
in ANSI [T1.105], ITU-T [G.707] as well as [RFC3471], [RFC3472], and
[RFC3473]. The following abbreviations are used in this document:
DCC: Data Communications Channel.
LOVC: Lower Order Virtual Container
HOVC: Higher Order Virtual Container
MS: Multiplex Section.
MSOH: Multiplex Section overhead.
POH: Path overhead.
RS: Regenerator Section.
RSOH: Regenerator section overhead.
SDH: Synchronous digital hierarchy.
SOH: Section overhead.
SONET: Synchronous Optical Network.
SPE: Synchronous Payload Envelope.
STM(-N): Synchronous Transport Module (-N) (SDH).
STS(-N): Synchronous Transport Signal-Level N (SONET).
VC-n: Virtual Container-n (SDH).
VTn: Virtual Tributary-n (SONET).
2. SONET and SDH Traffic Parameters
This section defines the GMPLS traffic parameters for SONET/SDH. The
protocol specific formats, for the SONET/SDH-specific RSVP-TE objects
and CR-LDP TLVs are described in sections 2.2 and 2.3 respectively.
These traffic parameters specify indeed a base set of capabilities
for SONET ANSI [T1.105] and SDH ITU-T [G.707] such as concatenation
and transparency. Other documents may further enhance this set of
capabilities in the future. For instance, signaling for SDH over PDH
ITU-T G.832 or sub-STM-0 ITU-T G.708 interfaces could be defined.
The traffic parameters defined hereafter (see Section 2.1) MUST be
used when the label is encoded as SUKLM as defined in this memo (see
Section 3). They MUST also be used when requesting one of Section/RS
or Line/MS overhead transparent STS-1/STM-0, STS-3*N/STM-N (N=1, 4,
16, 64, 256) signals.
The traffic parameters and label encoding defined in [RFC3471],
Section 3.2, MUST be used for fully transparent STS-1/STM-0,
STS-3*N/STM-N (N=1, 4, 16, 64, 256) signal requests. A fully
transparent signal is one for which all overhead is left unmodified
by intermediate nodes, i.e., when all defined Transparency (T) bits
would be set if the traffic parameters defined in section 2.1 were
used.
2.1. SONET/SDH Traffic Parameters
The traffic parameters for SONET/SDH are organized 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Signal Type | RCC | NCC |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| NVC | Multiplier (MT) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Transparency (T) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Profile (P) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Annex 1 lists examples of SONET and SDH signal coding.
Signal Type (ST): 8 bits
This field indicates the type of Elementary Signal that comprises the
requested LSP. Several transforms can be applied successively on the
Elementary Signal to build the Final Signal being actually requested
for the LSP.
Each transform application is optional and must be ignored if zero,
except the Multiplier (MT) that cannot be zero and is ignored if
equal to one.
Transforms must be applied strictly in the following order:
- First, contiguous concatenation (by using the RCC and NCC fields)
can be optionally applied on the Elementary Signal, resulting in a
contiguously concatenated signal.
- Second, virtual concatenation (by using the NVC field) can be
optionally applied on the Elementary Signal resulting in a
virtually concatenated signal.
- Third, some transparency (by using the Transparency field) can be
optionally specified when requesting a frame as signal rather than
an SPE or VC based signal.
- Fourth, a multiplication (by using the Multiplier field) can be
optionally applied either directly on the Elementary Signal, or on
the contiguously concatenated signal obtained from the first
phase, or on the virtually concatenated signal obtained from the
second phase, or on these signals combined with some transparency.
Permitted Signal Type values for SONET/SDH are:
Value Type (Elementary Signal)
----- ------------------------
1 VT1.5 SPE / VC-11
2 VT2 SPE / VC-12
3 VT3 SPE
4 VT6 SPE / VC-2
5 STS-1 SPE / VC-3
6 STS-3c SPE / VC-4
7 STS-1 / STM-0 (only when requesting transparency)
8 STS-3 / STM-1 (only when requesting transparency)
9 STS-12 / STM-4 (only when requesting transparency)
10 STS-48 / STM-16 (only when requesting transparency)
11 STS-192 / STM-64 (only when requesting transparency)
12 STS-768 / STM-256 (only when requesting transparency)
A dedicated signal type is assigned to a SONET STS-3c SPE instead of
coding it as a contiguous concatenation of three STS-1 SPEs. This is
done in order to provide easy interworking between SONET and SDH
signaling.
Appendix 1 adds one signal type (optional) to the above values.
Requested Contiguous Concatenation (RCC): 8 bits
This field is used to request the optional SONET/SDH contiguous
concatenation of the Elementary Signal.
This field is a vector of flags. Each flag indicates the support of
a particular type of contiguous concatenation. Several flags can be
set at the same time to indicate a choice.
These flags allow an upstream node to indicate to a downstream node
the different types of contiguous concatenation that it supports.
However, the downstream node decides which one to use according to
its own rules.
A downstream node receiving simultaneously more than one flag chooses
a particular type of contiguous concatenation, if any supported, and
based on criteria that are out of this document scope. A downstream
node that doesn’t support any of the concatenation types indicated by
the field must refuse the LSP request. In particular, it must refuse
the LSP request if it doesn’t support contiguous concatenation at
all.
When several flags have been set, the upstream node retrieves the
(single) type of contiguous concatenation the downstream node has
selected by looking at the position indicated by the first label and
the number of label(s) as returned by the downstream node (see also
Section 3).
The entire field is set to zero to indicate that no contiguous
concatenation is requested at all (default value). A non-zero field
indicates that some contiguous concatenation is requested.
The following flag is defined:
Flag 1 (bit 1): Standard contiguous concatenation.
Flag 1 indicates that the standard SONET/SDH contiguous concatenation
as defined in [T1.105]/[G.707] is supported. Note that bit 1 is the
low order bit. Other flags are reserved for extensions, if not used
they must be set to zero when sent, and should be ignored when
received.
See note 1 hereafter in the section on the NCC about the SONET
contiguous concatenation of STS-1 SPEs when the number of components
is a multiple of three.
Number of Contiguous Components (NCC): 16 bits
This field indicates the number of identical SONET SPEs/SDH VCs
(i.e., Elementary Signal) that are requested to be concatenated, as
specified in the RCC field.
Note 1: when requesting a SONET STS-Nc SPE with N=3*X, the
Elementary Signal to use must always be an STS-3c_SPE signal type
and the value of NCC must always be equal to X. This allows also
facilitating the interworking between SONET and SDH. In
particular, it means that the contiguous concatenation of three
STS-1 SPEs can not be requested because according to this
specification, this type of signal must be coded using the STS-3c
SPE signal type.
Note 2: when requesting a transparent STS-N/STM-N signal
limited to a single contiguously concatenated STS-Nc_SPE/VC-4-Nc,
the signal type must be STS-N/STM-N, RCC with flag 1 and NCC set
to 1.
The NCC value must be consistent with the type of contiguous
concatenation being requested in the RCC field. In particular, this
field is irrelevant if no contiguous concatenation is requested (RCC
= 0), in that case it must be set to zero when sent, and should be
ignored when received. A RCC value different from 0 must imply a
number of contiguous components greater than 1.
Number of Virtual Components (NVC): 16 bits
This field indicates the number of signals that are requested to be
virtually concatenated. These signals are all of the same type by
definition. They are Elementary Signal SPEs/VCs for which signal
types are defined in this document, i.e., VT1.5_SPE/VC-11,
VT2_SPE/VC-12, VT3_SPE, VT6_SPE/VC-2, STS-1_SPE/VC-3 or
STS-3c_SPE/VC-4.
This field is set to 0 (default value) to indicate that no virtual
concatenation is requested.
Multiplier (MT): 16 bits
This field indicates the number of identical signals that are
requested for the LSP, i.e., that form the Final Signal. These
signals can be either identical Elementary Signals, or identical
contiguously concatenated signals, or identical virtually
concatenated signals. Note that all these signals belong thus to the
same LSP.
The distinction between the components of multiple virtually
concatenated signals is done via the order of the labels that are
specified in the signaling. The first set of labels must describe
the first component (set of individual signals belonging to the first
virtual concatenated signal), the second set must describe the second
component (set of individual signals belonging to the second virtual
concatenated signal) and so on.
This field is set to one (default value) to indicate that exactly one
instance of a signal is being requested. Intermediate and egress
nodes MUST verify that the node itself and the interfaces on which
the LSP will be established can support the requested multiplier
value. If the requested values can not be supported, the receiver
node MUST generate a PathErr/NOTIFICATION message (see Section
2.2/2.3, respectively).
Zero is an invalid value. If received, the node MUST generate a
PathErr/NOTIFICATION message (see Section 2.2/2.3, respectively).
Note 1: when requesting a transparent STS-N/STM-N signal limited to a
single contiguously concatenated STS-Nc-SPE/VC-4-Nc, the multiplier
field MUST be equal to 1 (only valid value).
Transparency (T): 32 bits
This field is a vector of flags that indicates the type of
transparency being requested. Several flags can be combined to
provide different types of transparency. Not all combinations are
necessarily valid. The default value for this field is zero, i.e.,
no transparency requested.
Transparency, as defined from the point of view of this signaling
specification, is only applicable to the fields in the SONET/SDH
frame overheads. In the SONET case, these are the fields in the
Section Overhead (SOH), and the Line Overhead (LOH). In the SDH
case, these are the fields in the Regenerator Section Overhead
(RSOH), the Multiplex Section overhead (MSOH), and the pointer fields
between the two. With SONET, the pointer fields are part of the LOH.
Note as well that transparency is only applicable when using the
following Signal Types: STS-1/STM-0, STS-3/STM-1, STS-12/STM-4,
STS-48/STM-16, STS-192/STM-64 and STS-768/STM-256. At least one
transparency type must be specified when requesting such a signal
type.
Transparency indicates precisely which fields in these overheads must
be delivered unmodified at the other end of the LSP. An ingress LSR
requesting transparency will pass these overhead fields that must be
delivered to the egress LSR without any change. From the ingress and
egress LSRs point of views, these fields must be seen as unmodified.
Transparency is not applied at the interfaces with the initiating and
terminating LSRs, but is only applied between intermediate LSRs.
The transparency field is used to request an LSP that supports the
requested transparency type; it may also be used to setup the
transparency process to be applied at each intermediate LSR.
The different transparency flags are the following:
Flag 1 (bit 1): Section/Regenerator Section layer.
Flag 2 (bit 2): Line/Multiplex Section layer.
Where bit 1 is the low order bit. Other flags are reserved, they
should be set to zero when sent, and should be ignored when received.
A flag is set to one to indicate that the corresponding transparency
is requested.
Intermediate and egress nodes MUST verify that the node itself and
the interfaces on which the LSP will be established can support the
requested transparency. If the requested flags can not be supported,
the receiver node MUST generate a PathErr/NOTIFICATION message (see
Section 2.2/2.3, respectively).
Section/Regenerator Section layer transparency means that the entire
frames must be delivered unmodified. This implies that pointers
cannot be adjusted. When using Section/Regenerator Section layer
transparency all other flags MUST be ignored.
Line/Multiplex Section layer transparency means that the LOH/MSOH
must be delivered unmodified. This implies that pointers cannot be
adjusted.
Profile (P): 32 bits
This field is intended to indicate particular capabilities that must
be supported for the LSP, for example monitoring capabilities.
No standard profile is currently defined and this field SHOULD be set
to zero when transmitted and SHOULD be ignored when received.
In the future TLV based extensions may be created.
2.2. RSVP-TE Details
For RSVP-TE, the SONET/SDH traffic parameters are carried in the
SONET/SDH SENDER_TSPEC and FLOWSPEC objects. The same format is used
both for SENDER_TSPEC object and FLOWSPEC objects. The content of
the objects is defined above in Section 2.1. The objects have the
following class and type:
For SONET ANSI T1.105 and SDH ITU-T G.707:
SONET/SDH SENDER_TSPEC object: Class = 12, C-Type = 4
SONET/SDH FLOWSPEC object: Class = 9, C-Type = 4
There is no Adspec associated with the SONET/SDH SENDER_TSPEC.
Either the Adspec is omitted or an int-serv Adspec with the Default
General Characterization Parameters and Guaranteed Service fragment
is used, see [RFC2210].
For a particular sender in a session the contents of the FLOWSPEC
object received in a Resv message SHOULD be identical to the contents
of the SENDER_TSPEC object received in the corresponding Path
message. If the objects do not match, a ResvErr message with a
"Traffic Control Error/Bad Flowspec value" error SHOULD be generated.
Intermediate and egress nodes MUST verify that the node itself and
the interfaces on which the LSP will be established can support the
requested Signal Type, RCC, NCC, NVC and Multiplier (as defined in
Section 2.1). If the requested value(s) can not be supported, the
receiver node MUST generate a PathErr message with a "Traffic Control
Error/ Service unsupported" indication (see [RFC2205]).
In addition, if the MT field is received with a zero value, the node
MUST generate a PathErr message with a "Traffic Control Error/Bad
Tspec value" indication (see [RFC2205]).
Intermediate nodes MUST also verify that the node itself and the
interfaces on which the LSP will be established can support the
requested Transparency (as defined in Section 2.1). If the requested
value(s) can not be supported, the receiver node MUST generate a
PathErr message with a "Traffic Control Error/Service unsupported"
indication (see [RFC2205]).
2.3. CR-LDP Details
For CR-LDP, the SONET/SDH traffic parameters are carried in the
SONET/SDH Traffic Parameters TLV. The content of the TLV is defined
above in Section 2.1. The header of the TLV has the following
format:
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|U|F| Type | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
The type field for the SONET/SDH Traffic Parameters TLV is: 0x0838.
Intermediate and egress nodes MUST verify that the node itself and
the interfaces on which the LSP will be established can support the
requested Signal Type, RCC, NCC, NVC and Multiplier (as defined in
Section 2.1). If the requested value(s) can not be supported, the
receiver node MUST generate a NOTIFICATION message with a "Resource
Unavailable" status code (see [RFC3212]).
In addition, if the MT field is received with a zero value, the node
MUST generate a NOTIFICATION message with a "Resource Unavailable"
status code (see [RFC3212]).
Intermediate nodes MUST also verify that the node itself and the
interfaces on which the LSP will be established can support the
requested Transparency (as defined in Section 2.1). If the requested
value(s) can not be supported, the receiver node MUST generate a
NOTIFICATION message with a "Resource Unavailable" status code (see
[RFC3212]).
3. SONET and SDH Labels
SONET and SDH each define a multiplexing structure. Both structures
are trees whose roots are respectively an STS-N or an STM-N; and
whose leaves are the signals that can be transported via the time-
slots and switched between time-slots within an ingress port and
time-slots within an egress port, i.e., a VTx SPE, an STS-x SPE or a
VC-x. A SONET/SDH label will identify the exact position (i.e.,
first time-slot) of a particular VTx SPE, STS-x SPE or VC-x signal in
a multiplexing structure. SONET and SDH labels are carried in the
Generalized Label per [RFC3473] and [RFC3472].
Note that by time-slots we mean the time-slots as they appear
logically and sequentially in the multiplex, not as they appear after
any possible interleaving.
These multiplexing structures will be used as naming trees to create
unique multiplex entry names or labels. The same format of label is
used for SONET and SDH. As explained in [RFC3471], a label does not
identify the "class" to which the label belongs. This is implicitly
determined by the link on which the label is used.
In case of signal concatenation or multiplication, a list of labels
can appear in the Label field of a Generalized Label.
In case of contiguous concatenation, only one label appears in the
Label field. This label identifies the lowest time-slot occupied by
the contiguously concatenated signal. By lowest time-slot we mean
the one having the lowest label (value) when compared as integer
values, i.e., the time-slot occupied by the first component signal of
the concatenated signal encountered when descending the tree.
In case of virtual concatenation, the explicit ordered list of all
labels in the concatenation is given. Each label indicates the first
time-slot occupied by a component of the virtually concatenated
signal. The order of the labels must reflect the order of the
payloads to concatenate (not the physical order of time-slots). The
above representation limits virtual concatenation to remain within a
single (component) link; it imposes as such a restriction compared to
the ANSI [T1.105]/ITU-T [G.707] recommendations.
The standard definition for virtual concatenation allows each virtual
concatenation components to travel over diverse paths. Within GMPLS,
virtual concatenation components must travel over the same
(component) link if they are part of the same LSP. This is due to
the way that labels are bound to a (component) link. Note however,
that the routing of components on different paths is indeed
equivalent to establishing different LSPs, each one having its own
route. Several LSPs can be initiated and terminated between the same