DL_CONNECT_IND (dl_connect_ind_t) - conveys to the local DLS user that a remote (calling) DLS user wishes to establish a data link connection. The indication contains the DLSAP address of the calling and called DLS user, and the quality of service parameters as specified by the calling DLS user and negotiated by the DLS provider.The DL_CONNECT_IND also contains a number that allows the DLS user to correlate a subsequent DL_CONNECT_RES,DL_DISCONNECT_REQ, or DL_DISCONNECT_IND with the indication (see
Multi-threaded Connection Establishment ).The number of outstanding DL_CONNECT_IND primitives issued by the DLS provider must not exceed the value of dl_max_conind as returned on the DL_BIND_ACK. If this limit is reached and an additional connect request arrives, the DLS provider must not pass the corresponding connect indication to the DLS user until a response is received for an already outstanding indication.
The message consists of one M_PROTO message block containing the structure shown below.
typedef struct { t_uscalar_t dl_primitive; t_uscalar_t dl_correlation; t_uscalar_t dl_called_addr_length; t_uscalar_t dl_called_addr_offset; t_uscalar_t dl_calling_addr_length; t_uscalar_t dl_calling_addr_offset; t_uscalar_t dl_qos_length; t_uscalar_t dl_qos_offset; t_uscalar_t dl_growth; } dl_connect_ind_t;
- dl_primitive
conveys DL_CONNECT_IND.
- dl_correlation
conveys the correlation number to be used by the DLS user to associate this message with the DL_CONNECT_RES,DL_DISCONNECT_REQ, or DL_DISCONNECT_IND that is to follow. This value, then, enables the DLS user to multi-thread connect indications and responses. All outstanding connect indications must have a distinct, non-zero correlation value set by the DLS provider.
- dl_called_addr_length
conveys the length of the address of the DLSAP for which this DL_CONNECT_IND primitive is intended. This address is the full DLSAP address specified by the calling DLS user and is typically the value returned on the DL_BIND_ACK associated with the given stream.
- dl_called_addr_offset
conveys the offset from the beginning of the M_PROTO message block where the called DLSAP address begins.
- dl_calling_addr_length
conveys the length of the address of the DLSAP from which the DL_CONNECT_REQ primitive was sent.
- dl_calling_addr_offset
conveys the offset from the beginning of the M_PROTO message block where the calling DLSAP address begins.
- dl_qos_length
conveys the range of quality of service parameter values desired by the calling DLS user and negotiated by the DLS provider. The range of QOS values is conveyed in the appropriate structure defined inQOS Data Structures . A full specification of these QOS parameters and rules for negotiating their values is presented inQuality of Data Link Service . For any parameter the DLS provider does not support or cannot determine, the corresponding parameter values will be set to DL_UNKNOWN. If the DLS provider does not support any QOS parameters, this length field will be set to zero.
- dl_qos_offset
conveys the offset from the beginning of the M_PROTO message block where the quality of service parameters begin.
- dl_growth
defines a growth field for future enhancements to this primitive. Its value will be set to zero.
The message is valid in state DL_IDLE, or state DL_INCON_PENDING when the maximum number of outstanding DL_CONNECT_IND primitives has not been reached on this stream.
The resulting state is DL_INCON_PENDING, regardless of the current state.
The DLS user must eventually send either DL_CONNECT_RES to accept the connect request or DL_DISCONNECT_REQ to reject the connect request. In either case, the responding message must convey the correlation number received in the DL_CONNECT_IND. The DLS provider will use the correlation number to identify the connect request to which the DLS user is responding.
Contents | Next section | Index |