Telecommunications - SYSTEMS NETWORK ARCHITECTURE (SNA)

SNA is IBMs own proprietry network architecture, it has evolved since the first version was introduced in 1974. The structure of SNA is similar to OSI, open systems interconnection - defined by ISO & CCITT, in that is is devided into a number of layers although the layers of the two architectures do no line up exactly. There are other fundamental differences between the two architectures, OSI is designed for the exchange of information between autonomous systems allowing communication between different manufactures equipment, SNA is to define a single architecture for IBMs product offerings. In addition to the interface to terminal equipment SNA also defines details of network management (about time CCITT did this). SNA defines different types of terminal equipment, clusters such as 3270 only need to use a subset of the architecture.


TABLE OF CONTENTS

  1. 1 - Protocols
  2. 2 - Transmission Protocols
  3. 3 - Transmission Header (TH)
  4. 4 - OSI and SNA layers
  5. 5 - SNA over X.25

1 - SNA OVERVIEW


+--------------------

End User --_ | Request Unit (RU) |

| or Response unit |

+--------------------|

information passed to

logical unit which

adds a header

+----------------------------------------

| Request Header(RH)| Request Unit (RU) |

| or response header| or Response unit |

+-------------------+--------------------|

_----- Basic information Unit (BIU) -----_

information passed to

path control element

which adds own header

+--------------------------------------------------------

| Transmission | Request Header(RH)| Request Unit (RU) |

| Header | or response header| or Response unit |

+---------------+-------------------+--------------------|

_----- Basic information Unit (BIU) -----_

_--------- Path Information Unit (PIU) ------------------_

This information is passed

to data link control DLC

which adds a header + trailer

+-----------------------------------------------------------------------------

| Link Header | Transmission | Request Header(RH)| Request Unit (RU) |Link |

|) | Header (TH) | or response header| or Response unit |Trailer

+-------------+---------------+-------------------+--------------------+------|

_----- Basic Information Unit (BIU) -----_

_--------- Path Information Unit (PIU) ------------------_

_------------ Basic Link Unit (BLU) -----------------------------------------_

Sequencing

The architecture specifies that requests and responses must arrive at their destination in the same order in which the sender transmits the message units. Because data link control can route related PIUs over different links within a transmission group, path control in another node might not receive the PIUs in the order in which they were sent.

The path control network assigns transmission group sequence numbers to PIUs before transmitting them.


Blocking

+------------------+------------------+------------------

| TH | RH | RU | TH | RH | RU | TH | RH | RU |

+----+----+--------+----+----+--------+----+----+--------|

_---- PIU --------__---- PIU --------__---- PIU ---------_

path information

unit

_----- Basic Transmission Unit (BTU) -------------------_


Segmenting


+------------------

| TH | RH | RU |

+----+----+--------|

_---- PIU ---------_


+------------------ +------------------ +------------------

| TH | RH | RU | | TH | RH | RU | | TH | RH | RU |

+----+----+--------| +----+----+--------| +----+----+--------|

_---- PIU ---------_ _---- PIU ---------_ _---- PIU ---------_

segment

_-- basic ---------_ _-- basic ---------_ _-- basic ---------_

transmission unit transmission unit transmission unit

BTU BTU BTU


Transmission Header (TH)

There are different types of TH determined by bits 0-3

Bits FID Length
0000 FID0 10bytes for traffic involving non-SNA devices between adjacent subarea nodes
0001 FID1 10bytes for traffic between adjacent subarea nodes
0010 FID2 6bytes for traffic between a subarea node and an adjacent type 2.0 or 2.1 peripheral node
0011 FID3 2bytes for traffic between a subarea node and an adjacent type 1 peripheral node.
0100 FID4 26bytes for traffic between adjacent subarea nodes when both nodes support explicit route and virtual route protocols.
1111 FIDF 26bytes for certain commands (for example, for transmission group control) sent between adjacent subarea nodes when both nodes support explicit route and virtual route protocols.

Transmission Header Coding

Type 0 Type 1 Type 2 Type 3
Byte 0 Bit 0-3 0000 0001 0010 0011
Byte 0 Bit 4-5 Segmenting
00=Middle
01=Last
10=First
11=Only
Byte 0BBit 6 Reserved Reserved OAF-DAF Reserved
0=used by the assigning node having the greater role negotiation-value
1=used by the other node
Byte 0 Bit 7 Expidited Flow Indicator EFI
0=normal flow
1=expedited flow
Byte 1 Reserved Reserved Reserved Local Session
Identification
(LSID)
0000 0000 = SSCP-PU
01xx xxxx = SSCP-LU
10xx xxxx = Reserved
11xx xxxx = LU LU
\-----/
local address

RH Formats

_----------Byte 0--------------_|_----------Byte 1-------------_|_---------Byte 2--------------_

Request Header

RRI. RU . r .FII.BCI.ECIDR1. r .DR2.ERI. r . r .QRI.PI BBI.EBI.CDI. r .CSI.EDI.PDI. r
=0 .category . . . . I . .I . . . . . . . . . . . .

Response Header

RRI. RU . r .FI .SDI. 1 . 1 DR1. r .DR2.ERI. r . r .QRI.PI r . r . r . r . r . r . r . r
=1 .category . . . . I . .I . . . . . . . . . . . .

PA

Abbreviations used in RH formats

RRI request-response indicator 0=request(RQ) 1=reponse(RSP)
RU category request-response unit category 00=FM data (FMD)
01=Network control (NC)
10=Data flow control (DFC)
11=Session control (SC)
FI format indicator 0=no FM header (FMH) for LU-LU sessions; or
character-coded without an NS header (NSH)
for network services;
1=FM header follows (FMH) for LU-LU sessions; or
character-coded with an NS header (NSH)
for network services;
SDI sense data included indicator 0=not included (SD); 1=included (SD)
BCI begin chain indicator 0=not first in chain (BC); 1=first in chain (BC)
ECI end chain indicator 0=not last in chain(EC); 1=last in chain (EC)
DR1I Definite Response 1 indicator 0=#DR1; 1=DR1
DR2I Definite response 2 indicator 0=#DR2; 1=DR2
ERI exception response indicator used in conjunction with DR1I and DR2I to indicate, in
a request, the form of response requested:
I,DR2I,ERI=000 means no-response requested
100 010110 means definite-response requested
101 011111 means exception-response requested
001=reserved
RTI response type indicator 0=positive : 1=negative
QRI queued response indicator 0=response bypasses TC queues (#QF)
1=enqueue response in TC queues (QR)
PI pacing indicator 0=#PAC 1=PAC
BBI begin bracket indicator 0=#BB 1=BB
EBI end bracket indicator 0=#EB 1=EB
CDI change direction indicator 0=do not hange direction
1=change direction
CSI code selection indicator 0=code 0
1=code 1
EDI enciphered data indicator 0=RU is not enciphered
1=RU is enciphered
PDI padded data indicator 0=RU is not padded
1=RU is padded

SNA over X.25

To allow an X25 network to provide all the facilities of the data-link control then a layer must be inserted between path control and X.25. This layer is called logical link control, there are 3 versions of this -

PSH = Physical Services Header

QLLC = Qualified Logical Link Control

ELLC = Enhanced logical Link Control

Qualified Logical Link Control (QLLC)

SNA SNA over X.25

| |

| Higher SNA Layers |

.+-------------------|

. | |

. | Path Control |

. .+-------------------|

. . | |

. . | Logical Link |

| | . . | Control QLLC, |

| Higher SNA Layers | . . | ELLC or PSH |

+-------------------|. . +-------------------|

| | . | |

| Path Control | . | X.25 Packet Layer |

+-------------------|. +-------------------|

| | | |

| Data-Link control | | X.25 Link Layer |

+-------------------|. . . . . . . . .+-------------------|

| | | |

| Physical Control | | Physical Control |

+-------------------| +-------------------|


QLLC

QLLC is designed to allow adjacent SNA nodes to connect via a X.25 network. QLLC carries SDLC unnumbered commands as user data in data packets with Q-bit=1 (Q packets).

Qualified Data Packet Formats

8 7 6 5 4 3 2 1 0

+--------------------------------------------------------------------

| | |

| General Format Identifier GFI | Logical channel group num |

+--------------------------------------------------------------------|

| |

| Logical Channel Number |

+--------------------------------------------------------------------|

| | | | |

| P(r) | M | P(s) | 0 |

+---------------------+---------+---------------------------+--------|

| |

| QLLC Address Field (coded 'FF' for commands 'NOT FF' for responses)|

+--------------------------------------------------------------------|

| |

| QLLC Control Field |

+--------------------------------------------------------------------|

| |

| QXID/QTEST/QFRMR information field - optional |

+--------------------------------------------------------------------|

QLLC C-Field I-Field Primary Secondary Peer-to-peer
Function Hex Allowed command response Command Response
Octet 1
QSM 93 NO x x
QDISC 53 NO x x
QXID BF YES x x
QTEST F3 YES x x
QRR F1 NO x x
QRD 53 NO x
QXID BF YES x x
QTEST F3 YES x x
QUA 73 NO x x
QDM 1F NO x x
QFRMR 97 YES x x

CALL USER DATA FORMAT

byte QLLC ELLC PSH
0 Protocol Identifier C3 C6 C2
1 Field Format Identifier FFI FFI FFI
2 ELLC call control indicator CCI
3 Reserved
4
. Connection Identifier
11
Format of FFI . . optional and when present defines the remainder of the CUD field.
Format of CCI . . x x x x x x x I/R
0=initial connection
1=connection recovery
Format of CI . . eight byte in length and permits DTEs to accept or reject incoming calls based on its content.

REQUEST UNITS

RU NAME request code or RU hdr Origin --_ Destination NAUFlow RU category
ABCONN 01020F SSCP--_PU4/5 NORM FMD NS(C)
PUCP--_PU
ABCONNOUT 010218 SSCP--_PU4/5 NORM FMD NS(C)
PUCP--_PU
ACTCDRM 14 SSCP--_SSCP EXP SC
ACTCONNIN 010216 SSCP--_PU4/5 NORM FMD NS(C)
PUCP--_PU
ACTLINK 01020A SSCP--_PU4/5 NORM FMD NS(C)
PUCP--_PU
ACTLU 0D SSCP--_LU EXP SC
ACTPU 11 SSCP--_PU EXP SC
PUCP--_PU
ACTTRACE 010302 SSCP--_PU NORM FMD NS(MA)
ADDLINK 41021E SSCP--_PU4/5 NORM FMD NS(C)
ADDLINKSTA 410221 SSCP--_PU4/5 NORM FMD NS(C)
ANA 010219 SSCP--_PU4/5 NORM FMD NS(C)
BID C8 LU --_LU NORM DFC
BIND 31 PLU --_SLU EXP SC
BINDF 810685 PLU --_SSCP NORM FMD NS(S)
BIS 70 LU --_LU NORM DFC
CANCEL 83 LU --_LU NORM DFC
CDCINIT 81864B SSCP--_SSCP NORM FMD NS(S)
CDINIT 818641 SSCP--_SSCP NORM FMD NS(S)
CDSESSEND 818648 SSCP--_SSCP NORM FMD NS(S)
CDSESSSF 818645 SSCP--_SSCP NORM FMD NS(S)
CDSESSST 818646 SSCP--_SSCP NORM FMD NS(S)
CDSESSTF 818647 SSCP--_SSCP NORM FMD NS(S)
CDTAKED 818649 SSCP--_SSCP NORM FMD NS(S)
CDTAKEDC 81864A SSCP--_SSCP NORM FMD NS(S)
CDTERM 818643 SSCP--_SSCP NORM FMD NS(S)
CHASE 84 LU --_LU NORM DFC
CINIT 810601 SSCP--_PLU NORM FMD NS(S)
CLEANUP 810629 SSCP--_PLU NORM FMD NS(S)
SSCP--_SLU
CLEAR A1 PLU --_SLU EXP SC
SSCP--_SSCP
CONNOUT 01020E SSCP--_PU4/5 NORM FMD NS(C)
PUCP--_PU
CONTACT 010201 SSCP--_PU4/5 NORM FMD NS(C)
PUCP--_PU
CONTACTED 010280 PU4/5--_SSCP NORM FMD NS(C)
PU --_PUCP
CRV C0 PLU --_SLU EXP SC
CTERM 810602 SSCP--_PLU NORM FMD NS(S)
DACTCDRM 15 SSCP--_SSCP EXP SC
DACTCONNIN 010217 SSCP--_PU4/5 NORM FMD NS(C)
PUCP--_PU
DACTLINK 01020B SSCP--_PU4/5 NORM FMD NS(C)
PUCP--_PU
DACTLU 0E SSCP--_LU EXP SC
DACTPU 12 SSCP--_PU EXP SC
PUCP--_PU
PU --_SSCP
DACTTRACE 010303 SSCP--_PU NORM FMD NS(MA)
DELETENR 41021C SSCP--_PU4/5 NORM FMD NS (C)
DISCONTACT 010202 SSCP--_PU4/5 NORM FMD NS(C)
PUCP--_PU
DISPSTOR 010331 SSCP--_PU4/5 NORM FMD NS (MA)
DSRLST 818627 SSCP--_SSCP NORM FMD NS (S)
DUMPFINAL 010208 SSCP--_PU4/5 NORM FMD NS(C)
DUMPINIT 010206 SSCP--_PU4/5 NORM FMD NS(C)
DUMPTEXT 010207 SSCP--_PU4/5 NORM FMD NS(C)
ECHOTEST 810389 SSCP--_LU NORM FMD NS (MA)
ER-INOP 41021D PU4/5--_SSCP NORM FMD NS(C)
PU4 --_PUCP
ER-TESTED 410386 PU4/5--_SSCP NORM FMD NS(MA)
ESLOW 010214 PU4 --_SSCP NORM FMD NS(C)
EXECTEST 010301 SSCP --_PU4/5 NORM FMD NS(MA)
EXSLOW 010215 PU4 --_SSCP NORM FMD NS(C)
FNA 01021A SSCP --_PU4/5 NORM FMD NS(C)
INIT-OTHER 810680 ILU --_SSCP NORM FMD NS(S)
INIT-OTHER-CD 818640 SSCP --_SSCP NORM FMD NS(S)
INITPROC 410235 SSCP --_PU4/5 NORM FMD NS(C)
INIT-SELF 010681 ILU --_SSCP NORM FMD NS(S)
INOP 010281 PU4/5--_SSCP NORM FMD NS(C)
PU --_PUCP
ILPFINAL 010205 SSCP--_PU4/5 NORM FMD NS(C)
IPLINIT 010203 SSCP--_PU4/5 NORM FMD NS(C)
IPLTEXT 010204 SSCP--_PU4/5 NORM FMD NS(C)
LCP 410287 PU4/5--_SSCP NORM FMD NS(C)
PU4 --_PUCP
LDREQD 410237 PU2 --_SSCP NORM FMD NS(C)
LSA 05 PU4/5--_PU4/5 EXP NC
LUSTAT 04 LU --_LU NORM DFC
LU --_SSCP
NC-ACTVR 0D PU4/5--_PU4/5 NC
NC-DACTVR 0E PU4/5--_PU4/5 NC
NC-ER-ACT 0B PU4/5--_PU4/5 NC
NC-ER-ACT-REPLY 0C PU4/5--_PU4/5NC
N--ER-INOP 06 PU4/5--_PU4/5 NC
NC-ER-OP 0F PU4/5--_PU4/5 NC
NC-ER-TEST 09 PU4/5--_PU4/5 NC
NC-ER-TEST-REPLY 0A PU4/5--_PU4/5NC
NC-IPL-ABORT 46 PU4/5--_PU2 NC
NC-IPL-FINAL 02 PU4/5--_PU2 NC
NC-IPL-INIT 03 PU4/5--_PU2 NC
NC-IPL-TEXT 04 PU4/5--_PU2 NC
NMVT 41038D SSCP _-_PU2 NORM FMD NS(MA)
SSCP _-_PU4/5
NOTIFY 410220 SSCP _-_PU NORM FMD NS(C)
NOTIFY 810620 SSCP--_LU NORM FMD NS(S)
SSCP--_SSCP
NOTIFY 818620 SSCP--_SSCP NORM FMD NS(S)
NS-IPL-ABORT 410246 SSCP--_PU2 NORM FMD NS(C)
NS-IPL-FINAL 410245 SSCP--_PU2 NORM FMD NS(C)
NS-IPL-INIT 410243 SSCP--_PU2 NORM FMD NS(C)
NS-IPL-TEXT 410244 SSCP--_PU2 NORM FMD NS(C)
NS-LSA 010285 PU4/5--_SSCP NORM FMD NS(C)
NSPE 010604 SSCP--_ILU NORM FMD NS(S)
PROCSTAT 410236 PU4/5--_SSCP NORM FMD NS(C)
QEC 80 LU --_LU EXP DFC
RECFMS 410384 PU --_SSCP NORM FMD NS(MA)
RECMS 010381 PU4/5--_SSCP NORM FMD NS(MA)
RECSTOR 010334 PU4/5--_SSCP NORM FMD NS(MA)
RECTD 010382 PU4/5--_SSCP NORM FMD NS(MA)
RECTR 410385 PU4/5--_SSCP NORM FMD NS(MA)
RECTRD 010383 PU --_SSCP NORM FMD NS(MA)
RELQ 82 LU --_ LU EXP DFC
REQACTCDRM 41028A PU --_SSCP EXP FMD NS
REQACTLU 410240 PU4/5--_SSCP NORM FMD NS(C)
REQCONT 010284 PU4/5--_SSCP NORM FMD NS(C)
PU --_PUCP
REQDISCONT 01021B PU1/2--_SSCP NORM FMD NS(C)
REQECHO 810387 LU --_SSCP NORM FMD NS(MA)
REQFNA 410286 PU4/5--_SSCP NORM FMD NS(C)
REQMS 410304 SSCP --_PU NORM FMD NS(MA)
RNAA 410210 SSCP --_PU4/5 NORM FMD NS(C)
ROUTE-INOP 410289 PU --_SSCP NORM FMD NS(C)
ROUTE-TEST 410307 SSCP --_PU4/5 NORM FMD NS(MA)
RPO 010209 SSCP --_PU4/5 NORM FMD NS(C)
RQR A3 SLU --_PLU EXP SC
SSCP --_SSCP
RSHUTD C2 SLU --_PLU EXP DFC
RTR 05 LU --_LU NORM DFC
SBI 71 LU --_LU EXP DFC
SDT A0 PLU --_SLU EXP SC
SSCP --_PU
SSCP --_SSCP
SESSEND 810688 LU --_SSCP NORM FMD NS(S)
SESSST 810686 LU --_SSCP NORM FMD NS(S)
SETCV 010211 SSCP --_PU4/5 NORM FMD NS(C)
SETCV 010311 SSCP --_PU4/5 NORM FMD NS(MA)
SHUTC C1 SLU --_ PLU EXP DFC
SHUTD C0 PLU --_ SLU EXP DFC
SIG C9 LU --_ LU EXP DFC
STSN A2 PLU --_ SLU EXP SC
TERM-OTHER 810682 TLU --_SSCP NORM FMD NS(S)
TERM-SELF 010683 TLU --_SSCP NORM FMD NS(S)
TESTMODE 410305 SSCP--_PU4/5 NORM FMD NS(MA)
UNBIND 32 LU --_ LU EXP SC
UNBINDF 810687 PLU --_SSCP NORM NS(S)
VR-INOP 410223 PU4/5--_SSCP NORM FMD NS(C)
PU4 --_PUCP

RESPONSE UNITS

Apart from the excepions cited below, response units return the number of bytes specified in the following table; only enough of the request unit is returned to include the field-formatted request code or NS header.

RU category of response Number of bytes
DFC 1
SC 1
NC 1
FMD NS (FI=1) - field-formatted 3
FMD NS (FI=0) - character-coded 0
FMD (LU-LU) 0

All negative responses return four bytes of sense data in the RU, followed by either:

RU NAME request code or RU hdr Origin --_ Destination NAUFlow RU category
RSP(ACTDRM) 14 SSCP--_SSCP EXP SC
RSP(ACTLU) 0D LU --_SSCP EXP SC
RSP(ACT 11 PU --_SSCP EXP SC
RSP(ADDLINK) 41021E PU4/5--_SSCP NORM FMD NS(C)
RSP(ADDLINKSTA) 410221 PU4/5--_SSCP NORM FMD NS(C)
RSP(BIND) 31 SLU --_PLU EXP SC
RSP(CDINIT) 818641 SSCP--_SSCP NORM FMD NS(S)
RSP(CDTERM) 818643 SSCP--_SSCP NORM NS(S)
RSP(CINIT) 810601 PLU --_SSCP NORM FMD NS(S)
RSP(DSRLST) 818627 SSCP--_SSCP NORM NS(S)
RSP(DUMPINIT) 010206 PU4/5--_SSCP NORM FMD NS(C)
RSP(DUMPTEXT) 010207 PU4/5--_SSCP NORM FMD NS(C)
RSP(INIT-OTHER-CD) 818640 SCP--_SSCP NORM FMD NS(S)
RSP(RNAA) 410210 PU4/5--_SSCP NORM FMD NS(C)
RSP(ROUTE-TEST) 410307 PU4/5--_SSCP NORM FMD NS(MA)
RSP(STSN) A2 SLU --_ PLU EXP SC


metadata block
see also:

 

Correspondence about this page

Book Shop - Further reading.

Where I can, I have put links to Amazon for books that are relevant to the subject, click on the appropriate country flag to get more details of the book or to buy it from them.

 

Commercial Software Shop

Where I can, I have put links to Amazon for commercial software, not directly related to the software project, but related to the subject being discussed, click on the appropriate country flag to get more details of the software or to buy it from them.

 

This site may have errors. Don't use for critical systems.

Copyright (c) 1998-2015 Martin John Baker - All rights reserved - privacy policy.