Browse Prior Art Database

Deferred Termination Logic for Asynchronous Netware Communication

IP.com Disclosure Number: IPCOM000114960D
Original Publication Date: 1995-Feb-01
Included in the Prior Art Database: 2005-Mar-30
Document File: 2 page(s) / 100K

Publishing Venue

IBM

Related People

Crane, MA: AUTHOR [+3]

Abstract

IBM*'s Multi-Protocol Transport Services* (MPTS) provides a method for accessing the native Netware** Internetwork Packet Exchange** (IPX) / Sequenced Packet Exchange** (SPE) protocols using the Berkley SOCKETS Application Programming Interface. Netware's IPX is the Netware networking protocol for datagrams and SPX is the Netware networking protocol for connection oriented data exchanges.

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

Deferred Termination Logic for Asynchronous Netware Communication

      IBM*'s Multi-Protocol Transport Services* (MPTS) provides a
method for accessing the native Netware** Internetwork Packet
Exchange** (IPX) / Sequenced Packet Exchange** (SPE) protocols using
the Berkley SOCKETS Application Programming Interface.  Netware's IPX
is the Netware networking protocol for datagrams and SPX is the
Netware networking protocol for connection oriented data exchanges.

      This disclosure describes a method for using deferred
termination logic on SPX sessions that use asynchronous SPX APIs for
sending and receiving data.  While MPTS supports multiple protocol
stacks, the connection oriented transport of Netware, SPX, must
handle its termination logic differently than other protocol stacks.
It is possible that while sending and receiving SPX data
transmissions, that an application will be notified that the session
has been terminated while there is still data that was received in
the Netware buffers to be processed.  While the session is physically
disconnected, the data in the pipeline must be processed before the
session is completely able to be disconnected.  Not only this, but it
is important that once a notification occurs that the physical
session is terminated that no other data is allowed to enter the
pipeline.  The method used by MPTS allows an application program that
uses asynchronous APIs to handle termination logic in a orderly
fashion and not loose any data using Netware SPX as the transport
provider.  This is necessary because many applications can be
communicating with the same node and some controlled mechanism for
termination needs to exist in the transport provider.

      This particular method was derived using IBM's MPTS Protocol
Manager for Netware.  In the asynchronous Netware environment during
a session, each session must have issued at least one SPX receive
including the buffers required to receive data that comes in to
MPTS's Protocol Manager.  A memory buffers (mbuf) comes from a pool
of memory used by all the Protocol Managers and administered by the
Common Protocol Manager.  It is important that all the used buffers
are freed and no mbuf is lost.  Each MPTS socket created by an
application has an associated Protocol control block (pcb) created by
the Netware Protocol Manager.  In each pcb, a counter is kept of the
number of outstanding asynchronous events for each session.  No
connection is broken to the MPTS socket even if the physical Netware
SPX session is terminated until all outstanding asynchronous events
are processed by the Proto...