DLPI Programmer's Guide

86 Chapter 2
DLPI Primitives
Connectionless-mode Service Primitives
Connectionless-mode Service Primitives
This section describes the connectionless-mode service primitives.
DL_UNITDATA_REQ
Conveys one DLSDU from the DLS user to the DLS provider for
transmission to a peer DLS user.
Because connectionless data transfer is an unacknowledged service, the
DLS provider makes no guarantees of delivery of connectionless
DLSDUs. It is the responsibility of the DLS user to do any necessary
sequencing or retransmission of DLSDUs in the event of a presumed
loss.
Priority messages are currently only supported over 100VG. To send a
priority message over 100VG, a user must have superuser capabilities
and set the dl_priority fields in the DL_UNITDATA_REQ primitive to
the following values:
dl_min must be set to 0.
dl_max must be set to 1.
The dl_priority field will be ignored on interfaces which do not support
priority messages.
Format
The message consists of one M_PROTO message block containing the
structure shown below, followed by one or more M_DATA blocks
containing at least one byte of data. The amount of user data that may be
transferred in a single DLSDU is limited. This limit is conveyed by the
parameter dl_max_sdu in the DL_INFO_ACK primitive.
typedef struct {
ulong dl_primitive;
ulong dl_dest_addr_length;
ulong dl_dest_addr_offset;
dl_priority_t dl_priority;
} dl_unitdata_req_t;
Parameters
dl_primitive
DL_UNITDATA_REQ