プログラムの中で各フィールドの内容を設定したり,参照したりする場合は,ここで説明しているシンボリック名を使用します。
通信記述部からポイントしているパラメタ領域の説明は,図9-1の形式で行います。使用が任意となっているパラメタを使用しない場合は,ポインタをNULLクリアしてください。
図9-1 通信記述部の各フィールドの説明
アソシエーション端点識別子を格納する領域です。アソシエーション端点識別子は,ユーザがENABLE獲得型または受け入れ指示型発行時に通信管理が割り当て,リターン情報で通知します。
リターンコードが異常終了でerrno=EINVALのときに,通信管理が詳細エラーコードを返す領域です。
詳細エラーコードについては,「12. 詳細エラーコード」を参照してください。
非同期要求が完了したときにその関数の種別を格納する領域です。
動作モードを指定します。
AP識別子が格納されている領域を指定します。AP識別子の形式を表9-1に示します。
表9-1 AP識別子の形式
フィールド名 | パラメタ値 | 指定 |
---|---|---|
AP識別子 | 英数字 (1~14文字) | ENABLEの獲得型(O_ACTR)または受け入れ指示型(O_PASI)を指定したときに必須となります。 |
サービス種別を指定します。
セション層のプロトコルバージョン番号を指定します。
または,O_VER(n):n=1のときバージョン1,n=2のときバージョン2です。両者を論理和形式でも指定できます。
要求種別を格納する領域です。
表9-2 SEND関数の要求種別
項番 | 名称 | 内容 |
---|---|---|
1 | O_RIVRQ | RO-INVOKE要求 |
2 | O_RRSRQ | RO-RESULT要求 |
3 | O_RERRQ | RO-ERROR要求 |
4 | O_RRJURQ | RO-REJECT-U要求 |
5 | O_PDTRQ | P-DATA要求 |
6 | O_PSMNRQ | P-SYNC-MINOR要求 |
7 | O_PSMNRS | P-SYNC-MINOR応答 |
8 | O_PRSRQ | P-RESYNCHRONIZE要求 |
9 | O_PRSRS | P-RESYNCHRONIZE応答 |
10 | O_PGTRQ | P-TOKEN-GIVE要求 |
11 | O_PPTRQ | P-TOKEN-PLEASE要求 |
12 | O_PSMJRQ | P-SYNC-MAJOR要求 |
13 | O_PSMJRS | P-SYNC-MAJOR応答 |
14 | O_PTDTRQ | P-TYPED-DATA要求 |
表9-3 RECEIVE関数の要求種別
項番 | 種別 | 内容 |
---|---|---|
1 | O_ASC_CF | A-ASC確認の受諾と拒否 |
2 | O_RLS_ID | A-RELEASE指示 |
3 | O_ABR_ID | A-ABORT指示 |
4 | O_PAR_ID | A-PABORT指示 |
5 | O_RIVID | RO_INVOKE指示 |
6 | O_RRSID | RO_RESULT指示 |
7 | O_RERID | RO_ERROR指示 |
8 | O_RRJUID | RO_REJECT-U指示 |
9 | O_RRJPID | RO_REJECT-P指示 |
10 | O_PDTID | P-DATA指示 |
11 | O_PSMNID | P-SYNC-MINOR指示 |
12 | O_PSMNCF | P-SYNC-MINOR確認 |
13 | O_PRSID | P-RESYNCHRONIZE指示 |
14 | O_PRSCF | P-RESYNCHRONIZE確認 |
15 | O_PGTID | P-TOKEN-GIVE指示 |
16 | O_PPTID | P-TOKEN-PLEASE指示 |
17 | O_PSMJID | P-SYNC-MAJOR指示 |
18 | O_PSMJCF | P-SYNC-MAJOR確認 |
19 | O_PTDTID | P-TYPED-DATA指示 |
送受信データの種別を格納する領域です。
ENABLEの獲得型発行時,相手PSAPアドレス格納領域のアドレスを指定します。
ENABLEの受け入れ指示型発行時と,RECEIVEでO_ASC_CFの受信時,相手PSAPアドレス格納領域長は最小93バイト,最大128バイト(LI値は92バイト~127バイト)を確保し,1バイトの領域にLIを設定してください。格納領域のLI値が92より小さいかまたは127より大きい場合,もしくは格納領域のアドレスがNULLの場合は,ENABLEがエラーリターンします。
相手PSAPアドレスの形式を図9-2に示します。
図9-2 相手PSAPアドレスの形式
アソシエーション受け入れ指示または確立応答を受信したとき,相手側がAP名称を指定しているかどうかを示すフラグ(ビット)です。
O_NAPNM以外の項目は,論理積を取得し,指定の有無を判断してください。
(12)以降の説明では,m:発呼側,y:着呼側,r:応答側のパラメタを示しています。
発呼側,着呼側はENABLEの獲得型または受け入れ指示型で指定します。応答側はENABLEの受け入れ応答型またはRECEIVEでO_ASC_CFを受信した場合に指定します。
APタイトル格納領域のアドレスを指定します。
AP-title::=ANY (ISO 8650:1988)
AE修飾子格納領域のアドレスを指定します。
AE-qualifier::=ANY (ISO 8650:1988)
APインボケーションID格納領域のアドレスを指定します。
AP-invocation-identifier::=INTEGER (ISO 8650:1988)
AEインボケーションID格納領域のアドレスを指定します。
AE-invocation-identifier::=INTEGER (ISO 8650:1988)
AP名称の形式を図9-3に示します。
図9-3 AP名称の形式
応用コンテキスト名格納領域のアドレスを指定します。
Application-context-name::=OBJECT IDENTIFIER(ISO 8650:1988)
応用コンテキスト名の形式を図9-4に示します。
図9-4 応用コンテキスト名の形式
プレゼンテーションコンテキスト定義リストとプレゼンテーションコンテキスト定義結果リストを指定しているかどうかを示すフラグ(ビット)です。
プレゼンテーションコンテキスト定義リストの格納領域アドレスを指定します。
ACSEのコンテキスト定義リストはOSI通信機能が設定します。ROSEのコンテキスト定義リストは存在しません。ENABLEの獲得型の場合は,APが格納領域にAPのプレゼンテーションコンテキスト定義リストを設定します。
ENABLEの受け入れ指示型の場合は,APが格納領域のアドレスとLIを設定し,内容はOSI通信機能が設定します。ただし,APが指定したLIよりも相手APから受信したプレゼンテーションコンテキスト定義リストが長い場合は,LI値分だけの内容をOSI通信機能が設定し,後続データを切り捨てます。この場合はリターン情報で通知します。
Presentation-context-definition-list::=Context-list
Context-list::=SEQUENCE OF SEQUENCE{Presentation-context
-identifier,Abstract-
-syntax-name,SEQUENCE
OF Transfer-syntax-name}
Presentation-context-identifier::=INTEGER
Abstract-syntax-name::=OBJECT IDENTIFIER
Transfer-syntax-name::=OBJECT IDENTIFIER(ISO 8823:1988)
プレゼンテーションコンテキスト定義リストの形式を図9-5に示します。
図9-5 プレゼンテーションコンテキスト定義リストの形式
アソシエーション確立要求側から指定されたプレゼンテーションコンテキスト定義リストに対して,ENABLEの受け入れ応答型またはDISABLEの確立拒否でAPがネゴシエーションしたコンテキスト定義結果リストを設定します。受信したコンテキスト定義リストと同数のコンテキスト定義結果リストを設定します。
RECEIVEで確立確認受信時は,コンテキスト定義結果リスト格納領域のアドレスとLIを設定します。APが指定した格納領域のLIが,相手APから受信した長さより小さい場合は格納領域のLI値分だけの内容をOSI通信機能が設定し,後継データを切り捨ててリターン情報で通知します。
Presentation-context-definition-result-list::=Result-list
Result-list::=SEQUENCE OF SEQUENCE
{ 〔0〕IMPLICIT Result,
〔1〕IMPLICIT Transfer-syntax-name OPTIONAL,
provider-reason〔2〕IMPLICIT INTEGER
{ reason-not-specified (0),
abstract-syntax-not-supported (1),
proposed-transfer-syntaxes-not-supported(2),
local-limit-on-DCS-exceeded (3)
}OPTIONAL
}
Result::=INTEGER{acceptance (0),
user-rejection (1),
provider-rejection(2)
}
(ISO 8823:1988)
プレゼンテーションコンテキスト定義結果リストの形式を図9-6~図9-8に示します。
図9-6 プレゼンテーションコンテキスト定義結果リストの形式(受諾の場合)
図9-7 プレゼンテーションコンテキスト定義結果リストの形式(提供者拒否の場合)
図9-8 プレゼンテーションコンテキスト定義結果リストの形式(利用者拒否の場合)
プレゼンテーションコンテキスト識別子リスト格納領域のアドレスを指定します。
利用者がアソシエーションを異常解放したときの利用者情報のプレゼンテーションコンテキストを設定するパラメタで,プロトコルバージョン番号がO_VERSN2/O_VERSN3のときだけ使用します。
DISABLEの異常終了でAPが設定し,RECEIVEで強制終了受信,またはDISABLEの終了要求発行時にAPが格納領域のアドレスとLIを設定し,内容をOSI通信機能が設定します。
Presentation-context-identifier-list::=SEQUENCE OF SEQUENCE{
Presentation-context-identifier,
Transfer-syntax-name
} (ISO 8823:1988)
プレゼンテーションコンテキスト識別子リストの形式を図9-9に示します。
図9-9 プレゼンテーションコンテキスト識別子リストの形式
APが使用するセション要求機能,または相手APとのネゴシエーション結果であるセション要求機能を設定します。PLサービスのENABLE(獲得型・受け入れ応答型),またはDISABLEの確立拒否を発行する場合に指定します。OSASサービスを使用する場合は全二重だけ使用できます。次に示す二つの指定形式をサポートしていますが,形式2を推奨します。
形式2はパラメタの論理和形式で設定できます。ただし,ENABLE獲得型以外を発行する場合は,1または2のどちらか一方だけを指定できます。3を指定した場合,小同期の指定が必須になります。
PLサービスのセションのオプション項目である同期点通し番号,またはトークン項目の設定有無を設定します。ただし,このパラメタはセション要求機能に半二重機能,小同期機能,再同期機能,または大同期機能をユーザが指定したアソシエーションで,次の通信関数にだけOSI通信機能が設定します。
なお,設定するオプション内容は次のとおりです。
PLサービスのオプション項目であるセションパラメタを使用する場合に必要な,パラメタの格納領域のアドレスを設定します。サポートするPLサービスのオプション項目を表9-4に示します。
表9-4 セションパラメタ(オプション項目)
項番 | 機能項目 | 関数/要求種別 | 機能概要 |
---|---|---|---|
1 | 初期同期点通し番号 |
| 小同期機能,再同期機能,および大同期機能を使用する場合に,同期点通し番号の初期値を指定します。 |
2 | トークン項目 |
| 小同期トークン,データトークン,および大同期トークンを制御する場合に使用します。 |
3 | 大同期点通し番号 |
| 大同期点通し番号の送受信および同期型を指定します。 |
4 | 小同期点通し番号 データ分離 |
| 小同期点通し番号の送受信および同期型,データ分離を指定します。 |
5 | 再同期点通し番号 |
| 再同期点通し番号の送受信および再同期型とトークン保持側を指定します。 |
トークン制御は要求種別に応じてトークン項目を格納領域内に同時指定して,1回の送受信ですることもできます。同時指定できる要求種別とトークン制御の組み合わせを表9-5に示します。
表9-5 トークン制御と要求種別の組み合わせ
項番 | トークン制御 | 関数/要求種別 | 格納領域の形式 |
---|---|---|---|
1 | トークン譲渡 | SEND/O_PDTRQ RECEIVE/O_PDTID | 「(b)トークン項目(トークン制御)の形式」を参照してください。 |
SEND/O_PSMJRQ RECEIVE/O_PSMJID | 「(c)大同期点通し番号の形式」の「2 同期要求,同期受付の場合(トークン制御の指定あり)」を参照してください。 | ||
SEND/O_PSMNRQ RECEIVE/O_PSMNID | 「(d)小同期点通し番号およびデータ分離指定の形式」の「2 同期要求,同期受付の場合(トークン制御の指定あり)」を参照してください。 | ||
2 | トークン要求 | SEND/O_PSMJRS RECEIVE/O_PSMJCF | 「(c)大同期点通し番号の形式」の「4 同期応答,同期確認の場合(トークン制御の指定あり)」を参照してください。 |
SEND/O_PSMNRS RECEIVE/O_PSMNCF | 「(d)小同期点通し番号およびデータ分離指定の形式」の「4 同期応答,同期確認の場合(トークン制御の指定あり)」を参照してください。 | ||
SEND/O_PRSRS RECEIVE/O_PRSCF | 「(e)再同期点通し番号の形式」の「3 再同期応答,再同期確認の場合(トークン制御の指定あり)」を参照してください。 |
格納領域の内容は次の形式です。
RECEIVEで指定する格納領域のLI値は,どの機能項目でも受信できるように最大値をAPが設定する必要があります((09)16≦LI≦(7f)16)。
初期同期点通し番号の形式を図9-10に示します。
図9-10 初期同期点通し番号の形式
トークン項目の形式を図9-11に示します。
図9-11 トークン項目の形式
大同期点通し番号の形式を図9-12に示します。
図9-12 大同期点通し番号の形式
小同期点通し番号およびデータ分離指定の形式を図9-13に示します。
図9-13 小同期点通し番号およびデータ分離指定の形式
再同期点通し番号の形式を図9-14に示します。
図9-14 再同期点通し番号の形式
PLサービスで,セションのオプション項目である小同期トークン,大同期トークン,または半二重トークンを起動側保持の場合,応答側が要求するかしないかを,ENABLEの受け入れ応答型指定時にAPが設定します。
形式2はパラメタの論理和形式で設定できます。
PLサービスで,セションのオプション項目である小同期機能,大同期機能,または半二重機能を設定時に,トークンをだれが所有するかを示すトークン所有者設定項目を設定します。
表9-6 トークン項目と指定パラメタ
トークン項目 | 指定パラメタ | 指定内容 |
---|---|---|
データトークン | O_BTS_DG(00)2 | 起動側保持 |
O_BTS_DD(01)2 | 応答側保持 | |
O_BTS_DS(10)2 | 着呼側の選択 | |
小同期トークン | O_BTS_IG(00)2 | 起動側保持 |
O_BTS_ID(01)2 | 応答側保持 | |
O_BTS_IS(10)2 | 着呼側の選択 | |
大同期トークン | O_BTS_AG(00)2 | 起動側保持 |
O_BTS_AD(01)2 | 応答側保持 | |
O_BTS_AS(10)2 | 着呼側の選択 |
表9-6のパラメタの論理和形式で設定できます。
ユーザがトークンを指定しないトークン項目については,デフォルトとして起動側保持を通信管理で設定します。
送信するユーザデータが格納されている領域のアドレスを指定します。
送信するユーザデータがないときは,NULLアドレスとします。ROSEを使用する場合は,ユーザデータ領域は必須です。
送信するユーザデータ長を指定します。ユーザデータがない場合は,0とします。
ACSEのAPDUを送信する場合は,ACSEデータ長(EXTERNALを含む)を指定します。PLのAPDUを送信する場合は,PDVリストおよびPLデータとの総和を指定します。
ROSEのAPDUを送信する場合は,PDVリストとROSEのAPDU長との総和を設定します。
ユーザデータを受信するバッファの先頭アドレスを指定します。受信するユーザデータがないときは,NULLアドレスとします。
ユーザの受信バッファ長を指定します。ユーザデータがない場合は,0を設定します。
受信したデータが受信バッファ長よりも大きいときは,受信データのあふれ分を切り捨てます。
ACSEのAPDUを受信する場合は,ACSEデータ(EXTERNALを含む)を指定します。PLのAPDUを受信する場合は,PDVリストおよびPLデータとの総和を指定します。
ROSEのAPDUを受信する場合は,PDVリストとROSEのAPDU長との総和を設定します。
受信したユーザデータ長を格納する領域です。このフィールドは,受信したユーザデータ長をOSI通信機能が設定します。
アソシエーション確立結果を格納する領域です。
アソシエーション確立拒否の場合,理由診断を格納する領域です。
アソシエーション異常解放時の中断元を格納する領域です。
アソシエーション解放時の切断理由コードを格納する領域です。
切断理由コードはOSI通信機能で検出したエラーの内容をOSI通信機能として,独自に規定したコードです。
アソシエーション解放後のユーザのリトライを行うかどうかの判断を必要とする場合は,RETRYCK関数を使用します。
この理由コードは事前通告なく変更することがあります。
切断理由コードについては,「13. 切断理由コード」を参照してください。
ENABLEおよびDISABLEの確立拒否を発行する場合,自局のPSAPアドレスを格納領域に設定します。
RECEIVEでO_ASC_CFを受信するとき,最大長のPSAPアドレスを受信する可能性があるため,自局PSAPアドレス格納領域長は最小93バイト(LI値は92バイト)を確保し,1バイトの領域にLIを設定してください。
また,受信用の格納領域のLIが,(5c)16≦LI≦(7f)16以外と,受信用の格納領域のアドレスがNULLのときはエラーリターンします。
自局PSAPアドレスのデータ形式を図9-15に,自局PSAPアドレスの内容を表9-7に示します。
図9-15 自局PSAPアドレスのデータ形式
表9-7 自局PSAPアドレスの内容
フィールド名 | 長さ | パラメタ値 | 説明 |
---|---|---|---|
LI | 1バイト | MAX(46)16 | 自局PSAPアドレス長を示します。 |
PI | 1バイト | (81)16 | Pセレクタ識別のための識別子です。 |
LI | 1バイト | (00)16~(10)16 | Pセレクタの長さを示します。 指定できるPセレクタの長さは最大16バイトです。 |
Pセレクタ | 最大16バイト | - | Pセレクタを指定します。 Pセレクタを省略する場合は,LIに(00)16を指定します。 |
PI | 1バイト | (82)16 | Sセレクタ識別のための識別子です。 |
LI | 1バイト | (00)16~(10)16 | Sセレクタの長さを示します。 指定できるセレクタの長さは最大16バイトです。 |
Sセレクタ | 最大16バイト | - | Sセレクタを指定します。 Sセレクタを省略する場合は,LIに(00)16を指定します。 |
PI | 1バイト | (83)16 | Tセレクタ識別のための識別子です。 |
LI | 1バイト | (00)16~(20)16 | Tセレクタの長さを示します。 指定できるTセレクタの長さは最大32バイトです。 |
Tセレクタ | 最大32バイト | - | Tセレクタを指定します。 Tセレクタを省略する場合は,LIに(00)16を指定します。 |
ENABLEの獲得型発行時,マルチネットワーク情報を格納領域に設定します※。
ENABLEの受け入れ指示型と,RECEIVEでO_ASC_CFを受信するときは,マルチネットワーク情報格納領域長を64バイト確保し,1バイトの(全体)LIに(3f)16を設定してください※。
マルチネットワーク情報のデータ形式を図9-16に示します。
図9-16 マルチネットワーク情報のデータ形式
マルチネットワーク情報の内容を表9-8に示します。
表9-8 マルチネットワーク情報の内容
項番 | フィールド名 | 長さ | パラメタ値 | 説明 |
---|---|---|---|---|
1 | LI | 1バイト | (02)16~(3f)16 | マルチネットワーク情報長を示します。 |
2 | PI | 1バイト | (d0)16 | DTEアドレス情報識別のための識別子です。 |
3 | LI | 1バイト | (00)16または(02)16~(10)16 | DTEアドレス情報格納領域長を示します。 |
4 | DTE アドレス情報 | 最大16バイト | - | 中継/相手ノードのアドレスであり,単位はセミオクテット※です。有効けた数は,DTEアドレスの有効セミオクテット数を示します。![]() |
5 | PI | 1バイト | (d1)16 | プロフィルタイプ識別のための識別子です。 |
6 | LI | 1バイト | (00)16または(04)16 | プロフィルタイプ長を示します。 |
7 | プロフィルタイプ | 4バイト | - | 要求/代替TLクラスであり,値は関数を使用して,指定/参照します。 |
8 | PI | 1バイト | (d2)16 | アダプタ番号識別のための識別子です。 |
9 | LI | 1バイト | (00)16または(04)16 | アダプタ番号長を示します。 |
10 | アダプタ番号 (ビットマップ) | 4バイト | - | スロット番号であり,値は関数を使用して指定/参照します。 |
11 | PI | 1バイト | (d3)16 | INSサービス種別識別のための識別子です。 |
12 | LI | 1バイト | (00)16または(02)16 | INSサービス種別長を示します。 |
13 | INS サービス種別 | 2バイト | - | ISDNネットを使用する際の従量課金(INS-P)/時間課金(INS-C)種別,およびINS-Cの回線を,関数を使用して指定/参照します。 |
14 | PI | 1バイト | (d4)16 | アダプタ番号識別のための識別子です。 |
15 | LI | 1バイト | (00)16または(02)16 | アダプタ番号長を示します。 |
16 | アダプタ番号 (数値) | 2バイト | - | 構成定義で指定したVASS(仮想スロット番号)を指定します。 |
表9-9 実装アダプタ数と"DTEアドレス情報''および"アダプタ番号''の関係
項番 | 実装(動作可) アダプタ数 | "DTEアドレス情報" 指定有無 | "アダプタ番号" 指定有無 | 備考 |
---|---|---|---|---|
1 | 単一 | 無 | 任意 | "DTEアドレス情報"に対応しない"アダプタ番号"を指定した場合,通信はできません。 |
2 | 複数 | 無 | 任意 | |
3 | 単一 | 有 | 任意 | |
4 | 複数 | 有 | 必須 |
表9-10 要求TLクラスと代替TLクラスの組み合わせ
項番 | "プロフィルタイプ"の指定 | 備考 | |
---|---|---|---|
要求TLクラス | 代替TLクラス | ||
1 | 指定なし | - | OSI通信機能は,構成定義情報のデフォルトTLクラスを要求TLクラスとします。また,指定された代替TLクラスは無視します。 |
2 | クラス0 | - | OSI通信機能は,指定された代替TLクラスを無視します。 |
3 | クラス2 | 指定なし | - |
4 | クラス0 | - | |
5 | クラス2 | - | |
6 | クラス4 | OSI通信機能は,"プロフィルタイプ"の指定エラーとみなします。 | |
7 | クラス4 | - | OSI通信機能は,指定された代替TLクラスを無視します。 |
アソシエーション確立時,確立結果として与えられる結果および診断パラメタの設定元の識別を格納する領域です。
アソシエーション確立結果発行元パラメタを表9-11に示します。
表9-11 アソシエーション確立結果発行元パラメタ
項番 | パラメタ値 | 内容 |
---|---|---|
1 | O_ACUSR | ACSEサービス利用者 |
2 | O_ACPRV | ACSEサービス提供者 |
3 | O_PSPRV | プレゼンテーションサービス提供者 |