UDPプロトコルを使用したRPC通信では,ユニキャストおよびマルチキャストによる通信ができます。
RPCサービス要求メッセージは,クライアントからサーバに対して,マルチキャスト,またはユニキャストで送信します。一方,RPCサービス応答メッセージは,サーバからクライアントに対してユニキャストで送信します。
サービス要求先の構成によって,サービスが実行できる通信方式が異なります。RPCサービス要求メッセージの通信方式は,UDPグループ情報関連定義のeeudpdef定義コマンドの-cオプションで指定します。通信方式とサービスの実行可否の組み合わせを次の表に示します。
表2-6 通信方式とサービスの実行可否
項番 | 通信方式 | サービス要求先 | 実行系/待機系 | サービスの実行 | 備考 |
---|---|---|---|---|---|
1 | ユニキャスト | HAサーバ | - | できる | - |
2 | CLサーバ | 実行系 | できる | - | |
3 | 待機系 | できない | サービス要求先でメッセージを破棄します。 | ||
4 | マルチキャスト | HAサーバ | - | できる | - |
5 | CLサーバ | 実行系 | できる | - | |
6 | 待機系 | できない※ | サービス要求先でメッセージを破棄します。 |
サーバに対して,ユニキャストで直接RPC要求メッセージを送信します。RPC要求メッセージを受信したサーバは,サービスを実行します。
RPC要求メッセージを受信したサーバがCLサーバ(待機系)の場合は,受信したメッセージを破棄します。
同期応答型RPCによってユニキャストでサービスを要求する場合の処理の流れを次の図に示します。
図2-14 同期応答型RPCによってユニキャストでサービスを要求する場合の処理の流れ
複数のサーバに対してマルチキャストでRPC要求メッセージを送信します。
RPC要求メッセージを受信したサーバが実行系の場合は,サービスを実行します。一方,待機系がRPC要求メッセージを受信した場合は,メッセージを破棄します。
同期応答型RPCによってマルチキャストでサービスを要求する場合の処理の流れを次の図に示します。
図2-15 同期応答型RPCによってマルチキャストでサービスを要求する場合の処理の流れ