Merge from vendor branch BSDTAR:
[dragonfly.git] / share / examples / atm / sscop-design.txt
1
2         SSCOP Design
3         ============
4
5 SAP_SSCOP Interface
6 -------------------
7 This is the stack SAP interface between the SSCOP module and an SSCOP user 
8 module (eg. SSCF).  The stack commands defined for this interface are modeled 
9 after the SSCOP protocol specification primitives AA-xxx.  See the protocol 
10 specification documents referenced below for full descriptions of the SSCOP 
11 interface presented to an SSCF.
12
13
14 o The following stack commands are sent from an SSCF to SSCOP:
15
16 Stack Command:  SSCOP_INIT
17 Description:    Initialize a SAP instance.  This should be the first stack
18                 command issued across the SAP instance after the service stack 
19                 has been successfully instantiated.
20 Argument 1:     Specifies the SSCOP version to be used for this stack instance.
21                 (enum sscop_vers) 
22 Argument 2:     Pointer to a structure containing the SSCOP protocol parameter
23                 values to be used for this instance. (struct sscop_parms *)
24
25
26 Stack Command:  SSCOP_TERM
27 Description:    Terminate a SAP instance.  This must be the last stack command
28                 issued across the SAP instance.  The stack instance will be
29                 deleted upon completion of this command.
30 Argument 1:     Not used.
31 Argument 2:     Not used.
32
33
34 Stack Command:  SSCOP_ESTABLISH_REQ
35 Description:    Request the establishment of an SSCOP connection for assured 
36                 information transfer to the remote peer entity.
37 Argument 1:     Pointer to an mbuf chain containing any SSCOP User-to-User
38                 Information (SSCOP-UU / UUI) data to be sent to the peer.
39                 Must be coded as SSCOP_UU_NULL.  (struct mbuf *)
40 Argument 2:     Buffer Release (BR) parameter.  Must be coded as SSCOP_BR_YES.
41                 (int)
42
43
44 Stack Command:  SSCOP_ESTABLISH_RSP
45 Description:    Response indicating that an SSCOP connection establishment 
46                 request from the remote peer is acceptable.
47 Argument 1:     Pointer to an mbuf chain containing any SSCOP User-to-User
48                 Information (SSCOP-UU / UUI) data to be sent to the peer.
49                 Must be coded as SSCOP_UU_NULL.  (struct mbuf *)
50 Argument 2:     Buffer Release (BR) parameter.  Must be coded as SSCOP_BR_YES.
51                 (int)
52
53
54 Stack Command:  SSCOP_RELEASE_REQ
55 Description:    Request the termination of an SSCOP connection with the 
56                 remote peer entity.  
57 Argument 1:     Pointer to an mbuf chain containing any SSCOP User-to-User
58                 Information (SSCOP-UU / UUI) data to be sent to the peer.
59                 Must be coded as SSCOP_UU_NULL.  (struct mbuf *)
60 Argument 2:     Not used.
61
62
63 Stack Command:  SSCOP_DATA_REQ
64 Description:    Request that an assured SDU be sent to the remote peer.
65 Argument 1:     Pointer to an mbuf chain containing the user SDU.
66                 (struct mbuf *)
67 Argument 2:     Not used.
68
69
70 Stack Command:  SSCOP_RESYNC_REQ
71 Description:    Request the resynchronization of an SSCOP connection.
72 Argument 1:     Pointer to an mbuf chain containing any SSCOP User-to-User
73                 Information (SSCOP-UU / UUI) data to be sent to the peer.
74                 Must be coded as SSCOP_UU_NULL.  (struct mbuf *)
75 Argument 2:     Not used.
76
77
78 Stack Command:  SSCOP_RESYNC_RSP
79 Description:    Acknowledge the remote peer's resynchronization of an SSCOP 
80                 connection.
81 Argument 1:     Not used.
82 Argument 2:     Not used.
83
84
85 Stack Command:  SSCOP_RECOVER_RSP (Q.2110 only)
86 Description:    Acknowledge the indication that the SSCOP connection has 
87                 recovered from SSCOP protocol errors.
88 Argument 1:     Not used.
89 Argument 2:     Not used.
90
91
92 Stack Command:  SSCOP_UNITDATA_REQ
93 Description:    Request that an unacknowledged SDU be sent to the remote peer.
94 Argument 1:     Pointer to an mbuf chain containing the user SDU.
95                 (struct mbuf *)
96 Argument 2:     Not used.
97
98
99 Stack Command:  SSCOP_RETRIEVE_REQ
100 Description:    Not supported.
101 Argument 1:     N/A
102 Argument 2:     N/A
103
104
105 o The following stack commands are sent from SSCOP to an SSCF:
106
107 Stack Command:  SSCOP_ESTABLISH_IND
108 Description:    Indication that a request to establish an SSCOP connection has 
109                 been received from the remote peer entity.
110 Argument 1:     Pointer to an mbuf chain containing any SSCOP User-to-User
111                 Information (SSCOP-UU / UUI) data received from the peer.
112                 (struct mbuf *)
113 Argument 2:     Source of establish request (Q.SAAL1 only). Valid values are 
114                 SSCOP_SOURCE_SSCOP or SSCOP_SOURCE_USER. (int)
115
116
117 Stack Command:  SSCOP_ESTABLISH_CNF
118 Description:    Confirmation from the remote peer of an SSCOP connection 
119                 establishment, previously requested via an SSCOP_ESTABLISH_REQ
120                 command.
121 Argument 1:     Pointer to an mbuf chain containing any SSCOP User-to-User
122                 Information (SSCOP-UU / UUI) data received from the peer.
123                 (struct mbuf *)
124 Argument 2:     Not used.
125
126
127 Stack Command:  SSCOP_RELEASE_IND
128 Description:    Indication that an SSCOP connection has been terminated by 
129                 the remote peer entity.
130 Argument 1:     Pointer to an mbuf chain containing any SSCOP User-to-User
131                 Information (SSCOP-UU / UUI) data received from the peer.
132                 (struct mbuf *)
133 Argument 2:     Source of release request. Valid values are SSCOP_SOURCE_SSCOP
134                 or SSCOP_SOURCE_USER. (int)
135
136
137 Stack Command:  SSCOP_RELEASE_CNF
138 Description:    Confirmation from the remote peer of an SSCOP connection 
139                 termination, previously requested via an SSCOP_RELEASE_REQ 
140                 command.
141 Argument 1:     Not used.
142 Argument 2:     Not used.
143
144
145 Stack Command:  SSCOP_DATA_IND
146 Description:    Indication that an assured SDU has been received from the 
147                 remote peer.
148 Argument 1:     Pointer to an mbuf chain containing the peer's SDU.
149                 (struct mbuf *)
150 Argument 2:     Sequence number of the received SDU. (sscop_seq)
151
152
153 Stack Command:  SSCOP_RESYNC_IND
154 Description:    Indication that the remote peer has requested the
155                 resynchronization of the SSCOP connection.
156 Argument 1:     Pointer to an mbuf chain containing any SSCOP User-to-User
157                 Information (SSCOP-UU / UUI) data received from the peer.
158                 (struct mbuf *)
159 Argument 2:     Not used.
160
161
162 Stack Command:  SSCOP_RESYNC_CNF
163 Description:    Confirmation from the remote peer that an SSCOP connection
164                 has been resynchronized.
165 Argument 1:     Not used.
166 Argument 2:     Not used.
167
168
169 Stack Command:  SSCOP_RECOVER_IND (Q.2110 only)
170 Description:    Indication that an SSCOP connection has recovered from SSCOP
171                 protocol errors.
172 Argument 1:     Not used.
173 Argument 2:     Not used.
174
175
176 Stack Command:  SSCOP_UNITDATA_IND
177 Description:    Indication that an unacknowledged SDU has been received from 
178                 the remote peer.
179 Argument 1:     Pointer to an mbuf chain containing the peer's SDU.
180                 (struct mbuf *)
181 Argument 2:     Not used.
182
183
184 Stack Command:  SSCOP_RETRIEVE_IND
185 Description:    Not supported.
186 Argument 1:     N/A
187 Argument 2:     N/A
188
189
190 Stack Command:  SSCOP_RETRIEVECMP_IND
191 Description:    Not supported.
192 Argument 1:     N/A
193 Argument 2:     N/A
194
195
196
197 Protocol Specifications
198 -----------------------
199 For SSCOP_VERS_QSAAL, see Q.SAAL1.
200 For SSCOP_VERS_Q2110, see Q.2110.
201
202
203
204 Implementation Limitations
205 --------------------------
206 o The following signals are not supported:
207         AA-RETRIEVE
208         AA-RETRIEVE COMPLETE
209         AA-RELEASEBUF (Q.SAAL1 only)
210         MAA-UNITDATA
211
212 o Does not support sending the SSCOP-UU/UUI parameter, must be set to NULL
213
214 o For the AA-ESTABLISH request and response signals, only BR=YES is supported 
215
216 o For the AA-DATA request signal, only PR=NO is supported (Q.SAAL1 only)
217
218
219         @(#) $FreeBSD: src/share/examples/atm/sscop-design.txt,v 1.2 1999/08/28 00:19:08 peter Exp $
220         @(#) $DragonFly: src/share/examples/atm/sscop-design.txt,v 1.2 2003/06/17 04:36:57 dillon Exp $
221