gtpn1m07Non-SNA Data Communications Reference

Processing Description

Messages will be transmitted in variable length blocks, with maximum block length subject to agreement by link. The total message length is restricted by the maximum number of blocks used for one message (sixteen).

A single block will contain characters of only one message; parts of different messages will not be packed into the same block. This applies also to messages from and to indirect terminals attached to the TPF system via the SITA High Level Network.

Error detection based on character and block parity checking is applied to all blocks. Multi-block message protection is by message label and block chaining. The message block identifier, MBI and the link characteristics indicator, LCI are used to make possible correct reassembly of multi-block messages on receipt.

The link will be controlled by means of fixed length link control messages. These Link Control Blocks (LCBs) will indicate correct or incorrect reception of information blocks and provide information about the status of the link. Two types of data messages will be recognized:

Type A
Messages having requirements for short transit times of the order of seconds. These will normally be short, single-block messages, but multi-block Type A messages can be handled.

A subset called service messages will be exchanged to enable the TPF processor to stop and start the polling of indirect terminal interchanges and to inform the TPF processor of a failure on the High Level Network.

Type B
Conventional Telegraph Messages permitting long transit times in the order of minutes. They may be either single- or multi-block, depending on their length.

The following order of precedence will be observed when transmitting message blocks between the processors:

The security of Type B messages sent to an SLC link may be achieved by one of two ways.

The application informs SLC which type of security is being used by setting an indicator in the message status bytes.

Data Areas

CTKD - Keypoint Record D

Content and Usage

Keypoint Record D (CTKD) is used exclusively by the TPF Synchronous Link Control Package (18-SLC) and contains two tables, the Link Routing Table and the Link Pool Availability Directory.

Type Of Data

Header

The header of CTKD is 16 bytes long. The header contains a record ID, a byte count indicating the length of the record, a four-byte record name, a four-byte file address, and a four-byte indexing factor.

Record Identification

The ID of CTKD is 'CK', indicating it is a Control Program keypoint record.

Byte Count

The byte count indicates the length of CTKD in bytes.

Record Name

The program name updating the keypoint is placed in the record name field.

File Address of Next Keypoint

CTKD contains the file address of Keypoint CTK1.

Indexing Factor

The indexing factor is used by the load sequence to define the displacement of the record relative to a base register.

Link Routing Table

This table is used by the TPF Synchronous Link Control programs to route Type A messages to or from a high level communications network (e.g., SITA HLN) attached to the system via a synchronous link. There are two types of eight-byte entries in the link routing table:

  1. An entry for each indirect terminal interchange (TI) attached via the HLN.
  2. An entry for each system with which we communicate via the HLN (e.g., Hotel Reservation or Fare Quotation).

Each entry consists of the following fields:

  1. Four bytes of routing information comprising the symbolic link number, the HEX/HEN of the remote HLN center to which the associated TI/system is connected, and one byte used to identify the origin of the message at the remote HLN center.
  2. One byte giving the pseudo line number that is substituted for the HLN routing details to enable processing by TPF applications programs. (This pseudo line number and all attached TIs must be contained in the tables referenced by 03-WGR.)
  3. One byte to identify each TI attached to a remote HLN center (i.e., IA).
  4. One byte of indicators:

    Bit 0:
    CXJPOL

    If on, this shows that a poll initiation service message has been sent from the Pseudo Line Start/Stop And Display program (03-CMP) to the HLN controlling the line to which this TI is attached.

    If off, this shows that a stop polling service has been sent to the HLN controlling this line.

    Bit 1:
    CXJNML

    If on, the initiate poll request from CMP was for polling at the normal rate.

    If off, the request from CMP was for polling at a reduced rate.

    Bit 2:
    CXJUII

    This bit controls the forward routing of type A messages associated with this entry by the TPF Synchronous Link Control component of the ECB Communications Source Program.

    If on, CILL will route the message to the common processing routines of the ECB Communications Source Program (03-CIAA).

    If off, CILL will route the message to either the Message Router (03-ROUT) or an application program specified by the user. The former is activated only when the Message Router function exists in the system.

    Bits 3-4:
    Unused

    Bits 5-7:
    CXJXCD

    These bits are used to control the line code in which messages associated with this LRT entry will be transmitted. The available codes are:

    000
    Padded CCITT#2 (Padded Baudot)

    100
    CCITT#5 (ASCII/ISO seven-bit code)

    110
    Extended CCITT#5 (This enables a range of 256 data characters to be transmitted, rather than the 125 available within the CCITT#5 code).
  5. One byte is spare.

Link Pool Availability Directory

This table is used by the Input Message Handler (03-CMR) to control the allocation and use of file addresses in a fixed file area defined by FACE. Each bit corresponds to a file address:

1 = file address available.

0 = file address in use.

The bit number within the field is used as a FACE ordinal number and the record type is #LKIBR.

Programming Aspects

Programming Areas

TPF Synchronous Link Control Component of Communications Source (03-CIAA) uses the Link Routing Table to determine the correct processing of input messages from a high level network.

TPF Synchronous Link Control Input Message Handler (03-CMR) uses the Link Pool Availability Directory to dispense file addresses to incoming message blocks for storing on file until a complete message is received.

TPF Synchronous Link Control CCP I/O Routines (03-CIOAI) are used. Send Intercept Routine CXKAII in CLQK uses the Link Routing Table to determine the additional routing characters for messages destined for an indirect TI.

TPF Synchronous Link Control Link Controller (03-CMC) segments CMCC/CMCD, CMR Restart, correct the Link Pool Availability Directory for any discrepancies caused by retrieval errors and the loss of chains of input message blocks.

TPF Synchronous Link Control Pseudo Line Start/Stop/Display program (03-CMP) uses the Link Routing Table to generate the appropriate polling message when a link is restarted and to maintain the polling status indicators according to commands.

Programming Techniques

The address of both tables is to be found in the SLC Common Area (CX#EV). The DSECT defining the fields of the Link Routing Table is in CAIEQ.

Data Macro Name

CK#LRT

Storage Factors

Record Size

The file copy of CTKD is stored in a 4K block. The size of the tables contained in CTKD are configuration-dependent. Care should be exercised to ensure that each table within CTKD is equal in length to the corresponding area reserved in the core-resident Control Program Segment CLQA.

File Requirements

  1. CTKD belongs to the middle one-third of the Data Record types in TPF.
  2. CTKD is assigned an absolute location:
    Cylinder
    X'00'
    Head
    X'02'
    Record
    X'11'
  3. This record is active throughout the life of the online system.

Record Addressing

File Organization

CTKD has two backup copies on the file system. Due to the fixed nature of the Control Program keypoints, a special disk duplication exists. This duplication has a cylinder and head displacement of zero and, as such, may differ from the normal system duplication displacement (reference, MSP-PLM, label CK1DUP).

Retrieval Method

This record should be retrieved only by program MSP-PLM. No facility is available to update the file copy of this data record outside the keypoint update mechanism.

Data Control

The next keypoint address in the keypoint chain is obtained from this record.

Message Formats

In this section, the formats of Link Control Message Blocks and Data Message Blocks will be described.

Control Character Definition

SYN
Synchronization Character 1/6

SYN characters must precede each message block to establish and maintain character framing. The number of SYN characters required to establish character framing is a function of the hardware but each message block on a line will be preceded by at least two SYN characters.

The IBM 3705EP transmit side automatically generates two SYN characters to precede each message block.

The receive side does not pass incoming SYNs to the CPU. The first non-SYN character signals the start of an incoming message block. At least two SYN characters are required to establish character framing, but the software can provide up to 12 additional SYN characters on output in multiples of 4. SYN is a reserved character and may not be used elsewhere within a message block.

(The above described function should not be confused with bit synchronization which is solely a function of the communication hardware (e.g., modem) and has no relevance to the procedure described in this document).

DLE
Data Link Escape Character 1/0

The DLE character should be the first non-SYN character and indicates the start of a message block. It is a reserved character and may not be used elsewhere in a message block.

LSI/TSI
The character immediately following the DLE indicates the block type by the coding of its bits 7 and 6 as follows:
b7b6    Function    Type    Precedence
 
00*     None        -           -
 
01      LSI         LCB         1
 
10      TSI         Type A      2
 
11      TSI         Type B      3

Note:
* The combination 00 cannot be used, as the LSI/TSI series could then include the reserved characters SYN, DLE, and ETB.

LSI
Link Status Identifier

In a link control block, the five bits b5 through b1 identify the type of LCB as described in Section "Link Control Messages".

TSI
Transmission Sequence Identifier

In a non-LCB, the five bits b5 through b1 are used as a Transmission Sequence Identifier. 31 combinations are used sequentially to serially number data message blocks on transmission, and to verify proper reception.

MBI
Message Block Identifier

The MBI is used to permit chaining of Data Message Blocks.

The MBI combination 1/15 is used to indicate a single block message.

MBI bits b7b6b5 provide seven combinations for individual multi-block message labels.

The combination 001 is reserved to indicate a single block message.

MBI bits b4b3b2b1 provide sixteen combinations for sequential block numbering per message label. For a single block message, these bits will be coded 1111 to avoid any possible coincidence with the reserved character SYN, DLE, ETB.

LCI
Link Characteristics Identifier

The LCI is mandatory in data message blocks. The bits of the LCI are used as follows:

b7=1
mandatory to avoid any possible coincidence with the reserved characters SYN, DLE, ETB

b6=0
indicates an original transmission

b6=1
indicates a possible duplicate message PDM or possible duplicate block, PDB

b5=1
indicates the presence of ACI

b5=0
indicates the absence of ACI from the control character sequence

b4=1
indicates inclusion of High Level Addresses

b4=0
indicates absence of High Level Addresses

b3=1
indicates maximum block protection not required

b3=0
indicates maximum block protection is required

b2
reserved

b1=0
not last block in a multi-block message

b1=1
last or only block

ACI
Additional Characteristics Indicator

The ACI is optional in the TPF System

b7=1
mandatory to avoid any possible coincidence with the reserved characters SYN, DLE, ETB

b6
reserved

b5=0
must be zero - TPF Supports only one ACI

b4
reserved

b3b2b1
indicate code translation to be performed on message blocks as follows:

000
Padded CCITT No 2 code (Padded Baudot)

100
CCITT No 5 code (ASCII/ISO seven-bit code)

110
Extended CCITT No 5 code (this is a technique that enables a range of 256 data characters to be transmitted, rather than the 125 available within the CCITT No 5 code)

ETB
End of Transmission 1/7

The ETB character indicates the end of the message block. It is a reserved character and may not be used elsewhere in the message block.

BCC
Block Check Character

The BCC provides longitudinal even parity for each bit column (b7 to b1) excluding parity bits.

The BCC extends from the DLE to the ETB and includes both.

The BCC itself in common with all other characters has odd character parity.

On outgoing messages the BCC is generated by the IBM 3705EP. On incoming messages it is not passed to the CPU but is replaced by an Error Indicator Byte.

Link Control Messages

Positive Acknowledgment - ACK

Message:
SYN SYN DLE LSI ATSI ETB BCC

Where:

LSI
Positive acknowledgment 2/1

ATSI
Acknowledged TSI, the Transmission Sequence Indicator of the last correctly received block.

Negative Acknowledgment - NAK - IVB

Message:
SYN SYN DLE LSI ATSI ETB BCC

Where:

LSI
Negative acknowledgment invalid block 2/2 indicating incorrect format, excessive block length, or parity error.

ATSI
Transmission sequence indicator of the last correctly received block.

Negative Acknowledgment - NAK - OST

Message:
SYN SYN DLE LSI ATSI ETB BCC

Where:

LSI
Negative acknowledgment out-of-sequence TSI, 2/3

ATSI
Transmission sequence indicator of the last correctly received block.

Enquiry - ENQ

Message:
SYN SYN DLE LSI ATSI ETB BCC

Where:

LSI
Enquiry 2/4. This message is sent during fault conditions and during restart. It requires a response.

ASTI
Transmission sequence indicator of the last correctly received block.

Acknowledge Message Label - AML

Message:
SYN SYN DLE LSI AMBI ETB BCC

Where:

LSI
Acknowledge Message Label, 2/15 may optionally be sent when all blocks of a multi-block message have been correctly received and acknowledged.

AMBI
Acknowledged MBI

b7b6b5 indicate the cleared message label

b4b3b2 are coded 000

b1 is coded 0 for a Type A message

b1 is coded 1 for a Type B message

Stop Sending - STP

Message:
SYN SYN DLE LSI ATSI ETB BCC

Where:

LSI
Stop Sending on all channels, 3/0

Stop Sending on a specific channel 1 to 7, 3/1 to 3/7.

ATSI
Transmission sequence indicator of the last correctly received block when a single channel is stopped. When the Stop Sending is for all channels the ATSI will be coded all ones.

Resume Sending - RSM

Message:
SYN SYN DLE LSI ATSI ETB BCC

Where:

LSI
Resume Sending on all channels, 3/8

Resume Sending on a specific channel 1 to 7, 3/9 to 3/15.

ATSI
Transmission sequence indicator of the last correctly received block when transmission is resumed on a single channel. When the Resume Sending is for all channels the ATSI will be coded all ones. Note that the Resume Sending on all channels is never generated and transmitted by the TPF Synchronous Link Control Package since it contains no ATSI information. Channels will be resumed individually.

Idle Line - ILB

Message:
SYN SYN DLE LSI ATSI ETB BCC

Where:

LSI
Idle Line 2/14 sent during an idle line condition. It requires a response.

ATSI
Transmission sequence indicator of the last correctly received block.

Data Messages

The format of a data block, whether Type A or Type B, is either:

SYN SYN DLE TSI MBI LCI ACI Text ETB BCC or,

SYN SYN DLE TSI MBI LCI Text ETB BCC

The maximum length of the message block (excluding SYN characters) agreed by link governs the length of the text portion of the message.

Messages to and from a High Level Network (e.g., SITA) require two additional control fields to specify the HLN Entry and Exit Centers. The format of such a message will be:

SYN SYN DLE TSI MBI LCI HEX HEN ACI Text ETB BCC

or if the optional ACI character is not a component of the control character set:

SYN SYN DLE TSI MBI LCI HEX HEN Text ETB BCC

Where:

HEX
Address of Exit Center from the HLN

HEN
Address of Entry Center to the HLN

HEX and HEN comprise two characters each.

To identify the functional area to which input Type A messages should be routed, the first text character will be used as a Circuit Identity, and will not be translated.