Browse Prior Art Database

Flow Control Methods Utilizing a Single Buffer for Multiple Receivers

IP.com Disclosure Number: IPCOM000104919D
Original Publication Date: 1993-Jun-01
Included in the Prior Art Database: 2005-Mar-19
Document File: 4 page(s) / 143K

Publishing Venue

IBM

Related People

Edel, TR: AUTHOR [+3]

Abstract

In a connection-oriented environment, there could exist a situation when an end node exhausts a particular resource such as buffer space and then elects to suspend data transmission from the consuming partner until the resource becomes available. In transports (such as Netbios) that provide a single API for accepting data from any of its communication partners, there exists no mechanism whereby an applica- tion can selectively turn-off and turn-on data transmissions from any transmitting partner. Such transports could utilize a compensation protocol that provides a means for controlling the data transmissions between communicating partners, resulting in an effective flow control mechanism.

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

Flow Control Methods Utilizing a Single Buffer for Multiple Receivers

      In  a  connection-oriented  environment, there could exist a
situation when an end node exhausts a particular resource such as
buffer  space and  then  elects  to  suspend  data  transmission
from the consuming partner until the resource becomes available.  In
transports  (such  as Netbios)  that provide a single API for
accepting data from any of its communication partners, there exists
no mechanism whereby an  applica- tion  can selectively turn-off and
turn-on data transmissions from any transmitting partner.  Such
transports  could  utilize  a  compensation protocol  that provides a
means for controlling the data transmissions between communicating
partners, resulting in an effective flow  control mechanism.

      An  application  can utilize a single RECEIVE_ANY function to
communicate to/from multiple partners in connection-oriented
transports such as  Netbios.  The advantage of using such an
interface is that a single receive request to the transport  will
service  all  the connections, thereby  eliminating  the  need  to
have one RECEIVE request per connection.  However, each connection
may consume a disproportionate share of resources.  This  is
especially  true  for the buffer  space resource.  Although the
RECEIVE_ANY interface facilitates the use  of a single  Receive
request  to  the transport, it will accept data for a particular
connection which may have exhausted its buffer space.  It is not
possible to inform the sender that the received data will be
discarded by the receiver since the underlying transport layer would
have already  acknowledged  the receipt of data.  Also, nothing
prevents the sender from sending more data, thereby flooding the
network  and  consuming all available buffer space at the receiving
partner's node.

      Protocols  that  supplement the required functions to the set
of functions offered by an existing protocol are termed Protocol
Compensating Protocols (PeC Protocols).  PeC protocols for flow
control provide  a mechanism  by which data transmission between
partners in a connection-oriented environment can be controlled
according to  the availability of resources at the receiving
partners.  It requires the use of a thin layer  of protocol
consisting of a  PeC protocol header which precedes each data frame
transmitted from an end node.

The basic principles of the PeC  protocol  for  flow  control  are as
follows.

         After successfully establishing a connection, the two
partners exchange the PeC  protocol,  indicating their respective
receive buffer  space thresholds.  If a socket application were to be
using the Netbios transport, then this buffer space is the  receive
hi-water mark in the socket control block.

          The  sender  keeps sending data to its partner until the
partner's receive buffer space gets exhau...