IBM Systems Network Architecture

IBM Systems Network Architecture

Systems Network Architecture (SNA) is IBM's proprietary networking architecture created in 1974. It is a complete protocol stack for interconnecting computers and their resources. SNA describes the protocol and is, in itself, not actually a program. The implementation of SNA takes the form of various communications packages, most notably Virtual telecommunications access method (VTAM) which is the mainframe package for SNA communications. SNA is still used extensively in banks and other financial transaction networks, as well as in many government agencies. While IBM is still providing support for SNA, one of the primary pieces of hardware, the 3745/3746 communications controller has been withdrawn from marketing by the IBM Corporation. However, there are an estimated 20,000 of these controllers installed and IBM continues to provide hardware maintenance service and micro code features to support users. A robust market of smaller companies continues to provide the 3745/3746, features, parts and service. VTAM is also supported by IBM, as is the IBM Network Control Program (NCP) required by the 3745/3746 controllers.

Objectives of SNA

IBM in the mid-1970s saw itself mainly as a hardware vendor and hence all its innovations in that period aimed to increase hardware sales. SNA's objective was to reduce the costs of operating large numbers of terminals and thus induce customers to develop or expand interactive terminal based-systems as opposed to batch systems. An expansion of interactive terminal based-systems would increase sales of terminals and more importantly of mainframe computers and peripherals - partly because of the simple increase in the volume of work done by the systems and partly because interactive processing requires more computing power per transaction than batch processing.

Hence SNA aimed to reduce the main non-computer costs and other difficulties in operating large networks using earlier communications protocols. The difficulties included:
* A communications line could not be shared by terminals whose users wished to use different types of application, for example one which ran under the control of CICS and another which ran under TSO.
* Often a communications line could not be shared by terminals of different types, as they used different "dialects" of the existing communications protocols. Up to the early 1970s, computer components were so expensive and bulky that it was not feasible to include all-purpose communications interface cards in terminals. Every type of terminal had a hard-wired communications card which supported only the operation of one type of terminal without compatibility with other types of terminals on the same line.
* The protocols which the primitive communications cards could handle were not efficient. Each communications line used more time transmitting data than modern lines do.
* Telecommunications lines at the time were of much lower quality. For example, it was almost impossible to run a dial-up line at more than 300 bits per second because of the overwhelming error rate, as comparing with 56,000 bits per second today on dial-up lines; and in the early 1970s few leased lines were run at more than 2400 bits per second (these low speeds are a consequence of Shannon's Law in a relatively low-technology environment). Telecommunications companies had little incentive to improve line quality or reduce costs, because at the time they were mostly monopolies and sometimes state-owned.As a result running a large number of terminals required a lot more communications lines than the number required today, especially if different types of terminals needed to be supported, or the users wanted to use different types of applications (.e.g. under CICS or TSO) from the same location. In purely financial terms SNA's objectives were to increase customers' spending on terminal-based systems and at the same time to increase IBM's share of that spending, mainly at the expense of the telecommunications companies.

SNA also aimed to overcome a limitation of the architecture which IBM's System/370 mainframes inherited from System/360. Each CPU could connect to at most 16 "channels" (devices which acted as controllers for peripherals such as tape and disk drives, printers, card-readers) and each channel could handle up to 16 peripherals - i.e. there was maximum of 256 peripherals per CPU. At the time when SNA was designed, each communications line counted as a peripheral. Thus the number of terminals with which powerful mainframe could otherwise communicate is severely limited.

Principal components and technologies

Improvements in computer component technology made it feasible to build terminals that included more powerful communications cards which could operate a single standard communications protocol rather than a very stripped-down protocol which suited only a specific type of terminal. As a result several multi-layer communications protocols were proposed in the 1970s, of which IBM's SNA and ISO's X.25 became dominant later.

The most important elements of SNA include:
*IBM Network Control Program (NCP) is a primitive switching protocol, implemented in 3705 communications processors. The protocol performed two main functions:
**It is a packet forwarding protocol, acting like modern switch - fowarding data packages to the next node, which might be a mainframe, a terminal or another 3705. The communications processors supported only hierarchical networks with a mainframe at the center, unlike modern routers which support peer-to-peer networks in which a machine at the end of the line can be both a client and a server at the same time.
**It is a multiplexer that connected multiple terminals into one communication line to the CPU, thus relieved the constraints on the maximum number of communication lines per CPU. A 3705 could support a larger number of lines (352 initially) but only counted as one peripheral by the CPUs and channels. Since the launch of SNA IBM has introduced improved communications processors, of which the latest is the 3745.
*Synchronous Data Link Control (SDLC), a protocol which greatly improved the efficiency of data transfer over a single link:
**SDLC included much more powerful error detection and correction codes than earlier protocols. These codes often enabled the communications cards to correct minor transmission errors without requesting re-transmission, and therefore made it possible to pump data down a line much faster.
**It enabled terminals and 3705 communications processors to send "frames" of data one after the other without waiting for an acknowledgement of the previous frame - the communications cards had sufficient memory and processing capacity to "remember" the last 7 frames sent or received, request re-transmission of only those frames which contained errors that the error detection and correction codes could not repair, and slot the re-transmitted frames into the right place in the sequence before forwarding them to the next stage.
**These frames all had the same type of "envelope" (frame header and trailer) which contained enough information for data packages from different types of terminal to be send along the same communications line, leaving the mainframe to deal with any differences in the formatting of the content or in the rules governing dialogs with different types of terminal. :Remote terminals (i.e. those connected to the mainframe by telephone lines) and 3705 communications processors would have SDLC-capable communications cards.:This is the precursor of the so called "packet communication" that eventually evolved into today's IP technology, and SDLC itself evolves into HDLS that is one of the base technology for dedicated telecommunication circuit.
*VTAM, a software package to provide log-in, session keeping and routing services within the mainframe. A terminal user would log-in via VTAM to a specific application or application environment (e.g. CICS or TSO). A VTAM device would then route data from that terminal to the appropriate application or application environment until the user logged out and possibly logged in to another application. The original versions of IBM hardware could only keep one session per terminal. In the 1980s further software (mainly from third-party vendors) made it possible for a terminal to have simultaneous sessions with different applications or application environments.

Advantages and Disadvantages

SNA removed link control from the application program and placed it in the NCP. This had the following advantages and disadvantages:


* Localization of problems in the telecommunications network was easier because a relatively small amount of software actually dealt with communication links. There was a single error reporting system.
* Adding communication capability to an application program was much easier because the formidable area of link control software that typically requires interrupt processors and software timers was relegated to system software and NCP.


*Connection to non-SNA networks was difficult. An application which needed access to some communication scheme, which was not supported in the current version of SNA, faced obstacles. Before IBM included X.25 support (NPSI) in SNA, connecting to an X.25 network would have been awkward. Conversion between X.25 and SNA protocols could have been provided either by NCP software modifications or by an external protocol converter.

* SNA network installation and maintenance are complicated and SNA network products are (or were) expensive. Attempts to reduce SNA network complexity by adding IBM Advanced Peer-to-Peer Networking functionality were not really successful, if only because the migration from traditional SNA to SNA/APPN was very complex, without providing much additional value, at least initially. SNA software licences (VTAM) cost as much as $10000 a month for high-end systems. And SNA IBM 3745 Communications Controllers typically cost over $100K. TCP/IP was still seen as unfit for commercial applications e.g. in the finance industry until the late 1980s, but rapidly took over in the 1990s due to its peer-to-peer networking and packet communication technology it deployed.
* The design of SNA was in the era when the concept of layered communication was not fully adopted by the computer industry. Applications, databases and communication functions were mingled into the same protocol or product, to make it difficult to maintain or manage. That was very common for the products created in that time. Even after TCP/IP was fully developed, X window system was designed with the same model where communication protocols were embedded into graphic display application.

Logical Unit Types

"Network Addressable Units" in an SNA network are distinguished in "System Service Control Points" (typically in the mainframe), "Physical Units" (relating to boxes) and "Logical Units" (relating to applications or subsystems such as CICS and TSO) or terminals.vague|Is this sentence trying to specify some NAU types or what? It specifies some terms but completely fails to explain them.|date=March 2008

SNA essentially offers transparent communication: equipment specifics don't impose any constraints onto LU-LU communication. But eventually it serves a purpose to make a distinction between LU types, as the application must take the functionality of the terminal equipment into account (e.g. screen sizes and layout). Therefore, SNA defines several kinds of devices, called Logical Unit types. LU0 provides for undefined devices, or build your own protocol. LU1 devices are printers. LU2 devices are dumb IBM 3270 display terminals. LU3 devices are printers using 3270 protocols. LU4 devices are batch terminals. LU5 has never been defined. LU6 provides for protocols between two applications. LU7 provides for sessions with 5250 terminals. The primary ones in use are LU1, LU2, and LU6.2 (an advanced protocol for application to application conversations).

Within SNA there are two types of data stream to connect local terminals and printers; there is the 3270 data stream mainly used by mainframes (zSeries family) and the 5250 data stream mainly used by minicomputers/servers such as the S/36, S/38, and AS/400 (now System i).

Starting from version 5.2 of OS/400, SNA for client-access is no longer supported.

The term 37xx refers to IBM's family of SNA communications controllers. The 3745 supports up to eight high-speed T1 circuits, the 3725 is a large-scale node and front-end processor for a host, and the 3720 is a remote node that functions as a concentrator and router.


The proprietary networking architecture for Honeywell Bull mainframes is Distributed Systems Architecture (DSA). Communications package for DSA is TNVIP. Like SNA, DSA is also no longer supported for client access. Bull mainframes are fitted with Mainway for translating DSA to TCP/IP and TNVIP devices are replaced by Terminal Emulations (GLink, Winsurf). GCOS 8 supports TNVIP SE over TCP/IP.


External links

* [ Cisco article on SNA]
* [ APPN Implementers Workshop] Architecture Document repository
* [ SNA protocols] quite technical

Wikimedia Foundation. 2010.

Look at other dictionaries:

  • IBM Systems Network Architecture — Pour les articles homonymes, voir SNA. Systems Network Architecture (SNA) est une architecture réseau en couches définie par IBM en 1974. SNA est désormais largement remplacé par le modèle OSI. Historique En 1974, le but de SNA était de… …   Wikipédia en Français

  • Systems Network Architecture — (системная сетевая архитектура) разработанная компанией 1974 г. общее описание структуры, форматов, протоколов, используемых для передачи информации между программами IBM и оборудованием, создавалось для объединения в глобальные сети мейнфреймов… …   Википедия

  • Systems Network Architecture — (SNA) ist eine Netzwerkarchitektur, die von IBM in den 1970er Jahren entwickelt und im Jahre 1974 vorgestellt wurde. SNA sah eine hierarchische Organisation des Computernetzwerks vor, und die Implementierung setzte einen Großrechner nebst dessen… …   Deutsch Wikipedia

  • Systems Network Architecture — (SNA), es una arquitectura de red diseñada y utilizada por IBM para la conectividad con sus hosts o mainframes grandes ordenadores y servidores muy robustos que soportan millones de transacciones que por lo general son utilizados en bancos así… …   Enciclopedia Universal

  • Systems Network Architecture — (SNA), es una arquitectura de red diseñada y utilizada por IBM en 1974 para la conectividad con sus hosts o mainframe grandes ordenadores y servidores muy robustos que soportan millones de transacciones que por lo general son utilizados en bancos …   Wikipedia Español

  • Systems Network Architecture —    (SNA)    IBM s definition of the logical structure, formats, protocols, and operational sequences for transmitting information units between IBM software and hardware devices …   IT glossary of terms, acronyms and abbreviations

  • Systems Network Architecture —    Abbreviated SNA. IBM s proprietary terminalto mainframe protocol, introduced in 1974. SNA describes a seven layer system, with each layer building on the services provided by the previous layer. Devices on an SNA system are usually connected… …   Dictionary of networking

  • network architecture —    The design of a network, including the hardware, software, access methods, and the protocols in use. Several well accepted network architectures have been defined by standards committees and major vendors. For example, the International… …   Dictionary of networking

  • System network architecture — Systems Network Architecture (системная сетевая архитектура) разработанная компанией 1974 г. общее описание структуры, форматов, протоколов, используемых для передачи информации между программами IBM и оборудованием, создавалось для объединения в …   Википедия

  • System Network Architecture — Systems Network Architecture (системная сетевая архитектура) разработанная компанией 1974 г. общее описание структуры, форматов, протоколов, используемых для передачи информации между программами IBM и оборудованием, создавалось для объединения в …   Википедия