\

Vau o* * \

co J

NBS TECHNICAL NOTE 843
NATIONAL BUREAU OF STANDARDS

The National Bureau of Standards 1 was established by an act of Congress March 3, 1901. The Bureau's overall goal is to strengthen and advance the Nation's science and technology and facilitate their effective application for public benefit. To this end, the Bureau conducts

research and provides: (1) a basis for the Nation's physical measurement system, (2) scientific and technological services for industry and government, (3) a technical basis for equity in trade, and (4) technical services to promote public safety. The Bureau consists of the Institute for Basic Standards, the Institute for Materials Research, the Institute for Applied Technology,

the Institute for Computer Sciences and Technology, and the Office for Information Programs. THE INSTITUTE FOR BASIC STANDARDS provides the central basis within the United

States of a complete and consistent system of physical measurement; coordinates that system

with measurement systems of other nations; and furnishes essential services leading to accurate and uniform physical measurements throughout the Nation's scientific community, industry, and commerce. The Institute consists of a Center for Radiation Research, an Office of Measurement Services and the following divisions: Applied Mathematics — Electricity — Mechanics — Heat — Optical Physics — Nuclear

Sciences 2 — Applied Radiation 2 — Quantum Electronics * — Electromagnetics * — Time

and Frequency — Laboratory Astrophysics 3 — Cryogenics *. THE INSTITUTE FOR MATERIALS RESEARCH conducts materials research leading to improved methods of measurement, standards, and data on the properties of well-characterized materials needed by industry, commerce, educational institutions, and Government; provides

advisory and research services to other Government agencies; and develops, produces, and

distributes standard reference materials. The Institute consists of the Office of Standard

Reference Materials and the following divisions: Analytical Chemistry — Polymers — Metallurgy — Inorganic Materials — Reactor

Radiation — Physical Chemistry.

THE INSTITUTE FOR APPLIED TECHNOLOGY provides technical services to promote

the use of available technology and to facilitate technological innovation in industry and

Government; cooperates with public and private organizations leading to the development of

technological standards (including mandatory safety standards), codes and methods of test; and provides technical advice and services to Government agencies upon request. The Institute consists of a Center for Building Technology and the following divisions and offices: Engineering and Product Standards — Weights and Measures — Invention and Innovation — Product Evaluation Technology — Electronic Technology — Technical Analysis — Measurement Engineering — Structures, Materials, and Life Safety ' — Building Environment' — Technical Evaluation and Application* — Fire Technology.

THE INSTITUTE FOR COMPUTER SCIENCES AND TECHNOLOGY conducts research and provides technical services designed to aid Government agencies in improving cost effec- tiveness in the conduct of their programs through the selection, acquisition, and effective

utilization of automatic data processing equipment; and serves as the principal focus within

the executive branch for the development of Federal standards for automatic data processing equipment, techniques, and computer languages. The Institute consists of the following

divisions: Computer Services — Systems and Software — Computer Systems Engineering — Information Technology.

THE OFFICE FOR INFORMATION PROGRAMS promotes optimum dissemination and

accessibility of scientific information generated within NBS and other agencies of the Federal Government; promotes the development of the National Standard Reference Data System and

a system of information analysis centers dealing with the broader aspects of the National Measurement System; provides appropriate services to ensure that the NBS staff has optimum

accessibility to the scientific information of the world. The Office consists of the following

organizational units: Office of Standard Reference Data — Office of Information Activities — Office of Technical

Publications — Library — Office of International Relations.

•Headquarters and Laboratories at Galthersburg, Maryland, unless otherwise noted; mailing address Washington, D.C. 20234.

1 Part of the Center for Radiation Research.

' Located at Boulder, Colorado 80302.

* Part of the Center for Building Technology.
NOV 1 1974 i\jyh cul(L - S&r

$6100

tf*753

A Technical Guide to

Computer-Communications Interface Standards

Albrecht J. Neumann, Brian G. Lucas,

Justin C. Walker, and Dennis W. Fife

Systems and Software Division

Institute for Computer Sciences and Technology

National Bureau of Standards Washington, D.C. 20234

t.„-

rea-UwAaaJD no-Te no. ^3

Sponsored by: Joint Technical Support Activity Defense Communications Agency

Washington, D.C. 20305

f? ''I***

'"Vauo**"

U.S. DEPARTMENT OF COMMERCE, Frederick B. Dent, Secretary

NATIONAL BUREAU OF STANDARDS, Richard W. Roberts, Director

Issued August 1974
Library of Congress Catalog Card Number: 74-600131

National Bureau of Standards Technical Note 843

Nat. Bur. Stand. (U.S.), Tech. Note 843, 111 pages (Aug. 1974) CODEN: NBTNAE

U.S. GOVERNMENT PRINTING OFFICE WASHINGTON: 1974

For sale by the Superintendent of Documents, U.S. Government Printing Office, Washington, D.C. 20402 (Order by SD Catalog No. 03.46:843). Price $1 .50
ACKNOWLEDGMENT

The authors are indebted to George Clark, Jack Little, and Ray

Moore of the Computer Systems Engineering Division, NBS, who contributed

their expertise as experienced participants in data communications

standards to a constructive review of this report.

Xll
CONTENTS

Page

1. Introduction 1

1.1 Purpose* 1

1.2 Scope 1

1.3 Sources of Standards 2 1.4 Overview 3 1.5 References 3

2. DTE-DCE, Interfaces 4

2.1 DTE-Modem Interface 4 2.2 DTE-ACE Interface 11

2.3 Signal Quality at the Interface Between DTE and DCE . . 15

2.4 Standard Signalling Rates 20

2.5 ItLlitary Subsystem Interface Standards 21

2.6 Conclusions 23

2.7 Standards 23

3. User Terminal Standards 26

3.1 International Standards for Character Codes 26

3.2 National Standards for Character Codes 26

3.3 Implementation of the 7-bit Code 26

3.4 Structure of the 7-bit Code 28

3.5 Subsets of the 7-bit Code 37 3.6 Code Extension and Expansion 37

3.7 Keyboards 47

3.8 References 59

4. Link Control Procedures 63

4.1 Links: Configuration and Control 63

4.2 Character-oriented Procedures 68

4.3 Bit-Oriented Procedures 83

4.4 References 94

5. Glossary of Terms 97

IV
FIGURES

Page

2-1 DTE-DCE Interface, Non-Military 6 2-2 Interchange Circuits [RS-232-C] 7 2-3 Control Circuit Actions [RS-232-C] 8 2-4 Standard Interface Types [RS-232-C] 12

2-5 Interface Types for Data Transmission Configuration [RS-232-C] 13

2-6 Standard Automatic Call Equipment Interfaces [RS-366] 14

2-7 Signal Quality Criteria, Synchronous DCE Interface [RS-334] 17

2-8 Start-Stop Signal Nomenclature 19

2-9 Typical Digital Communication Control Equipment Interfaces

[MIL STD 188-347] 22

3-1 ASCII Code Table 30

3-2 Structure of the 7-bit Code Table 31

3-3 Standard Graphical Representation of Control Characters 36

3-4 8-bit Code Table 39

3-5 A Proposed Set of Extended Control Characters 40

3-6 Legal Characters in Escape Sequences 42

3-7 Keyboard Arrangement Nbtational System 49

3-8 Type I, Class 1 Standard Keyboard Arrangement 50

3-9 Type I, Class 2 Standard Keyboard Arrangement 51

3-10 Type II, Class 1 Standard Keyboard Arrangement 52

3-11 Three Row Communication Keyboard (Interim Standard) 53

3-12 Three Row Weather Keyboard (Interim Standard) 53

3-13 Logical Bit Pairing Keyboard Arrangement 55

3-14 Typewriter Pairing Keyboard Arrangement 56

3-15 Physical Arrangement of Numerical Keys 57

4-1 The Model Link 64

4-2 Two-way Alternate Terminal, Two-way Simultaneous Sublink(s) 65

4-3 Message Formats 71

4-4 Phases of Transmission 74

4-5 Link Level Message Format 82

4-6 Primary/Primary Link 84

4-7 Primary/ Secondary Link 84

4-8 ADCCP Frame 85
TABLES

Page

3-1 Standards for character codes 27

3-2 Standards for representation of characters on physical media 28

3-3 Standards for representation of characters during data transmission 28

3-4 Standards for graphical representation of control characters 35

3-5 Standards that specify subsets of the 7-bit character code 37

3-6 Standards relating to code extension and expansion 39

3-7 Use of escape sequences 43

3-8 De facto conventions for two character private escape sequences 47

3-9 Code extension in a 7-bit code 48

3-10 Code extension in an 8-bit code 48

3-11 Control code assignments 58

4-1 Applicable standards 68

4-2 ASCII Communications control characters 71

4-3 Control procedure matrix 73

4-4 BSC communications control characters from the EBCDIC character

set 80

4-5 Secondary state-variables and parameters 87

4-6 ADCCP Commands and Responses 90

4-7 Classes of Procedures 91

VI
A TECHNICAL GUIDE TO COMPUTER-COMMUNICATIONS

INTERFACE STANDARDS

Albrecht J. Neumann,

Brian G. Lucas, Justin C. Walker, Dennis W. Fife

A technical summary and guide is given for existing and forthcoming

Federal and national standards on data communications pertinent to

computer networking. Selected international standards and industry

practices are included for completeness. Prepared to assist the application of standards within the World Wide Military Command and Control

System, this handbook should be useful to all ADP system designers

interested in uniform data terminal interfaces, character sets and codes,

keyboard arrangements, and communications line disciplines for effective

message exchange between computers.

Key words: ADP standards; communications disciplines; computer networks;

data communications.

1. INTRODUCTION

1.1 Purpose

Remote data acquisition and computer access through communications

networks has become a central aspect of computer utilization in a wide

variety of applications. The World Wide Military Command and Control

System (WWMCCS) presents a significant example where terminal-to-computer

and computer-to-computer communications are increasingly important in

computer service to individual bases, commands, and national military

authorities. Designers of information systems and data processing

operations have necessarily become involved with data communications

factors in configuring systems, software, and operational procedures.

Understanding and utilization of the available standards affecting com- puter-communications can significantly simplify design and procurement

problems, contribute to operational dependability, and extend the useful

life of networking arrangements. The purpose of this report is to provide a technical summary and guide to existing or forthcoming Federal

and national standards. Selected international standards and industry

practices (akin to defacto standards) are included where advisable for

completeness. Having the essential technical considerations at hand

in one volume should enable ADP system designers to assess the adequacy

of available standards and to consistently employ them wherever they are

sufficient for operational requirements.

1.2 Scope

This guide is directed at data processing equipment and operations

factors that are fundamental to effective information interchange

through modern data communications networks. It does not address electronic communications equipment or techniques per se, such as switches,
modems, concentrators, or transmission media, which are the province of

common carriers and telecommunications engineers.

This report is further limited to standards directly involved in

message transfer between data sources and sinks, including terminal

standards, terminal-modem interfaces, and link control. This excludes

many control and information handling functions more closely associated

with data processing procedures and system requirements, such as message

formats, log-on sequences, and computer system responses to control

characters. These have received little investigation toward wide standardization, and are intended for coverage in a subsequent report.

Also, as a technical guide, this report is not meant as an ultimate

authority on any standard. Complete references are provided so that

the source material can be readily pursued for additional detail.

1.3 Sources of Standards

The standards covered in this guide are Federal Information Processing Standards, American National Standards, selected international and

industry standards.

Federal Information Processing Standards (FIPS) are developed and

published by the National Bureau of Standards [1-1] with approval of the

Secretary of Commerce. NBS frequently is guided by the consultation of

Government agencies represented by individual members of FIPS Task Groups.

FIPS are developed to meet uniform Federal requirements and, with certain

exceptions, are mandatory for implementation by all agencies of the

Federal Government. To the extent practicable, they are consistent with

national and international standards. NBS is responsible for recom- mending Federal automatic data processing standards, and works cooperatively with the Office of the Manager of the National Communication

System in regard to data communications standards [1-2].

American National Standards are developed under auspices of the

American National Standards Institute (ANSI) , and represent cooperative

effort by producer, consumer , and general interest groups to establish

voluntary standards. ADP standards are the responsibility of a com- mittee/sub-committee organization designated as X3, with secretarial

support given by the Computer and Business Equipment Manufacturers

Association (CBEMA). (See references [1-2] and [1-3] for detailed

organizational description and history)

.

International standards are published by the International Standards Organization (ISO), of which ANSI is a member body. Technical

Committee 97 (ISO/TC 97) and its subcommittees are responsible for

computer and information processing standards. Also, the publication

of the International Telecommunications Union (ITU) and the International

Telegraph and Telephone Consultative Committee (CCITT), although oriented

to international telecommunications, are sources of relevant technical

material in computer networking.
Industry standards of national or international significance may

stem from a variety of associations and working groups of manufacturers

and producers. In the United States, the Electronic Industries Association (EIA) has done significant work. The European Computer Manufacturers Association (ECMA) provides another example of industry co- operation toward mutual standardization.

1 .

Overview

The perspective of this guide is that computer-communications

system design is facilitated by a uniform definition of the necessary

physical and logical interfaces among equipment and software components.

One physical interface that has been standardized for networking is

readily identified. This is the interconnection of DTE (data terminal

equipment of any variety, including computers) and DCE (data communications equipment, i.e. modems or analogous devices driving the transmission facility). The DTE-DCE circuit interfaces are described in

Section 2 which follows. Logical interfaces or "protocols" are less^

readily pinpointed, since individual functions of the interface realization may be distributed among equipment and software components

having no direct physical connections. All logical interfaces are dependent then on consistent information interchange throughout the

system, which begins between the terminals. Thus data codes and the

format of codes in data transmission are described in Section 3. Besides uniform interpretation of encoded data, it is equally vital that

messages, packets, or any formatted collections of related characters

be accurately recovered from the transmission facility and transfered

in orderly fashion among terminals on the network. This requires a

control discipline for the transmission link, the logical path interconnecting terminals through the transmission facility. Section 4 suimvarizes standard link control disciplines and the pertinent data flow

and message interchanges.

Higher level protocols for information network (or system) control

and application processing functions involve further considerations in

message formats and interchanges as well as computer software functions.

These are beyond the scope of this volume, but would be discussed in a

subsequent report from the viewpoint of potential basis for future

standards.

1.5 References

1-1. National Bureau of Standards, Federal Information Processing

Standards Index,. FIPS PUB 12-1, 1 July 1972.

1-2. National Bureau of Standards, Objectives and Requirements of

the Federal Information Processing Standards Program, FIPS PUB 23,

15 February 1973.

1-3. Marjorie F. Hill, The World of EDP Standards , Technical Memo

4, Control Data Corporation, September 1972.

3
2. DTE-DCE INTERFACES

The standard interface between data terminal equipment (DTE) and

data communications equipment (DCE) is, in the commercial sector, based

on two standards: the interface between the data terminal equipment

and the modem [RS-232-C], and the interface between the DTE and the

automatic calling equipment [RS-366]. Figure 2-1 delineates these two

major interfaces.

For military systems the interfaces are specified as part of the

Equipment Technical Design Standards for Digital End Instruments and

Ancillary Devices [MIL-STD-188-347]. Also relevant in this connection

are MIL-STD-188-C, which deals with Tactical System Standards, and

MIL-STD-188-100 which deals with standards common to long haul and

tactical communications systems.

2.1 DTE-Modem Interface [EIA RS-232-C]

The standard interface between data terminal equipment and data

sets or modems is characterized by serial, binary data interchange.

Detail is provided in reference RS-232-C. A summary of the technological

constraints and of interface functions is provided in this section. Data

must be serialized by the data terminal equipment, so that the data com- munications equipment may be independent of the character length and

codes used by the data terminal equipment. No restrictions on bit

sequence arrangements provided by the DTE must be made by the DCE.

The interface standard RS-232-C defines electrical signal characteristics, mechanical interface characteristics, functional description of interface circuits and standard interfaces for selected communication systems configurations. The standard also contains explanations

and recommendations as well as a glossary of terms.

2.1.1 Electrical Interface.

The electrical interface is characterized by positive and

negative voltage swings at the interface: a negative signal signifying

the marking condition and a positive signal signifying the space condition. Broad voltage limits are specified for both positive and

negative polarities (3 volts to 25 volts). The region between negative

3 and positive 3 volts is defined as transition region, in which signals are not defined. Further details as to equivalent circuit configuration, circuit parameter tolerances and other detail are given in document RS-232-C.

2.1.2 Mechanical Interface.

The mechanical interface is located at a pluggable connector

signal interface point. The female connector is associated with the DTE,

the male counterpart with the DCE. An extension cable is provided with

the DTE, and is optional with the DCE. The connector provides 25 cir-
cuits, and pin number assignment for circuits are part of the standard.

[RS-232-C, CCTTT V-24, ISO 2110]. Although the standard specifies that

pin assignments listed in the standard shall be used, it also specifies

that "pin assignments for circuits not specifically defined . . . are to

be made by mutual agreement. Preference should be given to the use of

unassigned pins, but in the event that additional pins are required,

extreme caution should be taken in their selection."

2.1.3 Functional Description of Interchange Circuits.

The Standard provides for 25 circuits, 21 of which are summarized in figure 2-2. The four unassigned circuits are spares.

There are four general categories: Ground or common return, Data

circuits , Control circuits , and Timing circuits . Functions assigned to

the various circuits are described in the following:

2.1.3.1 Ground Circuits - Two distinct ground circuits are provided:

PROTECTIVE GROUND

This circuit is electrically bonded to the equipment frame. It may

be further connected to external grounds as required by applicable regulations.

SIGNAL GROUND

This conductor establishes the common ground reference potential

for all interchange circuits except for the Protective Ground circuit.

2.1.3.2 Data Circuits - Two circuits carry data: TRANSMITTED

DATA provide for data flow from the DTE to the DCE, RECEIVED DATA provide for data flow from the DCE to the DTE.

TRANSMITTED DATA

This circuit carries data from the local DTE to the local DCE and

from there to the distant communications and processing equipment.

When no data are transmitted, this circuit is held in the marking or

OFF condition. Data cannot be transmitted unless all of the following

circuits are in the ON conditions (when implemented): REQUEST TO SEND,

CLEAR TO SEND, DATA SET READY, DATA TERMINAL READY.

RECEIVED DATA

This circuit carries data from the receiving DCE in response to

1 Itot&i 3ji this standard MARKING and OFF conditions correspond to a negative signal voltage, while SPACING and OK refer to a positive voltage,

with respect to ground.

5
DTE

data

control

timing

ground

control

digits

ground

4-

DCE

MODEM

communications

channel

ACE

interface

Figure 2-1. DTE - DCE Interface, Non-Military
1

uMcnHi

J5C

3*1 u u

Description

Gnd Data Control Timing w

U

5

E

o

ujyQ

(2

o

Q

E

u

U.

u

Q

e2

wu

Q

E

g ya

(2

1

7 AA

AB

101 102Protective Ground

Signal Ground/Common Return X

X

2

3 BA

BB

103 104

Transmitted Data

Received Data X

X

4

5620

22

8 21

23

23

CA

CB

CC

CD

CE

CF

CG

CH

CI

105 106

107

108.2 125

109 110

111 112

Request to Send

Clear to Send

Data Set Ready

Data Terminal Ready

Ring Indicator Received Line Signal Detector

Signal Quality Detector Data Signal Rate Selector (DTE)

Data Signal Rate Selector (DCE)

X

X

X

X

X

X

X

X

X

24

1517

DA

DB

DD

113 114

115

Transmitter Signal Element Timing (DTE)

Transmitter Signal Element Timing (DCE)

Receiver Signal Element Timing (DCE)

X

X

X

14

16 SBA

SBB

118 119Secondary Transmitted Data Secondary Received Data X

X

1913

12

SCA

SCB

SCF

120

121 122

Secondary Request to Send

Secondary Clear to Send

Secondary Rec'd Line Signal Detector X

X

X

Note: Pins 0, 10, 11, 13, and 18 are unassigned.

Pins 9, 10 are reserved for data set testing.

Source: RS-232-C.

Figure 2-2. Interchange Circuits [RS-232-C]
ft3

0) X)

3

2O

en o

a) as

a) C

0)co

H

!

s

CO

Cfl 0)a OI §

2

O

Figure 2-3. Control Circuit Actions [RS-232-C]
the remote DCE and DTE. This circuit is held in the OFF condition when

the circuit RECEIVED LINE SIGNAL DETECTOR is in the OFF condition.

2.1.3.3 Control Circuits - The following control circuits are

provided:

REQUEST TO SEND

This circuit is used to condition the local DCE for data transmission. On a two way alternate channel this means control of the

direction of data transmission of the local DCE. Figure 2-3 summarizes

these actions. The ON condition maintains the DCE in the transmit mode,

and in the case of two way alternate mode inhibits the receive mode.

The OFF condition maintains the DCE in the nontransmit mode, and in the case of the two way alternate mode enables the receive mode. The OFFto-ON transition puts the DC E into the transmit mode , and generates

the CLEAR TO SEND SIGNAL. The ON-to-OFF transition puts the DCE into

the noh-transmit or receive mode.

CLEAR TO SEND

Signals on this circuit are generated by the DCE and indicate to

the DTE that the DCE is ready to transmit data. The ON condition, together with the ON conditions on all of the circuits: REQUEST TO SEND,

DATA SET READY, and DATE TERMINAL READY, (when implemented) indicate to

the DTE that signals can be transmitted on the TRANSMITTED DATA circuit.

The OFF condition indicates to the DTE that it should not transmit data.

The ON condition on the CLEAR TO SEND circuit is a response to the simultaneous ON conditions on circuits DATA SET READY, and REQUEST TO SEND.

DATA SET READY

Signals on this circuit indicate the status of the local DCE. The

ON condition indicates that the local DCE is connected to a communications channel (off-hook in switched service), and that the local DCE is

not in test, alternate voice or dial mode, and that the local DCE has

completed any timing functions required by the switching system. It also indicates that the local DCE has completed call establishment,

and the transmission of a discrete answer tone, the duration of which

is controlled only by the local data set, if these functions are implemented.

DATA TERMINAL READY

Signals on this circuit go to the DCE and control switching of the

DCE to the communications channel. The ON condition prepares the DCE

to be connected to the communications channel and maintains the connec- tion established by external means, i.e. manual call origination, manual

answering, or automatic call origination. The OFF condition causes the

DCE to be removed from the communications channel, following completion

of any in-process transmission.
RING INDICATOR

The ON condition received from the DCE indicates to the DTE that a

ringing signal is being received on the communications channel, from the

distant DCE. ON and OFF conditions correspond to the ring and no-ring

signals.

RECEIVED LINE SIGNAL DETECTOR

The ON condition on this circuit indicates that the DCE is receiving a signal suitable for demodulation. Criteria for suitability are established by the DCE manufacturer.

SIGNAL QUALITY DETECTOR

An ON condition received from DCE indicates to the DTE that there

is no reason to believe that an error has occurred. The OFF condition

indicates that there is a high probability of error. This signal may

be used to call for automatic retransmission of a previously transmitted signal.

DATA SIGNAL RATE SELECTOR

Signals on this circuit originate at the DTE or DCE to select one

of two signalling rates available in a dual rate synchronous DCE, or one

of two ranges available in a dual range asynchronous DCE. The ON con- dition selects the higher rate or range. One circuit is available for

this function. The signal source may be either in the DTE or the DCE.

2.1.3.4 Timing Signals - Three circuits provide for timing information flow between DTE and DCE.

TRANSMITTER SIGNAL ELEMENT TIMING

Two circuits provide timing signals, originating either from the

DCE or the DTE, indicating signal element center, (DTE source) or signal

element transitions (DCE source) on the TRANSMITTED DATA circuit. Only

one of these circuits is employed in any particular implementation.

RECEIVER SIGNAL ELEMENT TIMING (DCE SOURCE)

Signals on this circuit provide received signal element timing

information from the DCE to the DTE. The ON to OFF transition on this

circuit nominally indicates the center of each signal element on the

circuit. RECEIVED DATA.

2.1.4- Secondary Channel Operation

If a secondary channel is available the following circuits

are used: SECONDARY TRANSMITTED DATA, SECONDARY RECEIVED DATA, SECONDARY REQUEST TO SEND, SECONDARY CLEAR TO SEND, SECONDARY RECEIVED LINES

SIGNAL DETECTOR.

10
These circuits function similarly to the primary circuits described

above, and permit a secondary channel capability for low speed supervisory communications.

2.1.5 Standard Interfaces for Selected System Configurations.

For various modes of operation a total of 14 interface types

have been established in RS-232-C. Figures 2-4, and 2-5 summarize these

configurations

.

The standard provides that driver circuits must be provided for

every interchange circuit included in the standard interface. Terminating circuits are not required for all interchange circuits, but the

equipment designer is tagged with responsibility for possible degradation of service. Additional interchange circuits may be included in

multipurpose equipment, but dummy loads for unused circuits must be provided, and open circuits must be considered on the terminating end for

special circuits not in the standard.

2.2 DTE - ACE Interface [EIA RS-366]

This interface is also defined in terms of the electrical and mechanical interface characteristics, as well as by functional descriptions

of the interface circuits. Furthermore four specific interface configurations are defined for four classes of automatic calling equipment, which

are characterized by the division of labor between the DTE and the ACE.

These interfaces are summarized in figure 2-6.

2.2.1 Electrical Interface Characteristics.

The electrical characteristics prescribed by RS-366 conform

to the DTE-Modem interface standard RS-232-C.

2.2.2 Mechanical Interface Characteristics.

The mechanical characteristics specified by RS-366 are

similar to those in the DTE-Modem standard RS-232-C. A 25 pin connector

is used. Ten circuits are unassigned. Seven circuits are used for control, and four circuits are used to transmit binary digits equivalent to

the call numbers.

2.2.3 Functional, Description of Interchange Control Circuits.

2.2.3.1 Control Circuits - The following control circuits are

provided:

CALL REQUEST

Signals on this circuit are generated by the DTE to request the ACE

to originate a call. The ON condition indicates a request to originate a call. This condition must be maintained until the CALL ORIGINATION

CIRCUIT is turned on. 11
aa

>H

a

o

V

C

N 1 X O o*ooo oeee o o S 1 X X X X X in «o X ~~ X X X X J 1 X X X X X X to to X ~~ X X XXX

Ui 1 X X X to to X ~~ X X xxx

—t 1 X X X X X to to - X X XXX

~ 1 X X X to it X - X X X 1 X X X X vi to ~ X X o 1 X X X to to X " X X X m 1 X X X X X to to ** X X w 1 X X X X X to to X «-« Q 1 X X X X X X to to X *.«. U 1 X X X to to X -

03 1 X X X X X to to - < 1 X X X X vi to 4-1

4-» '31

ca

u

o

c

c

3a § hoo —t> n o 5

CU CO

Ao «

E|

c °

2 S

Request

to

Send

Clear

to

Send

Data

Set

Ready

Data

Terminal

Ready

Ring

Indicator

Received

Line

Signal

Detector

Signal

Quality

Detector

Data

Signalling

Rate

Selector

(DTE)

/TJCE) 8

Q

Bq

60 •- c Is

£p

g e

E 1 W E

.£?-. CO c

i_ to 1 s

£

-5 2 3

A

aa «

E g S'5

2 8 &•£

o rt •a -a c c o o

<j u

o o

CO CO

Secondary

Request

to

Send

Secondary

Clear

to

Send

Secondary

Received

Line

Signal

Detector

<03

<< a 03 <£QUQ UJ U. O

5" UOUU UUUU

03Q

<Q < a

CO CO < CQ tt, CO CO CO

uc

c 1

6

U to

IO 3

CO O

•a

*> S2

-= _e So

to CO U l-i .O .O

%> to

•—

?

.52 "P '^ "!3 = 3 a «

a, .£ 3 U

o BO X n

A

>, X

X) u. a OJ c

c

rj o C

O a

o a

H <

u 3

to y c .is £ to u c

.2 -c

"a S

c *-• o c

< 03

<o ~ X

O

I Csi CO

CM

12
Data Transmission Configuration Interface Type

Transmit Only

Transmit Only*

Receive Only

Half Duplex

Duplex*

A

BC

D

D

Duplex

Primary Channel Transmit Only * / Secondary Channel Receive Only

Primary Channel Transmit Only / Secondary Channel Receive Only

Primary Channel Receive Only / Secondary Channel Transmit Only*

Primary Channel Receive Only / Secondary Channel Transmit Only

E

FH

G

I

Primary Channel Transmit Only* / Half Duplex Secondary Channel

Primary Channel Receive Only / Half Duplex Secondary Channel

Half Duplex Primary Channel / Half Duplex Secondary Channel Duplex Primary Channel* / Duplex Secondary Channel* Duplex Primary Channel / Duplex Secondary Channel

JK

L

L

M

Special (Circuits specified by Supplier) Z

Note: Data Transmission Configurations identified with an asterisk (*) indicate the inclusion of

Circuit CA (Request to Send) in a One Way Only (Transmit) or Duplex Configuration where it might ordinarily not be expected, but where it might be used to indicate a non-trnnsmit mode to

the data communication equipment to permit it to remove a line signal or to send synchronizing or timing signals as required.

Figure 2-5. Interface Types for Data Transmission Configurations

[RS 232-C]

13
totoooI

CO II

•H

.aIa

toI CM

•H

14
POWER INDICATION

Signals on this circuit are generated by the ACE. The ON

condition indicates that power is available in the ACE.

DATA LINE OCCUPIED

Signals on this line are generated by the ACE. The ON condition

shows that the communications channel is used for automatic calling,

data communication, voice communication or for testing.

CALL ORIGINATION STATUS

The ON condition on this circuit, which is generated by the ACE

during call origination, shows that control has been transferred from

the CALL REQUEST circuit in the ACE, to DATA TERMINAL READY in the

associated DTE-modem interface.

ABANDON CALL AND RETRY

These signals are generated by the ACE and indicate to the DTE

that the probability of a successful call is low, and provides a

suggestion to the DTE, to abandon the call and retry at a later time.

The OFF condition indicates that probability of call completion is

high.

PRESENT NEXT DIGIT (PND) AND DIGIT PRESENT (DPR)

Signals are generated by -ti\e ACE and the DTE respectively, to

control the presentation of digit representations on the four digit

signal circuits. An ON condition on PND indicates that the ACE is

ready to accept the next digit. The OFF to ON transition on DPR

indicates that the DTE has completed the next digit representation.

2.2.3.2 Data Signals - Four data signal circuits provide

indications of the low order, second order, third order and high

order bits of the encoded called number. Parallel binary signals are generated by the DTE. Information presented on these circuits may

either be transmitted, i.e. representing digits of the called number, or used locally as control signal. The sixteen possible codes represent the digits to 9, the asterisk, the pound sign, and an end

of number code (EON). This code is sent by the DTE to the ACE, and

receipt of this code transfers the data channel to the modem, without waiting for an answer signal from the called modem.

2.3 Signal Quality at tine Interface Between DTE and DCE

In order to provide reliable communications across the interface

certain minimum standards of signal quality must be maintained.

15
Standardization in this area is concerned with specification of distortion of the signal as well as with test methods to measure the

distortion. Separate documents deal with synchronous DCE and startstop (non-synchronous) DCE interfaces.

2.3.1 Synchronous DCE Interface (RS-334-)

Data and timing signals may be measured either at the transmitting terminal or at the receiving terminal of either the DTE or

the DCE. Distortion of timing signals, data signals, and of the

relationship between timing and data signals is specified. This is

summarized in figure 2-7. Characteristics measured for timing signals are the degree of peak individual distortion, the duty cycle and

the frequency deviation. For data signals the degree of isochronous

distortion is specified. The relationship between timing and data

signals is characterized by the ON-OFF or the OFF-ON timing signal

transitions as they relate to data signal transitions.

2.3.2 Non Synchronous DCE Interface

Two standards are of concern here [RS-363 and RS-^04].

While the standard for the synchronous interface lists quality

criteria, specific quantities and tolerances which must be observed,

neither of the non-synchronous standards prescribe quantities to be

measured. Document RS-363 is arranged as a guide to define signal

quality from the transmitting DTE and acceptable to the receiving

DTE. Standard statements are provided into which agreed upon limits

may be inserted. A standard work sheet is included to assist in

preparation of a system specification.

Two system characteristics should be stated: the Modulation

Rate (nominal modulation rate) and the Start-Stop character interval

(nominal character interval).

2.3.2.1 Signal Quality from the Transmitting DTE - This is

characterized by distortion and character interval characteristics.

(a) Distortion - Three types are considered here: the

degree of synchronous start-stop distortion ( in per cent ) , the degree of gross start-stop distortion, (in per cent), and the signal

element duration.

(b) Character Interval - In continuous start-stop operation

transmitted data signals may have a minimum average character interval

which is shorter than the nominal character interval, and an occasional

character having a nunimum character interval. The following characteristics are therefore to be specified:

Minimum average character interval, measured between successive

start transitions, averaged over a specified number of characters,

16

Minimum character interval,

Signal continuity, specified in break length as per cent of unit

interval

.

Contact bounce.

2.3.2.2 Signal Quality Acceptable to the Receiving DTE - Signal

Quality acceptable to the receiving DTE is characterized by the re- ceiving margin, .the character interval and a minimum duration start

element

.

(a) Receiving Margin - In a start-stop system, this is ex- pressed as the degree of start-stop distortion not exceeding a certain

stated percentage (the net margin) provided that no signal element

has a duration of less than a specified percentage of the unit interval.

In synchronous operation, modulation rate within specified percentage limits of nominal rate, rate of change of modulation rate,

degree of isochronous distortion, and nunimum signal element duration

are specified.

(b) Character interval - In continuous start-stop

operation, the minimum average character interval, the minimum

character interval, and the minimum duration start element are specified.

Also specified are measurements of interface driver and interface

terminator characteristics.

2.3.2.3 Signal Nomenclature - Character format for start-stop

operation is precisely defined. Figure 2-8 shows an ideal signal,

representing the number "9" in the USA Standard Code for Information

Interchange. It has even parity, a one unit start element, and a

two unit stop element. The code is transmitted with the low order

bit first and is followed by the parity bit.

2.3.2.4 Performance Categories - In addition to the performance

criteria listed in RS-363 and described on the previous pages, a

later standard published in 1973 [RS-404] specifies a number of

different sets of performance requirements based on practical realities of different operating conditions leading to differing ways

of implementing equipment. A number of performance categories are therefore defined for transmitting and receiving DTE's. It is

intended that any receiving category may be specified with any

transmitting category. The actual selection depends on such factors

as channel error rate acceptable, and economic considerations of

the system.

Five categories are defined for transmitting DTE: Three

categories of these cover DTE with electronic timing signal generation, while two cover equipment deriving signal timing from the

power line frequency.

18
Eh

CO c

D. s O <L

-t-> rH

CO

w

>>

•P•H

r,R

Ph

Y* P 03 ! «5 P j E c P c o £

<^

©

C fH M-J3

_+3

-P e*

CO

K

A

CM

V

-p rH C

H « c J=> £ 6

bO c CM •H rH

CO 0)

+5 .1 ccc

QO

•H

co

C"\

AH

fe

ftE ca

ft o a

H

H CO |D Go

•HP•r) •d

tfl 1 £ * p

•5 1p p

CO 5 P

19
Similarly five categories are defined for receiving DTE. Again

three of these cover equipment with all-electronic timing signal generation, while two cover power line frequency timing.

Worst case bounds are shown for the criteria listed above, for the

various categories.

2.4 Standard Signalling Rates

Industry and Government have standardized signalling rates [RS-269-

A, X3.1, FIPS PUB 22] for use on nominal 4 KHz voice bandwidth circuits.

These rates are based on data equipment manufacturers and communications

supplier preferences.

The standard signalling rates are specified as 600 times N bits

per second, where N may be any positive integer from 1 through 16.

Preferred standard signalling rates are 600, 1200, 2400, 4800,

7200 and 9600 bits per second. In order to accomodate established

practice an interim standard rate of 2000 bits per second is also recognized in RS-269-A, and ANSI X 3.1 . FIPS 22 specifically excludes 2000

bits per second as standard rate.

For applications requiring synchronous operation below 600 bits

per second, standard rates have been established at 75, 150, and 300

bits per second.

Standard parallel signalling rates for equipments designed with

up to eight parallel data bits per character are 75 times N character

per second, where N may be any positive integer from 1 through 16.

Where error control or similar devices, which change the signalling

rates by a fixed ratio are inserted between the DTE and DCE equipments,

the 600 x N standard rates apply at the communications side of the

interface between error control and DCE.

The Department of Defense has standardized signalling rates for

both voice circuits and wide band circuits.

For nominal 3 kHz and nominal 4 kHz channels the following rates

apply, according to MIL-STD-188-100:

(a) 25 x

2~m

Bds or b/s

(b) 50.0 Bds or b/s

(c) 75 x 2 ms or b/s, up to and including

9600 Bds or b/s, where m is a positive integer 0, 1, 2, .... 7.

Above 9600 Bds or b/s the modulation rates (expressed in Bds) and

the data signaling rates (expressed in b/s) are based on 8000 x N as follows

20
Recognized Rates

Standard Rates Based on Current Inventory

16 kBds or kb/s 50 kBds or kb/s*

32 kBds or kb/s 288 kBds or kb/s

48 kBds or kb/s** 576 kBds or kb/s

56 kBds or kb/s 1152 kBds or kb/s

64 kBds or kb/s 1536 kBds or kb/s

1344 kBds or kb/s 2048 kBds or kb/s

1544 kBds or kb/s 2304 kBds or kb/s

6312 kBds or kb/s***

6336 kBds or kb/s***

*This rate is not based on 8000 x N.

**48 kBds or kb/s is an internationally preferred rate for information over 48 kHz group bandwidth channels. It is also recognized as a cur- rent military rate for TDM/PCM transmission.

***The selection of this rate will depend on CCITT recommendations.

2.5 Military Subsystem Interface Standards [MIL-STD-188-347]

Military systems are subdivided according to figure 2-9. The introduction of security transmitting and receiving equipment adds another

level of complexity compared to the commercial interface standards.

Terminals or data end instruments connect with the digital communications system at the EI (End Instrument) interface. Digital communications control equipment connect with the data transmission channel at

the DCCE (Digital Communication Control Equipment) interface.

2.5.1 Digital End Instrument Interface.

The low level interface as described in MIL-STD-188-100 is

the standard method of station equipment interfacing. Signals may be

serial (bit sequential), or parallel, (character or word sequential).

The low level MIL-188 interface differs from the EIA RS-232 interface in several respects:

(a) Data and clock signal polarities are of opposite polarities.

(b) Long signal rise and fall times are specified, i.e. rounded wave shapes. Square waves [RS 232-C] contain higher harmonics, which

21
T

si! I

\ « *

(]z ,_ mmr~t~'

4

i?3

a 5 I £8"

1 |5

i 3

l^—is

J \.

XT

.is ill _L_

>

l ?5 IT

"j si Hit I'ii JJsf 4

ft 4 III

sfli—

r

ElSS

2 i

I Si

>!*

5 a

r:if

ss sj|S - - - r

-

, m

8 - t4s S2?

_^ TUTTZC

LI

jS|g

itn

a

I i n

t-H

i i3

XX

-85

*:-

3 I

2 «§3

s;* iM

1>;

4 *=? SfS

1

i I ew ;°?

:!i!

22
makes lines more susceptible to inductive tapping.

(c) Low impedance sources permit numerous devices to receive from a given transmitter.

(d) No specific mechanical or electrical connector characteristics

are mentioned.

2 .

6

Conclusions

Standardization of the DTE - DCE interface is of importance to the

development of reliable, efficient and cost-effective computer-communications systems. Despite the fact that standards have been developed,

both in the commercial sector and by the military, many problems still

remain. Considering the electrical interface, differences exist between

military and commercial standards. MIL-188-C specifies the mark condition as a positive voltage swing, while RS-232-C defines the mark con- dition as a negative interchange voltage. For many applications MIL188-C is superior; as an example RS-232-C will not operate over more

than 50 feet of cable between DTE and DCE, as a result of the high

driver impedance. Also the high impedance of both driver and receiver

makes the circuit susceptible to pick-up of extraneous signals. The

high voltages generate cross-talk in adjacent circuits, make shielding

difficult, and create possible security problems. For these reasons RS-232-C has not been adopted by the American National Standards Institute.

The existence of standard interface specifications does not insure

plug-to-plug interoperability of devices in all cases. Products of

many data communications and computer peripheral manufacturers require

specially engineered interfaces. Often interface requirements vary

from manufacturer to manufacturer, and they vary often within one

product line. EIA standards were originally designed around the Bell

System 103 data set. Today this modem represents only a small part of

the total interface equipment universe. Expanding requirements have

added additional functions beyond those specified in the standards.

Careful analysis of requirements in each individual DCE application is

required , applicability of existing standards must be determined , and

the additional requirements must be determined and interface engineering

efforts are required to provide needed capabilities.

2.7 Standards

1. ANSI X 3.1-1969

Synchronous Signaling Rates for Data Transmission

August 1969

American National Standards Institute

Same as FIPS 22

23
2. ANSI X 3.24-1968

Signal Quality at Interface Between Data Processing Terminal Equipment

and Synchronous Data Communication Equipment for Serial Data Transmission

September 1968

Same as EIA RS-334

3. EIA RS-232-C

Interface Between Data Terminal Equipment and Data Communication

Equipment Employing Serial Binary Data Interchange

August 1969

Electronic Industries Association

4. EIA RS-269-A

Synchronous Signaling Rates for Data Transmission

February 1969

Electronic Industries Association

5. EIA RS-334

Signal Quality at Interface Between Data Processing Terminal Equipment

and Synchronous Data Communication Equipment for Serial Data Transmission

March 1967

Electronic Industries Association

6. EIA RS-363

Standard for Specifying Signal Quality for Transmissing and Receiving

Data Processing Terminal Equipments Using Serial Data Transmission at

the Interface with Non- Synchronous Data Communication Equipment

May 1969

Electronic Industries Association

7. EIA RS-366

Interface Between Data Terminal Equipment and Automatic Calling Equip>-

ment for Data Communication

August 1969

Electronic Industries Association

8. EIA RS-404

Standard for Start-Stop Signal Quality Between Data Terminal Equipment

and Non-Synchronous Data Communication Equipment

March 1973

Electronic Industries Association

9. FIPS 22 Synchronous Signaling Rates Between Data Terminal and Data Communication

Equipment

1972 November 1

U. S. Department of Commerce

National Bureau of Standards

24
10. ISO 2110-1972CE)

Data Conmunication-Data Terminal and Data Communication Equipment - Interchange Circuits-Assignment of Connector Pin Numbers

First Edition - 1972-02-15

International Organization for Standardization

11. MIL-STD-188-C

Military Standard, Military Communication System Technical Standards,

November 1969, Department of Defense, Washington, D. C. 20301

12. MIL-STD-188-100, Military Standard, Common Long Haul and Tactical

Communication System Technical Standards, November 1972, Department

of Defense, Washington, D. C. 20301

13. MIL-STD-188-347 , Military Standard, Standards for Long Haul Communications, Equipment Technical Design Standards for Digital and

Instruments and Ancillary Devices

25
3. USER TERMINAL STANDARDS

3.1 International Standards for Character Codes

The definition of a standard character set is basic to all standards

dealing with communications using typewriter-like terminals. The development of an international standard in this area was an important achievement. (For a history of this development, see [3-1].) The international

standard for character sets is ISO R646-1967. It is a 7-bit code which

has become the basis for a family of related international standards.

CCITT V.3 (Working Alphabet No. 5) is entirely consistent with ISO R646.

ISO R646 is currently being considered for revision, but these revisions

are not likely to involve major changes to the 7-bit coded character set.

3.2 National Standards for Character Codes

ISO R646 is the basis for the related U. S. standard for character

sets, ANSI X3.4 which is known as the American Standard Code for Information Interchange (ASCII). ISO R646 and ASCII are compatible, i.e.,

they do not differ in the assignment of those characters which are mandatory under R646. However, R646 reserves some positions in the code

table for national use, i.e., the character assigned to that bit pattern may differ in the codes of each nation. For the U. S. , X3.4 makes a standard assignment to these national use positions. ASCII has undergone several revisions, the major ones are known as ASCII-63, ASCII-67,

and the current version, ASCII-68. ASCII is currently under revision,

the major changes proposed deal with the meanings of certain control

characters; the implications will be discussed later.

On 1968 March 11, the President of the United States approved

X3. 4-1967 as the first Federal Information Processing Standard (FIPS-1).

The Federal version of ASCII differs slightly from the current ANSI

version X3. 4-1968) in the interpretation of the LF character; this will

be covered later. MIL-STD-188-100 (1972 November 15) prescribes the use of FIPS-1 in military systems.

The standards relating to the 7-bit character code are given in

Table 3-1.

3.3 Implementation of the 7-bit code

3.3.1 Representation on physical media

Table 3-2 gives the standards defining the representation of

the 7-bit character code on various physical media.

The perforated tape standard calls for eight tracks, seven of which

are used to record the 7-bit character and the eighth to record an even parity bit.

26
The 9-track magnetic tape standard calls for seven of the tracks

to record the 7-bit character, one track to record zero (reserved for use in an eight bit environment) and one track -for odd parity.

The Ibllerith punched card standards deal with 12 -row standard

punched cards. Of the 4096 possible combinations of punches possible in a column, only 256 (128 in the 7-bit standard) combinations are used to

represent an 8-bit code.

3.3.2 Representation during data transmission

The standards which apply to the 7 -bit code in data communications contexts are given in table 3-3.

In serial-by-bit communications as prescribed by ANSI X3.15 and

FTPS PUB 16 the bit sequencing is low order bit first. The character

structure for serial communications is specified by ANSI X3.16 and FIPS

PUB 17. For synchronous communication the character structure consists

of eight bits, the seven bits of the character and an odd parity bit.

For asychronous communication the character structure consists of ten

elements, a start element, followed by the seven bits of the character,

followed by an even parity bit and ending with a stop element of the

opposite sense as the start element.

In parallel-by-bit communication the character structure, specified

by ANSI X3.25 and FIPS PUB 18, consists of eight channels, one for each

bit of the 7-bit character and one parity bit. If there is a separate

timing channel, the parity sense should be even, otherwise it should be

odd.

ISO

Current

ISO R646

Proposed

CCITT V.3

ANSI X3.4- (ASCII) X3L2/1355

Federal FIPS-1

Military MIL-STD-188-100

ECMA 6

Table 3-1. Standards for character codes.

27
Perforated

Tape

ISO IS0/R1113

ANSI X3.6

Federal FIPS-2

Military - - -

ECMA 10

9-Track

Magnetic Tape

Hollerith Punched Cards

7-bit 8-bit

ISO/R962 ISO/R1679 R2021

X3.22 X3.26

FIPS-3 FIPS-14

all in MIL-STD-18 8-100

12 20 25

ISO

CCITT

ANSI

Federal

Table 3-2. Standards for

representation of characters on physical media.

Serial-by-bit

Bit sequence

Character

structure

and parity

Parallel-by-bit

Character

structure

and parity

V.4

X3.15

FIPS-16

ISO/R1177

V.4

X3.16

FIPS-17

X3.25

FIPS-18

Military all in MIL-STD-188 -100

Table 3-3. Standards for

representation of characters during data transmission.

3.4 Structure of the 7-bit Code

For definitional purposes, the ASCII code is presented in a tabular

form with 16 rows and 8 columns, as shown in figure 3-1. —Note: The

position of a character in the code table is given by the notation

'column/row'. — By definition, the characters in the code table are partitioned into several subsets:

1) a set of 32 control characters allocated to columsn and 1;

2) the space character (SP) in position 2/0 (may be regarded as a

control character or a non-printing graphic character)

;

28
3) a set of 94 graphic characters allocated to columns 2 through 7; 4) the delete character (DEL) in position 7/15.

The structure of the table as shown in figure 3-2 will be the basis of a later discussion on code expansion and extension.

3.4.2 Control Characters

A control character is defined as a character whose occur- rence in a particular context initiates, modifies, or stops an action

that affect the recording, processing, transmission or interpretation

of data. The 32 ASCII control characters have been classified into

communication controls, information separators, format effectors

device controls, code extension controls and other controls.

3.4.2.1 Communication controls - The ten communication controls

are SOH, SIX, ETX, EOT, ENQ, ACK, DLE, NAK, SYN, ETB. Their use is

intended to control or facilitate transmission of information over communication links. Standards relating to their use will be discussed

in the following chapter.

3.4.2.2 Information separators - The information separators are File Separator (FS), Group Separator (GS), Record Separator (RS),

and Unit Separator (US). (The SP character may also be considered an information separator and it has been placed in the code table

such that all five characters are contiguous.) These characters form a hierarchy and are used to separate and qualify information in a logical sense.

3.4.2.3 Format effectors - The format effectors are BS, HT,

LF, VT, FF, CR. These characters control the layout or positioning

of information in printing or display devices. They can be further

classified into horizontal format effectors BS, HT, CR and vertical

format effectors LF, VT, FF. Each of the format effectors will be

discussed in detail as they are often a source of problems in information interchange and terminal compatibility. Also, the meaning

of some of these characters may undergo a change under the proposed

revisions to ASCII. (The quoted material that follows is from

X3. 4-1968.)

(a) Backspace (BS) - The backspace character "...controls

the movement of the printing position one printing space backward on

the same printing line. (Applicable also to display devices. )"

The definition is stated in terms of printing devices and over- printing is thus implied. The relevant international standard (ISO

R646) is more direct in its specification that overprinting must occur

for the printing of diacritical signs:

"In the 7 bit character set, some printing symbols may be designed

to permit their use for the composition of accented letters when

necessary for general interchange of information. A sequence of

29
?

7

z °0 °0

1 \ 11 \ 1

1 1

1 1

1 K^s b<

1

b 3

1

b 2

1

b,

1 BOW p\^ 1 2 3 4 5 6 7 NUL DLE SP e P

« P

1 1 SOH DC1 ! 1 A Q a q

1 2 STX DC2 1! 2 B R b r

1 1 3 ETX DC3 # 3 C S c s

1 4 EOT DC4 S 4 D T d t

1 1 5 ENQ NAK % 5 E U e u

1 1 6 ACK SYN & 6 F V f V

1 1 1 7 BEL ETB

' 7 G w 9 w

1 8 BS CAN ( 8 H X h X

1 1 9 HT EM ) 9 1 Y i y

1 1 10 LF SUB * J z J z

1 1 1 11 VT ESC + ; K [ k {

1 1 12 FF FS r < L \ 1

1

1

1 1 1 13 CR GS - = M ] m }

1 1 1 14 SO RS . > N

-

n ~

1 1 1 1 15 SI US / ? DEL

Source: ANSI X3. 4-1968

Figure 3-1. ASCII Code Table

30
1 2 3 U "5 |6 7

A set

of 32

control

characters

sp j

>4 graphic characters

12

A set of i

3

4

5

6

7

8

9

10

11

12

13

14

15 DEL

Source: ISO 2022-1973

Figure 3-2. Structure of the 7-bit Code Table.

31
three characters, comprising a letter, 'backspace' and one of

these symbols, is needed for this composition, and the symbol

is then regarded as a diacritical sign."

The correct interpretation of the BS character may be difficult on nonserial (line-at-a-time) printers. There is also a trend by designers

of CRT terminals to use the BS character to perform the editing function

'delete previous character'. This interpretation of 'move the printing

position one printing space backward and erase the character in that

position' is not in accordance with the ANSI X3.4 standard. [3-2J.

(b) Horizontal Tabulation (HT) - The HT character "...controls the movement of the printing position to the next in a series of

predetermined positions along the [same] printing line. (Applicable also

to display devices and the skip function on punched cards. )"

Note that ASCII does not include any means of setting or clearing

the tabulation stops. In some terminal equipment, tab setting and clearing has been implemented by means of 'private escape sequences' (see

paragraph 3.6.3.3(c)).

The use of the HT character can result in significant savings in

transmission and printing time but can pose an interchange problem.

(c) Carriage Return (CR) - This character "...controls the

movement of the printing position to the first printing position on the

same printing line. Applicable also to display devices. )"

The CR character should not cause the printing position to be moved

to the next line. This is contrary to the action of a normal typewriter

carriage (or carrier) return. In an attempt to avoid confusion, the

committee responsible for maintenance of the ASCII standard is considering a name (and mnemonic) change to Horizontal Return (HR) or simply

Return (RT). One of these two names is likely to be used in the next

version of ASCII.

(d) Line Feed (LF) - "A format effector which controls the

movement of the printing position to the next printing line."

Note that the printing position on the next line is left unspecified.

In most cases, the implementation is such that the horizontal position

is not affected. However, the ASCII definition continues:

"Where appropriate, this character may have the meaning 'New

Line' (NL) , a format effector which controls the movement of the

printing point to the first printing position on the next printing

line. Use of this convention requires agreement between sender

and recipient of data."

The Federal standard specifically omits that portion of X3.4 which defines

the New Line option.

32
The proposed ASCII revision changes the principal control function

of position 0/10 to New Line (NL) and Line Feed (LF) is assigned the

secondary function. This was done in response to the trend towards a

single control character to perform the new line function.

(e) Vertical Tabulation (VT) - "A format effector which

controls the movement of the printing position to the next in a series of

predetermined printing lines."

Note that, as with BS, the setting and clearing of vertical tabulation stops is not defined in ASCII. Some terminals use escape sequences

to implement these functions.

The present standard does not dictate any horizontal movement when

executing a VT function. However, the proposed revision defines VT

similar to NL; i.e., the active position is advanced to the first character position on the next predetermined line. Again similar to NL, the

(current) definition in which horizontal motion is undefined is made a

secondary control function under the proposed changes, contingent upon

agreement between the interchanging parties.

(f) Form Feed (FF) - "A format effector which controls the

movement of the printing position to the first predetermined printing

line on the next form or page."

Again, in the current standard, horizontal motion is left unspecified. The proposed revision specifies movement to the first character

position of a predetermined line of the next form or page.

3.H.2.H Use of the format effectors - The possible horizontal move- ment resulting from the vertical effectors LF, VT and FF is left undefined in the present ASCII standard. In the case of LF, X3.U-1968 allows

the option of implementing the 'New Line' function with the horizontal

position moved to the first print position. The related Federal standard

does not allow this option. In the proposed revisions to ASCII, the

vertical format effectors all move the print position to the first

position on a line in addition to the vertical movement. The LF character is replaced by the NL character in the proposed revision.

One of the functions of terminal control software (or terminal

drivers) is to map 'canonical' character strings into strings of characters to which the terminal is able to properly react. For example,

some simple terminals (e.g., the Teletype Model 33) do not implement the

format effectors BS, HT, VT and FF. In order to preserve the proper

layout of information, the terminal driver must map these characters into

the format effectors which the terminal does implement properly, i.e.

,

CR, LF and SP. This mapping requires that the terminal driver maintain

context information such as 'position in line' and 'position in page'.

If tab stops are to be simulated by the driver software, additional

tables must be maintained. All of the format effectors can be simulated

if some minimum subset of them is implemented in the terminal. Two

33
popular subsets are the aforementioned Model 33 Teletype subset, [CR, LF,

SP], and the typewriter subset, [BS, NL, SP].

Additionally, a terminal driver must cater to the timing idiosyncrasies of a terminal. Usually this involves sending 'pad' characters to

the terminal after a format effector which causes mechanical motion has

been sent. For example, on terminals where CR produces mechanical motion

a number of pad characters must be sent to allow for the travel time of

the carriage. In general, for a given terminal, the minimum number of

pad characters required depends on the amount of travel, i.e., the length

of the previous line, and the character rate. The calculation of the

optimal number of pad characters can involve a significant amount of

processing in the terminal driver.

3.4.2.5 Device Controls - The device controls are DC1, DC2, DC3,

and DC4. They are intended for control of ancillary devices which may

be associated with the data processing or telecommunications systems,

in particular, to switch such devices "on" or "off". If only a single

control is needed to turn off or "stop" a device, DC4 is the preferred

assignment.

The device controls have been used in keyboard terminals to control a paper tape reader -and punch with the following assignment:

DC1 - (X-ON) 'Reader On'

DC2 - (TAPE) 'Punch 0n»

DC3 - (X-OFF ) 'Reader Off

DC4 - (TATD 'Punch Off

These assignments have become a de facto standard for terminals with

attached paper tape readers and punches or cassette tapes.

3.4.2.6 Code Extension Controls - The code extension controls are

SI, SO, and ESC. The use of these characters will be covered in the

section on code ^extension. (The DLE character is used for code extension for communication control and will be discussed with the other

communication controls.

)

3.4.2.7 Other Controls - The following control characters do not

fall into any of the previous classes: NUL, BEL, CAN, EM, SUB, DEL.

(Strictly speaking, DEL is not considered to be a control character.) .

(a) Null (NUL) - The NUL character is used to accomplish

media-fill or time-fill. It may be inserted into or removed from a

character stream without affecting the information content; but it may

affect layout or control of equipment.

(b) Bell (BEL) - The BEL character is used to call for

attention. It may control alarm or attention devices.

34
(c) Cancel (CAN) - The CAN character is used to indicate

that the data it accompanies is in error. The exact meaning of this

character must be defined for each application.

(d) End of Medium (EM) - This control character may be used

to indicate the physical end of a medium, or the end of the used, or

wanted, portion of data recorded on a medium. The position of this

character does not necessarily correspond to the physical end of the

medium.

(e) Substitute (SUB) - A character that may be substituted

for a character that is determined to be invalid or in error. The exact use of this character is left undefined.

(f

)

Delete (DEL) - The DEL character was intended to be

used to erase or obliterate an erroneous or unwanted character in

punched tape by overpunching. In addition, current standards have DEL

characters serving the same purpose as NUL character, i.e., media-fill or time-fill.

3.4.2.8 Graphic Representation of the Control Characters - For those cases where a graphical representation of a normally non- printing character is desired, such as in the use of monitoring devices or diagnostic printers or display devices, or in system documentation, a standard set of graphics has been designed. As shown in figure 3-3,

there are two alternative sets of representations:

1) a pictorial representation,

2) an alphanumeric representation.

The standards which implement figure 3-3 are given in table 3-4.

ISO ISO 2047

ANSI X3.32

Federal

Military MIL-STD-188-100

ECMA 17

Table 3-4. Standards for graphical representation of control characters.

3.4.3 The Graphic Characters

A graphic character is a character, other than a control

character, that has a visual representation, e.g., that may be pruitted or displayed. The character standards do not specify a

T^.fl^JZs printing or display and allow distinctive styling for specific purposes,

35
= 9

1

1

CO

LJJ LU

COCO

CO

LU CO

LL. CO

CD

CO

CO CO

CO

1—

5 1 T M — v_^' O El Q E H < ^

5

tLU z

< 5

LU D

CO u

CO I

COCD

CO COD

Q. LUo

CO

-H

i

<! k

1—>

ccCJ OCO CO CD CD CM

CD

co

CD CD >-CO

2 v

s. > » y (8) m O O O © \ =:

£ >

LLLL ITU CO (0

LU

_lQ Qu

Q

COo

Q

U

Q

Y.<

Z z

>

CO

I

CMO

c

o

•HH

CO

ft

s

•H

CD

= /

"EL E.

=)S

DCCO XCO XLU LU

CD

LU < CQ CO

CO CC

u_

1

2

y a L H I / El \ (J f A III

i D

z

ro

05 X X

LU o

LU a

z

LU u<

_l

LU

CD

(0

CD r

LL

CO H

r~- C/J

CT> H

1 CM CO

CO 1 • CO

COX

M

C/J H <; Mh

£

36
3.5 Subsets of the 7-bit Code

If the capabilities of the full 7-bit coded character set are not

required, several standards exist for subsetting the 7-bit code. Both

6-bit and 4—bit subsets have often been used, ine standards that exist

for the purpose of defining subsets or defining the subsetting process

are given in table 3-5.

ISO ISO 646, ISO/R 963

ANSI

Federal FIPS-15

Military MIL-STD-l 8 8-1.00

ECMA 14

Table 3-5. Standards that specify

subsets of the 7-bit character code.

3.6 Code Extension and Expansion

The present 7-bit ASCII standard provides for 128 positions in the

code table and specifies a character for each position. However, it is

recognized that some applications may require more than 128 characters or a character not currently in the standard. Efforts have been underway

for several years to develop a standard method of meeting these needs by

augmenting ASCII [3-3]. This augmentation takes one of two forms: code

extension or code expansion.

Remaining in a seven bit environment, use of the control characters

ESC, SI and SO allows for extension of the code to additional single

control characters or additional sets of control characters and graphic

characters

.

Expansion to an eight bit environment has also been a subject of

standardization efforts. Additional impetus for this effort stems from

the widespread use of processing machines which manipulate characters

codes as 8-bit bytes and the standardized interchange media which support

this mode of operation, such as: 1) the punched card standard which allows 256 code combinations,

2) 9-track magnetic tape supporting 8-bit bytes (plus parity), and

3) transparent text data communication control procedures which

support arbitrary bit patterns in units of 8-bits.

An attempt has been made to make code extension and code expansion compatible. When expanding to an 8-bit code table with 256 positions, the

leftmost 128 are filled with the 7-bit code table as shown in figure 3-4.

Thus, when in an 8-bit environment, characters of the 7-bit code must

have a high order bit of zero.

37
The standards which apply to code extension and expansion are given

in table 3-6. Note that nearly all are drafts or proposals.

3.6.1 Definitions

The following definitions will be used in the ensuing discussions of code extension and expansion:

(a) Environment - The characteristic that identifies the

number of bits used to represent a character in a data processing or

data communications system or in part of such a system.

(b) To announce - To specify what code extension facilities

will be used in the data which follows.

(c) To designate - To identify a set of characters that are

to be represented, in some cases immediately and in others on the occurrence of a further control function, in a prescribed manner.

(d) To invoke - To cause a designated set of characters to

be represented by the prescribed bit combinations whenever those bit

combinations occur, until an appropriate code extension function occurs.

(e) To represent - To use a prescribed bit combination with

the meaning of a character in a set of characters that has been designated

and invoked.

3.6.2 Additional Sets of Characters

To extend the 7 -bit character code beyond the 128 characters

provided in the standard, additional characters are added in the form of:

1) additional single control characters,

2) additional sets of 32 control characters,

3) additional sets of 94 graphic characters,

4) additional sets of more than 94 graphic characters each represented by more than one byte,

5) an entire code structure requiring different interpretation

than the 7-bit standard or 8-bit expanded code.

Excluding options 4) and 5) above from discussion for the present, at any

given time there can be invoked:

1) two sets of 32 control characters known as the CO and CI set;

2) two sets of 94 graphic characters known as the GO and Gl set;

3) the SP and DEL characters, and if in an 8 -bit environment, the

characters in positions 10/0 and 15/15;

4) an arbitrary number of additional single controls.

38
Extension and

Expansion

ISO ISO 2022

ANSI X3L2/1199*

(X3.41 if approved)

Federal

Military

ECMA 35

Escape sequence

Registration

DIS2375*

X3L2/1100*

*draft or proposed

Table 3-6. Standards relating to code extension

and expansion.

The remainder of this section will present an explanation of code extension. The material presented is based on ISO 2022, the ANSI version is

essentially the same.

00 01 02 03 04 05 06 07 08 | 09 10 11 I 12 I 13 | 4 | 15 SP

CI SET

10/0

G1 SET

12

34

56

7 CO GO

89

10

111213

1415 :iH!--l. |15/15

Conti

charact

olers Graph

charact

ic ersControl

characters Graphic

characters

Source: ISO 2022-1973

Figure 3-4. 8-bit Code Table.

39
7 j PM j PFN |

10 j CSC

11 I CLC

CD

CI

CIF

CIN

CLC

CSC

ESI

ESO

LD

LI

NP

PD

PFF

PFN

PH

PL

PM

PP

PR

PT

?U

SD

su

Character

Character

Character

Character

Delete

Insert

Insert

Insert

oFf

oN

- Clear Line from Cursor

- Clear Screen from Cursor

- Extended Shift In

- Extended Shift Out

- Line Delete

- Line Insert

- Next Page

- Pointer (cursor) Down

- Protect Format oFf

- Protect Format oN

- Pointer (cursor) Home

- Pointer (cursor) Left

- Pointer (cursor) Margin

- Previous Page

- Pointer (cursor) Right

- Pointer (cursor) Tab

- Pointer (cursor) Up

- Scroll Down

- Scroll Up

(return)

NOTE:

X Y are columns 8, 9 when used as the CI control

set in an 8-bit code , columns 4, 5 when used as the CI control set in a 7-bit code and are preceded by an ESC

character.

Source: ISO 2022

Figure 3-5. A Proposed Set of Extended Control Characters,

40
Usually, the control set CO and the graphic set GO are initialized

to the ASCII controls and graphics, respectively. Control set CI and

graphic set Gl may be initialized to some set of controls and graphics

by mutual agreement between the parties interchanging information. However, a standard default for CI and Gl does not, at present, exist. A

proposed control set to act as a default for CI is given in figure 3-5.

It contains controls that have been specially designed for CRT displays.

3.6.3 Escape Sequences

Escape sequences provide a standard method of implementing

the code extension capabilities. An escape sequence is defined as a

sequence of characters starting with an ESC, followed by zero or more

'intermediate' characters, and ending with a 'final' character.

The rules for forming escape sequences are as follows (refer to the

ASCII code table in figure 3-1):

1) The control characters in columns and 1, as well as the DEL

(7/15) character, are illegal in escape sequences.

2) The characters in column 2 are considered intermediate characters.

Any of these 16 characters will be denoted (I).

3) The characters in columns 3 through 7 of the code table, ex- cluding position 7/15, are considered final characters. Any

of these 79 characters will be denoted (F). These final characters are further partitioned into the Fp and Ft sets. The Ft

set is again partitioned into Fe and Fs sets. 4) In an eight bit environment characters in columns 8 through 15 are not allowed in escape sequences.

Figure 3-6 summarizes the allowable characters in escape sequences.

Escape sequences are used to: 1) announce the code extension facilities used in the data which

follows

,

2) designate and, in most cases, invoke sets of characters or

special code tables,

3) represent individual control characters.

The general scheme for the use of escape sequences is given in table 3-7.

3.6.3.1 Announcement - Escape sequences of the form

ESC 2/0 (F)

are used to announce what code extension facilities will be used in the

data which follows. At the present time only four such sequences are included in' the proposed standard:

ESC 2/0 4/1 - data which follows is in 7-bit code with a graphic

set GO only; it may be in a 7 -bit or 8 -bit environment.

ESC 2/0 4/2 - data which follows is in 7-bit code with graphic sets

GO and Gl, graphic sets are invoked by SI, SO respectively; it may be in a 7 -bit or 8 -bit environment.

ESC 2/0 4/3 - data which follows is in 8-bit code in an 8-bit

environment; SI, SO are not used.

41
0) I

I3

Fp

Illegal

Characters

Intermediate *** Character s

Fe Fs

m

FinalCharacters

-»

Note: Row and Columns are those of the 7-bit ASCII code table.

(See figure 3-1)

Figure 3-6. Legal Characters in Escape Sequences.

42
oo _ w

S£2

i en afc< 5 CM oo r-l ^ w

« 00 w§3 1 3 OQ

55 M: ua TM l-l en o> en en en en CO CO CO to

00 i H oo 00 r~ r» r» r» r« r- m LO m H oo i 1-1 H H 00 o

Ou

to to 10 0)

1

I

f H r-l H •o 1 2 2 2 o

o S P •p +> e •H 1 g g c •o o P o P 0) •H S ' a 01 p H 01 N 1 H H H

(0 2

idN

rl'H j 3 T3 « 1X1 <d o o. •rl C c c CD Pi X» $& o o 0) C, <H T3 •H •H •rl 01 •P id w P rl S >> •p P •P C riTJ

003•H to H

•H

CO •H >i •H

<M 3

-P 1 SvH o

"P tO HC

2

•o u a >. •p c o id p

id 0> >d 0) H •O CO T3 CO J H H 01 Q) CJ 0)

4) c 4) c •p P 0) P.. id > 0) •P p > -H I 0) "O

r-l i-l 3 4) 01 H •A •H rl b 01 0) ti J= "O C

bO bO (0 10 M •P o V 3 to CO 01 O. OUn

•H iH •HC c o

c r-l 0> 10 P co id o a H •rl g Oi 0) 3 o H 41 U P Cu

(0 u 09 flj O CJ to s (0 rl >H CD CJ> Ci bO P-Hw

•H.Q It A 1 "-> i ii lN3S3Hd3H X f» X X

1 CO u,

hxoani X X 09 X 00 CO

-

alway

-

in

a

-

in

an

•

when ZIWEISJ3 X X X X X X

HEVAIHd X & a, ft. o. a. 0. ft. ft. 0, ft. Xr»a ft, ^ ^^^r^ 3-1

rf"N ^ *"\ <*% ^N ^\ *-ft. ~ft. U, U, U, In ! U (u u. u. ft. u. ft. ft, ft. lnv hw

<^ ~ n CM CO

t O H * U) ! Q, 0) 10 o r-t CM co a- to to r- CO r-l en H HrlHri; En u< Em >». *^ V. -» »«. ">v >»^. >. >» *^^ *^^^^ wo

s^ *" %^ CM cm CM CM CM CM CM CM CM CM CM CM CM CM CM CM ' ss o o O O CJ O O CJ O CJ O OO O O o ooo :

i u oo oo 00 OO oo 00 00 00 00 00 oo 00 00 00 oo CO CO CO CO -' 1- w u w U u w u u u MM u u u u UUUU|

w

00

ft1 *-N Si ^

ft* NUT o u.

oo v^ ^"\ u o

00W

Mo

COu

Table 3-7. Use of escape sequences.

43
ESC 2/0 4/4 - graphic sets GO and Gl are used as either a 7-bit code

when in a 7-bit environment (SI and SO will be used) or an 8-bit code when in an 8-bit environment (SI and

SO will not be used)

.

3.6.3.2 Designation and Invocation - Most of the remaining

three character escape sequences of the form

ESC (I) (F)

are used to designate and at the same time (usually) invoke a character

set. Invocation, in ±he case of graphic sets in a 7-bit code, is by use of the SI and SO characters.

A particular escape sequence designates and invokes a particular

set of characters. The assignment of escape sequences to character sets

is done by means of escape sequence registration . The draft proposed

standards which apply were given in table 3-6. Registration of character

sets, particularly graphic sets, is taking place within European standardization groups but such activity is considered premature by U. S. standardization groups.

The designation and invocation of each type of character set has a

unique form of escape sequence.

(a) CO control set - Escape sequences of the form

ESC 2/1 (F)

designate and invoke a set of 32 control characters as the CO set. Of

the 79 possible sequences, 16 are private (those ending with Fp) and

63 have standardized meaning.

Since many data transmission, printing, and display devices are code

sensitive to the characters in columns and 1, an implementor is warned

not to designate and invoke a CO set with controls not compatible with

the communication controls, format effectors, code extension controls,

etc.

(b) CI control set - Escape sequences of the form

ESC 2/2 (F)

designate and invoke a set of 32 control characters as the CI set. As

with the CO set, there are 16 private sets and 63 standard sets possible.

(c) GO graphic set - Escape sequences of the forms

ESC 2/8 (F) and

ESC 2/12 (F)

designate a set of 94 graphic characters as the GO set. There are 32

44
possible private sequences and 126 possible standardized sequences. In an 8-bit code, designation and invocation occur simultaneously; in a 7-bit

code, invocation is effected by the SI character.

(d) Gl graphic set - Escape sequences of the forms

ESC 2/9 (F) and

ESC 2/13 (F)

designate a set of 94 graphic characters as the Gl set. As with the GO

set, there are 32 private sets and 126 standard sets possible. In an

8-bit code, designation and invocation occur simultaneously; in a 7-bit

code, invocation is effected by the SO character.

(e) Multiple byte GO set - Escape sequences of the form

ESC 2/4 (F)

designate a set of graphic characters, containing more than 94 characters, as the GO set. In an 8-bit code, designation and invocation occur simultaneously; in a 7-bit code, invocation is effected by the SI character.

Each character in the multiple byte set will be represented by a sequence

of bytes form code table positions 2/1 through 7/14.

(f) Specially interpreted codes - Escape sequences of

the form

ESC 2/5 (F)

designate and invoke a code whose characteristics are not compatible with

the structure of the standard 7-bit or 8-bit codes and therefore requires

special interpretation. The final character in the escape sequence indicates the broad category of the code:

Final in column Category

3 a private code of any number of bits

4 codes of less than 7 bits

5 7 bit codes

6 8 bit codes

7 codes of greater than 8 bits

An example of an 8-bit code requiring special interpretation is EBCDIC,

since the control characters are not in the same columns as the 8 -bit

expanded standard code.

Entry into the special code occurs immediately after the final character in the escape sequence. A method of returning to the standard code

depends on the characteristics of the special code and therefore is left

undefined.

45
3.6.3.3 Representation - All of the two character escape

sequences in the form

ESC (F)

and the three character escape sequences of the form

ESC 2/3 (F)

are used to represent control characters. These control characters

either lie outside the code table or are in the current CI set.

(a) Controls in the CI set - Escape sequences of the form

ESC (Fe)

are used to represent one of the 32 possible control characters in the

CI set when in a 7-bit code. In an eight bit code, the same control

characters are represented by code table positions 8/0 through 9/15, and_

the escape sequence representation should not be used.

(b) Additional standardized single controls - Escape

sequences of the forms

ESC (Fs)

ESC 2/3 (Ft)

are used to represent additional control characters which lie outside

the code table and whose meaning is standardized. There are 94 possible

sequences yielding 94 additional standard controls. Efforts to determine

what control functions will be represented by each such sequence are now

under way in various standardization groups; however, a standard is not

expected in the near future.

(c) Additional private single controls - Escape sequences

of the forms

ESC (Fp)

ESC 2/3 (Fp)

are used to represent additional control characters which lie outside the

code table and have no standardized meaning, but are intended for private

use as required. There are 32 possible sequences yielding 32 control

functions

.

Although private use escape sequences do not have standardized

meanings, de facto conventions have evolved for some of the two character

private escape sequences. Implementations of these de facto conventions,

shown in table 3-8, exist on many popular terminals.

46
ESC 3/1 HTS

ESC 3/2 HTC

ESC 3/3 HN

ESC 3/4 HF

ESC 3/5 VTS

ESC 3/6 VTC

ESC 3/7 RLF

ESC 3/8 HLR

ESC 3/9 HLF

ESC 3/10 LCF

ESC 3/11 LCN

Table 3>

Horizontal Tab Set

Horizontal Tab Clear

Highlight oN (red ribbon)

Highlight oFf (black ribbon)

Vertical Tab Set

Vertical Tab Clear

Reverse Line Feed

Half Line Reverse feed

Half Line Forward feed

Local Copy oFf (full duplex)

Local Copy oN (half duplex)

. De facto conventions for two character

private escape sequences.

3.6.4 Summary of Code Extension Rules

Table 3-9 summarizes the rules for code extension in a 7-bit

code. The resulting code may be used in either a 7-bit or an 8-bit

environment. Code extension in an 8-bit code is summarized in table 3-10.

An 8-bit environment is required to support an 8-bit code.

3 . 7 Keyboards

There are a variety of keyboard standards, which have evolved

historically from wire telegraphy devices. They have played an important role in military communications and several standards are defined

in MIL-STD-1280. Similarly, in the civilian sector there has been

standardization activity by the American National Standards Institute

and the International Standards Organization.

3.7.1 Military Keyboards

Keyboards are classified according to the type of machine

application, and the kind of textual traffic for which an arrangement

is best suited. Type I arrangement refers to keyboards that produce an encoded electrical output for control of another device, such as another teletypewriter or a computer. Type II arrangements refer to

keyboards that directly control their associated devices, as for instance typewriters. Class 1 refers to arrangements best suited for

alphabet oriented traffic, such as inter-office correspondence. Class 2 refers to keyboards best suited for traffic with high content of numerics.

3.7.1.1 Keyboard Arrangement Notatidnal System - Figure 3-7

shows the standard military notational system, that permits designation

of key positions. Rows are labelled from the bottom up starting with A. Left hand key keys are designated AL, BL, etc. Similarly right hand

keys are labelled AR, BR, etc. A dividing line separates the left hand

and right hand sides of the keyboard, and keys are numbered from the

inside out, starting with 1, either in the left hand or right hand

directions.

47
CHARACTER SET DESIGNATE INVOKE REPRESENT

single additional

controls not required

ESC (Fp)

ESC (Fs)

ESC 2/3 (F)

CO controls ESC 2/1 (F) code positions

0/0 through 1/15

CI controls ESC 2/2 (F) ESC (Fe)

GO graphics ESC 2/8 (F)

ESC 2/12 (F) SI code positions

2/1 through 7/14

Gl graphics ESC 2/9 (F)

ESC 2/13 (F) SO code positions

2/1 through 7/14

multiple byte

graphics ESC 2/4 (F) SI multiples of code

positions 2/1 - 7/14

code dependent specially

interpreted codes ESC 2/5 (F)

Table 3-9. Code extension in a 7-bit code.

CHARACTER SET DESIGNATE INVOKE REPRESENT

single additional

controls not required

ESC (Fp)

ESC (Fs)

ESC 2/3 (F)

CO controls ESC 2/1 (F) code positions

0/0 through 1/15

CI controls ESC 2/2 (F)

code positions

8/0 through 9/15

GO graphics ESC 2/8 (F)

ESC 2/12 (F)

code positions

2/1 through 7/14

Gl graphics ESC 2/9 (F)

ESC 2/13 (F)

code positions

10/1 through 15/14

multiple byte

graphics ESC 2/4 (F) multiples of code

positions 2/1 - 7/14

specially

interoreted codes ESC 2/5 (F) —

code dependent

Table 3-10. Code extension in an 3-bit code.

48
I—

i 1

Zl

II

01

1

— 1

1

— 11

1

II

II

1

II

II

1

1

L_J

L.

1 I2J

1 1

1

1

1 1= 1 1

1 1

1 |2

1 I 1

r~i i

i

i

i

i

i

J

L_J 10

1 1 1

1

1 l«>

1 I

1

1

i i"

L_ _J r "ii»

i i

1

1

I I

I 1

I l»

I I

I 1

I I

11

1

1 —

1

l~

1 __l

1

—

1

1 1-

I 1

I I"

I I m.i i

i—

i

i i»

i i

i—

i

L___r

i

i—I*-

i i

i—

i

I la

I I

I 1

I l«>

I I r"io

i i

iQ

L3

13

i 1

i a

i i

i 1

i 1

I IO

I I

l<»

I I

I 1

I IS

I I

I 1

I 1=

1 I

I 1

I l=

I I r~"> i i

i—

i

i i»>

i i

i—

i

I IO

I I

I 1

I 1=

I I

,r ""|o

I I

I 1

I IS

I I

•

I

I

I

I

I

I

I

I

I

I

I

I

I

le

_l-IIf

_1

rj..rns VMJ

A

—iIV?

I

I

I

I 1

i i:

I i

E>

i i

i 1

i if

i i

i 1

I IO

I I

I

1

I \o>

I I

I I

•I 1_

I II 1

I If

I I r

ii_

l«

I

I 1

I I

I I r"!

i i

i—

i

* i

i i

i—

i

i i

ir

iL.

"1

Ivo ._! ~

I

|f

I

-_l

"Is

I

I2 =

s f 9^ ?

in* ys o—

>- J

xce o

(/) Q. O IA

111 13" "

I

Source: MIL - STD-1280

Figure 3-7. Keyboard Arrangement Rotational System

49
* <*

ig«g. r

EHaE3"

• v>\-

\ E3-

E3-

E3-

a

O-IUJ

Elcc

loo-*

a,

i—

i

|(D

I I

ig«fl i

E>4=

Eh

Eh

[Z>

SBUJ

Q

<

KOI

I 1

I I I''

\<S- V

E>

| WO

CO

>

</»-z u

UJKX X

u<z

MOM

_£_

O

CD

0» Q

O K

5 o. go s

JflO M

*

I- °- ofc > <0 H < "

»u £ >* K

Sbc ce o < u

§

Source: MIL - STD-1280

Figure 3-8. Type I, Class 1 Standard Keyboard Arrangement.

50
<r

111 o

CEU O 4

0> _ O

O)

_iIda

CJ>

CD .

4 a

bl

4*

85

m

< 5 * w

(0 (0

"~~ 9 0> a) 5 CM

i

1

'

•

cm

(M

N» If)

'

r>- .. v

. ... *

O — " "-

i bl » * to - -, bl

.. + X

I*- "V m

a. O-luJ . 1—

1

'"a T"

a.4

X ° «) o .. bi ®

- 1 o ^^

»- z

4

* - - X 3 -

- 1^

-

bl<

in

vt 2

Z

19

a. ...

"v n mo

z

o e

t_ bl 5 o.

1 i& U.) "

a. mt-x go 2

1 H- SUJ eg ~

3W >

t/»-Z

IO

is: s

1 U.

CM

to

»5 5

o

r <

Kin son

(M

IO

O

ut-x

!S w

4

X Q 52 *

i- &•

•- rS r-l UIZO *

»J4Z ' 4§K

bl

-1 >

CO

bit-to tM WOCD K) < s < 5

1 * 3

" O °w 2

UIU1U

10

u. (0 > 06 O

Q

10 xgc 06 w a.5 4

J2

a.

-J Jo

Id

-Jbl

o

-i -i -1m

Z

4

Source: MIL - STD-1280

Figure 3-9. Type I, Class 2 Standard Keyboard Arrangement.

51
I

<8°

< u.

<

in

Q.

V) III < m

2 5

2O

o- >

: ui

CO

(E O

< o

a: z

y£en v >

I a:

trt o. o

in

5 «o "J (ji * —

2 "

O x

03 o

< ,.

Ul —

o. >

Source: MIL - STLVL280

Figure 3-10. Type II, Class 1 Standard Keyboard Arrangement

52
OL

CL

BL

AL

54H Q32Q[30 I I I 2 34G ! B»i| p~| r~n ri~i|ETOp| rn rn rn

S D F G l

| H J J J J

| K I I L J

I 1 Hi i

B0000E] BSD

SPACE n

Source:

OR

CR

8R

AR

NOTE: Upper Case li May Be STOP or #

MTL-STD-188-C

Figure 3-11. Three Row Coinmurdcation Keyboard (Interim

Standard )

.

OL

CL

BL

AL

r~i

RPTI DR L_J

HEI0B00BBQ CAR

RET

"1

URS

SPACE

CR

BR

AR

Source: MIL-STD-188-C

Figure 3-12. Three Row Weather Keyboard (Interim Standard)

53
3.7.1.2 Keyboards for High Alphabet Content Text - Figure 3-8

shows the standard arrangement for the Type I, Class 1 arrangement.

The standard provides for several optional arrangements. Partial set

implementations are permitted, and certain characters may be implemented

in the shift and unshifted mode (like the comma and period )_ in key

positions BR3 and BR4. Further detail is provided in document MIL-STD

1280.

3.7.1.3 Keyboards for High Numeric Content Text - Figure 3-9

shows the standard arrangement for the Type I Class 2 arrangement.

Options allowed are similar to those in paragraph 3.7.1.2. Further detail is provided in document MIL-STD 1280.

3.7.1.4 Three Row Keyboards - Two keyboards have been designated

interim standards for communications purposes (Figures 3-11, 3-12).

Actuation of the FIGURES or LETTERS key causes subsequent characters to

represent upper or lower case symbols, as shown in the diagram. Figure

3-11 shows the standard communications keyboard, and figure 3-12 shows

the specialized keyboard for weather communications, providing alphanumeric capability and special weather symbols, such as wind direction

and cloud cover.

3.7.2 Commercial Keyboard Standards

Typewriter keyboard arrangements have been standardized in

ANSI X4. 7-1973, which is a revision of a 1966 standard. Assignment of

the ASCII characters and the ASCSOCR are made in ANSI X4. 14-19 71. The

US Standard X4.6 defines the ten key numeric keyboard used in adding

and calculating machines.

3.7.2.1 Keyboard Arrangements - Two major keyboard types are

defined by X4. 14-71 • Figure 3-13 shows the layout for logical bit

pairing. Figure 3-14 shows the arrangement for typewriter pairing keyboards. All keyboards provide lower case letters in the unshifted mode : and upper case letters in the shifted mode. Those keys not showing

alphabetic characters provide graphic characters as shown in upper and

lower graphics.

The keyboard shown in figure 3-13 observes logical bit pairing

rules, i.e., the code relationship between upper and lower shift characters consists in change of one bit 5 or bit 6 in the ASCII code table

only.

The keyboard shown in figure 3-14 resembles, as closely as possible t the electric typewriter keyboard as shown in Standard X4. 7-1966.

3.7.2.2 Control Keys - Actuation of the control key will cause

keys with control character assignments to generate the ASCII control

codes, regardless of the state of the SHIFT or SHIFT LOCK key.

54
u a u a <

| T 1 -

£«

o«* 0j^

i

- n QUfa

-•Sties'

•8 3 _ J

Source: ANSI XH. 14-1971

Figure 3-13. Logical Bit Pairing Keyboard Arrangement

55

I,,/
n ~i

l

^

Is ^-r

—„ u ^-^

n GPQ

^

rS U

.-n'Q-Q-ffi

-o «

I OS <

Source: ANSI X4. 14-19 71

Figure 3-14. Typewriter Pairing Keyboard Arrangement

56
© © ©

© © ©H

©©©M

3"+ I"

2+r 4-16 %

311" 4*16 ^V

Source: ANSI X4. 6-1966

Figure 3-15. Physical Arrangement of Numerical Keys

57
Table 3-11 shows the control code assignments for bit paired keyboards.

As an example, depression of the control key and of key C generate the

ETX character.

NUL @ SOH A

STX B ETX C

EOT D

ENQ E

ACK F

BEL G

BS H

HT I LE J

VT K

FF L

CR M

SO N

SI

Table 3-11.

DLE P

DC1 Q

DC2 R

DC3 S DC4 T

NAK U

SYN V

ETB W

CAN X

EM Y

SUB Z ESC [ FS \

GS : RS

^ US

Control code assignments.

3.7.2.3 Numeric Only Keyboard [USAS X4. 6-1966] - This standard

provides for a ten key numeric keyboard which is used on calculating

devices, and which often appears on consoles in conjunction with an

alphanumeric and control keyboard. The arrangement is shown in figure

3-15.

58
3 . 8 References

3-1 Bemer, R. W.

,

A View of the History of the ISO Character Code,

Honeywell Computer Journal,

Vol. 6 lb. 4 (1972), pp27H-286.

3-2 Bemer, R. W.

,

Letter to the Editor,

Datamation,

Vol. 19 No. 9 (1973), p25.

3-3 Fitzsijrons, T. F.

,

ASCII Extension and Expansion and their Impact on Data Communications.

Proceedings of the Second Symposium on Problems in the Optimization

of Data Communications Systems,

TFFT. Cat. No. 71 C 59-C (1971), pp73-79.

Standards

1. ANSI X3. 4-1968

American Standard Code for Information Interchange

American National Standards Institute

2. ANSI X3. 6-1965

Perforated Tape Code for Information Interchange

American National Standards Institute

3. ANSI X3. 15-1966

Bit Sequencing of the U.S.A. Standard Code for Information Interchange

in Serial-by-Bit Data Transmission

American National Standards Institute

4. ANSI X3. 16-1966

Character Structure and Character Parity Sense in Serial-by-Bit Data

Communication in the U.S.A. Standard Code for Information Interchange

American National Standards Institute

5. ANSI X3. 22-1967

Recorded Magnetic Tape for Information Interchange (800 CPI, NRZI)

American National Standards Institute

6. ANSI X3. 25-1968

Character Structure and Character Parity Sense for Parallel-by-Bit Data

Communication in the U.S.A. Standard Code for Information Interchange

American National Standards Institute

7. ANSI X3. 26-1969

Hollerith Punched Card Code

American National Standards Institute

59
8. ANSI X3. 32-1973

Graphic Representation of the Control Characters of American National

Standard Code for Information Interchange

9. ANSI X4. 6-1966

U.S.A. Standard, 10 Key Keyboard i for Adding and Calculating Machines United States of America Standards Institute

10. ANSI XU. 7-1973

American National Standard for Typewriter Keyboard Arrangement

American National Standards Institute, Inc.

11. ANSI X4. 14-19 71

American National Standard, Alphanumeric Keyboard Arrangements

Accommodating the Character Sets of ASCII and ASCSOCR

American National Standards Institute, Inc.

12. CCITT V.3

International alphabet number 5 for transmission of data and messages

CCITT - ITU

13. CCITT V.4

General structure of signals of the 7 unit code for data and message

transmission

CCITT - ITU

14. FIPS PUB 1

Code for Information Interchange

National Bureau of Standards

15. FIPS PUB 2 Perforated Tape Code for Information Interchange

National Bureau of Standards

16. FIPS PUB 3 Recorded Magnetic Tape for Information Interchange (800 CPI, NRZI)

National Bureau of Standards

17. FIPS PUB 14

Hollerith Punched Card Code

National Bureau of Standards

18. FIPS PUB 15

Subsets of the Standard Code for Information Interchange

National Bureau of Standards

19. FIPS PUB 16

Bit Sequencing of the Code for Information Interchange in Serial-by-Bit

Data Transmission

National Bureau of Standards

60
20. FIPS PUB 17

Character Structure and Character Parity Sense for Serial-by-Bit Data

Coinnunication in the Code for Information Interchange

National Bureau of Standards

21. FIPS PUB 18

Character Structure and Character Parity Sense for Parallel-by-Bit Data

Communication in the Code for Information Interchange

National Bureau of Standards

22. ISO 646-1973

7-bit Coded Character Set for Information Processing Interchange

International Organization for Standardization

23. ISO/R 962-1969 (under revision)

Implementation of the 7 -bit Coded Character Set on 9 -track 12.7mm

(1.2 in) Magnetic Tape

International Organization for Standardization

24. ISO/R 963-1969

Guide for the Definition of 4-bit Character Sets derived from the ISO

7-bit Coded Character Set for Information Processing Interchange

International Organization for Standardization

25. ISO/R 1113-1969

Representation of 6 and 7-bit Coded Character Sets on Punched Tape

International Organization for Standardization

26. ISO/R 1177-1970

Character Structure for Start/Stop and Synchronous Transmission

International Organization for Standardization

27. ISO/R 1679-1970

Representation of ISO 7-bit Coded Character Set on 12-row Punched Cards

International Organization for Standardization

28. ISO/R 2021-1971

Representation of ISO 8-bit Coded Character Set on 12-row Punched Cards

International Organization for Standardization

29. ISO 2022-1973

Code Extension Procedures for the ISO 7-bit Code

International Organization for Standardization

30. ISO DR2047

Graphical Representation for Control Characters of the ISO 7-bit Coded

Character Set

International Organization for Standardization

31. ISO DIS2375

Procedures for the Registration of Escape Sequences in Data Processing

International Organization for Standardization

61
32. MIL-STD-188 C

Military Standard, Military Communication System Technical Standards,

November 1969, Department of Defense, Washington, D. C. 20301

33. MIL-STD-18 8-100, Military Standard, Common Long Haul and Tactical

Communication System Technical Standards, November 1972, Department

of Defense, Washington, D. C. 20301

34. MIL-STD-1280

Keyboard Arrangements

January 1969

U. S. Army Electronics Command

Fort Monmouth, New Jersey 07703

62
4. LINK CONTROL PROCEDURES

This chapter describes existing, proposed ,• and de facto standards

relating to use of a link in a network for data communication. There are two distinct modes of link discipline, the character-oriented and the

bit-oriented. Three character oriented disciplines are described, ANSI

X3.28, IBI's Binary Synchronous Communication Procedure (BSC) (also used

by Honeywell) and the procedures used in the ARPANET. Only the former

will be described in .any detail as it is the national standard. The bitoriented procedures are new, and draft proposals are currently being

developed in ANSI and ISO.

The chapter begins with a description of link configurations in

general, and a brief tutorial on link control. Further discission of

this subject is available in the open literature (see [4-1] ; this reference has been used in the preparation of this report. ). Following that

is a discussion of each type of discipline, which includes the type of

link configurations supported, nature of link control, error detection,

and error recovery.

4.1 Links: Configuration and Control

This section describes the generic structure of a link and the

functional capabilities required for data communication. The contents of

this section represent a state-of-the-art summary.

4.1.1 Configuration

The term link (as used here) is an abstract one: it specifies

only the functional capability to transport data from one terminal to

another. A general model of a link must include the capability for both

bidirectional and unidirectional communications without restriction to a

specific control discipline. The discussion here will be brief. For a

more detailed treatment, see [4.1].

Consider two (of possibly more) terminals on a link. Each one can

potentially initiate traffic on the link and this traffic may be either

in response to traffic from another terminal or not (spontaneous traffic).

Thus in the most general case there are two types of traffic on the link

proceeding in each of two directions. The fact that traffic can move

in two directions requires that the link implement certain control functions to assure orderly transmission of data.

Thus our model must involve two components, one to separate the two

kinds of traffic (response and spontaneous') and one to assure bidirectionality. To achieve bidirectionality, the model utilizes two sublinks , one for each direction. A terminal on the link consists of a receiver

(R), a transmitter (T), a process responsible for generating messages

for transmission (S: source), and a process responsible for handling

received messages (D: destination). The model is depicted in figure 4-1.

63
s

*. N*

• ^ s

D

•> • >

T »

R

R i —

T

D S

Figure 4-1 . The Model Link

In operation, each sublink carries both spontaneous and response traffic

in a single direction. The receiver routes the former to D, the latter

to S. The transmitter collects the former from S and the latter from D

and sends them over its sublink. Note that specific instances of a link

may implement only a part of the general model (e.g., half-duplex links;

see below). Description of a link involves several attributes, its

directionality, its topology, and whether or not the link is switched.

These are dealt with now. The terms master and slave are used in the

context of control. The former designates a terminal

-which has control

of the link during a given transmission. The latter applies to the

remaining terminals when they are also involved in the transmission.

Generally, master and slave status is assigned on a temporary basis; it

may change from one transmission to the next. Unless otherwise specified,

it is the master who has responsibility for link control and error re- covery operations during the transmission.

One-way Only : A link of this class handles traffic in one direction

only. The direction (source to destination) is fixed once for all. In

particular, there must be exactly one terminal on the link which can

initiate transmission (and which will receive none). The remaining

terminals operate in receive mode only. In this class, master status

is permanently assigned, and slave status devolves on those other terminals involved in a given transmission.

Two-way : This class of link permits bidirectional traffic; within this

class are subclasses based on whether traffic in both directions can

occur at the same time ( simultaneous ) or not (alternate ) . This applies

both to the terminals on the link and the sublinks, in that, e.g. , the

(physical) link may support simultaneous traffic while a terminal on the

link may not (figure 4-2). Note that a two-way alternate link may be

implemented using a two-way simultaneous circuit.

64
;< t/r £

Figure 4-2. Two-way ALternate Terminal, Two-way Simultaneous

Sublink(s)

.

Alternative terminology for these classes is: simplex for one-way only;

full-duplex for two-way simultaneous; and half-duplex for two-way

alternate. Note, however that for keyboard-type terminals, full-duplex

may also mean "remote echo" of typed characters, while half-duplex may

mean "local echo", thus introducing an ambiguity into the subject.

The topology of a link specifies the terminals connected to it and

their interconnection. Currently, there are two broad classifications

of link topology, point-to-point and multipoint . A point-to-point link

is one containing exactly two terminals, while a multipoint link

generally contains more than two (see switched links, below). In the

latter case there is generally only one master at a time. However, there

may be multiple slaves active at a given time. Multipoint links are further classified according to the type of control exerted in the

link. In any such link there is a control station , designated once for

all, which has the responsibility for maintaining the integrity of the

link (similar to the master, but the designation is permanent). The

remaining terminals on the link are called tributaries . A multipoint

link is centralized if its control station must participate actively in

all transmissions, and is non-centralized otherwise.

Finally, a link is switched if a circuit switch is used to establish

connections between the terminals , and non-switched if the connections are permanent (dedicated)

.

Note that these classifications,

one-way only/two-way

point-to-point/multipoint

switched/non-switched

are independent in that any one of the eight possible classes may occur. For example, a link may be both switched and point-to-point.

65
4.1.2 Link Control

Use of a link to transmit data involves not only the transmission of data but the transmission of "control" information which is

used by the terminals on the link to correctly handle individual

"messages", synchronize operations, and detect and recover from errors.

Specifically, this control information should implement at least the

following functional requirements:

transmission initiation

transmission control

identification of sender and receiver

error checking

error recovery

transmission termination

The requirement for transmission initiation includes the capability

for one terminal to invite or require one or more others to participate

in a transmission and possibly to set up conventions to govern the transmission itself.

Terminal identification is a requirement in any multipoint link,

due to the multiplicity of terminals available. In addition, such a

feature is valuable when the link is switched so that the connection

made may be verified.

The error checking provided in the procedures discussed below is

limited to redundancy checking (horizontal, longitudinal, or cyclic);

however more sophisticated techniques are known (e.g., Hamming codes)

which allow at least some corrective capability. The price to be paid,

however, is usually a high overhead. As checking is limited, so error recovery is limited. The general approach in the systems discussed

below is to require retransmission of messages detected in error, leaving

unspecified other supplementary techniques.

Termination requirements generally include a function to turn off

the link (disconnect) and one to abort transmission. Depending on the

type of procedure in force, there may also be a requirement to reverse

direction after a transmission (exchange master and slave status).

Transmission control has two aspects, framing and control, as follows

.

Framing: The current state-of-the-art of data transmission requires

explicit "framing" of data to be transmitted into blocks (or messages)

of fixed maximum length. An information message may be shorter than one block or may require several blocks. In the first case, logically

independent data streams may be sent together as one message. There are

two reasons for requiring a maximum length for messages. First, terminals

generally have a finite supply of buffers. Second, the error

checking- mechanisms employed (beyond

66
parity) impose a constraint on the length of the block in order to

achieve an acceptably low undetected error rate. Generally, framing

consists of additional "framing" data which is transmitted with the

"information" data. This is used by a receiving terminal to mark the

beginning and end of the message, and may also provide additional information relating to the handling of the message.

Control: In addition, other information is passed on the link which is

used to control the overall activity of the link and to maintain its

integrity. Such information includes messages from one terminal to

another which may acknowledge the correct receipt of a previous message,

reject a previous message, request the receiving terminal to receive or

transmit a message, respond with its status, and so on.

Thus, link control involves sending along with data, control information which takes up bandwidth, and hence detracts from the efficiency

of the link. For a more detailed discussion of link efficiency, see

e.g. , [4-2]. There, the efficiency of certain links is computed, using a proposed standard measure of efficiency, the so-called TRIB (Transmission Fate of Information Bits, ANSI X3S35/80).

Terminology: Some special terminology occurs in the following discussion

of control procedures, which is explained here. Basic mode procedures

are a set of procedures standardized by ISO (R1745), and ECMA (ECMA 16)

using character-oriented disciplines based on the control characters

in ISO R646 (see Ch. 3). ANSI X3.28 defines similar, but incompatible

procedures, based on the control characters in X3.4 (Ch. 3). Conversational mode procedures are those which permit the sender and receiver

roles of a link to be interchanged without using the normal protocols

to exchange master and slave status. Code independent procedures are

those which permit the information data to have any form. Byte independent procedures are those which do not place a restriction on the

length of transmitted data to be a multiple of a given unit (e.g.

,

of an 8 bit byte). The term "transparent" is often applied to procedures

which are code or byte independent. Depending on the procedure, some bit

patterns may be interpreted as control information, so that these patterns should somehow be prohibited from occurring in the data itself.

For example, the basic mode procedures of X3.28 use certain "control

characters" for framing, so these cannot appear within data to be transmitted. On the other hand, the information field provided by ADCCP

(4.3.1) is inherently both code and byte independent, since control

information is positional, the occurrence of meaningful control bit

patterns (there is only one) is avoided in data by "bit stuffing".

To achieve the same result with character-oriented procedures would

require "character stuffing", as is done In' ANSI X3.28E, ISO R2111, or

ECMA 24. The name X3.28E will be used to refer to a proposed revision

to X3.28, namely ANSI X3S3. 4/437 (1973).

67
4.2 Character-oriented Procedures

This section describes the procedures which treat the bit stream

as a sequence of characters. Table 4-1 lists the standards for various

aspects of link control from the different standards organizations. IBM's

Binary Synchronous Communication procedures (used by Honeywell and others)

is a defacto standard. The "level 1" protocol of the ARPANET is included

for completeness, although it is not a standard at this time. (Not included are the packet switching procedures which are at a "higher level"

than the link control considered here). The standards on character

codes and related matters have been covered in Ch. 3.

ANSI FIPS ISO ECMA

BASIC

MODE X3.28 RI745 ECMA- 16 ECMA-37

CODE

INDEPENDENT

R2III ECMA-24

CONVERSATIONAL R 2629 ECMA- 29

ERROR

DETECTION

X3.28 R 1115

ERROR

RECOVERY

R 1745 ECMA- 26

ABORT/

INTERRUPT

ECMA-27

MULTIPLE

SELECT

ECMA-28

Table 4-1. Applicable Standards

4.2.1 ANSI X3. 28-1971

This standard utilizes the ten communication control characters (hereinafter, control characters) of the ASCII character set to

define link control and specify procedures for establishing, using, and

terminating a link connection. Seven classes of establishment/termination procedures and five classes of message transfer procedures are

specified-. Thus there are some 30 possible systems which are standardized by X3.28 *see table 4-3). In the same way, X3.28E standardizes over 80 systems. X3.28 has not become a Federal Information Processing Standard because of the above and since it does not treat two68
way simultaneous (conversational) or transparent mode transmission.

These capabilities were deemed necessary in the Federal environment.

However, X3.28E does provide these extended procedures.

A problem with X3.28 is that, rather than giving a coherent solution

to the problem of link control (even in the limited, M'basic" mode), the

standard is essentially a list of approved alternative solutions. They are individually ad-hoc, and are generally not consistent with one

another. For example, the use and meaning of certain control characters

may change from one category of procedure to another. A case in point

is the DEOT sequence (see table 4-2) which in some procedures means

"disconnect the link" and in others just terminates a particular transmission without breaking the connection (subcategory 2.3, below).

4. 2.1.1 Link Configuration Categories - In X3.28, link configuration is included in the definition of the procedures for establishing

and terrninating a connection on the link. As described in Sec. 5 of

X3.28, the following configurations are standard.

Subcategory

1.1 One-way only

2.1

2.2

2.3

2.4

2.5

2.6

Multipoint

(Centralized)

Two-way alternate Point-to-point

tt tt

Multipoint

(Centralized)

Multipoint

(Centralized,

Fast Select)

Multipoint

( Noncentralized

)

Non-switched

Switched

Switched

Nbn-switched

Non-switched

Subcategory 1.1: This subcategory provides for one-way only transmission

in a centralized, multipoint, non-switched link. Transmission is always

initiated by the master (always the control station) , with no replies

from the tributaries, which essentially have permanent slave status.

(Since the link is non-switched, procedures for establishing or verifying terminal identification are not specified).

Subcategory 2.1: This subcategory provides for two-way traffic alternating between two terminals in a (circuit-) switched network. The calling

station is master initially. Master and slave status may be interchanged on connand from the current master. An example of this is a computer

system linked to multiple Remote Job Entry (RJE) stations.

Subcategory 2.2: This subcategory provides for a link as in 2.1, but

with an identification procedure included, to assure proper connection

through the switched network.

Subcategory 2.3: This subcategory provides for two terminals on a non69
switched, two-way alternate, link, each of which may contend for master

status. An example is a dedicated link between two computers.

Subcategory 2.4: This subcategory provides for a non-switched, centralized multipoint, two-way alternate link. The control station may assume

the master role itself, or it may assign the master role to a tributary

thereby becoming the slave for the following transmission. In this subcategory the designated control station must participate (as master or

slave) in all transmissions.

Subcategory 2.5: This subcategory is essentially the same as 2.4, but

with a "fast select" procedure; see Establishment and Termination procedures below.

Subcategory 2.6: This subcategory is similar to subcategory 2.4 except

that the system is non-centralized. In particular, the current master

may transmit to other tributaries as slaves without going through the

control station. As in 2.4, the control station must monitor all transmissions.

4.2.1.2 Framing - Data communication under X3.28 consists of the

transmission of character streams from one terminal to another. The

primary purpose of the procedures described below is to facilitate the

sending of "information messages" (or messages, for short) which are

strings of characters, and must contain no control characters (table 4-2)

other than those described here. In particular, X3.28 prohibits the

so-called transparent mode of transmission in that any bit-pattern which

can be interpreted as a control character will be so treated. However,

the new X3.28E provides explicitly for transparent operation (Subcategory

Dl; this revision is not treated here in any detail, because of its

provisional status). The method used is essentially that used in IBM's

BSC and the ARPANET procedures (4.2.2 and 4.2.3 below).

Messages in X3.28 are otherwise unspecified as to content or length.

However, for purposes of efficiency or convenience, the implementor may,

depending on the procedure chosen, split a message into "blocks", each

one of which is transmitted separately, with reassembly at the receiving

terminal. A message or block may be further divided into two sections,

transmitted together, called the header and the text. No specification

of form or content for either section is provided in the standard. Again,

X3.28E provides additional capability in that blocking may be "message

independent", e.g. , more than one message or partial message may exist

in one block.

The message is "framed" by certain control characters as indicated

below and in figure 4-3. Every block begins with an SOH (if a header is

present) or an STX otherwise. If the message is multi-block, the blocks

other than the last are terminated by an ETB. The last block of a message

(including the one-block message) is terminated by an ETX.

70
|SOH <HEADING> STX <TEXT> ETX BCC

(a) One-block Message

SUH <H1AD1NG> STX <TEXT> ETB BCC

|SOK <HEADTNG> STX <TEXT> ETX BCC

(b) Multi-block Message

Figure 4-3. Message Formats

Note that the standard does not dictate the means by which blocks are correctly reassembled into a message. In general, decisions on blocking

are left to the implementor. The only constraint made by the standard

is that of the individual subcategories to support no blocking, message

associated, or message independent blocking (X3.28E).

4.2.1.3 Control Procedures - Table 4-2 lists the control characters

to be used for link control, as well as the character sequences extending

the basic set. There are several classes of messages, as dictated by

the control characters framing the message. The actual interpretation

of the characters is discussed with the procedures specific to each

category. The following discussion conforms more to the treatment in

ISO KL745 than that of X3.28, although the information content is that

of the latter. The treatment gives two discussions of procedures , one

verbal and one in terms of state graphs. The latter is the more rigorous.

Character

SOH

STX

ETX

EOT

ETB

ENQ

ACK

NAK

SYN

DLE

DEOT

ACKO

ACKL

Table 4-2.

Meaning

Start of heading

Start of text

End of text

End of transmission

End of block

Enquire (request for response)

Positive acknowledge

Negative acknowledge

Synchronous idle

Data link escape

Mandatory disconnect (DLE, EOT)

Alternate Acknowledge (DLE,0)

Alternate Acknowledge 1 (DLE,1)

ASCII Comrnunications control characters

71
The link supports three kinds of messages, forward and backward

supervisory, and information. The forward supervisory message is initiated by the master station; its main purpose is to transmit control

information rather than data. The backward supervisory message is

initiated by a slave in response to a transmission from a master station.

The information message carries otherwise unstructured data and is

initiated by the master station. In general, it is expected that between

any two (noncontiguous) blocks there will be (at least) two SYN characters transmitted to maintain synchronization of the two stations.

The control procedures in X3.28 are divided into two classes,

establishment and termination , and message transfer. These are briefly

given in matrix form in table 4-3. The "definition" of a data link

requires one procedure subcategory from each class, subject to the con- straints indicated in table 4-3.

To facilitate presentation of these procedures, figure 4-4 depicts

the general case of data transmission, broken down into _phases. (This

discussion is based on ISO R1745, and is represented only implicitly in

X3.28). Phases 1 and 5, not shown here, are circuit connect and disconnect respectively (applicable only to circuit-switched networks). They

are not governed by the standard although they appear in the state diagrams of the X3.28 document. Phase 2 is establishment, phase 3 is

message transfer, and phase 4 is termination. The discussion of establishment and termination procedures below is in terms of the link subcategories above.

Establishment and Termination Subcategories : Phases 2 and 4 of transmission, described by procedure subcategory, are concerned with selection,

polling, contention, line turn-around, and link disconnect. Note that

these subcategories are the same as those discussed previously, for the

purposes of the standard. In general, any message transfer subcategory

(used in phase 3) may be used with the subcategories described here.

The two exceptions are in 1.1, where only Al and A2 can be used; and

2.5, where Al or A2 must be used if multiple selection is used.

Subcategory 1.1: One-way only

centralized multipoint

non-switched

Phase 2 : Establishment is via selection. A prefix (short sequence

of characters; format and content are to be agreed upon for implementation;

outside the scope of the standard), to address one or more tributary

terminals, is sent, followed by ENQ, No other control characters sent.

Phase 4 : Termination occurs when the master sends EOT, which releases the slave terminals for the next transmission.

72
Message

\Transfer

Establish\ a \ Terminate \. Al A2 A3 Bl B2

I.I y/ ^ NA NA NA

2.1 / • v^ v' y/

2.2 / •/ • • J

2.3 • S >/ ^ s/

2.4 >/ / y v^ S

2.5 / /

* NA

#

NA * NA

2.6 V ^ • / •

v : Applicable

NA :Not Applicable

NA :Not Applicable

in Certain Cases

Table 4-3 . Control procedure matrix

73
Figure 4-4. Phases of Transmission

74
Subcategory 2.1: Two-way alternate

point-to-point

switched

Phase 2 : This subcategory involves no establishment procedure.

The master terminal enters phase 3 or H directly.

Phase 4 : The master may issue either an EOT to terminate transmission and exchange status with the slave; or a DEOT in which case both master and slave execute a local disconnect.

Note: The master may issue a DEOT at any time to abort transmission.

Subcategory 2.2: Two-way alternate

point-to-point

switched

This sijbcategory is the same as 2.1, with the addition of an optional identification procedure to assure proper connection in the switched

network.

Phase 2 : A prefix for identification is issued by the master, followed by ENQ. The receiving (slave) station responds affirmatively

by means of ACK or ACKO (see B2) if ready to receive. Otherwise , it

responds negatively with a NAK. In the first case, the master enters

phase 3; in the second, it enters phase 4. Phase 4 : The master may issue a DEOT for mandatory disconnect, or it may terminate transmission and exchange status with the slave by

issuing an EOT.

Subcategory 2.3: Two-way alternate

point-to-point non-switched

This subcategory is similar to 2.1, but since the connection between

the terminals is dedicated, a contention scheme is provided to gain

master status.

Phase 2 : Each of the two terminals on the link may contend for

master status by issuing a single ENQ with no prefix. The problem of

lockout is not treated in the standard, but is discussed in B2.3 of the

Appendix B. Once a terminal has received an ENQ, it responds either

affirmatively (ready to receive) and takes the slave status by sending

an ACK or ACKO ( see B2 )

, or it responds negatively by sending a NAK. In either case, an optional prefix is allowed. In the first case, the

successful bidding terminal assumes master status and enters phase 3. In the second case, it rebids with an ENQ.

Phase 4 : The issuing of an EOT or DEOT by the master has the effect

of resetting the status of the link to that prior to phase 2. DEOT is

included to facilitate the use of terminal equipment and is otherwise

equivalent to EOT.

Subcategory 2.4: Two-way alternate

centralized multipoint

non-switched

75
Phase 2 : The control station is initially designated master. It may either poll or select by using an appropriate prefix followed by ENQ.

In response to polling, a tributary merely assumes master status without

responding if.it is ready to send; it issues an EOT if not ready to

send. In response to selection, the tributary issues an ACK or ACKD

(see B2) if ready to' receive; otherwise, it issues a NAK. With an affirmative response for both polling and selection, the master enters phase 3. If the response is negative, the master must issue an EOT if polling and

must reenter phase 2; if selecting, it may enter phase 4 or reenter phase

2 to reselect the same tributary.

Phase 4 : To terminate transmission, the current master issues an

EOT. This resets the link to its status prior to phase 2 and the control

station "regains control".

Subcategory 2.5: Two-way alternate

centralized multipoint

non-switched

This subcategory duplicates 2.4, and adds a "fast select" option.

Fhase 2 : The selection prefix may be sent by the master with an

immediate entry into phase 3 without issuing an ENQ or waiting for a

response

Phase 4 : As in 2.4.

Subcategory 2.6: Two-way alternate

noncentralized multipoint

non-switched

Phase 2 : The control station is initially master. It may poll or

select by sending the appropriate prefix followed by ENQ. No response

occurs if the polled tributary is ready to send. The polled tributary

assumes master status and enters phase 2 to select a tributary. In the

contrary case it enters phase 4. If a selected tributary is ready to

receive, it sends an ACK or ACKO (see B2), at which point the current

master enters phase 3. If not, it issues a NAK, at which point the

master either reenters phase 2 to reselect the same tributary or enters

phase 4. Phase 4 : The issuance of an EOT by the current master terminates

transmission and resets the link to its status prior to entering phase 2.

Message Transfer Subcategories : These procedures cover the transmission

of information messages U-.e., phase 3 transmissions) as described under

framing (4.2.1.2) and the valid responses to them.

Subcategory Al: Message oriented, no blocking

no replies no error checking

This subcategory covers the transmission of unblocked messages without replies from the receiving stations and with no (required) error

checking. The master station may initiate phase 3 transmission with an

76
SOH or STX depending on whether there is or is no heading, and the message is terminated by the corresponding ETX. The master may repeat this

process until all messages have been sent. At this point, the master

should enter phase 4 of the appropriate subcategory.

Subcategory A2: Message oriented, no blocking

no replies

error checking

This subcategory duplicates subcategory Al but with an error checking

requirement in the form of a Block Check Character (BCC, see Error Detection, 4.2.1.4, below) to be sent immediately following each ETX

transmitted.

Subcategory A3: Message oriented, no blocking

replies

no error checking

This subcategory covers systems where the master station sends one or more messages to a single slave. A reply is required from the slave

following each message. If the reply is affirmative, another message

may be sent (to the same slave); if negative, immediate retransmission

is not required.

The master initiates a message with either an SOH or STX and terminates with an ETX. No BCC is transmitted. The slave, on receiving the

ETX, must reply with an ACK or NAK following an optional prefix. If an

invalid reply or no reply occurs, the master may retry a specified

number of times. Note that detecting a "no reply" condition implies the use of a timer, which is not covered by the standard.

Subcategory EL: Message oriented blocking

single acknowledgement

error checking

This subcategory allows messages to be subdivided into blocks which

are transmitted separately. Blocks are (apparently) transmitted in

sequence, and all blocks comprising a message must be sent before a block

from another message may be sent. After sending a block, the master

must await reply before sending the next block. If the reply is negative,

the previous block must be retransmitted immediately (i.e., before any

other block).

The master begins each transmission block with either an SOH or STX. The transmission is terminated by either an ETX or ETB, followed immediately by a BCC. The ETB is to be used if the block does not terminate

the message. If the block terminates the message, or the message consists

of only one block, the ETX is used. Upon receipt of the ETX and BCC,

the slave must reply, either with an ACK or NAK, with an optional prefix.

When the master receives an ACK, it may transmit another block or it

may enter phase 4. The latter can occur only if the previous block was

terminated by (ETX) (BCC). If the master detects a NAK, the previous

77
block must be retransmitted. A sequence of retries may occur before error recovery is required. The number of retries is by agreement. If the

master detects an invalid reply or no reply (by use of a timer), the

reply-request sequence must be sent. This consists of an optional prefix,

followed by ENQ. The slave is required to repeat its last reply when

this sequence is received, and a sequence of retries is allowed before

the master initiates error recovery.

The standard suggests a numbering scheme to eliminate the problem

of lost or duplicated blocks, but does not require one. Blocks may be

lost or duplicated in the process of retransmission or error recovery;

without a numbering scheme this situation is difficult to detect.

Subcategory B2: Message oriented blocking

alternating acknowledgements

error checking

This subcategory duplicates Bl, except that the single acknowledgement (ACK) is replaced by alternating acknowledgements ACKO and ACKL.

These are used for replies by the slave as follows. ACKL replies to

the first block received, ACKO replies to the second, and thereafter

the two are used alternately. The need for a negative acknowledgement

(using NAK) does not affect the sequence of ACK' s. Thus, the sequence

ACKL, ACKO, NAK, ACKL,... is valid while ACKL, ACKO, NAK, ACKO,... is not. The master responds to an ACfri out of sequence as if a NAK had been

sent, i.e., by retransmitting the last block.

4.2.1.4 Error Detection - In some procedures (A2,B1,B2) X3.28

provides for error detection beyond character parity (see Ch. 3) by

means of longitudinal redundancy checking (LRC: exclusive OR of each

bit position) to provide a block-check character (BCC). This character

is transmitted immediately following the ETB or ETX of an information

message. As indicated in fig. 4-3, the characters following the first

SOH or STX (including STX if SOH is used) and including the ETB or ETX, are included in the computation of BCC. Any internal SYN's are excluded.

X3.28E provides for more sophisticated error checking in the form

of cyclic redundancy checking (CRC; see 4.2.2.4, Error Detection) for

the subcategory providing transparent operation. Either the CCITT V41

polynomial or IBM's CRC-16 polynomial may be used in computing the CRC.

4.2.1.5 Error Recovery - No provision is made for error recovery - beyond an implementation-dependent retry count. This subject is treated

in more detail in X3.28E where various timers are prescribed.

4.2.1.6 Related Standards - Two other standards groups have

standards relating to the ANSI link control procedures, ISO and ECMA.

As noted earlier, they are similar to, but incompatible with, X3.28.

As far as the Basic Mode procedures are concerned, there is little or

no conceptual difference between the three (see table 4-1). However,

both ISO and ECMA have gone beyond ANSI in extending the Basic Mode

78
to include conversational and transparent mode procedures and in providing additional error detection and recovery capabilities. Again, once it is adopted, X3. 2 8E will provide these additional features.

Table 4—1 lists the relevant standards.

4.2.2 IBM Binary Synchronous Communications Protocol

This protocol (hereinafter referred to as BSC) is similar

in concept to ANSI X3. 28-1971. It was developed by IBM prior to the

adoption of X3.28 and has become a de facto standard in the industry.

For complete details on BSC, see [4-5]. X3.28 was developed around

BSC, and by and large corresponds to the latter. However, there are a few points of difference between them. For example, in BSC any

point-to-point link functions by contention, while in X3.28, a pointto-point link on a switched network assumes that the calling station is

initially master (subcategory 2.1 in 4.2.1.1). On the other hand, BSC

supports transparent mode operation and implements (mandatorily) several

control functions not present in X3.28, e.g., ITB and RVI (see table

4-4). BSC supports transmission in three different code sets, EBCDID,

ASCII, and IBM's Six-bit Transcode.

4.2.2.1 Link Configurations - BSC defines only two configurations.

One is multipoint and essentially duplicates the link configuration of

X3.28 subcategory 2.4-. As there, the link is centralized, with the

central control station participating in all transmissions on the link:

every message or response sent on the link is routed through the control

station. The link is two-way alternate.

The other configuration is point-to-point, and has no exact duplicate in X3.28. The link may be switched or non-switched, the distinction

not being made by the protocols. In either case, the link functions by

contention: either of the two stations on the link may bid for master

status by sending the appropriate control sequence. (Cf. X3.28 categories 2.2 and 2.3 in 4.2.1.1).

4.2.2.2 Framing - As in X3.28, the basic unit of transmission is

the message. The format for messages is essentially the same here,

and the control characters are similar in name, but are implemented

differently. The only difference at a conceptual level is that of an

"intermediate block". In BSC, a block, bracketed by SOH or STX and ETB or ETX, can be divided internally into intermediate blocks, each but the

last being terminated by ITB (see table 4-4). The effect of this character is to force computation of the block check character, which follows

ITB immediately, and to restart block check. The entire block is re- sponded to normally, except that an error in one intermediate block puts

the whole block in error (see 4.2.2.4).

79
Character Meaning

V SYN Synchronous Idle

SOH Start of Header

STX Start of Text

ETB End of Transmission Block

ETX End of Text

EOT End of Transmission

ENQ Enquiry

ACKO Affirmative Acknowledgement

ACKL Affirmative Acknowledgement 1

NAK Negative Acknowledgement

DLE Data Link Escape

ITB Intermediate Transmission Block

WACK Affirmative Acknowledgement, Wait

RVI Reverse Interrupt

TTD Temporary Text Delay

Table 4-4. BSC communications control characters

from the EBCDIC character set.

4.2.2.3 Control Procedures - As with X3.28, the control procedures

are allied with link configurations. In each case below, message transfer consists of sending the message, framed as indicated above and re- turning to a neutral state on the link.

For point-to-point links, contention is used to gain control. Each

station bids for control with the "message" ENQ. Deadlock is avoided

by assigning a priority to the two stations, with the higher priority

gaining control in case of conflict. When one station bids successfully,

the other acknowledges positively (with ACKO, if ready, or with WACK,

if not ready temporarily) or negatively (with NAK) , according to its

current status. Message transfer begins once the ACKO is received. At

the end of the transmission, the link returns to neutral state and re- bidding may occur.

Multipoint link operation is similar to that in category 2.4 of

X3.28. The control station is initially master, and initiates operation

by polling or selection. A polled tributary responds with a message

(to the control station, now in slave mode) if it is ready to transmit.

If temporarily not ready, it responds with a TTD, and if not ready, with

an EOT (not a NAK). A selected station responds as a point-to-point

operation, i.e., with an ACK, WACK or NAK, according to its status. At

the end of message transmission, the link returns to neutral, with the

control station regaining master status, to initiate another polling or selection sequence.

BSC also supports a limited version of "conversational" mode operation, and transparent mode operation. The former permits line turnaround by transmitting a message in place of a positive acknowledgement

to a block ending with ETX (or DLE, ETX). Transparent mode operation

80
proceeds by prefixing each meaningful control character within the text

of a message with a DLE, and "doubling" DLE's. These features, not

present in X3.28 are being implemented in X3.28E.

4.2.2.4 Error Detection - BSC provides a variety of error checking

depending on the character set being used (EBCDIC, ASCII, or Six-bit

code), and whether the link is capable of operating in transparent mode.

A 12-bit Cyclic Redundancy Check (CRC) is used with the Six-bit code

in any case. For ASCII, a 16-bit CRC, Longitudinal Redundancy Check

(LRC) , and Character Parity are available. CRC is used here only when

transparent mode is available. Parity is used when not in transparent

mode, and LRC when transparent mode is not implemented. For EBCDIC,

only the 16-bit CRC is used. In any case, the CRC or LRC is sent as a Block Check Character (sequence) following the appropriate ETX, ETB, or ITB.

In addition, BSC incorporates a set of timers to assure continuity

of operation. There is one for transmission which allows the insertion

of SYN characters at regular intervals, one to assure that a tributary

does not remain in control mode too long without transmitting, one to

disconnect (used in a switched link, to prohibit long intervals of

inactivity) , and one to control waiting following receipt of a WACK or

ITU. Again, most of these features are present in X3.28E.

4.2.2.5 Error Recovery - No recovery procedures are mentioned in

the manual.

4.2.3 ARPANET Link Control

Link control procedures in the ARPANET [4-7] are not yet

standardized. ANSI has recently convened a subcommittee (X3S37) with

an ambitious program to study techniques for link control in computer

networks, but no substantive work is currently available. In the

ARPANET, messages are passed between ffosts via MPs and between neighboring MPs for network control. These messages are nominally streams

of characters (8-bit bytes) in the ASCII format) but the use and meaning

of the control characters differs from that in X3.28. Full details of

the control procedures and message formats are available elsewhere (see

[4-3], [4-7] ), and are only briefly summarized here.

4.2.3.1 Link Configuration - There is essentially one configuration

,

as described in 4.1, in the ARPANET, namely a two-way, simultaneous,

non-switched, point-to-point link.

4.2.3.2 Framing - All traffic on a link is framed the same way, as depicted in figure 4-5. As indicated, two SYN characters are the minimum inter-message interval. The message is enclosed by a DLE, STX

and DLE, ETX pair, and its contents are "transparent", in that any bit

pattern is permissible. DLE characters in the text are "doubled" by the

transmitting hardware and one DLE character is again removed by the re- ceiving hardware.

81
1 SYN j SYN | DLE | STX | TEXT | DLE | ETX 1 BCC | BCC [ BCC [ SYN 1 SYN

Figure 4-5. Link Level Message Format

4.2.3.3 Control Procedures - There are three distinct interfaces

in the ARPANET which require their own set of procedures. Other, higher

level interfaces (such as process to process) are not discussed here.

All procedures are based on a "header" which prefixes the message to be

transmitted. Since these headers are of fixed length and precede their

accompanying text, no termination characters are used. The logical

nature of the various "interfaces" in the ARPANET are discussed next.

The discussions briefly indicate the characteristics of the message

level interfaces as opposed to the electrical ones.

IMP-Host Interface: A message on this link has a header prefixed

to it, called a "leader". The leader is 32 bits long and contains

information pertaining t© the current message, acknowledgments to previous messages and other control information. A message on this link can be from 32 to 8095 bits long.

IMP- IMP Interface: To transmit a message from one Host to another,

the source IMP breaks the message into "packets" of up to 1008 bits and

prefixes these with 80 bits of "packet header". This header gives control information pertaining to the current message, acknowledgments

(to previous packets), requests for status, allocation, etc. Using an

equivalent of a multiple numbering scheme, the MPs implement several

"logical channels" to each neighboring IMP. Only one of these is

used for routing and network control messages; the rest are used for

the packets of messages between hosts.

Very-Distant-Host Interface: This interface connects the IMP to a HOST at a distance too great to permit operation of the normal IMPHost interface. It operates through modems using packets as in the

IMP-IMP interface, and the leader from the HOST-IMP interface. Each

packet is up to 63 16-bit words long, and is preceded by a 16 bit control word. The first packet must contain only the 32-bit leader expected

in normal IMP-Host communications. Thus a Very-Distant-Host must be

aware of packets and provide for their reassembly. In the normal JMPHost interface, the IMP does the reassembly. The normal bit-count

considerations prevail in addition to these.

4.2.3.4 Error Detection - All messages in the ARPANET are suffixed

with a 24-bit Cyclic-Redundancy Check (CRC), which encompasses all

bytes in the message from the DLE STX to DLE ETX inclusive. The CRC is

transmitted following the latter. In addition, Odd/Even bits are pro82
vided in the headers of packets to permit detection of duplicate packets

(blocks).

4.2.3.5 Error Recovery - No procedures are specified for error recovery other than retransmission. Use of the 24-bit CRC and a "reliable transmission package" (for the VDH) is purported to make undetected errors rather unlikely.

4 . 3 Bit-Oriented Procedures

The American National Standards Institute is currently developing a proposed standard (X3S3. 4/475, Feb. 15, 1973) called Advanced Data

Communication Control Procedures (ADCCP) which approaches the same problem as X3. 28-1970, but from a different point of view. In ADCCP, all

transmissions have a common format, called a frame , in contradistinction

to X3. 28-1970, where different types of "messages" have different

forms (e.g., selection vs. text transfer). The control characters are

replaced by a subfield of the ADCCP frame which contains commands or

responses to commands. Stations are identified by another subfield of

the frame.

A similar proposal (ISO/TC 97. SC 6, #794, High Level Data Link

Control, or HDLC) is being developed by ISO. Both are related to IBM's

Synchronous Data Link Control (SDLC), which recently has been announced

for use in some industry-specific communications systems (banking and

point-of-sale)

.

The description of ADCCP begins with a description of the link

configurations supported (4.3.1). Then the framing and structure of a

transmission is described (4.3.2), followed by -a state-variable description of the terminals on a link (4.3.3). The commands and responses

used are defined (4.3.4) with an indication of their effect on the

terminals on the link. Error detection and recovery (4.3.5,6) are

discussed next, and finally, a discussion of related developments is

presented (4^3.7).

4.3.1 Link Configurations.

ADCCP supports two general configurations, depicted in

figures 4-6 and 4-7 (see 4.1). These are termed Primary/Primary and

Primary/Secondary, respectively, and correspond to the point-to-point

and multipoint links as' described in 4.1. In ADCCP (as in HDLC and

SDLC), a terminal (or station) is permanently designated as being

either Primary or Secondary. The terminology of 4.1 does not correspond

to these terms in that the Primary station is the control station of

the link and has permanent master status. Similarly, the Secondary is a tributary and is in permanent slave status.

The Primary station has the responsibility for link initialization,

control and organization of data flow, and control of error recovery

procedures at the link level, including retransmission. The Secondary

has the responsibility to act only on the commands from the Primary,

83
as described below (4.3.4).

PRIMARY s v\ /

SECONDARY D

T

R

*

• R s ' s * v

f

T

N

SECONDARE D

NPRIMARY S

Figure 4-6. Primary/Primary Link

s N s

D

s

> T R

R T

Figure 4-7. Primary/ Secondary Link

The Primary/Primary link (figure 4-6), referred to as a balanced

point-to-point link, consists in reality of two sublinks, each station

comprising both a primary and a secondary component. In terms of 4.1,

it may be described as two-way simultaneous, point-to-point, and may

be either switched or non-switched.

The Primary/ Secondary link (figure 4-7) consists of one primary

station and one or more secondary stations. It may be characterized

as two-way simultaneous or alternate, multipoint, and may be either

switched or non-switched.

For an ADCCP link operating on a switched network, the called

station, by convention, initiates transmission. If necessary, this may

be done by a Secondary by sending an (unsolicited) status response

(see 4.3.3).

84
Note that all links in X3.28 and X3.28E can be accommodated, and

the bewildering array of configurations (especially in X3.28E) have

been replaced by just the two in ADCCP. The variety of message formats

of X3.28 and X3.28E has been replaced by one (see framing, below) which

presumably simplifies the link at both ends. Finally, the internal

structure of a terminal has been extensively specified, thereby easing

the burden of the implementor and hopefully minimizing the problems

associated with modifying or extending the communications system.

4.3.2 Framing

The unit of transmission in ADCCP is a frame, and all transmissions on the link utilize this format. The structure of a frame is

shown in figure 4-8.

ADDRESS CONTROL INFORMATION FRAME CHECK

FLAG FLAG

FIELD FIELD FIELD SEQUENCE

Figure 4-8. ADCCP Frame

The fields are as follows.

Flag : An 8-bit sequence, 01111110, which begins and ends a frame.

All terminals hunt for the flag in idle state, since this field is

used for frame synchronization.

Address Field : An 8-bit sequence identifies a secondary terminal on the link. It may be extended (recursively) to provide for multiple

fields. The structure is :

7-bit Address

CExtended: 0=No

l=Yes

Control Field : An 8-bit field, extendable to allow for larger

sequence numbers (see 4.3.3 below). The control field contains the

sequence number (if used) and the command (Primary to Secondary) or

response (Secondary to Primary) (see 4.3.4). Note that the bit pattern

for a command may be the same as that for a response, so that a knowledge

of direction is necessary to interpret a frame. The control field is

formatted as follows. The first format applies to the "single octet"

numbered command/response; the second, to the "double octet" numbered

command/response (using the extended sequence number); and the third

85
to the unnumbered command/response.

8-bit Command/Response

a)

4-bit 4-bit Numbered

Sequence No. Command/Response i 1001

b) |l 1

8-bit

Sequence No. 4-bit numbered

Command/Response

c)

1111

4-bit unnumbered

Command/Response

Information Field : A field of length or more bits. The maximum

length is unspecified, as is its structure. In particular, it is com- pletely transparent (i.e., code and byte independent), since addressing

and commands are positional.

To achieve the transparency mentioned above, a process of bit-stuffing is used to assure that the flag sequence (01111110) does not appear

within a frame. This is because a terminal must always check for the

flag, either to terminate a frame or to maintain synchronization with

other stations. A transmitting station must insert a following five

consecutive l's, and a receiving station must remove it. (The receiving

station examines the bit following five consecutive ones; if it is a zero

it removes it)

Frame Check Sequence : A 16-bit Cyclic Redundancy Check (CRC)

based on the CCITT (V41) polynomial

X

16

+ X

12

+ X

5 + 1

This field is computed on the basis of the contents of the address,

control, and information fields.

Time-fill between frames is achieved by sending continuous flags or abort sequences (see 4.3.5 below). No provision is made for time-fill

86
during frame transmission.

Address and Control fields are sent low-order bit first, the Frame

Check Sequence is sent high-order bit first. Bit- sequencing for the

Information field is application-dependent, and is unspecified.

A frame is considered invalid if it is not properly bounded between

flags or if it is shorter than the minimum length of 32 bits (exclusive

of flags). This allows for an address, control, and frame check se- quence with a zero-length information field. Any invalid frame is

merely ignored by the receiving station.

4.3.3 State-Variable Description of Terminals

Secondary terminals in an ADCCP link are described by a set

of so-called state-variables and parameters which are either integer or boolean valued. Primary terminals have no explicit structure according to the (proposed) standard, but by implication, must have a set of

counters and buffers for each secondary on the link. Table 4-5 lists

these variables briefly. Each Primary-Secondary unit utilizes a single

numbering scheme to coordinate transmission. Each information-containing

frame and some others transmitted by the primary is assigned a "sequence

number", N, in the range

0<N<MOD

where MOD is a predefined modulus (in X3S3.4.475, the value is MOD = 16,

in the unextended control field). The value of N which follows N = 15

is then N = 0. Note that all values stated below, e.g. N-M, are to be

taken modulo MOD.

Variable Meaning

M Maximum number of unacknowledged responses

that may be stored in Secondary

R Next expected sequence number

Y Lowest numbered deferred response in Secondary

Z Lowest numbered unacknowledged response in

Secondary

E Exception state indicator

Table M— 5. Secondary state-variables and parameters

Parameter : M The parameter, M, defines, for a given secondary,

the amount of buFfer space available within it for storing unactioned

responses (either ones that have been transmitted and not acknowledged, or ones that have been deferred and not requested, or both). Note that

this places a burden on the Primary in that this value determines ' the

number of outstanding sequentially numbered commands it may have. For

this reason such a command, numbered N, automatically acknowledges a

87
response from the Secondary numbered N-M, and thus frees a buffer in the

Secondary. The nominal value of M is in the range

0<M<MOD

but for efficient operation the value should satisfy

M>lcop storage factor

the latter being a function of the entire link. Note that this value may

vary from Secondary to Secondary on a given link, and that the Primary(s) on the link must know the values for each Secondary.

State-Variable : R This variable gives the sequence number of the

next sequentially numbered command expected by the Secondary. Thus, it

is incremented by one on receipt of an error-free frame containing such a command. The range of its value is

0<R<MOD .

State-Variable : Y This variable gives the sequence number of the

lowest numbered deferred response queued within the Secondary. The range

of values is

0<Y<MOD

and additionally, must satisfy

Z<Y<M0D

with Y=R if and only if no deferred responses are presently queued.

State-Variable ; Z This variable gives the sequence number of the

lowest-numbered unacknowledged affirmative response. Its range of values

is

R-M<Z<Y

with Y=Z if and only if all responses have been acknowledged.

State-Variable : E This variable is a binary variable which signals

the presence of an "Exception State" within the Secondary. The handling

of this variable is treated further below in the section on commands

and responses. When E=l (Exception State) there are five possible error

conditions described by ADCCP. They are

Frame Check Sequence error

(Short-term Link Level Exception)

Sequence Number error

(Short-term Link Level Exception)

Unspecified temporary error

(Short-term Higher Level Exception)

88
Format error

(Long-term Link Level Exception)

Unspecified long-term error

(Long-term Higher Level Exception)

4.3.4 Control Procedures

In this section, we briefly describe the individual Primary

commands and Secondary responses and indicate their action in terms of

the state-variables of the Secondaries. No actual procedures are defined

by ADCCP, the presumption being that this is the province of the system

designer.

Table 4-6 lists the commands and responses. A single numbering

scheme is used to coordinate messages and responses and maintain frame

synchronization. A recent proposal by IBM, utilized in SDLC, specifies a "dual" numbering scheme, whereby the Primary and Secondary each

maintain (dual) send and receive sequence counters. See 4.3.7.2, below.

According to the proposed standard, certain frames are numbered sequentially, using modular arithmetic to increment the counter (see 4.3.2).

Other commands and responses are keyed to this sequence.

There are two classes of commands and two of responses. For both

cases the distinction is whether or not the sequence numbers are used

(see table 4-6). If so, the sequence number of the command or response

must be related to the current value of R in a specified way.

Numbered Commands : There are two types of numbered commands, those

which use the next available sequence number, and those which use a

previous number (which must therefore be in the range

R-M<N<R

modulo MOD).

Commands of the first type are used for transmission of "new" frames.

These commands are Sx and Xx. The Sx (SELECT) selects the addressed

Secondary and requests that it accept the accompanying information field.

The Xx (EXCHANGE) sends a (possibly null) information field in the frame

and requests a response from the Secondary containing an information

field, if possible. Note that the EXCHANGE command used with a null information field, is equivalent to a "poll" command (present, e.g., in HDLC).

Each command has an "immediate" version (X = R) which requires a response, as soon as possible and a "deferred" version (X = D) which instructs

the Secondary to queue its response until requested by the Primary. In the case of errors, an appropriate negative response is sent or queued

and if command was a "deferred" one, the Secondary additionally sets its

Exception State variable (E).

The other numbered commands use the sequence number, N, to refer to

previous frames. The commands are ER, PA, and DR. The ER command

89
Command/Response Meaning

Sequentially Numbered Commands

SR Select

SD ] delayed Select

XR Exchange

XD Delayed Exchange

Other Numbered Commands

ER Enquiry

PA Primary acknowledge

DR Transmit deferred responses

Unnumbered Commands

DC Disconnect

SS Request status, basic

RS Reset

Numbered Responses

AC Accept

AW Accept, Wait

AE Accept enquiry

NF Not accept 5 frame check

error

NS Not accept

,

sequence number

error

NL Not accept

,

improper format

NT Not accept

,

temporary high

level exception

NH Not accept, long term high

level exception

Unnumbered Responses

NN Not Ready, Send or Receive

TN Ready Send, Not Ready Receive

NR Not Ready Send, Ready Receive

TR Ready, Send or Receive

Source: ANSI X353. 4/475 (Seventh Draft) 12/73

Table 4-6. ADCCP Commands and Responses

90
acknowledges response frames previously transmitted, numbered. up to N

and requests retransmission of those with larger numbers, if any. The

PA command implements a subset of the actions implied by ER. The DR

command requests transmission of those deferred responses queued by

the Secondary as a result of SD or XD commands.

Unnumbered Commands : These commands (SS, DC, RS) are used to request

the status of the addressed Secondary, disconnect the link, or reset the

Secondary to its initial state.

Numbered Responses : These responses are used by the Secondary to

acknowledge frames transmitted by the Primary, either positively or

negatively. There are a sufficient number of each type of acknowledgement to inform the Primary of the secondary status.

Unnumbered Responses : These responses are used by the Secondary

to inform the Primary of its status in response to a SS.

Implementation : In implementing an ADCCP link, the configuration

must be one of the two specified in 4.3.1 utilizing the format in 4.3.2,

and a subset of the above commands and responses. The proposed standard

defines a number of classes of procedures by means of the configuration

and command/response subset utilized. These classes are summarized in

table 4-7.

Primary/ Secondary Link

Deferred Responses, Send and Receive

Non-deferred Responses, Send and Receive

Deferred Responses, Receive only

Deferred Responses, Send only

Non-deferred Responses, Receive only

Non-deferred Responses, Send only

Primary/Primary Link

Deferred Responses, Send and Receive

Non-deferred Responses, Send and Receive

Table 4-7. Classes of Procedures

Details on the command/response subsets are not presented because

the standard is still in draft form. ADCCP is intended to provide a

"shopping list" with which to build a communications link. The advantage of the ADCCP approach over that of X3.28 is the common base from

which all such systems can grow. The basic design of the terminals and

the interpretation of the various fields of the frame must be the same in any "standard" system.

91
4.3.5 Error Detection

ADCCP provides the 16-bit CRC for detecting errors in transmission. In addition, a Response Timer is specified for the Primary,

to detect no response from the Secondary. The sequential numbering scheme

also helps detect lost or duplicated frames. An Abort sequence is provided (1111111) which allows a transmitting station to terminate transmission abnormally. The receiving station is expected to ignore an

aborted frame.

4.3.6 Error Recovery

No provisions for recovery other than retransmission are made.

The negative acknowledgements allow -the Primary to decide whether re- transmission will correct an error (short-term vs. long-term, and Link

level vs. Higher level).

4.3.7 Related Developments

There are several efforts currently underway to develop

procedures analogous to ADCCP. ISO is developing its High Level Data

Link Control Procedures (HDLC) and IBM has recently announced two systems

using their Synchronous Data Link Control Procedures (SDLC), both of

which are similar to ADCCP. ISO's HDLC is quite close to the latter,

while IBM's SDLC differs from it in a number of respects.

4.3.7.1 High Level Data Link Control (ISO) - This proposal is es- sentially the same as ADCCP and it is the intent of ANSI to maintain

the compatibility of the two proposed standards insofar as it is practicable. According to the most recent drafts, the primary points of difference are in the definitions of some commands and responses and in

the prescription of classes of procedures. Specifically, HDLC includes

the PR and PD (POLL) commands while ADCCP uses XR and XD (EXCHANGE)

to achieve the same results; the ER (ENQUIRY) command, available in both

ADCCP and HDLC, has been augmented in the former by the inclusion of

the DR (TRANSMIT DEFERRED RESPONSES) command, to simplify some operations.

The AI (ACCEPT WITH INFORMATION) command in HDLC has been replaced by

the AE (ACCEPT ENQUIRY) command in ADCCP since the AC (ACCEPT) command

can " accomplish the same results. Finally, ADCCP has gone into some detail in prescribing classes of procedures, whereas HDLC provides none.

(In an appendix to HDLC, a "classification" of such classes is presented

which is similar in spirit to that in ADCCP; it is not part of the

standard.

)

4.3.7.2 Synchronous Data Link Control (IBM) - This method of link

control, discussed at length in [4-6], is conceptually the same as the

other bit-oriented procedures. It utilizes the same frame format as the others and prescribes a uniform set of commands from which to build a communications link. The major points of difference are mainly in the

interpretation of the frame fields. Minor differences are the address

92
field, which is not extendable beyond the minimum eight bits, and the

frame check sequence, which is computed in a different manner. A

recent proposal to ANSI from IBM notes that possible difficulties may

arise if this field is computed, as in ADCCP, by setting the field value

initially to zero. This remains to be worked out. The major difference

between SDLC and the others is in the format of the control field. There are three formats, as follows.

(I)

(S)

(MS)

1 ft In P/F N

r

FI S P/F N

r

FI M P/F M

The FI field, common to all, dictates the interpretation of the remaining

fields. It has three values, indicating an information transfer (I),

supervisory (S), or non-sequenced (NS) frame. In the first case, the

remaining fields are:

N : Send Sequence Number

P/F: Poll command (from Primary)

Last Frame flag (from Secondary)

N„: Receive Sequence Number

A supervisory frame has fields P/F and N as above, and also an S field,

which is used to inhibit the transmission

1 of information fields in

response frames, request retransmission of frames, or acknowledge the

receipt of frames (when transmitted by a Primary) and to indicate a wait state, or acknowledge or request retransmission of information

frames (when transmitted by a Secondary;. A non-sequenced frame, con- taining no sequence numbers, has a P/F field as above and "modifier"

fields, M, which are used to effect control of the link without changing

sequence number counts. The precise definition of the M field is given

in [4-6] and relates to the specific use to which IBM intends to put SDLC.

The I format above indicates another difference between SDLC and

the others, namely the use of "dual" numbering scheme. In this scheme, a Primary-Secondary pair maintains a pair of sequence number counts, one

for frames sent and one for frames received. The counts are dual in the

sense that the send count for one station should agree with the receive

count for the other.

93
Additional differences are present in the operation of individual

links, and are primarily due to the more immediate needs of IBM as com- pared to the more general audience hopefully to be served by the standards

organizations

4 . 4 References

4-1 Stutzman, B: W. , "Data Communication Control Procedures",

Computer Surveys , 4, 4, 12 72, pp. 197-220

4-2 Grubb, D. S. , "Data Communications System Throughput Performance

Using High Speed Terminals on the Dial Telephone Network"

NBS Tech. Note 770, 5/73

4-3 Interface Message Processor,

BBN Report 1822, 4/72

4-4 PWIN Communications Software Programming Specifications,

N341, 3/73

4-5 Binary Synchronous Communications,

IBM Corp., Order No. GA27-3004-2, 10/70

4-6 Donnan, R. A. , and J. Ray Kersey,

"Synchronous Data Link Control: A Perspective",

IBM Systems J., 13, 2,1974,

pp. 140-162

4-7 Proceedings of the SJCC, Spring, 1972, pp. 243-298,

AFIPS Press, 1972

Standards

1. ANSI X3. 28-1971

Procedures for the use of the Communication Control Characters

of American National Standard Code for Information Interchange

in Specified Data Communication Links

American National Standards Institute

2. ANSI X3S3. 4/437 (project 48) 9/71

Proposed Draft Revision of X3.28

American National Standards Institute

3. ANSI X3S3. 4/475 (Seventh Draft) 12/73

Advanced Data Communication Control Procedures

American National Standards Institute

94
4. ANSI X3S35/80 Dept. X3

American National Standards Institute

5. CCITI VH1

Code-independent Error Control Systems,

International Telecommunications Union

6. ISO KL155-1969

The use of Longitudinal Parity to Detect Errors in Information

Messages

International Organization for Standardization

7. ISO R1745-1971

Basic Mode Control Procedures for Data Communications Systems

International Organization for Standardization

8. ISO R2111-1972

Data Communication - Basic Mode Control Procedures - Code

Independent Information Transfer

International Organization for Standardization

9. ISO R2629-1973

Basic Mode Control Procedures: Conversational Information Transfer

International Organization for Standardization

10. ISO/TC 97/SC 6, N794, 6/73

Proposed Draft on Commands and Responses, High Level Data

Link Control Procedures

International Organization for Standardization

11. ISO/TC 97/SC 6, N731,

Proposed Draft on Frame Structure Definition, High Level

Data Link Control Procedures

International Organization for Standardization

12. ECMA-16, 1973

Basic Mode Control Features for Data Communication Systems

using the ECMA 7-bit Code

European Computer Manufacturer's Association

13. ECMA-24, 1969

Code Independent Information Transfer (Extension of Basic Mode)

European Computer Manufacturer's Association

14. ECMA-26, 1971

Recovery Procedures (Extension of Basic Mode)

European Computer Manufacturer's Association

95
15. ECMA-27, 1971

Abort and Interrupt Procedures (Extension of Basic Mode)

European Computer Manufacturer's Association

16. ECMA-28, 1971

Multiple Station Selection Procedures (Extension of Basic Mode)

European Computer Manufacturer's Association

17. ECMA-29, 1971

Conversational Information Transfer (Extension of Basic Mode)

European Computer Manufacturer's Association

18. ECMA-37, 1972

Supplementary Transmission Control Functions (Extension of

Basic Mode)

European Computer Manufacturer's Association

96
5. GLOSSARY OF TERMS

ASCII - Abbr: American Standard Cede for Information Interchange.

AUXILIARY CHANNEL - A secondary channel whose direction of transmission

is independent of the primary channel and is controlled by an appropriate

set of secondary control interchange circuits.

BACKWARD CHANNEL - A secondary channel whose direction of transmission

is constrained to be always opposite to that of the primary channel.

The direction of transmission of the backward channel Is restricted by

the control interchange circuit that controls the direction of transmission of the primary channel.

BACKWARD SUPERVISION - The use of supervisory sequences from a secondary

to a primary station or node.

BAUD - The unit of modulation rate. It corresponds to a rate on one unit interval per second. Example: If the duration of the unit is 20

milliseconds, the modulation rate is 50 bauds.

BINARY DIGIT - In the binary notation, either of the characters or 1.

BIT - Abbreviations for binary digit.

BLOCK - A group of digits transmitted as a unit, over which a coding

procedure is usually applied for synchronization or error control purposes.

BYTE - A binary element string operated upon as a unit and usually shorter than a computer word, e.g. , six bit, eight bit, or nine bit bytes.

CHARACTER INTERVAL - In start-stop operation the duration of a character

expressed as the total number of unit intervals (including information, error checking and control bits and the start and stop elements) required to transmit any given character in any given communications

system.

CODE - (1) A set of unambiguous rules specifying the way in which data

may be represented, e.g., the set of correspondences in the Standard

Code for Information Interchange. (2) In telecommunications, a system of

rules and conventions according to which the signals representing data

can be formed, transmitted, received and processed. (3) In data processing, to represent data or a computer program in a symbolic form

that can be accepted by a data processor.

CODE EXPANSION - In character oriented data link control procedures

the changing of a character code by enlargement of the code table, as from a 7 bit code to an "8 bit code.

CODE EXTENSION - In character oriented data link control procedures,

97
the provision of additional character codes by means of escape sequences,

the "shift in", and "shift out" characters.

COMMUNICATION CONTROL CHARACTER - In ASCII a functional character intended to control or facilitate transmission over data networks. There

are ten control characters specified in ASCII which form the basis for

character oriented communications control procedures.

CONTENTION - A condition on a communications channel when two or more

stations try to gain control at the same time.

CONTINUOUS START-STOP OPERATION - The method of operation in a startstop system in which the signals representing a series of characters

follow one another at the nominal character rate, (e.g. in sending

steadily from a perforated paper tape as compared to manual keyboard

operation). Note: Under these conditions, the character intervals

will have their nominal durations.

CONTROL CHARACTER - (1) A character whose occurrence in a particular

context initiates, modifies, or stops a control function. (2) In the

ASCII code, any of the 32 characters in the first two columns of the

Standard Code table.

CONTROL PROCEDURE - The" means used to control the orderly communication

of information between stations on a data link.

CONTROL STATION - The station on a network which supervises the network

control procedures such as polling, selecting and recovery. It is also

responsible for establishing order on the line in the event of contention, or any other abnormal situation, arising between any stations on

the network.

DATA LINK - An assembly of terminal installations and the interconnecting circuits operating according to a particular method that permits

information to be exchanged between terminal installations. Note: The

method of operation is defined by particular transmission codes , transmission modes, direction, and control.

DATA TRANSMISSION CHANNEL - The transmission media and intervening equipment involved in the transfer of information between data terminal equipments. A data transmission channel includes the signal conversion equipment. A data transmission channel may support the transfer of

information in one direction only, in either direction alternately, or

in both directions simultaneously and the channel is accordingly

classified • When the data communications equipment has more than one speed capability associated with it?, for example 1200 baud transmission

in one direction and 150 baud transmission in the opposite direction, a channel is defined for each speed capability.

98
DEDICATED LINE - A communications channel which is nonswitched, i.e.,

which is permanently connected between two or more data stations. These

communication channels are also referred to -as "leased" or "private";

however, since leased and private switched networks do exist, the term

"dedicated" is preferred herein to define a nonswitched connection between two or more stations.

DEGREE OF GROSS START-STOP DISTORTION - The degree of start-stop distortion determined using the unit interval which corresponds exactly

to the assigned modulation rate of the system.

DEGREE OF DISTORTION (at the digital interface) - A measure of the time

displacement of the transitions between signal states from their ideal

instants. The degree of distortion is generally expressed as a percentage of the unit interval.

DEGREE OF INDIVIDUAL DISTORTION (of a particular signal transition) - The ratio to the unit interval of the displacement, expressed algebraically, of this transition from its ideal instant (late).

DEGREE OF ISOCHRONOUS DISTORTION - (1) Ratio to the unit interval of

the maximum measured difference, irrespective of sign, between the

actual and the theoretical intervals separating any two transitions of

modulation, these transitions being not necessarily consecutive. (2)

Algebraical difference between the highest and lowest value of individual distortion affecting the transitions of an isochronous modulation.

(This difference is independent of the choice of the reference ideal

instant . ) The degree of distortion of an isochronous modulation is

usually expressed as a percentage.

DEGREE OF PEAK INDIVIDUAL DISTORTION - The maximum individual distortion, irrespective of sign, of all significant instants occuring

during a particular measuring period.

DEGREE OF START-STOP DISTORTION - The ratio to ±he unit interval of the

maximum measured difference, irrespective of sign, between the actual

interval and the theoretical interval (the appropriate integral multiple

of unit intervals) separating any transition from the start transition

preceding it.

DEGREE OF SYNCHRONOUS START-STOP DISTORTION - The degree of start-stop

distortion determined using the unit interval which corresponds to the

actual mean modulation rate of the signal involved.

DUPLEX CHANNEL (FULL DUPLEX CHANNEL) - A primary or secondary channel

capable of operating in both directions simultaneously. The term

duplex used to describe a primary channel does not imply anything about

the type of secondary channel or the existence of a secondary channel;

similarly, the use of the term to describe a secondary channel implies

nothing about the type of primary channel present. (Note that a full du- plex channel has the same signaling rate capability in both directions.

99
A system with different rates would be considered to be a one way only

primary channel in one direction and a one way only secondary channel

in the opposite direction.)

DRIVER - The electronic circuitry or relay contact at the transmitting

end (source) of an- interchange circuit which transmits binary digital

signals to a terminator via an interconnecting cable.

ESCAPE SEQUENCE - In character oriented data link control procedures, a sequence of characters, starting with the "escape character", and

followed by specified characters to establish additional character

codes, or code sets.

FORWARD SUPERVISION - Use of supervisory sequences sent from the primary

to a secondary station or node.

HALF DUPLEX CHANNEL - A primary or secondary channel capable of operating in both directions, but not simultaneously. The direction of

transmission is reversible. The term half duplex used to describe a primary channel does not imply anything about the type of secondary

channel; similarly, the use of the term to describe a secondary channel

implies nothing about the type of primary channel present. (Note that

as a result of the definitions, both directions of a half duplex

channel have the same signaling rate capability.

)

HEADER - The control information prefixed to a message text, e.g.

source or destination code, priority, or message type.

HEADING - See HEADER.

IDEAL INSTANT OF A MODULATION - Instants with which the significant

instants would coincide under certain ideal conditions.

INTERCHANGE CIRCUIT - A circuit between the data terminal equipment and

the data communication equipment for the purpose of exchanging data,

control or timing signals.

LEADER - See HEADER.

LINK - (1) Any specified relationship between two nodes in a network.

(2) A communications path between two nodes. (3) A data link.

MASTER STATION - Syn: Primary Station.

MODULATION RATE - 1) Reciprocal of the unit interval measured in seconds.

This rate is expressed in bauds. (2) The number of unit intervals per

second, as long as the modulation rate is maintained without stopping.

MULTI-POINT CONNECTION - A configuration in which more than two terminal installations are connected.

100
NONSYNCHRONOUS DATA TRANSMISSION CHANNEL - A data channel in which no timing information is transferred between the data terminal equipment

and the data communication equipment.

ONE-WAY ONLY OPERATION - A mode of operation of a data link in which

data are transmitted in a preassigned direction over one channel.

ONE WAY ONLY (UNIDIRECTIONAL) CHANNEL - A primary or secondary channel

capable of operation in only one direction. The direction is fixed and

cannot be reversed. The term "one way only" used to describe a primary

channel does not imply anything about the type of secondary channel or

the existence of a secondary channel; similarly, the use of the term to

describe a secondary channel implies nothing about the type of primary

channel present.

PACKET - A group of binary digits including data and control elements

which is switched and transmitted as a composite whole. The data and

control elements and possibly error control information are arranged in a specified format.

POINT-TO-POINT CONNECTION - (1) A network configuration in which a con- nection is established between two, and only two, terminal installations.

The connection may include switching facilities. (2) A circuit connecting two points without the use of any intermediate terminal or computer.

POLLING - The process of inviting another station or node to transmit

data.

PRIMARY CHANNEL - The data transmission channel having the highest

signaling rate capability of all the channels sharing a common interface connector. A primary channel may support the transfer of information in one direction only, either direction alternately or both

directions simultaneously and is then classified as "one way only"

,

"half duplex" or "duplex".

PRIMARY (LINK CONTROLLER) - In bit oriented data link control procedures,

that part of the DTE which controls the data link, i.e. performs initialization, controls data flow, and initiates recovery procedures.

PRIMARY STATION - (1) The station which at any given instant has the

right to select and to transmit information to a secondary station, and

the responsibility to insure information transfer. There should be

only one primary station on a data link at one time. (2) A station

which has control of a data link at a given instant. The assignment of

primary status to a given station is temporary and is governed by

standardized control procedures. Primary status is normally conferred

upon a station so that it may transmit a message, but a station need

not have a message to be nominated primary station.

PROTOCOL - A formal set of conventions governing the format and relative

timing of message exchange between two communicating processes.

101
SECONDARY CHANNEL - The data -transmission channel having a lower signaling rate capability than the primary channel in a system in which two

channels share a common interface connector. A secondary channel may be

either one way only, half duplex or duplex as defined later. Two

classes of secondary channels are defined, auxiliary and backward.

SECONDARY (LINK CONTROLLER) - In bit oriented data link control procedures, that part of the DTE which is controlled by a jrimary, i.e.

executes commands from the primary, and responds when appropriate.

SECONDARY STATION - A station that has been selected to receive a transmission from the primary station. The assignment of secondary status

is temporary, under control of the primary station, and continues for

the duration of a transmission.

SELECTING - A process of inviting another station or node to receive

data.

SIGNAL CONVERSION EQUIPMENT - Those portions of the data communication

equipment which transform (e.g., modulate, shape, etc.) the data signals

exchanged across the interface into signals suitable for transmission

through the associated communication media or which transform (e.g.

demodulate, slice, regenerate, etc.) the received line signals into

data signals suitable for presentation to the data terminal equipment.

SIGNAL ELEMENT - Each of the parts of a digital signal, distinguished

from others by its duration, position and sense, or by some of these

features only. A signal element has as a minimum a duration of one unit interval. If several unit intervals of the same sense run together, a signal element of duration of more than one unit element may

be formed. Signal elements may be start elements, information elements or stop elements.

SIGNIFICANT INSTANTS OF A MODULATION - Instants limiting significant

intervals of modulation.

SIGNIFICANT INTERVAL OF A MODULATION - A time interval during which a

given significant condition should be maintained, based on the code

and the signal to be transmitted.

START ELEMENT - In a character transmitted in a start-stop system, the

first element in each character, which serves to prepare the receiving

equipment for the reception and registration of the character. The

start element is a spacing signal.

START-STOP SYSTEM - A system in which each group of code elements cor- responding to a character is preceded by a start element which serves

to prepare the receiving equipment for the reception and registration

of a character, and is followed by a stop element during which the

equipment comes to rest in preparation for the reception of the next

character.

102
START TRANSITION - In a character transmitted in a start-stop system,

the mark-to-space transition at the beginning of the start element.

STOP ELEMENT - In a character transmitted in a start-stop system, the

last element in each character, to which is assigned a minimum duration,

during which the receiving equipment is returned to its rest condition

in preparation for the reception of the next character. The stop

element is a marking signal.

SYNCHRONOUS DATA TRANSMISSION CHANNEL - A data channel in which timing

information is transferred between the data terminal equipment and the

data communication equipment. Transmitter signal element timing signals can be provided by either the data terminal equipment or by the

data communication equipment. Receiver signal element timing is normally recovered in and provided by the data communication equipment. A

synchronous data channel will not accommodate start-stop data signals

unless they are transmitted isochronously and timing signals are interchanged at least at the transmitting station.

SYNCHRONOUS SYSTEM - A system in which the sending and receiving data

processing terminal equipments are operating continuously at substantially the same frequency, and are maintained in a desired phase re- lationship by an appropriate means.

TERMINAL - (DA point in a communications network at which data can either enter or leave. (2) A device that permits data entry into or

data exit from a computer system or computer network, e.g. , a data

capture device, a teletypewriter, a remote job entry device, or a computer. Terminals may accommodate data in human or machine readable

form.

TERMINATOR - The electronic circuitry at the receiving end (sink) of an interchange circuit which receives binary digital signals from a driver

via an interconnecting cable.

TEXT - (1)A sequence of characters forming part of a transmission which

is sent from the data source to the data sink, and contains the information to be conveyed. It may be preceded by a header and followed by an

end of text signal. (2) In ASCII and communications, a sequence of

characters, treated as an entity if preceded by a start of text and

followed by an "end of text" or "end of block" control character.

TRANSPARENCY - A property of a communications medium to pass within

specified limits a range of signals having one or more defined proper

ties, e.g., a channel may be code transparent, or an equipment may be

bit pattern transparent.

TRIBUTARY STATION - A station on a data link that is not a control

station.

103
TWO WAY ALTERNATE OFERATION - A mode of operation of a data link in

which data may be transmitted in both directions, one way at a time.

TWO WAY SIMULTANEOUS OPERATION - A mode of operation of a data link in

which data may be transmitted simultaneously in both directions over

two channels. Note: One of the channels is equipped for transmission

in one direction while the other is equipped for transmission in the

opposite direction.

UNIT ELEMENT - A signal element of one unit element duration.

UNIT INTERVAL - The longest interval of time such that the nominal

durations of the signal elements in a synchronous system or the start

and information elements in a start-stop system are whole multiples of

this interval. (Note: A unit interval is the shortest nominal signal

element .

)

UNIT INTERVAL - A unit interval is the duration of the shortest nominal

signal element. It is the longest interval of time such that the

nominal durations of the signal elements in a synchronous system or the

start and information elements in a start-stop system are whole multiplies of this interval. The duration of the unit interval (in seconds)

is the reciprocal of the modulation rate, expressed in bauds.

trV.S. GOVERNMENT PRINTING OFFICE: 1974-683-010/9

104
NBS-U4A (REV. 7-73)

U.S. DEPT. OF COMM. BIBLIOGRAPHIC DATA

SHEET

1. PUBLICATION OR REPORT NO. NBS TN-843

2. Gov't Accessi

No.

4. TITLE AND SUBTITLE A TECHNICAL GUIDE TO COMPUTER-COMMUNICATIONS INTERFACE

STANDARDS

7. author(S) Albrecht J. Neumann, Brian G. Lucas, Justin C. Walker

Dennis W. Fife

3. Recipient's Accession No.

5. Publication Date August 1974

6. Performing Organization Code

8. Performing Organ. Report No.

9. PERFORMING ORGANIZATION NAME AND ADDRESS NATIONAL BUREAU OF STANDARDS DEPARTMENT OF COMMERCE

WASHINGTON. D.C. 20234

10. Project/Task/Work Unit No. 640-1400

11. Contract/Grant No.

12. Sponsoring Organization Name and Complete Address (Street, City, State, ZIP) Joint Technical Support Activity

Defense Communications Agency

Washington, D. C. 20305

13. Type of Report & Period Covered

14. Sponsoring Agency Code

15. SUPPLEMENTARY NOTES

Library of Congress Catalog Card Number: 74-600131

16. ABSTRACT (A 200-word or less factual summary of most significant information. If document includes a significant bibliography or literature survey, mention it here.) A technical summary and guide is given for existing and forthcoming Federal and

National standards on data communications pertinent to computer networking. Selected

international standards and industry practices are included for completeness. Prepared

to assist the application of standards within the World Wide Military Command and

Control System, this handbook should be useful to all ADP system designers interested

in uniform data terminal interfaces, character sets and codes, keyboard arrangements,

and communications line disciplines for effective message exchange between computers.

17. KEY WORDS (six to twelve entries; alphabetical order; capitalize only the-first letter of the first key word unless a proper name; separated by semicolons) ADP standards; communications disciplines; computer networks; data communications.

18. AVAILABILITY [jT Unlimited

[ ^j For Official Distribution. Do Not Release to NTIS

be ! Order From Sup. of Doc, U.S. Government Printing Office Washington, D.C. 20402, SD Cat. No. €1,3. 46:843

I ^H Order From National Technical Information Service (NTIS)

Springfield, Virginia 22151

19. SECURITY CLASS

(THIS REPORT)

UNCLASSIFIED

20. SECURITY CLASS

(THIS PAGE)

UNCLASSIFIED

21. NO. OF PAGES

111

22. Price $1.50

USCOMM-DC 29042-P74
INSTRUCTIONS

FORM NBS-114A: BIBLIOGRAPHIC DATA SHEET (REVERSE SIDE). This Bibliographic Data Sheet is an NBS

adaptation of the form prescribed by COSATI guidelines (Appendix F. NBS Manual for Scientific and Technical Communications). Please complete with extreme care. This sheet will provide the basis for the literature citation of the

publication, and in most cases it will become an integral part of the final publication itself.

A. Complete item 1 if information is available; otherwise, OTP will complete later. If non-NBS publication, state:"see item 15". (Additional instructions under K below.)

B. Ignore items 2, 3, 6, and 14; these are reserved for possible future use.

C. Complete items 4 and 7. When NBS-114A is resubmitted these items must be as they will actually appear on the published paper.

D. Leave items 5, 21, and 22 blank; OTP will complete.

E. Items 9, 19, and 20 are preprinted; you need add nothing.

F. Complete items 10, 11, and/or 12 when applicable. If no sponsor is involved, in item 12 state: same as item 9.

G. For item 13, enter "Final" or "Interim" and calendar period covered, as appropriate.

H. For item 15, enter other relevant information. (For example, upon receipt of completed Form NBS-266 from author, OTP will enter the complete citation for NBS-authorized papers published in non-NBS media.)

I. Complete items 16 and 17. Guidance is given in Section 4 and Appendix B of the NBS Manual for Scientific and

Technical Communications. The abstract must agree with the one of the published paper.

J. For item 18, indicate one of the following: "Unlimited" - for open-literature documents cleared under NBS editorial procedures, or "For official distribution. Do not release to NTIS" - for limited, restricted, or need-to-know material. (See

5.1.4.2.1 of Brady memo dated January 16, 1973 "Reports to Sponsors .")

K. In completing item 1, use the brief designators shown in the right-hand column below. Each designator will be followed by the specific publication number for that item. This number will be the same in both the longer and briefer designators

for the same document. For example: NBS Technical Note 548 will be equivalent to NBS TN-548. You would enter NBS

TN-548 in item 1 of Form NBS-114A.

NBS Identification NBS Technical Note NBS TN- NBS Monograph NBS MNNBS Handbook NBS HB- NBS Special Publication NBS SP- NBS Applied Mathematics Series NBS AMSNBS National Standard Reference Data Series NBS NSRDSNBS Building Science Series NBS BSS- NBS Federal Information Processing Standards Publication NBS FIPS- NBS Voluntary Product Standards NBS PS- NBS Consumer Information Series NBS CIS- NBS Journal of Research Section A NBS JRA- NBS Journal of Research Section B NBS JRB- NBS Dimensions NBS D- NBS Interagency or Internal Report • NBS IRSince each paper in the two volume NBS Journal of Research is assigned a specific designator, OTP will add appropriate Journal designator for item 1.

*If the outside sponsor assigned his own number, enter his number in item 1, and the NBSIR number in item 8.
NBS TECHNICAL PUBLICATIONS

PERIODICALS JOURNAL OF RESEARCH reports National Bureau

of Standards research and development in physics, mathematics, and chemistry. Comprehensive scientific papers give complete details of the work, including laboratory data, experimental procedures, and theoretical and mathematical analyses. Illustrated with photographs, drawings, and charts. Includes listings of other NBS papers as issued. Published in two sections, available separately: • Physics and Chemistry (Section A)

Papers of interest primarily to scientists working in these fields. This section covers a broad range of physical and chemical research, with major emphasis on

standards of physical measurement, fundamental constants, and properties of matter. Issued six times a

year. Annual subscription: Domestic, $17.00; Foreign,

$21.25. • Mathematical Sciences (Section B)

Studies and compilations designed mainly for the mathematician and theoretical physicist. Topics in mathematical statistics, theory of experiment design, numerical analysis, theoretical physics and chemistry, logical design and programming of computers and computer

systems. Short numerical tables. Issued quarterly. Annual subscription: Domestic, $9.00; Foreign, $11.25. DIMENSIONS/NBS (formerly Technical News Bulletin) —This monthly magazine is published to inform

scientists, engineers, businessmen, industry, teachers,

students, and consumers of the latest advances in science and technology, with primary emphasis on the work at NBS. DIMENSIONS/NBS highlights and reviews such

issues as energy research, fire protection, building technology, metric conversion, pollution abatement,

health and safety, and consumer product performance.

In addition, DIMENSIONS/NBS reports the results of Bureau programs in measurement standards and techniques, properties of matter and materials, engineering standards and services, instrumentation, and automatic

data processing. Annual subscription: Domestic, $6.50; Foreign, $8.25.

NONPERIODICALS Monographs—Major contributions to the technical liter- ature on various subjects related to the Bureau's scientific and technical activities. Handbooks—Recommended codes of engineering and

industrial practice (including safety codes) developed

in cooperation with interested industries, professional organizations, and regulatory bodies. Special Publications—Include proceedings of high-level national and international conferences sponsored by NBS, precision measurement and calibration volumes, NBS annual reports, and other special publications appropriate to this grouping such as wall charts and

bibliographies. Applied Mathematics Series—Mathematical tables, manuals, and studies of special interest to physicists, engineers, chemists, biologists, mathematicians, computer programmers, and others engaged in scientific and technical work.

National Standard Reference Data Series—Provides

quantitative data on the physical and chemical properties of materials, compiled from the world's literature and critically evaluated. Developed under a world-wide program coordinated by NBS. Program under authority

of National Standard Data Act (Public Law 90-396). See also Section 1.2.3. Building Science Series—Disseminates technical infor- mation developed at the Bureau on building materials, components, systems, and whole structures. The series presents research results, test methods, and performance criteria related to the structural and environmental functions and the durability and safety characteristics of building elements and systems. Technical Notes—Studies or reports which are complete

in themselves but restrictive in their treatment of a

subject. Analogous to monographs but not so comprehensive in scope or definitive in treatment of the subject area. Often serve as a vehicle for final reports of work performed at NBS under the sponsorship of other government agencies. Voluntary Product Standards—Developed under pro- cedures published by the Department of Commerce in Part 10, Title 15, of the Code of Federal Regulations. The purpose of the standards is to establish nationally recognized requirements for products, and to provide

all concerned interests with a basis for common understanding of the characteristics of the products. The

National Bureau of Standards administers the Voluntary Product Standards program as a supplement to the activities of the private sector standardizing

organizations. Federal Information Processing Standards Publications (FIPS PUBS)—Publications in this series collectively constitute the Federal Information Processing Standards Register. The purpose of the Register is to serve as the official source of information in the Federal Gov- ernment regarding standards issued by NBS pursuant

to the Federal Property and Administrative Services Act of 1949 as amended, Public Law 89-306 (79 Stat. 1127), and as implemented by Executive Order 11717

(38 FR 12315, dated May 11, 1973) and Part 6 of Title 15 CFR (Code of Federal Regulations). FIPS PUBS

will include approved Federal information processing standards information of general interest, and a complete index of relevant standards publications. Consumer Information Series—Practical information, based on NBS research and experience, covering areas

of interest to the consumer. Easily understandable language and illustrations provide useful background

knowledge for shopping in today's technological marketplace. NBS Interagency Reports—A special series of interim

or final reports on work performed by NBS for outside sponsors (both government and non-government). In

general, initial distribution is handled by the sponsor;

public distribution is by the National Technical Infor- mation Service (Springfield, Va. 22151) in paper copy

or microfiche form. Order NBS publications (except Bibliographic Subscription Services) from: Superintendent of Documents, Government Printing Office, Washington, D.C. 20402. BIBLIOGRAPHIC SUBSCRIPTION SERVICES

The following current-awareness and literature-survey bibliographies are issued periodically by the Bureau:

Cryogenic Data Center Current Awareness Service

(Publications and Reports of Interest in Cryogenics). A literature survey issued weekly. Annual subscription: Domestic, $20.00; foreign, $26.00. Liquefied Natural Gas. A literature survey issued quarterly. Annual subscription: $20.00. Superconducting Devices and Materials. A literature survey issued quarterly. Annual subscription: $20.00. Send subscription orders and remittances for the preceding bibliographic services to the U.S. Department

of Commerce, National Technical Information Service, Springfield, Va. 22151. Electromagnetic Metrology Current Awareness Service (Abstracts of Selected Articles on Measurement

Techniques and Standards of Electromagnetic Quantities from D-C to Millimeter-Wave Frequencies).

Issued monthly. Annual subscription: $100.00 (Special rates for multi-subscriptions). Send subscription order and remittance to the Electromagnetic Metrol- ogy Information Center, Electromagnetics Division, National Bureau of Standards, Boulder, Colo. 80302.
U.S. DEPARTMENT OF COMMERCE

National Bureau of Standards

Washington, D.C. 20234

OFFICIAL BUSINESS

Penalty for Private Use. S300

POSTAGE AND FEES PAID

U.S. DEPARTMENT OF COMMERCE COM-255