AP間通信を行う上での注意事項を示します。
TP1/NET/UDPでは,メッセージの欠落,重複,および到着順序のチェックやフロー制御は実施しません。また,下位プロトコルにUDPプロトコルを使用するため,メッセージは保証されません。したがって,UAP間でメッセージをやり取りする上で,次に示す項目を事前に取り決めておく必要があります。
UDPプロトコルを使用する通信では,送受信するメッセージ長とシステムバッファ長の整合性に注意する必要があります。システムバッファとは,UDPプロトコルが持つ内部バッファのことです。システムバッファ長は,MCF通信構成定義(mcftalcle -s)で指定します。指定方法については,5章の「mcftalcle(論理端末定義の開始)」を参照してください。
ブロードキャストメッセージを送信する場合の最大メッセージ長は,ご使用のOSによって異なります。詳しくは,OSのマニュアル,技術資料または実装を確認してください。
TP1/NET/UDPで送受信できるメッセージの種類には,ブロードキャストメッセージ,ユニキャストメッセージ,およびマルチキャストメッセージの3種類がありますが,メッセージ送受信時にメッセージの種類の判定はされません。
メッセージの送信時は,指定する相手アドレスの種別によって,次の表のように区別してください。
表2-2 相手アドレスとメッセージの種類の対応
相手アドレス | メッセージの種類 |
---|---|
ブロードキャストアドレス | ブロードキャストメッセージ |
特定の相手ノードアドレス | ユニキャストメッセージ |
マルチキャストアドレス | マルチキャストメッセージ |
メッセージの受信時は,受信したメッセージの内容または送信元の相手アドレスから,必要に応じてメッセージの種類を判定してください。
TP1/NET/UDPは任意の相手と通信するため,メッセージ送受信時に相手アドレスのチェックを実施しません。
メッセージの送信時には,TP1/NET/UDPはユーザが設定した相手アドレスをそのままUDPプロトコルに渡します。ユーザが不正な相手アドレスを設定した場合は,UDPプロトコルの相手アドレスのチェックによって送信に失敗する場合があります。
メッセージの受信時には,TP1/NET/UDPはメッセージに付加した制御ヘッダの所定の領域に相手アドレスを設定します。この相手アドレスから,送信元を識別してください。