ほとんどのアプリケーションは、シスプレックス内で複数インスタンスをサポートしていますが、IP アドレスがアプリケーションのインスタンス間を頻繁に移動することを予期
しているアプリケーションはほとんどありません。TCP アプリケーションは TCP 接続を使用して、特定のクライアントとサーバー・インスタンスの間の関係を形成し、拡張期間の間にデータを交換します。
これらは TCP 接続終了の通知を受けてリカバリーを開始し、新規の関係を再確立します (おそらくクライアントから別のサーバーへ)。
逆に、ほとんどの UDP アプリケーションは同じ機能をアプリケーション層で行います。
IP アドレスを別のサーバーに移動するということは、新規サーバーもクライアントの作業状態を認識していない限り、
クライアントにとっては混乱の元になりかねません。
分割不能な対話 (単一要求に対して 1 つ以上の応答が続き、要求と要求の間はサーバーに状態情報が保持されない) で構成される対話を持つ UDP アプリケーションは、複数アプリケーション・インスタンス・シナリオで動的 VIPA を使用することができます。ただし、サーバー・アプリケーションが対話と対話の間に状態情報 (例えば、NFS) を保持していると、
動的 VIPA をもう 1 つのサーバーに移動しても、クライアント/サーバー・アプリケーション・プロトコルがその不連続性を検出できない
限り、その移動は機能しない可能性があります。その場合には、固有アプリケーション・インスタンス・シナリオを適用できることがあります。
この場合、別の TCP/IP でサーバーを再始動する必要があります。
さらに、次のタイプの作業は、分散動的 VIPA を使用する分散にはふさわしくありません。
- 特定の TCP/IP スタックとアフィニティーを設定するアプリケーション (SNMP など)。
- SYSPLEXPORTS を指定しなかった分散 DVIPA の PASV コマンドまたは EPSV コマンドを受け取る FTP サーバー。PASV コマンドおよび EPSV コマンドは、FTP サーバーに使用される宛先 IP アドレスである分散 DVIPA の VIPADISTRIBUTE ステートメントに、SYSPLEXPORTS が指定された場合、サポートされます。
これらのコマンドは、FTP サーバーに、デフォルトのデータ・ポートではないデータ・ポート、
または VIPADISTRIBUTE ステートメント上に指定されたポートに bind() することを要求し、
かつ転送コマンド (例えば、RETR) の受信時に接続を開始するのではなく、
接続を待つことを要求します。
非分散動的 VIPA に対しては SYSPLEXPORTS を指定できないので、計画テークオーバーによりその VIPA が移動されたときは、非分散動的 VIPA に対するパッシブ・モード FTP 接続をリカバリーすることはできません。
この制御接続はオリジナル・スタック上に残っていますが、移動の前に存在していた制御接続に対して新規データ接続を作成しようとする試みは失敗します。
SYSPLEXPORTS を分散動的 VIPA で使用した場合、新規データ接続は常に、その制御接続が含まれている同一スタックに送信されます。VIPADYNAMIC ブロック内での SYSPLEXPORTS パラメーターの使用に関する詳細は、「z/OS Communications Server: IP 構成解説書」を参照してください。
- SYSPLEXPORTS を指定していない IPv6 分散 DVIPA で
接続を受け入れる FTP サーバー。
FTP サーバーは、IPv6 アドレスとの間のデータ転送に EPSV コマンドを予期します。
そして EPSV コマンドの使用は、SYSPLEXPORTS
が、FTP サーバーが使用している宛先 IP アドレスである
分散 DVIPA の VIPADISTRIBUTE ステートメントで指定された場合にのみサポートされます。