CRC-based framing

Last updated

CRC-based framing is a kind of frame synchronization used in Asynchronous Transfer Mode (ATM) and other similar protocols.

Contents

The concept of CRC-based framing was developed by StrataCom, Inc. in order to improve the efficiency of a pre-standard Asynchronous Transfer Mode (ATM) link protocol. This technology was ultimately used in the principal link protocols of ATM itself and was one of the most significant developments of StrataCom. An advanced version of CRC-based framing was used in the ITU-T SG15 G.7041 Generic Framing Procedure (GFP), which itself is used in several packet link protocols.

Overview of CRC-based framing

The method of CRC-Based framing re-uses the header cyclic redundancy check (CRC), which is present in ATM and other similar protocols, to provide framing on the link with no additional overhead. In ATM, this field is known as the Header Error Control/Check (HEC) field. It consists of the remainder of the division of the 32 bits of the header (taken as the coefficients of a polynomial over the field with two elements) by the polynomial . The pattern 01010101 is XORed with the 8-bit remainder before being inserted in the last octet of the header. [1]

Constantly checked as data is transmitted, this scheme is able to correct single-bit errors and detect many multiple-bit errors.[ clarification needed ] For a tutorial and an example of computing the CRC see mathematics of cyclic redundancy checks.

The header CRC/HEC is needed for another purpose within an ATM system, to improve the robustness in cell delivery. Using this same CRC/HEC field for the second purpose of link framing provided a significant improvement in link efficiency over what other methods of framing, because no additional bits were required for this second purpose.

A receiver utilizing CRC-based framing bit-shifts along the received bit stream until it finds a bit position where the header CRC is correct for a number of times. The receiver then declares that it has found the frame. A hysteresis function is applied to keep the receiver in lock in the presence of a moderate error rate.

In links where there is already a byte lock mechanism present such as within an E-carrier or SDH frame, the receiver need only byte-shift (rather than of bit-shifting) along the receive data stream to find lock.

Length/HEC-Based Framing

An advanced, variable frame size version of CRC-Based framing is used in ITU-T SG15 G.7041 GFP links where it is known as Length/HEC-based framing. An offset to the next valid header is present in a fixed position relative to the CRC/HEC. The receiver looks for a position in the receive data stream following the rules that the header CRC/HEC is correct and the byte offset correctly points to the next valid header CRC/HEC.

Invention of CRC-based framing

StrataCom produced the first (pre-standard) ATM commercial product, the IPX. The IPX used 24 byte cells instead of ATM's 53 byte cells, and the field definitions were slightly different, but the basic idea of using short, fixed length cells was identical. StrataCom's first product had T1 (1.544 Mbit/s) based links which included a 5 bit header CRC, similar to ATM's 8 bit header CRC.

T1 is a time-division multiplexing (TDM) protocol with 24 byte payloads carried in a 193 bit frame. The first bit of each frame carries one bit out of a special pattern. A receiver finds this special pattern by sequentially looking for the bit position in the receive data where a bit from this pattern shows up every 193rd byte. It was convenient for StrataCom to make the length of one cell equal to the length of one T1 frame [2] because a useful T1 framer Integrated Circuit from Rockwell was on the market. This device found the 193 bit long TDM frame and put out the 24 bytes in a form that could be used effectively.

When it came time to produce a European product, the benefit of using 24 byte frames became a liability. The European E-carrier (E1) format has a 32 byte frame of which 30 bytes could carry data. The development team's first proposal used the HDLC protocol to encapsulate a sequence of 24 byte cells into a byte stream collected from the 30 byte E1 payloads. This was highly inefficient because HDLC has a heavy and data-dependent overhead. The project team subsequently realized they could base the framing on the CRC. [3] A circuit was designed which examined the incoming byte stream emerging from the E1 framer device and found a byte position for which the header CRC value was consistently correct. This team also went on to create a more error tolerant form of the technique. [4]

A related technique was patented in 1984. That technique uses the CRC to find the start of 50 bit frames composed of a 36 bit data payload, a 13 bit CRC, and a single 1 bit start-of-frame indicator. [5]

Notes and references

  1. "ATM User-Network Interface Specification V3.0" . Retrieved 2007-09-17.[ permanent dead link ]
  2. US4771425A Synchoronous packet voice/data communication system
  3. US5072449A Packet framing using cyclic redundancy checking
  4. US5128945A Packet framing using cyclic redundancy checking
  5. US4468770A Data receivers incorporating error code detection and decoding

Related Research Articles

<span class="mw-page-title-main">Asynchronous Transfer Mode</span> Digital telecommunications protocol for voice, video, and data

Asynchronous Transfer Mode (ATM) is a telecommunications standard defined by the American National Standards Institute and ITU-T for digital transmission of multiple types of traffic. ATM was developed to meet the needs of the Broadband Integrated Services Digital Network as defined in the late 1980s, and designed to integrate telecommunication networks. It can handle both traditional high-throughput data traffic and real-time, low-latency content such as telephony (voice) and video. ATM provides functionality that uses features of circuit switching and packet switching networks by using asynchronous time-division multiplexing.

In computer networking, Point-to-Point Protocol (PPP) is a data link layer communication protocol between two routers directly without any host or any other networking in between. It can provide loop connection authentication, transmission encryption, and data compression.

A cyclic redundancy check (CRC) is an error-detecting code commonly used in digital networks and storage devices to detect accidental changes to digital data. Blocks of data entering these systems get a short check value attached, based on the remainder of a polynomial division of their contents. On retrieval, the calculation is repeated and, in the event the check values do not match, corrective action can be taken against data corruption. CRCs can be used for error correction.

In telecommunication, a longitudinal redundancy check (LRC), or horizontal redundancy check, is a form of redundancy check that is applied independently to each of a parallel group of bit streams. The data must be divided into transmission blocks, to which the additional check data is added.

In telecommunications and computer networking, a network packet is a formatted unit of data carried by a packet-switched network. A packet consists of control information and user data; the latter is also known as the payload. Control information provides data for delivering the payload. Typically, control information is found in packet headers and trailers.

High-Level Data Link Control (HDLC) is a bit-oriented code-transparent synchronous data link layer protocol developed by the International Organization for Standardization (ISO). The standard for HDLC is ISO/IEC 13239:2002.

The data link layer, or layer 2, is the second layer of the seven-layer OSI model of computer networking. This layer is the protocol layer that transfers data between nodes on a network segment across the physical layer. The data link layer provides the functional and procedural means to transfer data between network entities and may also provide the means to detect and possibly correct errors that can occur in the physical layer.

The use of Asynchronous Transfer Mode (ATM) technology and services creates the need for an adaptation layer in order to support information transfer protocols, which are not based on ATM. This adaptation layer defines how to segment higher-layer packets into cells and the reassembly of these packets. Additionally, it defines how to handle various transmission aspects in the ATM layer.

Throughput of a network can be measured using various tools available on different platforms. This page explains the theory behind what these tools set out to measure and the issues regarding these measurements.

ZMODEM is an inline file transfer protocol developed by Chuck Forsberg in 1986, in a project funded by Telenet in order to improve file transfers on their X.25 network. In addition to dramatically improved performance compared to older protocols, ZMODEM offered restartable transfers, auto-start by the sender, an expanded 32-bit CRC, and control character quoting supporting 8-bit clean transfers, allowing it to be used on networks that would not pass control characters.

YMODEM is a file transfer protocol used between microcomputers connected together using modems. It was primarily used to transfer files to and from bulletin board systems. YMODEM was developed by Chuck Forsberg as an expansion of XMODEM and was first implemented in his CP/M YAM program. Initially also known as YAM, it was formally given the name "YMODEM" in 1985 by Ward Christensen, author of the original XMODEM.

In computer networking and telecommunications, TDM over IP (TDMoIP) is the emulation of time-division multiplexing (TDM) over a packet-switched network (PSN). TDM refers to a T1, E1, T3 or E3 signal, while the PSN is based either on IP or MPLS or on raw Ethernet. A related technology is circuit emulation, which enables transport of TDM traffic over cell-based (ATM) networks.

A frame check sequence (FCS) is an error-detecting code added to a frame in a communication protocol. Frames are used to send payload data from a source to a destination.

ATM Adaptation Layer 5 (AAL5) is an ATM adaptation layer used to send variable-length packets up to 65,535 octets in size across an Asynchronous Transfer Mode (ATM) network.

In computer networking, jumbo frames are Ethernet frames with more than 1500 bytes of payload, the limit set by the IEEE 802.3 standard. Commonly, jumbo frames can carry up to 9000 bytes of payload, but smaller and larger variations exist and some care must be taken using the term. Many Gigabit Ethernet switches and Gigabit Ethernet network interface controllers and some Fast Ethernet switches and Fast Ethernet network interface cards can support jumbo frames.

Link Access Procedure for Modems (LAPM) is part of the V.42 error correction protocol for modems.

In computer networks, a syncword, sync character, sync sequence or preamble is used to synchronize a data transmission by indicating the end of header information and the start of data. The syncword is a known sequence of data used to identify the start of a frame, and is also called reference signal or midamble in wireless communications.

In computer networking, an Ethernet frame is a data link layer protocol data unit and uses the underlying Ethernet physical layer transport mechanisms. In other words, a data unit on an Ethernet link transports an Ethernet frame as its payload.

ATM Adaptation Layer 2 (AAL2) is an Asynchronous Transfer Mode (ATM) adaptation layer, used primarily in telecommunications; for example, it is used for the Iu interfaces in the Universal Mobile Telecommunications System, and is also used for transporting digital voice. The standard specifications related to AAL2 are ITU standards I.363.2 and I366.1.

Generic Stream Encapsulation, or GSE for short, is a Data link layer protocol defined by DVB. GSE provides means to carry packet oriented protocols such as IP on top of uni-directional physical layers such as DVB-S2, DVB-T2 and DVB-C2.