understanding sonet by k. surya prakash

Upload: sanjay-yadav

Post on 03-Apr-2018

214 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/28/2019 Understanding SONET by K. Surya Prakash

    1/13

    Introduction to SONET/ SDH

    SONET was developed in the United States through ANSI T1X1.5 committee. ANSI work

    commenced in 1985 with the CCITT (now ITU) initiating a standardization effort in 1986. The

    US wanted a data rate close to 50Mbps. But the Europeans wanted the data rate to be

    around 150 Mbps. A compromise was reached and the US data rates were made subset of

    ITU specification, known formally as Synchronous Digital Hierarchy (SDH).

    SONET/SDH networks are configured as linear networks, where SONET/SDH nodes

    knows as Add Drop Multiplexers (ADMs) are hooked together in a line as shown in figure-1.

    There may be two or four fibers between the two consecutive ADMs with one set serving as

    protection or back up.

    Add/drop multiplexers (ADMs) are places where traffic enters and leaves. The traffic

    can be at various levels in the SONET/ SDH hierarchy (see Table-1). We will learn more

    about ADMs later.

    Figure-1

    Also SONET network elements can receive signals from a variety of facilities such as

    DS1, DS3, ATM, Internet, and LAN/MAN/WAN. They can also receive signals from a variety

    of network topologies. We will study how all this is done in subsequent sections. In addition

    SDH signals my also be connected with a SONET and vice versa. In this case, circuitry

    translates specific SDH information into its SONET equivalent, and vice versa.

    SONET/SDH Rates:

    The SONET frame in its electrical nature is called Synchronous Transport Signal-level

    N (STS-N). The SDH equivalent is called Synchronous Transport Module level N (STM-N).

    After conversion into optical pulses it is known as Optical Carrier level N. The line rates for

    different levels of SONET and SDH signals are shown in Table-1 below.

    Table-1:

  • 7/28/2019 Understanding SONET by K. Surya Prakash

    2/13

    Signal Designation

    Line Rate

    (Mbps)SONET SDH Optical

    STS-1

    STS-3

    STS-12

    STS-48

    STS-192

    STM-0

    STM-1

    STM-4

    STM-16

    STM-64

    OC-1

    OC-3

    OC-12

    OC-18

    OC-192

    51.85

    155.52

    622.08

    2488.32

    9953.28

    You need not worry about the different levels of SONET /SDH at this stage. I had given

    detailed explanation of these levels later. I feel, to understand SDH easily, it is better to have

    knowledge of SONET initially. This is the reason I devoted major portion of this article to

    SONET. Except in terms of terminology there are no major differences between the two. But

    wherever there are differences I had pointed them out.

    Basic SONET Frame Structure:

    The basic SONET frame is as shown in figure 2. This signal is known

    as Synchronous Transport Signal Level-1 (STS-1). It consists of 9 rows of 90 bytes i.e. a total

    of 810 bytes. It is transmitted from left to right and top to bottom. The two dimensional figure

    is just for convenience. Actual transmission takes place serially i.e. the left most byte in the

    top row is transmitted, then the second byte in the first row and so on. After the 90th

    byte in

    the first row the left most byte in the second row is transmitted and it goes on. One more point

    to be noted is that msb is transmitted first and the numbering of bits in a byte is as shown infigure-3. The frame length is 125s (i.e. 8000 frames per second). The STS-1 has a bit rate of

    51.84Mbps. The frame for the lowest SDH rate STM-1 contains 270 columns by 9 rows. We

    will learn more about it later.

  • 7/28/2019 Understanding SONET by K. Surya Prakash

    3/13

    Figure-2

    Figure-3

    The first 3 columns of SONET frame are called Transport Overhead (TOH). The remaining 87

    columns are calledSynchronous Payload Envelope (SPE). The first column of SPE is

    called Payload Overhead (POH). A point to be noted here is that every SONET frame repeats

  • 7/28/2019 Understanding SONET by K. Surya Prakash

    4/13

    every 125s no matter how fast the line speed gets. As line rate goes up SONET frame gets

    bigger, just sufficient to keep the frame rate at 8000 frames per second.

    SONET and SDH Interleaving:

    If three STS-1s are byte interleaved, the resulting frame is called STS-3. Byte interleaving

    means 1st byte of 1stSTS-1 (called A1) is transmitted, then A1 byte of 2

    ndSTS-1, then A1 byte

    of 3rd

    STS-1 and so on. Now the resultant rate of the frame would be 3 times more. This

    multiplexing is carried out for all levels of SONET and SDH. Because of this, SONET/SDH

    maintains a frame rate of 125s. See figure-4 in which different colors for bytes of each frame

    are used to have clear understanding of multiplexing and how higher order frames are

    generated. Note that not all the overhead bytes in STS-1 frame are used in higher order

    frames. These are represented as X in the figure-4.

    Figure-4

    Transport Overhead:

    Let us go through each and every byte of Transport Overhead (TOH). I made sure that by the

    end of this section you will have fairly good idea of overheads in a SONET frame. Transport

    Overhead is divided into two parts -Section Overhead and Line Overhead. The first three

    rows inside the TOH constitute Section Overhead and the remaining six rows of TOH

    constitute Line Overhead (See figure-2).

    Section Overhead:

  • 7/28/2019 Understanding SONET by K. Surya Prakash

    5/13

    Framing Bytes (A1 and A2): These bytes are used to indicate the start of SONET/SDH

    frame. A1 byte is 1111 0110 and A2 byte is 0010 1000. These values remain the same in all

    STS-1s in an STS-N. SDH uses the same values for framing.

    Section Trace (J0)/Section Growth: This byte formerly defined as STS-1 ID (C1), is

    redefined as Section Trace byte. It allows two connected sections to verify the connections

    between them by transmitting a sixteen-byte message. This message is transmitted in sixteen

    consecutive frames with first byte carried in first frame, second byte in second frame and so

    on. If no such section trace message is defined or being transmitted, then in STS-48 or lower

    bit rate the, J0 and each Z0 shall be set corresponding to its order of appearance in the STS-

    N frame (i.e. J0 shall be set to 000000001, first Z0 to 0000010, second Z0 to 00000011 etc.)

    Where as in STS-192 frame each Z0 byte is set to the fixed pattern 11001100.

    Section BIP-8 (B1): B1 byte indicates bit error rate to the receiving terminal. This byte is

    known as Bit Interleaved Parity (BIP-8). The first bit in all the bytes in the previous frame are

    taken and then B1 is set so that the parity is even. Similarly all the other bits in B1 are set.

    The parity is calculated after scrambling and placed before scrambling. Scrambling is

    explained in later sections. The parity represented by this octet is the parity of

    theprevious frame. It is used to estimate the bit error rate (BER) on the line. Note that the B1

    parity is computed over all the bytes in the frame, no matter how large the frame. Because of

    this, the B1 byte does not provide a good BER estimation for large frames (perhaps STS-48

    and larger) under adverse error conditions. SDH uses this byte for the same purpose.

    Orderwire (E1): The E1 byte is located in the first STS-1 of an STS-N. It is called Local

    Orderwire (LOW). The corresponding byte locations in the second through Nth STS-1s are

    currently undefined. This byte is used for a voice channel between two technicians as they

    installed and tested an optical link. It has a bit rate of 64kb/s. SDH uses this octet for the

    same purpose.

    Section User Channel (F1): The F1 byte is located in the first STS-1 of an STS-N, and isused by the network provider. The corresponding byte locations in the second through Nth

    STS-1s are currently undefined. This byte is passed from Section to Section within a Line and

    can be read, written, or both at each Section Terminating Equipment (STE) in that line. The

    use of this function is optional. SDH also uses this byte for the same purpose.

    Section Data Communication Channel (D1, D2 and D3): These are the bytes, which form

    communication channel. These bytes are defined only for first STS-1 of an STS-N frame.

    These three bytes are considered as one 192-kb/s, message-based channel for alarms,

    maintenance, control, monitoring, administering and other communication needs between

  • 7/28/2019 Understanding SONET by K. Surya Prakash

    6/13

    STE. This channel is used for internally generated, externally generated and supplier-specific

    messages. SDH uses this channel for the same purpose.

    Line Overhead:

    Pointers (H1 and H2): The processing of H1 and H2 bytes in SONET and SDH is a beautiful

    concept. Consider figure-2 which describes the STS-1 frame. The SPE can be floating in a

    SONET frame. It can start in one frame and end in the next frame. Now these two bytes are

    allocated to a pointer that indicates the offset in bytes between the pointer and the first byte of

    the STS SPE. The pointer bytes are used in all STS-1s within an STS-N to align the STS-1

    Transport Overheads in the STS-N, and to perform frequency justification. You need not

    worry about this concept as of now as I am going to explain it much more detail in later

    sections. SDH handles these pointer bytes in the same way.

    Pointer Action Byte (H3): This byte is used when negative frequency justification is carried

    out. The value carried by H3 is not defined when there is no negative frequency justification.

    SDH handles this byte in the same way.

    Line BIP-8 (B2): The operation of this B2 byte is same as that of B1 byte in the SOH except

    that B2 is calculated over Line Overhead and Synchronous Payload Envelope of the previous

    frame before scrambling and placed in the current STS-1 frame before scrambling. SDH uses

    this byte for the same purpose.

    Automatic Protection Switching (APS) Channel (K1, K2): In the beginning of this article, I

    told that a set of fibers is used for protection. These K1 and K2 are the bytes, which are

    transmitted over these protection channels for Automatic Protection Switching (APS) signaling

    between line level entities. These bytes are defined only for first STS-1 of an STS-N. In the

    remaining STS-1s it is undefined. These bytes are used to indicate a number of defects,

    alarms etc. detected at the receiving terminal back to the corresponding transmitting terminal

    through protection channels. SDH uses these bytes for the same purpose. There is lot more

    explanation to be done on this concept of APS. Ill discuss this in later sections.

    Line Data Communication Channel (D4-D12): These bytes form a communication channel

    to send administrative messages just as D1 to D3. These nine bytes are considered as one

    576-kb/s, message-based channel for alarms, maintenance, control, monitoring,

    administering and other communication needs. This channel is available for internally

    generated, externally generated and supplier-specific messages. These bytes are defined

    only for STS-1 number 1 of an STS-Nsignal. SDH uses these bytes for the same purpose but

    with additional codes.

  • 7/28/2019 Understanding SONET by K. Surya Prakash

    7/13

    Synchronization Status (S1): This byte is allocated for transporting synchronization status

    messages. S1 is defined only for first STS-1 of an STS-Nsignal. Currently only bits 5-8 of S1

    are used to transport synchronization status messages. Bits 1-4 are undefined. These

    messages contain clock quality labels that allow a SONET NE to select the most suitable

    synchronization reference from the set of available references. The purpose of these

    messages is to allow SONET NEs to reconfigure their synchronization references

    autonomously while avoiding the creation of timing loops. Let me give a few examples for bits

    5-8 in S1. Bits 5-8 are 0001 for stratum 1 traceable, 0111 for stratum 2 traceable, 0000

    Synchronized traceability unknown etc. SDH uses this byte for the same purpose

    Growth (Z1): Z1 byte is located in second through Nth STS-1s of an STS-N. This byte is

    undefined.

    STS-1 REI (M0): The M0 byte is defined only for the STS-1 in an OC-1 or STS-1 electrical

    signal. Bits 5 through 8 of the M0 byte are allocated for a Line Remote Error Indication

    function (REI-L), which conveys the error count detected by LTE (using the B2 code) back to

    its peer LTE. Bits 1 through 4 of the M0 byte are currently undefined. The error count shall be

    a binary number from zero (i.e., 0000) to 8 (i.e., 1000). The remaining seven values

    represented by the four REI-L bits (i.e., 1001 through 1111) shall not be transmitted, and

    shall be interpreted by receiving LTE as zero errors. Since there is no rate in SDH equivalent

    to STS-1, SDH does not define an M0 value for this byte.

    STS-N REI (M1): The M1 byte is located in the third STS-1 in an STS-N (N 3) and is used for

    Line Remote Error Indication (REI-L). The entire M1 byte is used to convey the count of errors

    detected by the Line BIP-8 (B2) byte. This count has (8 times N) + 1 legal values, namely 0 to

    8Nerrors. For rates below STS-48, the remaining possible 255-(8 times N) values are

    interpreted as zero errors. For the STS-48 and STS-192 rates, if the line BIP-8 detects

    greater than 255 errors, the line REI will relay a count of 255 errors. SDH uses this byte for

    the same purpose.

    Growth (Z2): These bytes are allocated for future growth, and their use is currently

    undefined. Note that STS-1 signal does not contain a Z2 byte.

    Orderwire (E2): This byte has the same purpose for line entities as the E1 byte has for

    section entities. It is called Express Orderwire (EOW) channel. The corresponding bytes in

    the second through the Nth STS-1s of an STS-N frame are currently undefined. SDH uses

    this byte for the same purpose.

    Before getting into Synchronous Payload Envelope (SPE), I feel its better to know aboutscrambling.

  • 7/28/2019 Understanding SONET by K. Surya Prakash

    8/13

    Every add/drop multiplexer sample incoming bits according to a particular clock frequency.Now this clock frequency is recovered by using transitions between 1s and 0s in the incomingOC-N signal. Suppose, incoming bit stream contains long strings of all 1s or all 0s. Then clockrecovery would be difficult. So to enable clock recovery at the receiver such long strings of all

    1s or 0s are avoided. This is achieved by a process called Scrambling.

    Scrambler is designed as shown in the figure-5 below.

    Figure-5

    It is a frame synchronous scrambler of sequence length 127. The generating polynomial is1+x

    6+x

    7. The scrambler shall be reset to 1111111 on the most significant byte following Z0

    byte in the Nth STS-1. That bit and all subsequent bits to be scrambled shall be added,modulo 2, to the output from the x7 position of the scrambler, as shown in Figure 5.

    The framing bytes A1 and A2, Section Trace byte J0 and Section Growth byte Z0 are notscrambled to avoid possibility that bytes in the frame might duplicate A1/A2 and cause anerror in framing. The receiver searches for A1/A2 bits pattern in multiple consecutive frames,allowing the receiver to gain bit and byte synchronization. Once bit synchronization is gained,everything is done, from there on, on byte boundaries SONET/SDH is byte synchronous,not bit synchronous.

    An identical operation called descrambling is done at the receiver to retrieve the bits.

    I already said in one of the previous sections that the STS SPE would be floating and the

    pointers give the position from where it is going to start. The phase differences betweenTransport Overhead and SPE must be accommodated. Also SONET/SDH systems aresynchronous systems, i.e., all the clocks are supposed to be same, but in reality they are not.There shall always be small differences. Even when all the clocks are same there can be

    jitter, which must also be accommodated. Data can come into a device slower or faster than itis transmitted out at the other side. So something has to be done to adjust the differencesbetween the transmit and receive clocks. This is where pointer action bytes H1, H2, and H3come in.

    H1 and H2 bytes are called pointer bytes. Consider H1 and H2 as shown in figure-6. Bits 1 to

    4 are called New Data Flag (NDF) bits represented by Ns. It is set to 0110 for normaloperation. Bits 5 and 6 are currently undefined in SONET but are used in SDH, which we willstudy when we go through SDH. Bits 7 to 16 carry the pointer value.

  • 7/28/2019 Understanding SONET by K. Surya Prakash

    9/13

    Figure-6

    The value of the bits 7 to 16 can vary from 0 to 782. A value of 0 indicates that SPE starts atthe first byte immediately after H3 byte. If the pointer value is 1 the payload starts at thesecond byte after H3 etc. Figure 6 shows the layout of H1 and H2 pointer. For the time beingignore the meaning of I and D labels.

    Figure 7 below shows locations of SPE for different values of pointer.

    2 3 4 5 6 89 90

    H1 H2 H3 0 1 2 85 86

    87 88

    521

    522 523

    781 782

    H1 H2 H3 0 1

    Negative stuff Opportunity

    Positive stuff opportunity

    Figure 7

  • 7/28/2019 Understanding SONET by K. Surya Prakash

    10/13

    Now let us see why and how H3 is used. Suppose the incoming clock is faster than theoutgoing clock. Then an extra byte is accumulated in our receive buffer, compared to what wecan transmit. Now this extra byte is put into H3 location. So when we transmit one SONETframe of 810 bytes, we actually transmit 784 bytes of payload (86 columns times 9 rows, plusone H3 octet), rather than 783 bytes of payload.

    A similar problem occurs if the incoming clock is slower than the outgoing clock. Then therewill be a deficit in the receiver buffer. To overcome this problem a stuff byte in the locationafter the H3 byte is sent. Moving of SPE backwards is called negative justification and movingit forward is called positive justification.

    In figure-6 pointer bits are labeled as IDIDIDIDID. I indicates increment and D indicatesdecrement. With the help of these I and D bits we can make positive or negative justification.Let us go through how these positive and negative justifications are done.

    Sonet equipment will have a register using which it compares the present pointer bits with theprevious bits. If I bits are inverted then pointer value is incremented (positive justification) orif D bits are inverted then pointer value is decremented (negative justification). By changing

    the NDF value also new pointer value can be introduced. We shall discuss all this in moredetail.

    Positive Justification:

    Frame Status New Data Flag Unused Bits I D I D I D I D I D

    Normal Frame 0 1 1 0 X X 0 0 1 1 0 1 0 1 1 0

    Inverted I bits 0 1 1 0 X X 1 0 0 1 1 1 1 1 0 0

    New Ptr Value 0 1 1 0 X X 0 0 1 1 0 1 0 1 1 1

    New Ptr Value 0 1 1 0 X X 0 0 1 1 0 1 0 1 1 1

    Normal Frame 0 1 1 0 X X 0 0 1 1 0 1 0 1 1 1

    Figure-8

  • 7/28/2019 Understanding SONET by K. Surya Prakash

    11/13

    Figure-9

    Consider Figures 8 and 9 for the explanation that follows. Let the pointer value be 214. Itsdecimal equivalent is 0011010110 which is shown in first row in figure-8. Now at the framewhere positive justification should be done the I bits are inverted which is shown in thesecond row in figure-8. It is in this frame that the byte after the H3 is stuffed. As soon as thereceiver detects that the I bits are inverted, it discards the byte after H3 as the content ismeaningless-but it usually contains all 0s and also the pointer value is incremented at thereceiver side to point to the adjusted payload.

    In the next frame the receiver receives the incremented pointer value. This new pointer valueis repeated for the next frame as well as for the fourth frame. The new pointer value received

    in the fourth frame is available for pointer adjustment again where as that received in theprevious two frames is not available for adjustment. This is because a new pointer value isaccepted only when it is received for three consecutive frames.

    Negative Justification:

    Frame Status New Data Flag Unused Bits I D I D I D I D I D

    Normal Frame 0 1 1 0 X X 0 0 1 1 0 1 0 1 1 0

    Inverted D bits 0 1 1 0 X X 0 1 1 0 0 0 0 0 1 1

    New Ptr Value 0 1 1 0 X X 0 0 1 1 0 1 0 1 0 1

    New Ptr Value 0 1 1 0 X X 0 0 1 1 0 1 0 1 0 1

    Norm Frame 0 1 1 0 X X 0 0 1 1 0 1 0 1 0 1

    Figure-10

  • 7/28/2019 Understanding SONET by K. Surya Prakash

    12/13

    Figure-11

    Consider Figures 10 and 11 for the explanation that follows. It is very much similar to positivejustification. Let the pointer value be 214. Its decimal equivalent is shown in first row in figure-8. Now at the frame where negative justification should be done the D bits are inverted whichis as shown in the second row in figure-10. It is in this frame that the byte after the H3 is usedto carry a data byte. As soon as the receiver detects that the D bits are inverted, itimmediately takes up H3 as it contains some relevant data and also the pointer value isdecremented at the received SONET equipment to point to the adjusted payload.

    In the next frame the receiver receives the decremented pointer value. This new pointer valueis repeated for the next frame as well as for the fourth frame. The new pointer value receivedin the fourth frame is available for pointer adjustment again.

    Pointer Adjustment Using NDF:

    Frame Status New Data Flag Unused Bits I D I D I D I D I D

    Normal Frame 0 1 1 0 X X 0 0 0 1 0 1 0 1 0 1

    NDF Set 1 0 0 1 X X 0 0 0 1 0 1 0 1 1 0

    New Ptr Value 0 1 1 0 X X 0 0 0 1 0 1 0 1 1 0

    New Ptr Value 0 1 1 0 X X 0 0 0 1 0 1 0 1 1 0Normal Frame 0 1 1 0 X X 0 0 0 1 0 1 0 1 1 0

  • 7/28/2019 Understanding SONET by K. Surya Prakash

    13/13

    Figure-12

    Till now we have discussed incrementing or decrementing of pointer value only by 1. What ifwe want to adjust pointer value by more than 1. This can be achieved using NDF. To makeadjustments using NDF, it's bits must be set to1001. The frame in which NDF is set newpointer value is introduced immediately. Here there is no need for inversion of I or D bits.

    Pointer adjustments using NDF cannot occur more often than every fourth frame in SONET.This is so because the new pointer value is accepted only if it is received for threeconsecutive frames. Another reason for the limit of every fourth SONET frame is because oftwo special cases.

    Special Cases:

    In the positive pointer adjustment case suppose the pointer is changed from 782 to zero. Hereyou can see that the pointer in the frame following the frame with the NDF inverted will pointto the same SPE as the (implied) pointer of the frame with the inverted NDF. This means thatthe system has to ignore the pointer for one SONET frame and the first valid pointer will bethe third SONET frame (the frame with the NDF inverted is one, the next frame is two, and the

    third frame has a valid pointer).

    A similar special case occurs when the pointer rolls over backwards from zero to 782. Thezero value pointer is pointing at the byte after the H3 byte. The next frame has the NDF setand the H3 byte is used for data. The resultant pointer is pointing to the H3 byte. Thebeginning of the next SPE is the last byte in row 3 of the SONET frame after the frame withthe NDF inverted. However, the pointer in that frame cannot point backwards in the frame, sothe SONET equipment has to handle this situation as a special case. The pointer in thatSONET frame points to the last byte in row 3 of the next (third) SONET frame. This can beconfusing but if you draw pictures similar to Figure 9 and Figure 11 you shall see how itworks.

    We will be processing pointers in a different way when we are using concatenated structures,

    which we will be discussing later.

    Understanding SONET

    By K. Surya Prakash