/share/man/man4/ng_sscfu.4

https://bitbucket.org/freebsd/freebsd-head/ · Forth · 161 lines · 161 code · 0 blank · 0 comment · 5 complexity · e1448af1fe3080d3094eebfadd9958e0 MD5 · raw file

  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:
  9. .\" 1. Redistributions of source code must retain the above copyright
  10. .\" notice, this list of conditions and the following disclaimer.
  11. .\" 2. Redistributions in binary form must reproduce the above copyright
  12. .\" notice, this list of conditions and the following disclaimer in the
  13. .\" documentation and/or other materials provided with the distribution.
  14. .\"
  15. .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
  16. .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  17. .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  18. .\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
  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>
  28. .\"
  29. .\" $FreeBSD$
  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. .In netnatm/saal/sscopdef.h
  41. .In netnatm/saal/sscfudef.h
  42. .In netgraph/atm/ng_sscfu.h
  43. .Sh DESCRIPTION
  44. The
  45. .Nm sscfu
  46. netgraph node type implements ITU-T recommendation Q.2130.
  47. This recommendation specifies the Service Specific Coordination
  48. Function at the UNI.
  49. This is a thin sub-layer between the SSCOP (see
  50. .Xr ng_sscop 4 )
  51. and the UNI signalling.
  52. This node does not really implement a protocol but
  53. provides a mapping between the signals at the upper layer of the SSCOP and
  54. the signals the UNI expects at its lower layer.
  55. It also provides default values for the parameters of the SSCOP.
  56. .Pp
  57. After creation of the node, the SSCF instance must be created by sending
  58. an
  59. .Dq enable
  60. message to the node.
  61. If the node is enabled, default SSCOP parameters
  62. can be retrieved and set in the corresponding SSCOP instance.
  63. .Pp
  64. The node is shut down either by a
  65. .Dv NGM_SHUTDOWN
  66. message, or when all hooks are disconnected.
  67. .Sh HOOKS
  68. Each
  69. .Nm sscfu
  70. node has two hooks with fixed names:
  71. .Bl -tag -width ".Va upper"
  72. .It Va lower
  73. This hook is the interface to the SSCOP.
  74. The interface expected here is exactly
  75. that which is exported by the
  76. .Xr ng_sscop 4
  77. node type.
  78. .It Va upper
  79. This is the interface to the UNI.
  80. It uses the following message format:
  81. .Bd -literal
  82. struct sscfu_arg {
  83. uint32_t sig;
  84. u_char data[];
  85. };
  86. .Ed
  87. .Pp
  88. The
  89. .Va sig
  90. field
  91. is one of the following signals:
  92. .Bd -literal
  93. enum 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
  107. The arrows in the comment show the direction of the signal, whether it
  108. is a signal that comes out of the node
  109. .Pq Ql -> ,
  110. or is sent by the node user to the node
  111. .Pq Ql <- .
  112. The type of the data expected for the signal is specified in parentheses.
  113. This data starts at the
  114. .Va data
  115. field of the message structure.
  116. .El
  117. .Pp
  118. If the
  119. .Va lower
  120. hook is disconnected and the node is enabled, the protocol state is
  121. reset.
  122. .Sh CONTROL MESSAGES
  123. The
  124. .Nm sscfu
  125. node understands the generic messages plus the following:
  126. .Bl -tag -width indent
  127. .It Dv NGM_SSCFU_GETDEFPARAM
  128. This message returns a
  129. .Vt sscop_param
  130. structure, which contains the default parameters for the SSCOP at the
  131. UNI.
  132. This structure should be used for a
  133. .Dv NGM_SSCOP_SETPARAM
  134. message to the SSCOP node below the SSCF.
  135. .It Dv NGM_SSCFU_ENABLE
  136. This message creates the actual SSCF instance and initializes it.
  137. Until this is done, parameters may neither be retrieved nor set,
  138. and all messages
  139. received on any hook are discarded.
  140. .It Dv NGM_SSCFU_DISABLE
  141. Destroy the SSCF instance.
  142. After this, all messages on any hooks are discarded.
  143. .It Dv NGM_SSCFU_GETDEBUG
  144. Retrieve the debugging flags in a
  145. .Vt uint32_t .
  146. .It Dv NGM_SSCFU_SETDEBUG
  147. Set debugging flags.
  148. The argument must be a
  149. .Vt uint32_t .
  150. .It Dv NGM_SSCFU_GETSTATE
  151. Retrieve the current state of the SSCFU instance in a
  152. .Vt uint32_t .
  153. If 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
  161. .An Harti Brandt Aq harti@FreeBSD.org