ng_sscfu.4 (131726) | ng_sscfu.4 (131861) |
---|---|
1.\" 2.\" Copyright (c) 2001-2003 3.\" Fraunhofer Institute for Open Communication Systems (FhG Fokus). 4.\" All rights reserved. 5.\" 6.\" Redistribution and use in source and binary forms, with or without 7.\" modification, are permitted provided that the following conditions 8.\" are met: --- 10 unchanged lines hidden (view full) --- 19.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 20.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 21.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 22.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 23.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 24.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 25.\" SUCH DAMAGE. 26.\" | 1.\" 2.\" Copyright (c) 2001-2003 3.\" Fraunhofer Institute for Open Communication Systems (FhG Fokus). 4.\" All rights reserved. 5.\" 6.\" Redistribution and use in source and binary forms, with or without 7.\" modification, are permitted provided that the following conditions 8.\" are met: --- 10 unchanged lines hidden (view full) --- 19.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 20.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 21.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 22.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 23.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 24.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 25.\" SUCH DAMAGE. 26.\" |
27.\" Author: Hartmut Brandt <harti@freebsd.org> | 27.\" Author: Hartmut Brandt <harti@FreeBSD.org> |
28.\" | 28.\" |
29.\" $FreeBSD: head/share/man/man4/ng_sscfu.4 131726 2004-07-06 20:43:24Z ru $ | 29.\" $FreeBSD: head/share/man/man4/ng_sscfu.4 131861 2004-07-09 07:26:15Z ru $ |
30.\" 31.\" ng_sscfu(4) man page 32.\" 33.Dd October 24, 2003 34.Dt NG_SSCFU 4 35.Os 36.Sh NAME 37.Nm ng_sscfu 38.Nd netgraph SSCF at the UNI node type 39.Sh SYNOPSIS | 30.\" 31.\" ng_sscfu(4) man page 32.\" 33.Dd October 24, 2003 34.Dt NG_SSCFU 4 35.Os 36.Sh NAME 37.Nm ng_sscfu 38.Nd netgraph SSCF at the UNI node type 39.Sh SYNOPSIS |
40.Fd #include <netnatm/saal/sscopdef.h> 41.Fd #include <netnatm/saal/sscfudef.h> 42.Fd #include <netgraph/atm/ng_sscfu.h> | 40.In netnatm/saal/sscopdef.h 41.In netnatm/saal/sscfudef.h 42.In netgraph/atm/ng_sscfu.h |
43.Sh DESCRIPTION 44The | 43.Sh DESCRIPTION 44The |
45.Nm 46netgraph node implements ITU-T recommendation Q.2130. | 45.Nm sscfu 46netgraph node type implements ITU-T recommendation Q.2130. |
47This recommendation specifies the Service Specific Coordination 48Function at the UNI. 49This is a thin sub-layer between the SSCOP (see 50.Xr ng_sscop 4 ) 51and the UNI signalling. 52This node does not really implement a protocol but 53provides a mapping between the signals at the upper layer of the SSCOP and | 47This recommendation specifies the Service Specific Coordination 48Function at the UNI. 49This is a thin sub-layer between the SSCOP (see 50.Xr ng_sscop 4 ) 51and the UNI signalling. 52This node does not really implement a protocol but 53provides a mapping between the signals at the upper layer of the SSCOP and |
54the signals, the UNI expects at its lower layer. | 54the signals the UNI expects at its lower layer. |
55It also provides default values for the parameters of the SSCOP. 56.Pp 57After creation of the node, the SSCF instance must be created by sending | 55It also provides default values for the parameters of the SSCOP. 56.Pp 57After creation of the node, the SSCF instance must be created by sending |
58an enable message to the node. | 58an 59.Dq enable 60message to the node. |
59If the node is enabled, default SSCOP parameters | 61If the node is enabled, default SSCOP parameters |
60can be retrieved and and set in the corresponding SSCOP instance. | 62can be retrieved and set in the corresponding SSCOP instance. |
61.Pp | 63.Pp |
62The node is shutdown either by a | 64The node is shut down either by a |
63.Dv NGM_SHUTDOWN | 65.Dv NGM_SHUTDOWN |
64message or when all hooks are disconnected. | 66message, or when all hooks are disconnected. |
65.Sh HOOKS 66Each | 67.Sh HOOKS 68Each |
67.Nm | 69.Nm sscfu |
68node has two hooks with fixed names: | 70node has two hooks with fixed names: |
69.Bl -tag -width upper 70.It Dv lower | 71.Bl -tag -width ".Va upper" 72.It Va lower |
71This hook is the interface to the SSCOP. 72The interface expected here is exactly 73that which is exported by the 74.Xr ng_sscop 4 75node type. | 73This hook is the interface to the SSCOP. 74The interface expected here is exactly 75that which is exported by the 76.Xr ng_sscop 4 77node type. |
76.It Dv upper | 78.It Va upper |
77This is the interface to the UNI. 78It uses the following message format: 79.Bd -literal 80struct sscfu_arg { 81 uint32_t sig; 82 u_char data[]; 83}; 84.Ed 85.Pp | 79This is the interface to the UNI. 80It uses the following message format: 81.Bd -literal 82struct sscfu_arg { 83 uint32_t sig; 84 u_char data[]; 85}; 86.Ed 87.Pp |
86.Fa sig | 88The 89.Va sig 90field |
87is one of the following signals: 88.Bd -literal 89enum saal_sig { 90 SAAL_ESTABLISH_request, /* U -> SAAL: (UU) */ 91 SAAL_ESTABLISH_indication, /* SAAL -> U: (UU) */ 92 SAAL_ESTABLISH_confirm, /* SAAL -> U: (UU) */ 93 SAAL_RELEASE_request, /* U -> SAAL: (UU) */ 94 SAAL_RELEASE_confirm, /* SAAL -> U: */ 95 SAAL_RELEASE_indication, /* SAAL -> U: (UU) */ 96 SAAL_DATA_request, /* U -> SAAL: (DATA) */ 97 SAAL_DATA_indication, /* SAAL -> U: (DATA) */ 98 SAAL_UDATA_request, /* U -> SAAL: (UDATA) */ 99 SAAL_UDATA_indication, /* SAAL -> U: (UDATA) */ 100}; 101.Ed 102.Pp | 91is one of the following signals: 92.Bd -literal 93enum saal_sig { 94 SAAL_ESTABLISH_request, /* U -> SAAL: (UU) */ 95 SAAL_ESTABLISH_indication, /* SAAL -> U: (UU) */ 96 SAAL_ESTABLISH_confirm, /* SAAL -> U: (UU) */ 97 SAAL_RELEASE_request, /* U -> SAAL: (UU) */ 98 SAAL_RELEASE_confirm, /* SAAL -> U: */ 99 SAAL_RELEASE_indication, /* SAAL -> U: (UU) */ 100 SAAL_DATA_request, /* U -> SAAL: (DATA) */ 101 SAAL_DATA_indication, /* SAAL -> U: (DATA) */ 102 SAAL_UDATA_request, /* U -> SAAL: (UDATA) */ 103 SAAL_UDATA_indication, /* SAAL -> U: (UDATA) */ 104}; 105.Ed 106.Pp |
103The arrows in the comment show the direction of the signal whether it | 107The arrows in the comment show the direction of the signal, whether it |
104is a signal that comes out of the node | 108is a signal that comes out of the node |
105.Ql -> | 109.Pq Ql -> , |
106or is sent by the node user to the node | 110or is sent by the node user to the node |
107.Ql <- . 108The type of data expected for the signal is specified in parentheses. | 111.Pq Ql <- . 112The type of the data expected for the signal is specified in parentheses. |
109This data starts at the | 113This data starts at the |
110.Fa data | 114.Va data |
111field of the message structure. 112.El 113.Pp 114If the | 115field of the message structure. 116.El 117.Pp 118If the |
115.Dv lower | 119.Va lower |
116hook is disconnected and the node is enabled, the protocol state is 117reset. 118.Sh CONTROL MESSAGES 119The | 120hook is disconnected and the node is enabled, the protocol state is 121reset. 122.Sh CONTROL MESSAGES 123The |
120.Nm | 124.Nm sscfu |
121node understands the generic messages plus the following: | 125node understands the generic messages plus the following: |
122.Bl -tag -width xxx | 126.Bl -tag -width indent |
123.It Dv NGM_SSCFU_GETDEFPARAM 124This message returns a | 127.It Dv NGM_SSCFU_GETDEFPARAM 128This message returns a |
125.Fa sscop_param | 129.Vt sscop_param |
126structure, which contains the default parameters for the SSCOP at the 127UNI. 128This structure should be used for a 129.Dv NGM_SSCOP_SETPARAM 130message to the SSCOP node below the SSCF. 131.It Dv NGM_SSCFU_ENABLE 132This message creates the actual SSCF instance and initializes it. | 130structure, which contains the default parameters for the SSCOP at the 131UNI. 132This structure should be used for a 133.Dv NGM_SSCOP_SETPARAM 134message to the SSCOP node below the SSCF. 135.It Dv NGM_SSCFU_ENABLE 136This message creates the actual SSCF instance and initializes it. |
133Until this is done, parameters may not be retrieved not set and all message | 137Until this is done, parameters may neither be retrieved nor set, 138and all messages |
134received on any hook are discarded. 135.It Dv NGM_SSCFU_DISABLE 136Destroy the SSCF instance. | 139received on any hook are discarded. 140.It Dv NGM_SSCFU_DISABLE 141Destroy the SSCF instance. |
137After this all messages on any hooks are discarded. | 142After this, all messages on any hooks are discarded. |
138.It Dv NGM_SSCFU_GETDEBUG | 143.It Dv NGM_SSCFU_GETDEBUG |
139Retrieve the debugging flags in an | 144Retrieve the debugging flags in a |
140.Vt uint32_t . 141.It Dv NGM_SSCFU_SETDEBUG 142Set debugging flags. | 145.Vt uint32_t . 146.It Dv NGM_SSCFU_SETDEBUG 147Set debugging flags. |
143The argument must be an | 148The argument must be a |
144.Vt uint32_t . 145.It Dv NGM_SSCFU_GETSTATE | 149.Vt uint32_t . 150.It Dv NGM_SSCFU_GETSTATE |
146Retrieve the current state of the SSCFU instance in an | 151Retrieve the current state of the SSCFU instance in a |
147.Vt uint32_t . 148If the node has not been enabled, 0 is returned. 149.El 150.Sh SEE ALSO 151.Xr netgraph 4 , 152.Xr ng_atm 4 , 153.Xr ng_sscop 4 , 154.Xr ngctl 8 155.Sh AUTHORS | 152.Vt uint32_t . 153If the node has not been enabled, 0 is returned. 154.El 155.Sh SEE ALSO 156.Xr netgraph 4 , 157.Xr ng_atm 4 , 158.Xr ng_sscop 4 , 159.Xr ngctl 8 160.Sh AUTHORS |
156.An Harti Brandt Aq harti@freebsd.org | 161.An Harti Brandt Aq harti@FreeBSD.org |