2.1.4 AP間通信の注意事項
AP間通信を行う上での注意事項を示します。
- 〈この項の構成〉
(1) メッセージの保証
TP1/NET/UDPでは,メッセージの欠落,重複,および到着順序のチェックやフロー制御は実施しません。また,下位プロトコルにUDPプロトコルを使用するため,メッセージは保証されません。したがって,UAP間でメッセージをやり取りする上で,次に示す項目を事前に取り決めておく必要があります。
-
メッセージの送達確認方法
-
メッセージの重複および欠落のチェック方法と対処方法
-
メッセージのフロー制御方法
(2) 送受信時のメッセージ長
UDPプロトコルを使用する通信では,送受信するメッセージ長とシステムバッファ長の整合性に注意する必要があります。システムバッファとは,UDPプロトコルが持つ内部バッファのことです。システムバッファ長は,論理端末定義(mcftalcle -s)で指定します。指定方法については,6章の「mcftalcle(論理端末定義の開始)」を参照してください。
-
システムバッファ長の最大値および実際に確保されるシステムバッファ長はご使用のOSの実装に依存します。
-
TP1/NET/UDPで送信するメッセージ長が,システムの送信バッファ長よりも大きい場合,メッセージの送信は失敗し,論理端末が閉塞します。
-
TP1/NET/UDPの受信バッファ長が,相手システムから受信したメッセージ長より小さい場合,かつ,相手システムから受信したメッセージ長がシステムの受信バッファ長より小さい場合,受信は正常に完了します。ただし,受信できるメッセージのサイズはTP1/NET/UDPのバッファ長までとなります。残りはUDPプロトコルによって破棄されます。
-
TP1/NET/UDPがメッセージを受信する前に,システムの受信バッファが満杯になった場合,そのあとに受信したメッセージはOSが破棄します。システムの受信バッファには,運用形態に合わせて余裕を持った値を指定してください。
(3) メッセージの種類の判別
TP1/NET/UDPで送受信できるメッセージの種類には,ブロードキャストメッセージ,ユニキャストメッセージ,およびマルチキャストメッセージの3種類がありますが,メッセージ送受信時にメッセージの種類の判定はされません。
メッセージの送信時は,指定する相手アドレスの種別によって,次の表のように区別してください。
相手アドレス |
メッセージの種類 |
---|---|
ブロードキャストアドレス |
ブロードキャストメッセージ |
特定の相手ノードアドレス |
ユニキャストメッセージ |
マルチキャストアドレス |
マルチキャストメッセージ |
メッセージの受信時は,受信したメッセージの内容または送信元の相手アドレスから,必要に応じてメッセージの種類を判定してください。
(4) メッセージ送受信時の相手アドレスのチェック
TP1/NET/UDPは任意の相手と通信するため,メッセージ送受信時に相手アドレスのチェックを実施しません。
メッセージの送信時には,TP1/NET/UDPはユーザが設定した相手アドレスをそのままUDPプロトコルに渡します。ユーザが不正な相手アドレスを設定した場合は,UDPプロトコルの相手アドレスのチェックによって送信に失敗する場合があります。
メッセージの受信時には,TP1/NET/UDPはメッセージに付加した制御ヘッダの所定の領域に相手アドレスを設定します。この相手アドレスから,送信元を識別してください。
(5) ブロードキャストメッセージの送信
(a) 最大メッセージ長
ブロードキャストメッセージを送信する場合の最大メッセージ長は,ご使用のOSによって異なります。詳しくは,OSのマニュアル,技術資料または実装を確認してください。
(6) マルチキャストメッセージの送信
(a) マルチキャストパケットの生存期間(TTL)
マルチキャストメッセージを送信する場合のTTLは,論理端末定義(mcftalcle -m)のmulticastttlオペランドで指定します。ご使用のネットワーク構成に応じて適切な値を指定してください。このオペランドを省略した場合,TTLはOSが設定します。TTLのデフォルト値については,ご使用のOSのマニュアルを参照してください。
(7) マルチキャストメッセージの受信
(a) マルチキャストメッセージの受信に使用するIPアドレスまたはホスト名
自システムをホットスタンバイ構成とする場合,または,自システムがマルチホームドホスト形態(一つのマシン内に複数のIPアドレスが割り当てられている環境)の場合,マルチキャストメッセージの受信に使用するIPアドレスまたはホスト名を論理端末定義(mcftalcle -m)のripaddrオペランドまたはrhostnameオペランドに指定します。どちらも省略した場合,使用するIPアドレスはOSが設定します。
(b) 送信元特定マルチキャスト(SSM)
特定の相手システムから送信されたマルチキャストメッセージ(送信元特定マルチキャスト(SSM))だけを受信する場合,論理端末定義(mcftalcle -m)のshostname[1〜8]オペランドに,マルチキャストメッセージ受信を許可する相手システムのホスト名またはIPアドレスを指定します。指定した相手システムのホスト名やIPアドレスに誤りがある場合,論理端末の閉塞解除に失敗します。
異なるネットワーク上の相手システムからSSMを受信する場合,ネットワーク機器(ルータ等)のルーティングプロトコルにPIM-SSMを使用してください。また,SSM用のIPアドレスは,232.0.0.0〜232.255.255.255と規定されていますが,実際に使用できるアドレスはご使用のネットワーク機器によって異なる場合があります。詳しくは,ネットワーク機器のマニュアル,技術資料または実装を確認してください。