块处理可以视为与分段相似。 (有关详细信息,请参阅 段传递。区别在于,分段由本地节点和远程系统之间的通信链接决定,而分块由应用程序和本地节点之间的通信链接决定。
应用程序在 Open(SSCP) 请求 上指示它是否支持分块,如果是,则表示它要使用的区块大小(以字节为单位)。 然后,本地节点使用请求/响应单元(RU)大小、区块大小和段大小(如果适用)来确定是否需要分块。 然后,它指定在 Open(PLU) 请求上用于入站和出站流的区块大小(不需要相同)。 这些值以元素单位指定。 (有关详细信息,请参阅 消息。)其中任一大小的值为零表示不需要分块,因为区块大小不是限制因素。 请注意,在分块数据中,不会在元素中间拆分 RU。 这可避免数据复制。
例如,假设本地节点使用的 RU 大小为 8 KB(KB),并且应用程序 Open(SSCP) 请求 指定段传递,区块大小为 4 KB。 分块将用于入站数据流(因为区块大小小于 RU 大小),但不需要在出站数据流上使用(因为数据将在小于区块大小的段中传递)。
如果在任一方向使用分块,则所有信用值都指定可以向该方向发送的区块数,而不是 RU 数。 请注意, “Open(SSCP)请求 中包含段传递选项,使本地节点能够计算相应 PLU 连接上的初始区块信用值。 应用程序还必须在 Open(PLU) 响应上设置此选项。 如果 Open(SSCP) 请求 和 Open(PLU) 响应 具有此选项的不同设置,将使用 Open(PLU) 响应 中的设置。 这可能意味着使用的初始信用额度不适用。
如果使用会话级流量控制,则本地节点会将此链接到分块配额。 特别是,如果应用程序暂扣信用,本地节点将延迟向主机发送流量控制响应,从而对主机施加反压力。 此链接由本地节点处理,不需要关注应用程序。
对区块 RU 的应用程序标志的处理方式与段上的应用程序标志相同。 (有关详细信息,请参阅 应用标识 和 分段交付。)尤其:
FMHI、BCI、COMMIT、BBI、EBI、CODE、ENCRYP、ENPAD、QRI 和 CEI 仅在 RU 的第一个区块上设置。
ECI 和 CDI 仅在 RU 的最后一个区块上设置。
BBIUI 始终设置在资源单元(RU)的第一个区块上。
EBIUI 总是在 RU 的最后一个区块上进行设置。
请注意,EBI 是在方括号中最后一个 RU 的第一个区块上设置的,而不是在上一个区块上设置,如预期所示。 这与片段传送的行为一致。 应用程序应使用 状态会话(BETB) 消息(而不是 EBI 标志)来确定括号何时结束。
区块是使用 BBIUI 和 EBIUI 的分段标志标识的,因此应用程序在使用出站分段和分块时无法区分区块和段。 但是,通常不需要区别。 应用程序可以通过在接收数据时显示每个数据单元来执行窗口底纹,无论数据单位是段还是区块。 (有关详细信息,请参阅内容分发。)
注释
本文档的早期版本表示这是未来的功能。 主机集成服务器中启用了支持。 应用程序可以在使用分块系统之前测试调用 1.2 或更高版本的 sepdgetinfo 时返回的产品版本。
在某些情况下,本地节点使用的 RU 大小可能太大,无法容纳本地节点和 FMI 应用程序之间的路径长度,例如,使用 16 兆字节(MB)令牌环链路时,该链路可以支持 16 千字节(KB)帧。 本地节点允许 FMI 应用程序指定数据传输应采用较小的单元(称为区块)。
另请参阅
打开 PLU 连接
PLU 会话
出站链式处理
入站链
分段交付
括号
方向
节奏和分块
确认和拒绝数据]
关闭和静止
恢复
Application-Initiated 终止
LUSTAT]
响应时间监视器数据