DLPI Programmer's Guide
20 Chapter 1
Introduction to DLPI
The Data Link Layer
Local Management. This phase enables a DLS user to initialize a
stream for use in communication and establish an identity with the DLS
provider.
Connection Establishment. This phase enables two DLS users to
establish a data link connection between them to exchange data. One
user (the calling DLS user) initiates the connection establishment
procedures, while another user (the called DLS user) waits for incoming
connect requests. The called DLS user is identiļ¬ed by an address
associated with its stream.
A called DLS user may either accept or deny a request for a data link
connection. If the request is accepted, a connection is established
between the DLS users and they enter the data transfer phase.
For both the calling and called DLS users, only one connection my be
established per stream. Thus, the stream is the communication endpoint
for a data link connection.
The called DLS user may choose to accept a connection on the stream
where it received the connect request, or it may open a new stream to the
DLS provider and accept the connection on this new, responding stream.
By accepting the connection on a separate stream, the initial stream can
be designated as a listening stream through which all connect requests
will be processed. As each request arrives, a new stream (communication
endpoint) can be opened to handle the connection, enabling subsequent
requests to be queued on a single stream until they can be processed.
Data Transfer. In this phase, the DLS users are considered peers and
may exchange data simultaneously in both directions over an established
data link connection. Either DLS user may send data to its peer DLS
user at any time. Data sent by a DLS user is guaranteed to be delivered
to the remote user in the order in which it was sent.
Connection Release. This phase enables either the DLS user, or the
DLS provider, to break an established connection. The release procedure
is considered abortive, so any data that has not reached the destination
user when the connection is released may be discarded by the DLS
provider.