NG_SSCFU(4) | Device Drivers Manual | NG_SSCFU(4) |
ng_sscfu
—
netgraph SSCF at the UNI node type
#include
<netnatm/saal/sscopdef.h>
#include
<netnatm/saal/sscfudef.h>
#include
<netgraph/atm/ng_sscfu.h>
The sscfu
netgraph node type implements
ITU-T recommendation Q.2130. This recommendation specifies the Service
Specific Coordination Function at the UNI. This is a thin sub-layer between
the SSCOP (see ng_sscop(4)) and the UNI signalling. This
node does not really implement a protocol but provides a mapping between the
signals at the upper layer of the SSCOP and the signals the UNI expects at
its lower layer. It also provides default values for the parameters of the
SSCOP.
After creation of the node, the SSCF instance must be created by sending an “enable” message to the node. If the node is enabled, default SSCOP parameters can be retrieved and set in the corresponding SSCOP instance.
The node is shut down either by a
NGM_SHUTDOWN
message, or when all hooks are
disconnected.
Each sscfu
node has two hooks with fixed
names:
struct sscfu_arg { uint32_t sig; u_char data[]; };
The sig field is one of the following signals:
enum saal_sig { SAAL_ESTABLISH_request, /* U -> SAAL: (UU) */ SAAL_ESTABLISH_indication, /* SAAL -> U: (UU) */ SAAL_ESTABLISH_confirm, /* SAAL -> U: (UU) */ SAAL_RELEASE_request, /* U -> SAAL: (UU) */ SAAL_RELEASE_confirm, /* SAAL -> U: */ SAAL_RELEASE_indication, /* SAAL -> U: (UU) */ SAAL_DATA_request, /* U -> SAAL: (DATA) */ SAAL_DATA_indication, /* SAAL -> U: (DATA) */ SAAL_UDATA_request, /* U -> SAAL: (UDATA) */ SAAL_UDATA_indication, /* SAAL -> U: (UDATA) */ };
The arrows in the comment show the direction of the signal,
whether it is a signal that comes out of the node
(‘->
’), or is sent by the node
user to the node (‘<-
’). The
type of the data expected for the signal is specified in parentheses.
This data starts at the data field of the message
structure.
If the lower hook is disconnected and the node is enabled, the protocol state is reset.
The sscfu
node understands the generic
messages plus the following:
NGM_SSCFU_GETDEFPARAM
(getdefparam
)NGM_SSCOP_SETPARAM
message to
the SSCOP node below the SSCF.NGM_SSCFU_ENABLE
(enable
)NGM_SSCFU_DISABLE
(disable
)NGM_SSCFU_GETDEBUG
(getdebug
)NGM_SSCFU_SETDEBUG
(setdebug
)NGM_SSCFU_GETSTATE
(getstate
)Harti Brandt <harti@FreeBSD.org>
October 24, 2003 | Debian |