⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rfc2823.txt

📁 著名的RFC文档,其中有一些文档是已经翻译成中文的的.
💻 TXT
📖 第 1 页 / 共 4 页
字号:
RFC 2823                  PPP SDL on SONET/SDH                  May 2000   In order to calculate MTTF, we must first determine how often the   frame detection state machine is "unavailable" because it failed to   detect the next incoming SDL frame in the data stream.   Since the probability of a false header detection using CRC-16 in   random data is 2^-16 and this rate is large compared to the allowable   packet size, it is worthwhile to run multiple parallel frame-   detection state machines.  Each machine starts with a different   candidate framing point in order to reduce the probability of falsely   detecting user data as a valid frame header.   The results for this calculation, given maximal 64KB packets and   slightly larger than Internet average 354 byte packets, are:     Number of  Unavailability  Unavailability      Framers    64KB packets   354 byte pkts         1         3.679E-1        5.373E-3         2         3.083E-2        1.710E-6         3         2.965E-3        9.712E-10         4         2.532E-4        4.653E-13   Using these values, MTTF can be calculated as a function of the Bit   Error Rate (BER).  These plots show a characteristically flat region   for all BERs up to a knee, beyond which the begins to rise sharply.   In all cases, this knee point has been found to occur at a BER of   approximately 1E-4, which is several orders of magnitude above that   observed on existing SONET/SDH links.  The flat rate values are   summarized as:     Number of  Flat region   Flat region      Framers   64KB packets   354 bytes         1         3.58          1.52         2         1.595         1.5         3         1.52          1.5         4         1.5           1.5   Thus, for common packet sizes in an implementation with two parallel   framers using links with a BER of 1E-4 or better, the MTTF is   approximately 1.5 packets.  This is also the optimal time, since it   represents initiating framing at an average point half-way into one   packet, and achieving good framing after seeing exactly one correctly   framed packet.4.2.  Mean Time To Synchronization (MTTS)   The MTTS for SDL with a self-synchronous scrambler is the same as the   MTTF, or 1.5 packets.Carlson, et al.               Experimental                     [Page 15]RFC 2823                  PPP SDL on SONET/SDH                  May 2000   The MTTS for SDL using the optional set-reset scrambler is one half   of the scrambling state transmission interval (in packets) plus the   MTTF.  For insertion at the default rate of one per eight packets,   the MTTS is 5.5 packets.   (The probability of receiving a bad scrambling state transmission   should also be included in this calculation.  The probability of   random corruption of this short message is shown in the SDL document   [6] to be small enough that it can be neglected for this   calculation.)4.3.  Probability of False Frame (PFF)   The PFF is 2.328E-10 (2^-32), since false framing requires two   consecutive headers with falsely correct CRC-16.4.4.  Probability of False Synchronization (PFS)   The PFS for SDL with the self-synchronous scrambler is the same as   the PFF, or 2.328E-10 (2^-32).   The PFS for SDL with the set-reset scrambler is 5.421E-20 (2^-64),   and is calculated as the PFF above multiplied by the probability of a   falsely detected scrambler state message, which itself contains two   independent CRC-16 calculations.4.5.  Probability of Loss of Frame (PLF)   The PLF is a function of the BER, and for SDL is approximately the   square of the BER multiplied by 500, which is the probability of two   or more bit errors occurring within the 32 bit SDL header.  Thus, at   a BER of 1E-5, the PLF is 5E-8.5.  The Special Messages   When the SDL Packet Length field has any value between 0000 and 0003,   the message following the header has a special, pre-defined length.   The 0 value is a time-fill on an idle link, and no other data   follows.  The next octet on the link is the first octet of the next   SDL header.   The values 1 through 3 are defined in the following subsections.   These special messages each consist of a six octet data portion   followed by another CRC-16 over that data portion, as with the SDL   header, and this CRC is used for single bit error correction.Carlson, et al.               Experimental                     [Page 16]RFC 2823                  PPP SDL on SONET/SDH                  May 20005.1.  Scrambler State   The special value of 1 for Packet Length is reserved to transfer the   scrambler state from the transmitter to the receiver for the optional   set-reset scrambler.  In this case, the SDL header is followed by six   octets (48 bits) of scrambler state.  Neither the scrambler state nor   the CRC are scrambled.5.2.  A/B Message   The special values of 2 and 3 for Packet Length are reserved for "A"   and "B" messages, which are also six octets in length followed by two   octets of CRC-16.  Each of these eight octets are scrambled.  No use   for these messages with PPP SDL is defined.  These messages are   reserved for use by link maintenance protocols, in a manner analogous   to ATM's OAM cells.6.  The Set-Reset Scrambler Option   PPP over SDL uses a self-synchronous scrambler.  SDL implementations   MAY also employ a set-reset scrambler to avoid some of the possible   inherent problems with self-synchronous scramblers.6.1.  The Killer Packet Problem   Scrambling in general solves two problems.  First, SONET and SDH   interfaces require a minimum density of bit transitions in order to   maintain hardware clock recovery.  Since data streams frequently   contain long runs of all zeros or all ones, scrambling the bits using   a pseudo-random number sequence breaks up these patters.  Second, all   link-layer synchronization mechanisms rely on detecting long-range   patterns in the received data to detect framing.   Self-synchronous scramblers are an easy way to partially avoid these   problems.  One problem that is inherent with self-synchronous,   however, is that long user packets from malicious sites can make use   of the known properties of these scramblers to inject either long   strings of zeros or other synchronization-destroying patterns into   the link.  For public networks, where the data presented to the   network is usually multiplexed (interleaved) with multiple unrelated   streams, the clocking problem does not pose a significant threat to   the public network.  It does, however, pose a threat to the PPP-   speaking device, and it poses a threat to long lines that are   unchannelized.   Such carefully constructed packets are called "killer packets".Carlson, et al.               Experimental                     [Page 17]RFC 2823                  PPP SDL on SONET/SDH                  May 20006.2.  SDL Set-Reset Scrambler   An alternative to the self-synchronous scrambler is the externally   synchronized or "set-reset" scrambler.  This is a free-running   scrambler that is not affected by the patterns in the user data, and   therefore minimizes the possibility that a malicious user could   present data to the network that mimics an undesirable data pattern.   The option set-reset scrambler defined for SDL is an   x^48+x^28+x^27+x+1 independent scrambler initialized to all ones when   the link enters PRESYNCH state and reinitialized if the value ever   becomes all zero bits.  As with the self-synchronous scrambler, all   octets in the PPP packet data following the SDL header through the   final packet CRC are scrambled.   This mode MAY be detected automatically.  If a scrambler state   message is received (as described in the following section), an SDL   implementation that includes the set-reset scrambler option may   switch from self-synchronous into set-reset mode automatically.  An   SDL implementation that does not include the set-reset scrambler MUST   NOT send scrambler state messages.6.3.  SDL Scrambler Synchronization   As described in the previous section, the special value of 1 for   Packet Length is reserved to transfer the scrambler state from the   transmitter to the receiver.  In this case, the SDL header is   followed by six octets (48 bits) of scrambler state plus two octets   of CRC-16 over the scrambler state.  None of these eight octets are   scrambled.   SDL synchronization consists of two components, link and scrambler   synchronization.  Both must be completed before PPP data flows on the   link.   If a valid SDL header is seen in PRESYNCH state, then the link enters   SYNCH state, and the scrambler synchronization sequence is started.   If an invalid SDL header is detected, then the link is returned to   HUNT state, and PPP transmission is suspended.   When scrambler synchronization is started, a scrambler state message   is sent (Packet Length set to 1 and six octets of scrambler state in   network byte order follow the SDL header).  When a scrambler   synchronization message is received from the peer, PPP transmission   is enabled.Carlson, et al.               Experimental                     [Page 18]RFC 2823                  PPP SDL on SONET/SDH                  May 2000   Scrambler state messages are periodically transmitted to keep the   peers in synchronization.  A period of once per eight transmitted   packets is suggested, and it SHOULD be configurable.  Excessive   packet CRC errors detected indicates an extended loss of   synchronization and should trigger link resynchronization.   On reception of a scrambler state message, an SDL implementation MUST   compare the received 48 bits of state with the receiver's scrambler   state.  If any of these bits differ, then a synchronization slip   error is declared.  After such an error, the next valid scrambler   state message received MUST be loaded into the receiver's scrambler,   and the error condition is then cleared.6.4.  SDL Scrambler Operation   The transmit and receive scramblers are shift registers with 48   stages that are initialized to all-ones when the link is initialized.   Each is refilled with all one bits if the value in the shift register   ever becomes all zeros.  This scrambler is not reset at the beginning   of each frame, as is the SONET/SDH X^7+X^6+1 scrambler, nor is it   modified by the transmitted data, as is the ATM self-synchronous   scrambler.  Instead it is kept in synchronization using special SDL   messages.   +----XOR<--------------XOR<---XOR<----------------+   |     ^                 ^      ^                  |   |     |                 |      |                  |   +->D0-+->D1-> ... ->D26-+->D27-+->D28-> ... ->D47-+   |   v   OUT   Each XOR is an exclusive-or gate; also known as a modulo-2 adder.   Each Dn block is a D-type flip-flop clocked on the appropriate data   clock.   The scrambler is clocked once after transmission of each bit of SDL   data, whether or not the transmitted bit is scrambled.  When   scrambling is enabled for a given octet, the OUT bit is exclusive-   ored with the raw data bit to produce the transmitted bit.  Bits   within an octet are transmitted MSB-first.   Reception of scrambled data is identical to transmission.  Each   received bit is exclusive-ored with the output of the separate   receive data scrambler.Carlson, et al.               Experimental                     [Page 19]RFC 2823                  PPP SDL on SONET/SDH                  May 2000   To generate a scrambler state message, the contents of D47 through D0   are snapshot at the point where the first scrambler state bit is   sent.  D47 is transmitted as the first bit of the output.  The first   octet transmitted contains D47 through D40, the second octet D39   through D32, and the sixth octet D7 through D0.   The receiver of a scrambler state message MUST first run the CRC-16   check and correct algorithm over this message.  If the CRC-16 message   check detects multiple bit errors, then the message is dropped and is   not processed further.   Otherwise, it then should compare the contents of the entire receive   scrambler state D47:D0 with the corrected message.  (By pipelining   the receiver with multiple clock stages between SDL Header error-   correction block and the descrambling block, the receive descrambler   will be on the correct clock boundary when the message arrives at the   descrambler.  This means that the decoded scrambler state can be   treated as immediately available at the beginning of the D47 clock   cycle into the receive scrambler.)   If any of the received scrambler state bits is different from the   corresponding shift register bit, then a soft error flag is set.  If   the flag was already set when this occurs, then a synchronization   slip error is declared.  This error SHOULD be counted and reported   through implementation-defined network management procedures.  When   the receiver has this soft error flag set, any scrambler state   message that passes the CRC-16 message check without multiple bit   errors is clocked directly into the receiver's state register after   the comparison is done, and the soft error flag is then cleared.   Otherwise, while uncorrectable scrambler state messages are received,   the soft error flag state is maintained.   (The intent of this mechanism is to reduce the likelihood that a   falsely corrected scrambler state message with multiple bit errors   can corrupt the running scrambler state.)7.  Configuration Details7.1.  Default LCP Configuration   The LCP synchronous configuration defaults apply to SONET/SDH links.   The following Configuration Options are recommended:      Magic Number      No Address and Control Field Compression      No Protocol Field Compression      No FCS alternatives (32-bit FCS default)Carlson, et al.               Experimental                     [Page 20]RFC 2823                  PPP SDL on SONET/SDH                  May 2000   This configuration means that PPP over SDL generally presents a 32-   bit aligned datagram to the network layer.  With the address,   control, and protocol field intact, the PPP overhead on each packet   is four octets.  If the SDL framer presents the SDL packet header to   the PPP input handling in order to communicate the packet length (the   Lucent implementation does not do this, but other hardware   implementations may), this header is also four octets, and alignment   is preserved.7.2.  Modification of the Standard Frame Format   Since SDL does take the place of HDLC as a transport for PPP, it is   at least tempting to remove the HDLC-derived overhead.  This is not   done for PPP over SDL in order to preserve the message alignment and   to allow for the future possibility interworking with other services   (e.g., Frame Relay).   By prior external arrangement or via LCP negotiation, any two SDL   implementations MAY agree to omit the address and control fields or   implement protocol field compression on a link.  Such use is not   described by this document and MUST NOT be the default on any SDL   implementation.8.  Implementation Details8.1.  CRC Generation   The following unoptimized code generates proper CRC-16 and CRC-32   values for SDL messages.  Note that the polynomial bits are numbered   in big-endian order for SDL CRCs; bit 0 is the MSB.     typedef unsigned char u8;     typedef unsigned short u16;     typedef unsigned long u32;     #define POLY16  0x1021     #define POLY32  0x04C11DB7     u16     crc16(u16 crcval, u8 cval)     {         int i;         crcval ^= cval << 8;         for (i = 8; i--; )             crcval = crcval & 0x8000 ? (crcval << 1) ^ POLY16 :                 crcval << 1;         return crcval;Carlson, et al.               Experimental                     [Page 21]

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -