Browse Prior Art Database

Simple Common Communication Protocol

IP.com Disclosure Number: IPCOM000106661D
Original Publication Date: 1993-Dec-01
Included in the Prior Art Database: 2005-Mar-21
Document File: 2 page(s) / 101K

Publishing Venue

IBM

Related People

Callaghan, P: AUTHOR [+2]

Abstract

Computer programs which perform communications with other computer programs, using multiple communication protocol options, need to be written to account for all the varied characteristics of the underlying communication protocols. This causes undo complexities in the program since there is not a simple common interface available that efficiently maps the supported underlying protocols. A program is disclosed that solves this problem by the design and development of a simple programming interface that hides, from the caller of the programming interface, the the complexities and differences in the underlying communication protocols.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 52% of the total text.

Simple Common Communication Protocol

      Computer programs which perform communications with other
computer programs, using multiple communication protocol options,
need to be written to account for all the varied characteristics of
the underlying communication protocols.  This causes undo
complexities in the program since there is not a simple common
interface available that efficiently maps the supported underlying
protocols.  A program is disclosed that solves this problem by the
design and development of a simple programming interface that hides,
from the caller of the programming interface, the the complexities
and differences in the underlying communication protocols.

      The programming interface is simple since it consists of four
calls, namely, OPEN, READ, WRITE and CLOSE, with a minimal number of
parameters on the calls.  The underlying communication protocols
currently supported are the SNA LU6.2 (APPC) protocol boundary, the
Transmission Control Protocol (TCP), and the System/370 I/O
interface.  Since this programming interface is separate from the
underlying protocol interfaces, additional protocols may be added as
supported protocols without changing the programming interface (and
therefore the programs that call the programming interface can
support the new underlying protocol with out any code modifications
required).

      Examples of characteristics that differ between communication
protocols and are handled by the common programming interface are if
the data divided into separate units (messages) or not (stream mode),
if the connection is full- duplex or half- duplex , if the interface
is synchronous or asynchronous, how to identify the connection after
the connection is established, how to achieve efficient performance
on data transfers and, if confirmation is desired on initial
connections and/or data transfers.

      The simple programming interface is provided in two sets of
OPEN, READ, WRITE and CLOSE calls.  One for applications that run on
VM or MVS and one for applications that run on NetWare File servers.

      The interface available to Novelle NetWare loadable modules
(NLMs) on the NetWare file server is provided by a single NetWare
loadable module.  The single NetWare loadable module may be pictured
as a communication layer since all communications to the host (VM or
MVS) use the functions of this module.

The interface is as follows:

o   OPEN (IN function OUT return_code session)
    where function is the LANRES function (e.g., disk serving) which
    will be using the connection.  The call to OPEN returns a return
    code and a session value which must be used on subsequent READ,
    WRITE and CLOSE calls.

o   READ (IN session OUT return_code BPbuffer data_length)
    where session is the value returned on the previous OPEN call.
    The call to READ returns a return code, a pointer to the data
    read and the length of the data...