- Introduction
- All about Concatenation
- Link Capacity Adjustment Scheme
- Payload Mappings
- SONET/SDH Transparency Services
- When Things Go Wrong
- Summary
3.3 Link Capacity Adjustment Scheme
Virtual concatenation allows the flexibility of creating SONET/SDH pipes of different sizes. The Link Capacity Adjustment Scheme or LCAS [ITU-T01a] is a relatively new addition to the SONET/SDH standard. It is designed to increase or decrease the capacity of a Virtually Concatenated Group (VCG) in a hitless fashion. This capability is particularly useful in environments where dynamic adjustment of capacity is important. The LCAS mechanism can also automatically decrease the capacity if a member in a VCG experiences a failure in the network, and increase the capacity when the fault is repaired. Although autonomous addition after a failure is repaired is hitless, removal of a member due to path layer failures is not hitless. Note that a “member” here refers to a VC (SDH) or an SPE (SONET). In the descriptions below, we use the term member to denote a VC.
Note that virtual concatenation can be used without LCAS, but LCAS requires virtual concatenation. LCAS is resident in the H4 byte of the path overhead, the same byte as virtual concatenation. The H4 bytes from a 16-frame sequence make up a message for both virtual concatenation and LCAS. Virtual concatenation uses 4 of the 16 bytes for its MFI and sequence numbers. LCAS uses 7 others for its purposes, leaving 5 reserved for future development. While virtual concatenation is a simple labeling of individual STS-1s within a channel, LCAS is a two-way handshake protocol. Status messages are continuously exchanged and consequent actions taken.
From the perspective of dynamic provisioning enabled by LCAS, each VCG can be characterized by two parameters:
-
XMAX, which indicates the maximum size of the VCG and it is usually dictated by hardware and/or standardization limits
-
XPROV, which indicates the number of provisioned members in the VCG
With each completed ADD command, XPROV increases by 1, and with each completed REMOVE command XPROV decreases by 1. The relationship 0 ≤ XPROV ≤ XMAX always holds. The operation of LCAS is unidirectional. This means that in order to bidirectionally add or remove members to or from a VCG, the LCAS procedure has to be repeated twice, once in each direction. These actions are independent of each other, and they are not required to be synchronized.
The protocols behind LCAS are relatively simple. For each member in the VCG (total of XMAX), there is a state machine at the transmitter and a state machine at the receiver. The state machine at the transmitter can be in one of the following five states:
-
IDLE: This member is not provisioned to participate in the VCG.
-
NORM: This member is provisioned to participate in the VCG and has a good path to the receiver.
-
DNU: This member is provisioned to participate in the VCG and has a failed path to the receiver.
-
ADD: This member is in the process of being added to the VCG.
-
REMOVE: This member is in the process of being deleted from the VCG.
The state machine at the receiver can be in one of the following three states:
-
IDLE: This member is not provisioned to participate in the VCG.
-
OK: The incoming signal for this member experiences no failure condition. Or, the receiver has received and acknowledged a request for addition of this member.
-
FAIL: The incoming signal for this member experiences some failure condition, or an incoming request for removal of a member has been received and acknowledged.
The transmitter and the receiver communicate using control packets to ensure smooth transition from one state to another. The control packets consist of XMAX control words, one for each member of the VCG. The following control words are sent from source to the receiver in order to carry out dynamic provisioning functions. Each word is associated with a specific member (i.e., VC) in the VCG.
-
FADD: Add this member to the group.
-
FDNU: Delete this member from the group.
-
FIDLE: Indicate that this VC is currently not a member of the group.
-
FEOS: Indicate that this member has the highest sequence number in the group (EOS denotes End of Sequence).
-
FNORM: Indicate that this member is normal part of the group and does not have the highest sequence number.
The following control words are sent from the receiver to the transmitter. Each word is associated with a specific VC in the VCG.
-
RFAIL and ROK: These messages capture the status of all the VCG members at the receiver. The status of all the members is returned to the transmitter in the control packets of each member. The transmitter can, for example, read the information from member No. 1 and, if that is unavailable, the same information from member No. 2, and so on. As long as no return bandwidth is available, the transmitter uses the last received valid status.
-
RRS_ACK: This is a bit used to acknowledge the detection of renumbering of the sequence or a change in the number of VCG members. This acknowledgment is used to synchronize the transmitter and the receiver.
The following is a typical sequence for adding a member to the group. Multiple members can be added simultaneously for fast resizing.
-
The network management system orders the source to add a new member (e.g., a VC) to the existing VCG.
-
The source node starts sending FADD control commands in the selected member. The destination notices the FADD command and returns an ROK in the link status for the new member.
-
The source sees the ROK, assigns the member a sequence number that is one higher than the number currently in use.
-
At a frame boundary, the source includes the VC in the byte interleaving and sets the control command to FEOS, indicating that this VC is in use and it is the last in the sequence.
-
The VC that previously was “EOS ” now becomes “NORM” (normal) as it is no longer the one with the highest sequence number.
The following is a typical sequence for deleting the VC with the highest sequence number (EOS) from a VCG:
-
The network management system orders the source to delete a member from the existing VCG.
-
The source node starts sending FIDLE control commands in the selected VC. It also sets the member with the next highest sequence number as the EOS and sends FEOS in the corresponding control word.
-
The destination notices the FIDLE command and immediately drops the channel from the reassembly process. It also responds with RFAIL and inverts the RRS_ACK bit.
In this example, the deleted member has the highest sequence number. If this is not the case, then the other members with sequence numbers between the newly deleted member and the highest sequence number are renumbered.
LCAS and virtual concatenation add tremendous amount of flexibility to SONET and SDH. Although SONET and SDH were originally designed to transport voice traffic, advent of these new mechanisms has made it perfectly suitable for carrying more dynamic and bursty data traffic. In the next section, we discuss mechanisms for mapping packet payloads into SONET and SDH SPEs.