Synchronous Data Link Control

Last updated

Synchronous Data Link Control (SDLC) is a computer communications protocol. It is the layer 2 protocol for IBM's Systems Network Architecture (SNA). SDLC supports multipoint links as well as error correction. It also runs under the assumption that an SNA header is present after the SDLC header. [1] SDLC was mainly used by IBM mainframe and midrange systems; however, implementations exist on many platforms from many vendors. In the United States and Canada, SDLC can be found in traffic control cabinets. [2]

Contents

In 1975, IBM developed the first bit-oriented protocol, SDLC, [3] from work done for IBM in the early 1970s. [4] This de facto standard has been adopted by ISO as High-Level Data Link Control (HDLC) in 1979 [4] and by ANSI as Advanced Data Communication Control Procedures (ADCCP). The latter standards added features such as the Asynchronous Balanced Mode, frame sizes that did not need to be multiples of bit-octets, but also removed some of the procedures and messages (such as the TEST message). [5]

SDLC operates independently on each communications link, and can operate on point-to-point multipoint or loop facilities, on switched or dedicated, two-wire or four-wire circuits, and with full-duplex and half-duplex operation. [6] A unique characteristic of SDLC is its ability to mix half-duplex secondary stations with full-duplex primary stations on four-wire circuits, thus reducing the cost of dedicated facilities. [7]

Intel used SDLC as a base protocol for BITBUS, still popular in Europe as fieldbus and included support in several controllers (i8044/i8344, i80152). The 8044 controller is still in production by third-party vendors. Other vendors putting hardware support for SDLC (and the slightly different HDLC) into communication controller chips of the 1980s included Zilog, Motorola, and National Semiconductor. As a result, a wide variety of equipment in the 1980s used it and it was very common in the mainframe centric corporate networks which were the norm in the 1980s. The most common alternatives for SNA with SDLC were probably DECnet with Digital Data Communications Message Protocol (DDCMP), Burroughs Network Architecture (BNA) with Burroughs Data Link Control (BDLC), and ARPANET with IMPs. [8]

Differences between SDLC and HDLC

HDLC is mostly an extension of SDLC, [9] :69–72 but some features were deleted or renamed.

HDLC features not in SDLC

Features present in HDLC, but not SDLC, are:

Also not in SDLC are later HDLC extensions in ISO/IEC 13239 such as:

Naming differences

HDLC renamed some SDLC frames. The HDLC names were incorporated into later versions of SDLC: [9] :73

Original nameNew name
NSANonsequenced acknowledgeUAUnnumbered acknowledge
NSINonsequenced informationUIUnnumbered information
NSPNonsequenced pollUPUnnumbered poll
ROLRequest onlineDMDisconnected mode
CMDRCommand rejectFRMRFrame reject
RQIRequest initialization modeRIMRequest initialization mode
RQDRequest disconnectRDRequest disconnect

HDLC extensions added to SDLC

Some features were added in HDLC, and subsequently added back to later versions of SDLC.

SDLC features not in HDLC

Two U frames in SDLC which do not exist in HDLC are:

Several U frames are almost entirely unused in HDLC, existing primarily for SDLC compatibility:

The TEST U frame was not included in early HDLC standards, but was added later.

Loop mode

A special mode of SDLC operation which is supported by e.g. the Zilog SCC but was not incorporated into HDLC is SDLC loop mode. [9] :42–49,58–59 In this mode, a primary and a number of secondaries are connected in a unidirectional ring network, with each one's transmit output connected to the next's receive input. Each secondary is responsible for copying all frames which arrive at its input so that they reach the rest of the ring and eventually return to the primary. Except for this copying, a secondary operates in half-duplex mode; it only transmits when the protocol guarantees it will receive no input.

When a secondary is powered off, a relay connects its input directly to its output. When powering on, a secondary waits for an opportune moment and then goes "on-loop" inserting itself into the data stream with a one-bit delay. A similar opportunity is used to go "off-loop" as part of a clean shutdown.

In SDLC loop mode, frames arrive in a group, ending (after the final flag) with an all-ones idle signal. The first seven 1-bits of this (the pattern 01111111) constitutes a "go-ahead" sequence (also called EOP, end of poll) giving a secondary permission to transmit. A secondary which wishes to transmit uses its 1-bit delay to convert the final 1 bit in this sequence to a 0 bit, making it a flag character, and then transmits its own frames. After its own final flag, it transmits an all-ones idle signal, which will serve as a go-ahead for the next station on the loop.

The group starts with commands from the primary, and each secondary appends its responses. When the primary receives the go-ahead idle sequence, it knows that the secondaries are finished and it may transmit more commands.

The beacon (BCN) response is designed to help locate breaks in the loop. A secondary which does not see any incoming traffic for a long time begins sending "beacon" response frames, telling the primary that the link between that secondary and its predecessor is broken.

Because the primary also receives a copy of the commands it sent, which are indistinguishable from responses, it appends a special "turnaround" frame at the end of its commands to separate them from the responses. Any unique sequence which will not be interpreted by the secondaries will do, but the conventional one is a single all-zero byte. [9] :44 This is a "runt frame" with an address of 0 (reserved, unused) and no control field or frame check sequence. (Secondaries capable of full-duplex operation also interpret this as a "shut-off sequence", forcing them to abort transmission. [9] :45)

Notes

  1. ( Odom 2004 ).
  2. ( ITS 2006 ).
  3. PC Lube and Tune, accessed 15. October 2009.
  4. 1 2 ( Friend 1988 , p. 188).
  5. ( Friend 1988 , p. 191).
  6. ( Pooch 1983 , p. 302).
  7. ( Pooch 1983 , p. 303).
  8. ( Pooch 1983 , pp. 309–321).
  9. 1 2 3 4 5 6 IBM Communication Products Division (June 1986). Synchronous Data Link Control: Concepts (PDF) (Technical report) (4th ed.). Document No. GA27-3093-3.

Related Research Articles

In telecommunications, asynchronous communication is transmission of data, generally without the use of an external clock signal, where data can be transmitted intermittently rather than in a steady stream. Any timing required to recover data from the communication symbols is encoded within the symbols.

IEEE 802.2 is the original name of the ISO/IEC 8802-2 standard which defines logical link control (LLC) as the upper portion of the data link layer of the OSI Model. The original standard developed by the Institute of Electrical and Electronics Engineers (IEEE) in collaboration with the American National Standards Institute (ANSI) was adopted by the International Organization for Standardization (ISO) in 1998, but it remains an integral part of the family of IEEE 802 standards for local and metropolitan networks.

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 detection authentication, transmission encryption, and data compression.

In telecommunication, Advanced Data Communication Control Procedures (ADCCP) is a bit-oriented data link layer protocol developed by the American National Standards Institute. It is functionally equivalent to the ISO High-Level Data Link Control (HDLC) protocol.

In data transmission and telecommunication, bit stuffing is the insertion of non-information bits into data. Stuffed bits should not be confused with overhead bits.

A frame is a digital data transmission unit in computer networking and telecommunication. In packet switched systems, a frame is a simple container for a single network packet. In other telecommunications systems, a frame is a repeating structure supporting time-division multiplexing.

<span class="mw-page-title-main">Universal asynchronous receiver-transmitter</span> Computer hardware device

A Universal Asynchronous Receiver-Transmitter is a computer hardware device for asynchronous serial communication in which the data format and transmission speeds are configurable. It sends data bits one by one, from the least significant to the most significant, framed by start and stop bits so that precise timing is handled by the communication channel. The electric signaling levels are handled by a driver circuit external to the UART. Common signal levels are RS-232, RS-485, and raw TTL for short debugging links. Early teletypewriters used current loops.

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.

Serial Peripheral Interface (SPI) is a de facto standard for synchronous serial communication, used primarily in embedded systems for short-distance wired communication between integrated circuits.

<span class="mw-page-title-main">LAPB</span>

Link Access Procedure, Balanced (LAPB) implements the data link layer as defined in the X.25 protocol suite. LAPB is a bit-oriented protocol derived from HDLC that ensures that frames are error free and in the correct sequence. LAPB is specified in ITU-T Recommendation X.25 and ISO/IEC 7776. It implements the connection-mode data link service in the OSI Reference Model as defined by ITU-T Recommendation X.222.

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.

A universal synchronous and asynchronous receiver-transmitter is a type of a serial interface device that can be programmed to communicate asynchronously or synchronously. See universal asynchronous receiver-transmitter (UART) for a discussion of the asynchronous capabilities of these devices.

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

The HART Communication Protocol (Highway Addressable Remote Transducer) is a hybrid analog+digital industrial automation open protocol. Its most notable advantage is that it can communicate over legacy 4–20 mA analog instrumentation current loops, sharing the pair of wires used by the analog-only host systems. HART is widely used in process and instrumentation systems ranging from small automation applications up to highly sophisticated industrial applications.

<span class="mw-page-title-main">IBM 3705 Communications Controller</span>

The IBM 3705 Communications Controller is a simple computer which attaches to an IBM System/360 or System/370. Its purpose is to connect communication lines to the mainframe channel. It was a first communications controller of the popular IBM 37xx series. It was announced in March 1972. Designed for semiconductor memory which was not ready at the time of announcement, the 3705-I had to use 1.2 microsecond core storage; the later 3705-II uses 1.0 microsecond SRAM. Solid Logic Technology components, similar to those in S/370, were used.

Binary Synchronous Communication is an IBM character-oriented, half-duplex link protocol, announced in 1967 after the introduction of System/360. It replaced the synchronous transmit-receive (STR) protocol used with second generation computers. The intent was that common link management rules could be used with three different character encodings for messages.

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

DF-1 / DF1 protocol is an asynchronous byte-oriented protocol that is used to communicate with most Allen Bradley RS-232 interface modules. DF1 protocol consists of link layer and application layer formats. DF1 works over half duplex and full duplex modes of communication.

Synchronous transmit-receive (STR) was an early IBM character-oriented communications protocol which preceded Bisync. STR was point-to-point only, and employed a four-of-eight transmission code, communicating at up to 5100 characters per second over half-duplex or full-duplex communication lines.

Synchronous serial communication describes a serial communication protocol in which "data is sent in a continuous stream at constant rate."

References