以下消息中包括应用程序标志:
所有数据消息(入站和出站)
Status-Acknowledge(Ack) (仅出站)
所有 状态控制 消息(入站和出站)
这些标志表示消息与消息相关的会话状态的关键指标,并且与 SNA 请求或响应中的请求标头或响应标头(RH)指示器密切相关(但并不总是等效)。 请注意,对于入站消息,应用程序需要仅对 数据 消息和 状态控制 消息设置标志。
对于出站消息,本地节点设置应用程序标志以反映相应 SNA 消息中 RH 的内容。 本地节点在将 SNA 消息发送到应用程序之前对 SNA 消息执行检查。 因此,应用程序可以假定 RH 指示器遵循 SNA 协议,并且不需要执行自己的检查。 用于解释应用程序标志的应用程序任务比本地节点向消息显示未解释的 RH 要简单得多。 例如:
如果应用程序在打开主逻辑单元(PLU)连接时指定了段传递选项,则 SNA 请求上的结束链指示器(ECI)将在链中最后一个请求/响应单元(RU)的第一段上发生,但该链直到收到该 RU 的最后一段才会完成。 在这种情况下,本地节点会操作应用程序标志,以便在最后一段而不是第一段中设置 ECI 标志。 (有关详细信息,请参阅 打开 PLU 连接。
使用 PLU 会话上的传输服务配置文件 4(TS 配置文件 4)的应用程序可以接收明确的响应 2(DR2) RH 指示器,并结合明确响应 1(DR1)或异常响应(ER)来提供 RQD2、RQD3、RQE2 和 RQE3 请求。 本地节点解释 RH 指示器并相应地设置 COMMIT 应用程序标志。
对于入站数据和状态控制消息,应设置应用程序标志来控制会话特征,如链接、方向控制和括号。 对于 状态确认 消息,本地节点会生成 SNA 响应,并使用从相应请求中保存的信息设置 RH 指示器。 应用程序不需要在此消息上设置标志。
有关使用函数管理接口(FMI)分块时的应用程序标志用法的信息,请参阅 分块。
在大多数情况下,应用程序不需要在 Status-Acknowledge(Ack) 消息上使用应用程序标志,这些标志派生自相应响应的响应标头指示器。 但是,某些应用程序确实需要访问响应上的响应标头标志。 例如,使用 TS 配置文件 4 的事务处理应用程序可以接收响应上的 DR2 标志,这些标志在应用程序标志中显示为 COMMIT 标志。
状态控制(SC)消息上的应用程序标志使用情况派生自相应数据流控制或会话控制请求单元中的响应标头指示器。 应用程序可能需要了解 Status-Control 消息的响应标头标志。 例如,LUSTAT 请求类型 6 是一种 no-op,仅用于在不允许其他请求时发送响应标头标志。 本地节点将请求作为状态控制(LUSTAT)请求传递到应用程序,并设置了相关的应用程序标志。 有关数据流控制请求单位的有效请求标头使用情况和 SC 请求的有效响应标头指示器的摘要,请参阅 SNA 格式和协议参考手册:体系结构逻辑 (IBM publication SC30-3112)。
在下表中应用程序标志的摘要中,位以位 0 作为字节中最重要的位进行编号,位 7 作为最小有效位。 如果标志的相关位为 1,则设置应用程序标志;如果位为 0,则不设置应用程序标志。
标志 1 在所有消息中发生。
下表列出了各个位的含义。
| 标志 1 中的位 | 含义 |
|---|---|
| FMHI [位 0, 标志 1] 值:AF_FMH (0x80) | 函数管理标头指示器。 设置消息中是否存在函数管理标头,或者消息是函数管理数据网络服务(FMD NS)请求。 仅对 数据 消息有效。 始终为 3270 用户警报设置此标志,这些警报在系统服务控制点(SSCP)连接上发送。 有关详细信息,请参阅 3270 用户警报。 |
| BCI [位 1, 标志 1] 值:AF_BC (0x40) | 开始链指示器。 设置此消息是否启动链。 有关详细信息,请参阅 出站链接 和 入站链接。 |
| ECI [位 2, 标志 1] 值:AF_EC (0x20) | 结束链指示器。 设置此消息是否结束链。 有关详细信息,请参阅 出站链接 和 入站链接。 |
| COMMIT [位 3, 标志 1] 值:AF_COMM (0x10) | 提交指示器。 设置链是否携带 DR2。 |
| BBI [位 4, 标志 1] 值:AF_BB (0x08) | 开始方括号指示器。 设置链是否携带开始方括号 (BB)。 请注意,这不一定指示括号已启动。 有关详细信息,请参阅 括号。 |
| EBI [位 5, 标志 1] 值:AF_EB (0x04) | 端括号指示器 - 如果链携带端括号 (EB) 进行设置。 请注意,这并不表示括号已终止。 有关详细信息,请参阅 括号 。 |
| CDI [位 6, 标志 1] 值:AF_CD (0x02) | 更改方向指示器。 设置链是否具有更改方向 (CD)。 有关详细信息,请参阅 “方向”。 |
| SDI [位 7, 标志 1] 值:AF_SD(0x01) | 系统检测到错误指示器。 设置本地节点是否检测到出站数据中的错误。 有关详细信息,请参阅 出站数据。 |
标志 2 发生在 状态控制(STSN)以外的所有消息中,其中此字节中包含的指示器不适用。
下表中列出了各个位的含义。
| 标志 2 中的位 | 含义 |
|---|---|
| CODE [bit 0, flag 2] Value: AF_CODE (0x80) | 备用代码指示器。 如果备用代码集(通常是 ASCII)用于此 数据 消息,则设置。 请注意,函数管理标头不受代码选择指示器影响。 |
| ENCRYP [位 1, 标志 2] 值:AF_ENCR (0x40) | 加密的数据指示器。 设置为指示 数据 消息中的信息在会话级别加密协议下加密。 必须为数据加密提供必要的支持。 Host Integration Server 本地节点不支持加密。 |
| ENPAD [位 2, 标志 2] 值:AF_ENPD (0x20) | 填充的数据指示器。 与 ENCRYP 标志一起设置,以指示在加密之前,数据在末尾填充到下一个整数的 8 个字节的倍数。 |
| QRI [位 3, 标志 2] 值:AF_QRI (0x10) | 排队的响应指示器。 如果对此请求的响应在传输控制和数据流控制层中排队,则设置此请求的响应。 此标志仅适用于入站消息。 |
| CEI [位 4, 标志 2] 值:AF_CEI (0x08) | 链尾指示器。 使用 EC 设置与出站 SNA 请求对应的消息,并开始基本信息单元 (BBIU)。 此标志仅用于使用 SNA 服务器组件。 应用程序不应尝试使用它。 |
| BBIUI [位 5, 标志 2] 值:AF_BBIU (0x04) | 开始基本信息单位指示器。 使用 BBIU 设置与出站 SNA 请求对应的消息。 此标志用于使用 SNA 服务器组件,以及使用段传递和出站节奏的应用程序。 应用程序不应尝试使用它。 (有关详细信息,请参阅 Pacing 和分块。 |
| EBIUI [位 6, 标志 2] 值:AF_EBIU (0x02) | 结束基本信息单位指示器。 在与出站 SNA 请求对应的消息上设置,其中包含结束基本信息单元(EBIU)。 此标志仅用于使用 SNA 服务器组件。 应用程序不应尝试使用它。 |
| RBI [位 7, 标志 2] 值:AF_RBI (0x01) | 实际 BID 指示器。 仅在 状态控制(BID) 上设置请求来自本地节点的消息。 0x01指示消息是由于 SNA BID RU 导致的。0x00指示消息是由于设置了 BB 的出站函数管理数据(FMD)RU 导致的。 |