q93b(7)
NAME
q93b − Mux Driver supporting Q.2931 signalling
SYNOPSIS
#include <atm/qcc.h>
#include <atm/qccioctl.h>
DESCRIPTION
The q93b driver supports Q.2931 call control signalling as defined by the ATM Forum’s User Network Interface, V3.0. It is a multi-threaded, loadable, clonable, M-to-N mux STREAMS driver. Its interface is defined by the Q.2931 message set, with some additions for synchronization between the driver and user process. A Q.2931 Call Control library is provided with the SUNWatm software package which provides a set of functions that may be used to build and parse q93b messages. See the qcc_∗ man pages for further information.
The following table lists the messages types that are supported. For sample message exchanges, see Appendix E in the SunATM-155 SBus Card Manual.
TYPE | DIRECTION
-----------------------------
setup | both
setup_ack∗ | to user
call_proceeding | both
connect | both
connect_ack | to user
release | to q93b
release_complete | both
status_enquiry | to q93b
status | to user
restart | both
restart_ack | both
∗private to the user/q93b interface
Messages to the q93b driver should consist of two mblks, as shown below:
M_PROTO M_DATA
_____________ ___________________________
--->| |--->| | | |
| IF_Name | | Q.2931 Message | |
| Call_ID | | | | |
| Type | | | | |
| Error | | | Information | |
| Call_Tag | | (9) | Elements | (16)|
|_____________| |_____|_______________|_____|
The 9 byte header on the M_DATA block consists of the Q.2931 header information; the 16 byte trailer is allocated for use by the lower layers to enhance performance. This additional 25 bytes is added to the variable length Information Element (IE) section when the qcc_len functions calculate the required buffer sizes for the message types. The Q.2931 header is also filled in by the qcc_bld functions.
The q93b driver supports one ioctl, Q93B_IOC_BIND. This ioctl is used to bind an opened stream to the q93b driver to a specified service access point. See the <atm/qccioctl.h> header file for a definition of the q93b ioctl structure. A function, q_ioc_bind, is provided in the qcc library to use this ioctl; see the qcc_util man page for details.
SEE ALSO
qcc_bld(3), qcc_len(3), qcc_parse(3), qcc_util(3), sa_util(3), qcc_bld(9F), qcc_parse(9F), sa(7)
"ATM User-Network Interface Specification, V3.0," ATM Forum.
"Data Link Provider Interface Specification, Rev. 2.0.0," 20 Aug 1991, UNIX International.
SunATM-155 SBus Card Manual
SunOS 2.0 — Last change: 7 Dec 1994