Open(PLU) Request

Open(PLU) 要求メッセージは、ノードからアプリケーションに流れます。 これは、プライマリ論理ユニット (PLU) 接続で使用されます。

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
このバッファー要素のデータの開始 (1)。

hdreptr-endd>
このバッファー要素のデータの終わり (13)。

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
Buffer 要素 (NIL) のポインター。

hdreptr–>elteptr–>startd
このバッファー要素のデータの始め (13)。

hdreptr–>elteptr–>endd
このバッファー要素のデータの終わり (13)。

hdreptr–>elteptr–>trpad
予約済み。

hdreptr–>elteptr–>dataru
データ RU を次に示します。

dataru[13]

ホストから受信した BIND RU。

注釈

  • Open(PLU) 要求メッセージは、バッファー ヘッダー、ソースと宛先の名前、RU サイズなどを含む初期要素、ホストから受信した BIND RU を含む 2 番目の要素で構成されます。

  • 移行元の Locality Partner Index (LPI) と宛先 LPI の L と P の部分は有効ですが、宛先 LPI の I 部分は予約されています。

  • 2 つの送信最大 RU サイズ フィールド ( dataru[22-25]) はどちらも整数値です。

  • BIND RU の長さは最大 256 バイトです。

  • アプリケーションが関数管理インターフェイス (FMI) の論理ユニット アプリケーション (LUA) バリアントを使用している場合、 BIND RU の前に送信ヘッダー (TH) と応答ヘッダー (RH) が付きます。 2 番目の要素の 開始 フィールドは TH を指します。 (FMI の詳細については、「FMI の概念」を参照してください。)

  • LU 番号は、 Open(SSCP) 応答で名前付きアプリケーションに割り当てられた値と一致します。

  • リソース識別子は、 Open(SSCP) 要求でアプリケーションによって使用される値と一致します。

  • Open(SSCP) 要求でチャンクが指定された場合、icredits (ローカル ノードからアプリケーションへの初期クレジット) フィールドには、送信できる RU ではなくチャンクの数が指定されます。 2 つの送信チャンク サイズ パラメーターは、要素の単位で指定されます。 (各要素には、最大 256 バイトの RU データが含まれます)。値 0 は、チャンク サイズがメッセージのサイズを決定する際の制限要因ではないことを示します。 制限要因は RU サイズまたはセグメント サイズであるため、チャンクは必要ありません。 この場合、クレジットは引き続き使用され、クレジット単位はメッセージになります。

  • icreditr (アプリケーションからローカル ノードへの初期クレジット) フィールドは使用されず、0 に設定する必要があります。