tcpip
形式
<tcpip use="true|false" type="send|recv|sendrecv" sendHost="ノードのホスト名" sendPort="MHPのポート番号" recvPort="CUP.NETのポート番号" openPortAtRecv="true|false"/>
説明
TCP/IP通信機能に関する指定をします。
この要素は省略できます。
属性
●type="send|recv|sendrecv"
TCP/IP通信機能を使用する場合に,初期化する環境を指定します。
<tcpip>要素のuse属性にtrueを指定した場合,この属性は省略できません。その場合,次のどれかを指定してください。
send:メッセージを一方送信するための環境
recv:メッセージを一方受信するための環境
sendrecv:メッセージを送受信するための環境
●sendHost="ノードのホスト名" 〜〈文字列〉
CUP.NETからメッセージを送信する場合,コネクションを確立して接続するMHPが存在するノードのホスト名を指定します。また,ホスト名として10進ドット記法のIPアドレスも指定できます。
この属性は省略できます。
●sendPort="MHPのポート番号" 〜〈符号なし整数〉((1〜65535))《12000》
CUP.NETからメッセージを送信する場合,コネクションを確立して接続するMHPのポート番号を指定します。<nameService>要素のport属性で指定するポート番号と重複しないように指定してください。
この属性は省略できます。
●recvPort="CUP.NETのポート番号" 〜〈符号なし整数〉((1〜65535))《11000》
TCP/IP通信機能を使用してメッセージを受信する場合,メッセージを受信するCUP.NETのポート番号を指定します。メッセージを送信する側では,このポート番号を指定して送信してください。
同一マシン内で,複数のプロセス,またはスレッドを同時に実行する場合は,それぞれ異なるポート番号を指定してください。
指定できるポート番号でも,OSまたはほかのプログラムで使用するポート番号は指定しないでください。指定した場合,応答データを正しく受信できないことがあります。
なお,OSが使用するポート番号は,OSごとに異なります。OSのマニュアルなどを参照してください。ほかのアプリケーションとの重複を避けるため,OSが任意に割り当てるポート番号(動的ポートまたは短命ポートと呼ばれるポート番号)を使用しないでください。
メッセージの一方送信機能(<tcpip>要素のtype属性にsendを指定)の場合,デフォルト値を含めこの定義で指定したポートは使用されません。
この属性は省略できます。
●openPortAtRecv="true|false" 〜《false》
TCP/IP通信機能使用時に,メッセージの送受信をする場合の受信用ソケットの開設契機(送信相手からの接続を待ち受け始める契機)を指定します。
この属性は省略できます。省略した場合,OpenRpcメソッド実行時に受信用ソケットを開設します。
MHPがサーバ型でメッセージの送受信を1つのコネクションで行う場合,CUP.NETからMHPにメッセージを送信した際に確立したコネクションを使用して送受信を行うため,CUP.NETは受信用のソケットは使用しません。そのため,この定義にtrueを指定し,受信用ソケットを開設しないようにしてください。
MHPがクライアント型の場合,MHPからのメッセージをCUP.NETが受信する際に受信用のソケットが必要なため,この定義にfalseを指定するか定義を省略してください。
この定義の具体的なユースケースは「2.4.5 ユースケースごとの設定方法とポートの割り当て」を参照してください。
- true:OpenRpcメソッド実行時に受信ソケットを開設しません。ただし,次のメソッドを実行したときに,コネクションが確立されていない場合,受信用ソケットを開設します。
-
-
Receive
-
ReceiveAssembledMessage
-
false:OpenRpcメソッド実行時に受信用ソケットを開設します。
記述例
<tcpip use="true" type="sendrecv" sendHost="10.210.208.13" sendPort="12000" recvPort="22000" openPortAtRecv="false"/>