SNAX/APC Application Programming Manual
Using the Application Program Interface
SNAX/APC Application Programming Manual—138786
1-27
Basic Conversations
Basic Conversations
Basic conversations (those using basic verbs) define a logical record as the elementary
unit of information transferred between TPs. A logical record consists of the two-byte
length prefix (LL) followed by up to 32,767 bytes of data.
A pair of LU 6.2 LUs transmit and receive data as General Data Stream (GDS)
variables.
GDS variables consist of a four-byte GDS header, followed by the data. The GDS
header consists of a two-byte length field (LL, which contains the length of the GDS
variable, including the GDS header) and a two-byte identification field (ID). The GDS
variable can be of any length. However, if the length exceeds 32,765 bytes, the record is
divided into multiple segments, each with its own length field; only the first segment of
a multisegment GDS variable contains an ID field. The high-order bit (bit 0 of byte 0)
in the length field is a continuation indicator. When the bit is set, the associated segment
is followed by another segment.
Thus, a GDS variable segment is also a logical record. A logical record does not need
the ID field required in GDS variables; however the ID can be included as part of the
data. If an ID is included, the TP assigns and interprets the ID field. Note that the
inclusion or exclusion of the ID field is application-dependent; if the local TP is
communicating with a remote TP that uses mapped verbs, the local TP must be prepared
to unpack the GDS variables.
Buffering Transmitted Data
SNAX/APC stores the data from a SEND-DATA verb in a send buffer. SNAX/APC
transmits the data when its send buffer overflows or when SNAX/APC receives a verb
from the local TP that explicitly flushes the buffer (using CONFIRM, DEALLOCATE,
FLUSH, PREPARE-TO-RECEIVE, RECEIVE-AND-WAIT, or SEND-ERROR). The
size of the send buffer is determined by the MAXAPPLIOSIZE parameter.
(MAXAPPLIOSIZE specifies the maximum number of bytes that an application can
send to or receive from the SNAX/APC process.) Thus, the TP can issue several SEND-
DATA requests before the data is actually transmitted by SNAX/APC.
Note. If you ar using basic verbs and the local TP is communicating with a computer
produced by a vendor other than Tandem, the local TP must translate data from ASCII to
the representation used in that remote system. Thus, if a local TP communicates with an
IBM System 38, the local TP must translate data from ASCII to EBCDIC before
sending the data (and EBCDIC to ASCII when receiving data). The SNAX/APN or
SNAX/XF (or SNAX/CDF) lines and LUs (SNAX/CDF APPL objects) cannot be
configured to translate data because the translation would also affect the GDS headers
and FMH data.
If you are using mapped verbs, you can use character mapping support feature of
SNAX/APC to have SNAX/APC do the character translation automatically.