NIO CommKit Host Interface Installation and System Administration Manual
DKHS(7) DKHS(7)
E-83 CommKit Host Interface, Release 4.0
NAME
dkhs – High-Speed CommKit Host Interface STREAMS driver
DESCRIPTION
dkhs is a STREAMS device driver that provides a high-performance CommKit Host Interface for the host
system. This driver handles all URP protocol encoding and packet assembly, leaving all call establishment
functions to be performed by the optionally pushed dkux(7) module.
The dkdaemon(1M) process started when entering init state 2 by the dkitrc(1M) script opens the Stream
associated with each Common Signaling Channel device and pushes and holds the dkux(7) module on the
Stream for support of the interfaces. Each physical interface remains active as long as dkdaemon(1M) keeps
the dkux(7) module pushed on the associated Common Signaling Channel.
Read-side Behavior
Several different STREAMS messages are generated by the dkhs driver:
M_CTL Supervisory interactions between this driver and the dkux(7) call processing module
take place via commands contained in M_CTL messages. Supervisory messages are sent
upstream only on Streams associated with the Common Signaling Channel devices
where it is expected that they will be processed by the dkux(7) module.
M_DATA Inbound received data is sent upstream by this driver encapsulated in M_DATA
messages. Each M_DATA message chain consists of a single user-level message of
normal data and should not be interpreted as URP control codes or commands.
Received messages are split at intermediate (that is, BOTM ) URP data block
boundaries whenever necessary to prevent an accumulated message from exceeding
the dkhs_rcv_max_msg_sz tunable parameter. Messages are also split at every point
an URP Level–D control code is encountered in the data stream.
M_FLUSH Standard STREAMS support for M_FLUSH messages is provided.
M_HANGUP dkhs sends an M_HANGUP message upstream on the Stream associated with a circuit
when the dkux(7) module indicates via a supervisory message that the circuit has been
disconnected at the remote end or by the network.
M_IOCACK All successfully processed M_IOCTL messages are positively acknowledged with an
upstream M_IOCACK message.
M_IOCNAK All unsuccessfully completed or unrecognized M_IOCTL requests are negatively
acknowledged with upstream M_IOCNAK messages.
M_PCSIG Interrupts from the CommKit Interface hardware are converted into M_PCSIG messages
when the physical interface is in diagnostic mode. These messages are sent upstream
on the Stream associated with the diagnostic device for the interrupting interface.
M_PROTO URP Level–D control codes received for a circuit are sent upstream in M_PROTO
messages.
M_SETOPTS The Stream-head for each dkhs device is configured on initial open for message no-
discard mode to preserve read message boundaries.
Write-side Behavior
Various STREAMS messages are recognized and processed by the dkhs driver:
M_BREAK The URP Level–D control code for BREAK is transmitted on the circuit associated with
the Stream when this message is received.
M_CTL Supervisory interactions between this driver and cooperating upstream modules and
drivers (that is, dkux(7), dktli(7), etc.) take place via commands contained in M_CTL
messages.