Open(PLU) 请求

Open (PLU) Request 消息从节点流向应用程序。 它用于主逻辑单元连接之中。

struct Open(PLU) Request {  
    PTRBFHDR  nxtqptr;  
    PTRBFELT  hdreptr;  
    CHAR      numelts;  
    CHAR      msgtype;  
    CHAR      srcl;  
    CHAR      srcp;  
    INTEGER   srci;  
    CHAR      destl;  
    CHAR      destp;  
    INTEGER   desti;  
    CHAR      ophdr.openqual;  
    CHAR      ophdr.opentype;  
    CHAR      ophdr.appltype;  
    CHAR      ophdr.opluno;  
    INTEGER   ophdr.opresid;  
    INTEGER   ophdr.icreditr;  
    INTEGER   ophdr.icredits;  
    CHAR      ophdr.opninfo1;  
};   
struct Open(PLU) Request {  
    PTRBFELT   hdreptr->elteptr;  
    INTEGER    hdreptr->startd;  
    INTEGER    hdreptr->endd;  
    CHAR       hdreptr->trpad;  
    CHAR[268]  hdreptr->dataru;  
};   
struct Open(PLU) Request {  
    PTRBFELT  hdreptr->elteptr->elteptr;  
    INTEGER   hdreptr->elteptr->startd;  
    INTEGER   hdreptr->elteptr->endd;  
    CHAR      hdreptr->elteptr->trpad;  
    CHAR[ ]   hdreptr->elteptr->dataru;  
};   

成员

nxtqptr
指向下一个缓冲区标头的指针。

hdreptr
指向第一个缓冲区元素的指针。

numelts
(0x02) 缓冲区元素的数目。

msgtype
消息类型 OPENMSG (0x01) 。

srcl
源位置。

srcp
源伙伴。

srci
源索引。

destl
目标位置。

destp
目标伙伴。

desti
目标索引。

ophdr.openqual
打开限定符 REQU (0x01) 。

ophdr.opentype
打开类型 LUSEC (0x02) 。

ophdr.appltype
应用程序接口类型。

0x02 (FMI 应用程序)

ophdr.opluno
逻辑单元号。

ophdr.opresid
资源标识符。

ophdr.icreditr
从应用程序流到本地节点的初始额度:零 (无流控制) 。

ophdr.icredits
从本地节点流向应用程序的建议初始额度:节奏窗口 + 1。

ophdr.opninfo1
可转让绑定指示器。

绑定不可协商 (0x00)

绑定可协商 (0x01)

元素 1

hdreptr-elteptr>
指向 buffer 元素的指针。

hdreptr-startd>
此 buffer 元素中的数据开头 (1) 。

hdreptr-endd>
此缓冲区元素中的结束数据。

hdreptr-trpad>
保留。

hdreptr-dataru>
数据 RU,如下所示:

dataru[0–9]

源名称。

dataru[10–19]

目标名称。

dataru[20]

辅助节奏发送窗口。

dataru[21]

辅助节奏接收窗口。

dataru[22–23]

辅助发送最大请求/响应单位 (RU) 大小。 (有关更多信息,请参阅“备注”。)

dataru[24–25]

主要发送最大 RU 大小。 (有关更多信息,请参阅“备注”。)

dataru[26]

次要发送区块大小 (,以元素) 单位为单位。

dataru[27]

主要发送区块大小 (,以元素) 单位为单位。

元素 2

hdreptr-elteptr-elteptr>>
指向缓冲区元素 (NIL) 的指针。

hdreptr-elteptr-startd>>
此缓冲区元素中的开始数据 (13)。

hdreptr-elteptr-endd>>
此缓冲区元素中的结束数据。

hdreptr-elteptr-trpad>>
保留。

hdreptr-elteptr-dataru>>
数据 RU,如下所示:

dataru[13]

从主机收到的 BIND RU。

注解

  • Open (PLU) Request 消息由缓冲区标头、包含源和目标名称、RU 大小等的初始元素组成,后跟包含从主机收到的 BIND RU 的第二个元素。

  • 源位置合作伙伴索引 (LPI) 并且目标 LPI 的 L 和 P 部分有效,但目标 LPI 的 I 部分是保留的。

  • dataru[22–25]) 中 (的两个发送最大 RU 大小字段都是整数值。

  • BIND RU 的长度最大为 256 个字节。

  • 如果应用程序使用 FMI) 函数管理接口 (LUA () 变体的逻辑单元应用程序,则 BIND RU 前面是其传输标头 (TH) ,响应标头 (RH) 。 第二个元素的 起始 字段指向 TH。 (有关 FMI 的详细信息,请参阅 FMI 概念。)

  • LU 编号与 在 Open (SSCP) Response 上分配给命名应用程序匹配。

  • 资源标识符与 应用程序在 Open (SSCP) 请求中使用的值匹配。

  • 如果在 Open (SSCP) 请求中指定了分块,则 icredits (从本地节点到应用程序的初始额度) 字段指定可以传输的区块数,而不是 RU 数。 两个发送区块大小参数以元素为单位指定。 (每个元素最多包含 256 字节的 RU 数据。) 值为零表示区块大小不是确定消息大小的限制因素。 限制因素是 RU 大小或段大小,因此不需要分块。 在这种情况下,仍将使用信用额度,信用单位为消息。

  • 不使用 icreditr (应用程序到本地节点) 字段的初始额度,并且必须设置为零。