T_OPTDATA_IND - Data indication with options
The message consists of one M_PROTO message block followed by zero or more message blocks, where each M_DATA message block contains one or more bytes of data. The format of the M_PROTO message block is as follows:
struct T_optdata_ind { t_scalar_t PRIM_type; /* always T_OPTDATA_IND */ t_scalar_t DATA_flag; /* flag bits associated with data */ t_scalar_t OPT_length; /* options length */ t_scalar_t OPT_offset; /* options offset */ };
The primitive indicates to the transport user that the message contains a transport interface data unit. One or more transport interface data units form a transport service data unit (TSDU).Note that the maximum transport service and data unit sizes allowed by a transport provider is indicated to the user by the T_INFO_ACK primitive.
This primitive has a mechanism that indicates the beginning and end of a transport service data unit. However not all transport providers support the concept of a transport service data unit.
This primitive also provides mechanisms to have options associated with the data being transferred.
The fields of this message have the following semantics:
- PRIM_type
identifies the primitive type
- DATA_flag
specifies bit fields specific general properties associated with the data being transferred. The following settings are currently defined:
- T_ODF_MORE
- When set, this bit indicates that the next T_OPTDATA_IND primitive is also part of this transport service data unit.
- OPT_length
the length of the requested options asociated with the primitive
- OPT_offset
the offset (from the beginning of the M_PROTO message block) where the options asociated with this primitive begin.
If a TSDU spans multiple T_OPTDATA_IND message blocks, then an ETSDU may be placed between two T_DATA_IND message blocks. Once an ETSDU is started, then the ETSDU must be completed before any T_OPTDATA_IND message blocks defining a TSDU are resumed.
Only connection mode.
Transport provider.
Contents | Next section | Index |