(57)【特許請求の範囲】
【請求項１】
第１の装置が送信した第２の装置宛の要求の、前記第１の装置と前記第２の装置との通信経路上に配置されたネットワーク機器から前記第２の装置への通信と、前記第２の装置が送信した前記第１の装置宛の応答の通信との少なくとも一方の通信の遮断指示を、前記ネットワーク機器に送信する遮断手段と、
前記第１の装置が送信した前記第２の装置宛の要求を、前記ネットワーク機器から取得し、要求の送信先の第３の装置への切替指示を、前記第１の装置へ送信する送信手段と、
を備え、
前記遮断手段は、前記第１の装置と前記第２の装置との間の最後の通信から所定期間以上経過後に、通信の遮断指示を行い、
前記送信手段は、通信の遮断指示後に前記第１の装置が送信した前記第２の装置宛の要求を取得し、要求の送信先の前記第３の装置への切替指示を前記第１の装置へ送信する、
ことを特徴とする情報処理装置。
【請求項２】
前記遮断手段は、前記第２の装置から、所定期間以内に通信が行われた通信相手のアドレスが登録されたテーブルを取得して、記憶手段に格納し、該テーブルに前記第１の装置のアドレスが登録されていなければ、前記第１の装置と前記第２の装置との間の最後の通信から所定期間以上経過していると判断することを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記遮断手段は、前記第２の装置に対して、前記第１の装置宛のパケットを送信する際のデータリンク層におけるフレームの宛先アドレスとして、前記第１の装置と前記第２の装置との通信経路上の装置のアドレスと異なるアドレスの登録指示を送信する、
ことを特徴とする請求項１または２のいずれかに記載の情報処理装置。
【請求項４】
前記遮断手段は、前記第２の装置に対して、前記第１の装置宛のパケットを送信する際のデータリンク層におけるフレームの宛先のアドレスとして、前記情報処理装置のアドレスの登録を指示する登録指示を送信し、前記第２の装置から送られた前記第１の装置宛のパケットを廃棄する、
ことを特徴とする請求項３記載の情報処理装置。
【請求項５】
前記遮断手段は、前記ネットワーク機器に対して、前記第１の装置が送信した前記第２の装置宛の要求の通信の遮断指示を送信する、
ことを特徴とする請求項１または２のいずれかに記載の情報処理装置。
【請求項６】
前記遮断手段は、前記ネットワーク機器から、前記第１の装置が送信した前記第２の装置宛の要求を取得し、前記第１の装置と前記第２の装置との間の直前の通信から所定期間以上経過していなければ、該要求を前記第２の装置に転送し、
前記送信手段は、前記第１の装置と前記第２の装置との間の直前の通信から所定期間以上経過した後に、前記第１の装置が送信した前記第２の装置宛の要求を取得した場合、要求の送信先の前記第３の装置への切替指示を前記第１の装置へ送信する、
ことを特徴とする請求項５記載の情報処理装置。
【請求項７】
第１の装置が送信した第２の装置宛の要求の、前記第１の装置と前記第２の装置との通信経路上に配置されたネットワーク機器から前記第２の装置への通信と、前記第２の装置が送信した前記第１の装置宛の応答の通信との少なくとも一方の通信の遮断指示を、前記ネットワーク機器に送信する遮断手段と、
前記第１の装置が送信した前記第２の装置宛の要求を、前記ネットワーク機器から取得し、要求の送信先の第３の装置への切替指示を、前記第１の装置へ送信する送信手段と、
を備え、
前記遮断手段は、前記第２の装置と同一セグメントで接続されたルータに対して、前記第２の装置宛のパケットを送信する際のデータリンク層におけるフレームの宛先アドレスとして、前記第１の装置と前記第２の装置との通信経路上の装置のアドレスと異なるアドレスの登録指示を送信する、
ことを特徴とする情報処理装置。
【請求項８】
前記遮断手段は、前記ルータに対して、前記第２の装置宛のパケットを送信する際のデータリンク層におけるフレームの宛先のアドレスとして、前記情報処理装置のアドレスの登録を指示する登録指示を送信し、前記ルータから送られた前記第２の装置宛のパケットのうち、前記第１の装置以外の装置からのパケットは前記第２の装置に転送し、前記第１の装置からのパケットは廃棄する、
ことを特徴とする請求項７記載の情報処理装置。
【請求項９】
前記遮断手段は、前記第１の装置への切替指示送信後、前記ルータに対して、前記第２の装置宛のパケットを送信する際のデータリンク層におけるフレームの宛先アドレスの設定の解除指示を送信する、
ことを特徴とする請求項７または８のいずれかに記載の情報処理装置。
【請求項１０】
第１の装置が送信した第２の装置宛の要求の、前記第１の装置と前記第２の装置との通信経路上に配置されたネットワーク機器から前記第２の装置への通信と、前記第２の装置が送信した前記第１の装置宛の応答の通信との少なくとも一方の通信の遮断指示を、前記ネットワーク機器に送信する遮断手段と、
前記第１の装置が送信した前記第２の装置宛の要求を、前記ネットワーク機器から取得し、要求の送信先の第３の装置への切替指示を、前記第１の装置へ送信する送信手段と、
前記第２の装置に要求を送信する複数の装置それぞれの前記第２の装置との間の通信品質を計測し、通信品質が所定値以下になった装置を前記第１の装置に決定する計測手段と、
を有することを特徴とする情報処理装置。
【請求項１１】
前記計測手段は、前記第２の装置と他の装置との間の通信を前記ネットワーク機器から取得し、取得した通信を解析して、通信品質が所定値以下になった装置を判断する、
ことを特徴とする請求項１０記載の情報処理装置。
【請求項１２】
前記計測手段は、通信品質が所定値以下になった装置と同一サブネットに属する装置のうち、前記第２の装置との間で過去に通信実績のある装置を、前記第１の装置に決定することを特徴とする請求項１０または１１のいずれかに記載の情報処理装置。
【請求項１３】
コンピュータに、
第１の装置が送信した第２の装置宛の要求の、前記第１の装置と前記第２の装置との通信経路上に配置されたネットワーク機器から前記第２の装置への通信と、前記第２の装置が送信した前記第１の装置宛の応答の通信との少なくとも一方の通信の遮断指示を、前記ネットワーク機器に送信し、
前記第１の装置が送信した前記第２の装置宛の要求を、前記ネットワーク機器から取得し、要求の送信先の第３の装置への切替指示を、前記第１の装置へ送信し、
前記第１の装置と前記第２の装置との間の最後の通信から所定期間以上経過後に、通信の遮断指示を行い、
通信の遮断指示後に前記第１の装置が送信した前記第２の装置宛の要求を取得し、要求の送信先の前記第３の装置への切替指示を前記第１の装置へ送信する、
処理を実行させるプログラム。
【請求項１４】
コンピュータが、
第１の装置が送信した第２の装置宛の要求の、前記第１の装置と前記第２の装置との通信経路上に配置されたネットワーク機器から前記第２の装置への通信と、前記第２の装置が送信した前記第１の装置宛の応答の通信との少なくとも一方の通信の遮断指示を、前記ネットワーク機器に送信し、
前記第１の装置が送信した前記第２の装置宛の要求を、前記ネットワーク機器から取得し、要求の送信先の第３の装置への切替指示を、前記第１の装置へ送信し、
前記第１の装置と前記第２の装置との間の最後の通信から所定期間以上経過後に、通信の遮断指示を行い、
通信の遮断指示後に前記第１の装置が送信した前記第２の装置宛の要求を取得し、要求の送信先の前記第３の装置への切替指示を前記第１の装置へ送信する、
ことを特徴とする制御方法。
【請求項１５】
コンピュータに、
第１の装置が送信した第２の装置宛の要求の、前記第１の装置と前記第２の装置との通信経路上に配置されたネットワーク機器から前記第２の装置への通信と、前記第２の装置が送信した前記第１の装置宛の応答の通信との少なくとも一方の通信の遮断指示を、前記ネットワーク機器に送信し、
前記第１の装置が送信した前記第２の装置宛の要求を、前記ネットワーク機器から取得し、要求の送信先の第３の装置への切替指示を、前記第１の装置へ送信し、
前記第２の装置に要求を送信する複数の装置それぞれの前記第２の装置との間の通信品質を計測し、通信品質が所定値以下になった装置を前記第１の装置に決定する、
処理を実行させるプログラム。
【請求項１６】
コンピュータが、
第１の装置が送信した第２の装置宛の要求の、前記第１の装置と前記第２の装置との通信経路上に配置されたネットワーク機器から前記第２の装置への通信と、前記第２の装置が送信した前記第１の装置宛の応答の通信との少なくとも一方の通信の遮断指示を、前記ネットワーク機器に送信し、
前記第１の装置が送信した前記第２の装置宛の要求を、前記ネットワーク機器から取得し、要求の送信先の第３の装置への切替指示を、前記第１の装置へ送信し、
前記第２の装置に要求を送信する複数の装置それぞれの前記第２の装置との間の通信品質を計測し、通信品質が所定値以下になった装置を前記第１の装置に決定する、
ことを特徴とする制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アクセス先の切替制御を行う情報処理装置、プログラム、および制御方法に関する。
【背景技術】
【０００２】
広域に配備される複数のデータセンタおよびそれらを接続するネットワークにおいて、ネットワークやデータセンタ内のサーバの負荷が高くなり、ユーザが使用する端末装置へのサーバからのレスポンスが遅くなる場合がある。このような場合、他のサーバあるいは他のデータセンタへ端末装置からのアクセス先を早急に切り替えて、端末装置へのレスポンスを向上させることが重要である。
【０００３】
端末装置に対してアクセス先を切り替えさせる技術としては、例えば、負荷分散装置において、クライアントに対して少ない遅延時間でサービスを提供可能なデータセンタを優先的に、そのクライアントの推奨センタとして選択する技術が考えられている。この技術では、負荷分散装置は、クライアントからのリクエストに対して、推奨センタへの再アクセス指示するリダイレクトメッセージを応答することで、クライアントに対して推奨センタにアクセスさせる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６−３３２８２５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、従来は、端末装置とサーバとの通信経路上に負荷分散装置を配置しないと、端末装置ごとの要求の送信先のサーバの切り替えができなかった。このように端末装置とサーバとの間に負荷分散装置を配置すると、負荷分散装置がすべての要求を中継することとなり、負荷分散装置の性能の善し悪しが、通信品質に影響を及ぼしてしまう。例えば、負荷分散装置の性能が十分でない場合には、端末装置に対するサーバからの応答の遅延時間が増大してしまう。
【０００６】
１つの側面では、本発明は、通信への影響を少なく抑えながら、要求の送信先の切替制御を行うことができる情報処理装置、プログラム、および制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
１つの案では、情報処理装置が提供される。情報処理装置は、第１の装置が送信した第２の装置宛の要求の、前記第１の装置と前記第２の装置との通信経路上に配置されたネットワーク機器から前記第２の装置への通信と、前記第２の装置が送信した前記第１の装置宛の応答の通信との少なくとも一方の通信の遮断指示を、前記ネットワーク機器に送信する遮断手段と、前記第１の装置が送信した前記第２の装置宛の要求を、前記ネットワーク機器から取得し、要求の送信先の第３の装置への切替指示を、前記第１の装置へ送信する送信手段と、を備え、前記遮断手段は、前記第１の装置と前記第２の装置との間の最後の通信から所定期間以上経過後に、通信の遮断指示を行い、前記送信手段は、通信の遮断指示後に前記第１の装置が送信した前記第２の装置宛の要求を取得し、要求の送信先の前記第３の装置への切替指示を前記第１の装置へ送信する。
【発明の効果】
【０００８】
通信への影響を少なく抑えながら、アクセス先の切替制御を行うことが可能となる。
【図面の簡単な説明】
【０００９】
【図１】第１の実施の形態に係る装置の機能構成の一例を示すブロック図である。
【図２】第１の実施の形態に係る情報処理装置の処理手順の一例を示すフローチャートである。
【図３】第１の実施の形態によるアクセス先の切替制御の一例を示す図である。
【図４】第２の実施の形態のシステム構成例を示す図である。
【図５】第２の実施の形態に用いるリダイレクト装置のハードウェアの一構成例を示す図である。
【図６】スイッチのハードウェア構成の一例を示す図である。
【図７】リダイレクト装置の機能の一例を示すブロック図である。
【図８】各装置のＩＰアドレスまたはＭＡＣアドレスの一例を示す図である。
【図９】品質情報記憶部のデータ構造の一例を示す図である。
【図１０】ＡＲＰテーブルのデータ構造の一例を示す図である。
【図１１】リダイレクト処理の手順の一例を示すフローチャートの前半である。
【図１２】リダイレクト処理の手順の一例を示すフローチャートの後半である。
【図１３】ＡＲＰテーブルの制御の手順の一例を示すシーケンス図である。
【図１４】更新後のＡＲＰテーブルの一例を示す図である。
【図１５】第２の実施の形態におけるリダイレクト制御の一例を示す図である。
【図１６】リクエストメッセージの一例を示す図である。
【図１７】レスポンスメッセージの一例を示す図である。
【図１８】リダイレクトメッセージの一例を示す図である。
【図１９】第３の実施の形態で利用する情報の一例を示す図である。
【図２０】第３の実施の形態のリダイレクト処理の手順の一例を示すフローチャートである。
【図２１】第３の実施の形態におけるリダイレクト制御の一例を示す図である。
【図２２】更新後のルータのＡＲＰテーブルの一例を示す図である。
【図２３】第４の実施の形態のリダイレクト処理の手順の一例を示すフローチャートである。
【図２４】第４の実施の形態におけるリダイレクト制御の一例を示す図である。
【図２５】第５の実施の形態のシステム構成の一例を示す図である。
【図２６】第５の実施の形態における試験装置の機能の一例を示すブロック図である。
【図２７】試験の手順を示すフローチャートである。
【図２８】通信履歴の取得状況の一例を示す図である。
【図２９】取得される通信履歴の一例を示す図である。
【図３０】スイッチのＡＣＬ操作の一例を示す図である。
【図３１】試験時のメッセージの送受信状況の一例を示す図である。
【図３２】試験対象サーバが正しく動作した場合の通信例を示す図である。
【図３３】試験対象サーバが正しく動作していない場合の通信例を示す図である。
【発明を実施するための形態】
【００１０】
以下、本実施の形態について図面を参照して説明する。なお各実施の形態は、矛盾のない範囲で複数の実施の形態を組み合わせて実施することができる。
〔第１の実施の形態〕
図１は、第１の実施の形態に係る装置の機能構成の一例を示すブロック図である。ネットワークＮには、第１の装置２、第２の装置３、および第３の装置５が接続されている。なお、第２の装置３は、ネットワーク機器４を介してネットワークＮに接続されている。第２の装置３と第３の装置５とは、第１の装置２からの要求に応じて処理を実行し、処理結果を応答することができる。
【００１１】
情報処理装置１は、ネットワーク機器４に接続されている。ネットワーク機器４は、例えばミラーポートを有するネットワークスイッチ（以下単に「スイッチ」という）である。ネットワーク機器４がスイッチの場合、情報処理装置１は、例えばネットワーク機器４のミラーポートと通常の通信ポートとに接続される。この場合、例えば情報処理装置１は、ミラーポートを介して第１の装置２と第２の装置３との間の要求または応答を取得すると共に、通常の通信ポートを介して、第１の装置２と第２の装置３との間の要求または応答に関する通信の遮断制御を行う。
【００１２】
情報処理装置１は、計測手段１ａ、遮断手段１ｂ、および送信手段１ｃを有する。
計測手段１ａは、第２の装置３に要求を送信する複数の装置それぞれの第２の装置３との間の通信品質を計測する。そして計測手段１ａは、通信品質が所定値以下になった装置を第１の装置２に決定する。例えば、計測手段１ａは、第２の装置３と他の装置との間の通信をネットワーク機器４から取得し、取得した通信を解析して、通信品質が所定値以下になった装置を判断する。また、計測手段１ａは、通信品質が所定値以下になった装置と同一サブネットに属する装置それぞれを、第１の装置２に決定することもできる。さらに計測手段１ａは、通信品質が所定値以下になった装置と同一サブネットに属する装置のうち、第２の装置３との間で過去に通信実績のある装置を、第１の装置２に決定することもできる。
【００１３】
遮断手段１ｂは、第１の装置２が送信した第２の装置３宛の要求の、ネットワーク機器４から第２の装置３への通信と、第２の装置３が送信した第１の装置２宛の応答の通信との少なくとも一方の通信を、ネットワークを介した遠隔制御により遮断する。例えば遮断手段１ｂは、第１の装置２と第２の装置３との間の最後の通信から所定期間以上経過後に、通信の遮断を行う。
【００１４】
通信遮断は、例えば以下のようにして実行される。
例えば遮断手段１ｂは、第２の装置３に対して、第１の装置２宛のパケットを送信する際のデータリンク層におけるフレームの宛先アドレスとして、第１の装置２と第２の装置３との通信経路上の装置のアドレスと異なるアドレスの登録指示を送信する。このようなアドレスが登録されると、第２の装置３から第１の装置２への応答は、第１の装置２と第２の装置３との通信経路以外の装置で受信されその装置で廃棄されるか、または受信する装置が存在せずに廃棄される。
【００１５】
また例えば遮断手段１ｂは、ネットワーク機器４に対して、第１の装置２が送信した第２の装置３宛の要求の通信の遮断指示を送信することもできる。この場合、遮断手段１ｂは、例えばネットワーク機器４から、第１の装置２が送信した第２の装置３宛の要求を取得し、第１の装置２と第２の装置３との間の直前の通信から所定期間以上経過していなければ、該要求を第２の装置３に転送する。そして、送信手段１ｃは、第１の装置２と第２の装置３との間の直前の通信から所定期間以上経過した後に、第１の装置２が送信した第２の装置３宛の要求を取得した場合、要求の送信先の第３の装置５への切替指示を第１の装置２へ送信する。このような遮断指示を行った場合、例えば遮断手段１ｂは、送信手段１ｃが第１の装置２への切替指示送信した後、ネットワーク機器４に対して、第１の装置２が送信した第２の装置３宛の通信の遮断の解除指示を送信する。
【００１６】
また、遮断手段１ｂは、第２の装置３と同一セグメントで接続されたルータに対して、第２の装置３宛のパケットを送信する際のデータリンク層におけるフレームの宛先アドレスを操作することで、通信を遮断することもできる。例えば遮断手段１ｂは、第２の装置３宛のパケットを送信する際のデータリンク層におけるフレームの宛先アドレスとして、第１の装置２と第２の装置３との通信経路上の装置のアドレスと異なるアドレスの登録指示を送信する。このようなアドレスが登録されると、第１の装置から第２の装置への要求は、ルータから転送されたときに、第１の装置２と第２の装置３との通信経路以外の装置で受信されその装置で廃棄されるか、または受信する装置が存在せずに廃棄される。
【００１７】
送信手段１ｃは、第１の装置２が送信した第２の装置３宛の要求を、ネットワーク機器４から取得する。そして送信手段１ｃは、要求の送信先の第３の装置５への切替指示を、第１の装置２へ送信する。例えば送信手段１ｃは、遮断手段１ｂによる通信の遮断後に第１の装置２が送信した第２の装置３宛の要求を取得し、要求の送信先の第３の装置５への切替指示を第１の装置２へ送信する。
【００１８】
なお、計測手段１ａ、遮断手段１ｂ、および送信手段１ｃは、情報処理装置１が有するＣＰＵ（Central Processing Unit）により実現することができる。
また、図１に示した各要素間を接続する線は通信経路の一部を示すものであり、図示した通信経路以外の通信経路も設定可能である。
【００１９】
図２は、第１の実施の形態に係る情報処理装置の処理手順の一例を示すフローチャートである。以下、図２に示す処理をステップ番号に沿って説明する。
［ステップＳ１］計測手段１ａは、第１の装置２と第２の装置３との間の通信品質を計測する。
【００２０】
［ステップＳ２］計測手段１ａは、第１の装置２と第２の装置３との間の通信品質が、所定値以下に劣化したか否かを判断する。通信品質が所定値以下に劣化した場合、計測手段１ａは処理をステップＳ３に進める。通信品質が所定値以下に劣化していなければ、計測手段１ａは処理をステップＳ１に進める。
【００２１】
［ステップＳ３］遮断手段１ｂは、第１の装置２と第２の装置３との間の通信のうち、ネットワーク機器４から第２の装置３への要求の通信、または第２の装置３から第１の装置２への応答の送信を遮断する。
【００２２】
［ステップＳ４］送信手段１ｃは、ネットワーク機器４から第２の装置３宛の通信内容を取得し、第１の装置２から送信された第２の装置３宛の要求を検出したか否かを判断する。該当する要求を検出した場合、送信手段１ｃは、処理をステップＳ５に進める。該当する要求を検出していなければ、送信手段１ｃは、ステップＳ４の処理を繰り返す。
【００２３】
［ステップＳ５］送信手段１ｃは、要求の送信先の第３の装置５への切替指示を、第１の装置２へ送信する。
このような手順により、第１の装置２に対して、要求の送信先の切替指示が送信される。
【００２４】
図３は、第１の実施の形態によるアクセス先の切替制御の一例を示す図である。図３には、遮断手段１ｂによる通信の遮断処理後の、通信の様子が示されている。
第１の装置２から第２の装置３宛の要求６が送信されると、その要求６は、ネットワーク機器４までは正常に転送される。そのため、情報処理装置１では、ネットワーク機器４を介して、例えば要求６から複製された要求６ａを取得することができる。
【００２５】
一方、ネットワーク機器４から第２の装置３までの要求６の通信、または第２の装置３から第１の装置２への応答７の通信が遮断されているため、要求６に対する第２の装置３から応答７が、第１の装置２に到達することはない。
【００２６】
情報処理装置１は、要求６ａを取得すると、第１の装置２に対して切替指示８を送信する。すると第１の装置２は、切替指示８に従って、要求６と同じ内容の要求９を、第３の装置５宛に送信する。
【００２７】
このように、第１の実施の形態によれば、ルータや負荷分散装置などにリダイレクトの送信機能を設けずとも、簡易な手法で、通信の品質劣化発生時に、要求を送信する装置単位でアクセス先の切替制御が可能となる。しかも、第１の装置２と第２の装置３との通信経路外から要求送信先の切替制御を行うため、情報処理装置１を設置しても、切替対象外の装置間の通信への影響が抑止される。
【００２８】
〔第２の実施の形態〕
次に第２の実施の形態について説明する。第２の実施の形態は、データセンタ内のサーバへの端末装置からのアクセスを、負荷状況に応じて他のデータセンタ内のサーバに振り分けるものである。
【００２９】
図４は、第２の実施の形態のシステム構成例を示す図である。図４に示すように、第２の実施の形態では、複数のデータセンタＡ，Ｂが設けられている。
データセンタＡには、サーバ３００が設けられている。サーバ３００は、スイッチ２００を介してネットワーク２０に接続されている。サーバ３００は、端末装置３１〜３８から送られたリクエストメッセージに応じて処理を実行し、レスポンスメッセージを応答する。
【００３０】
またスイッチ２００には、リダイレクト装置１００が接続されている。スイッチ２００とリダイレクト装置１００との間は、２つの通信線で接続されている。一方の通信線は、リダイレクト装置１００宛のメッセージをスイッチ２００からリダイレクト装置１００に送信し、リダイレクト装置１００が送信するメッセージを、リダイレクト装置１００からスイッチ２００に送信するのに使用される。他方の通信線は、スイッチ２００のミラーポートに接続されており、ネットワーク２０とスイッチ２００との間で通信されたパケットのコピーの転送に使用される。リダイレクト装置１００は、サーバ３００の負荷状況に応じて、端末装置３１〜３８のアクセス先を他のサーバ３００ａに振り分ける。例えばリダイレクト装置１００は、アクセス先を他のサーバ３００ａに振り分ける対象の端末装置に対して、サーバ３００ａをリダイレクト先に指定したリダイレクトメッセージを送信する。このリダイレクトメッセージの送信元のアドレスは、サーバ３００のアドレスである。
【００３１】
データセンタＢにも、データセンタＡと同様に、サーバ３００ａ、スイッチ２００ａ、およびリダイレクト装置１００ａが設けられている。
ネットワーク２０は、複数のルータ２１〜２７によってパケットが転送される。ルータ２１には、端末装置３１〜３４が接続されている。またルータ２２には、端末装置３５〜３８が接続されている。
【００３２】
なお、図４に示すリダイレクト装置１００は、図１に示した第１の実施の形態の情報処理装置１の一例である。図４に示す端末装置３１〜３８は、図１に示した第１の実施の形態の第１の装置２の一例である。図４に示すサーバ３００は、図１に示した第１の実施の形態の第２の装置３の一例である。図４に示すサーバ３００ａは、図１に示した第１の実施の形態の第３の装置５の一例である。図４に示すスイッチ２００は、図１に示したネットワーク機器４の一例である。
【００３３】
図５は、第２の実施の形態に用いるリダイレクト装置のハードウェアの一構成例を示す図である。リダイレクト装置１００は、ＣＰＵ１０１によって装置全体が制御されている。ＣＰＵ１０１には、バス１０９を介してＲＡＭ（Random Access Memory）１０２と複数の周辺機器が接続されている。
【００３４】
ＲＡＭ１０２は、リダイレクト装置１００の主記憶装置として使用される。ＲＡＭ１０２には、ＣＰＵ１０１に実行させるＯＳ（Operating System）のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、ＲＡＭ１０２には、ＣＰＵ１０１による処理に必要な各種データが格納される。
【００３５】
バス１０９に接続されている周辺機器としては、ＨＤＤ（Hard disk drive）１０３、グラフィック処理装置１０４、入力インタフェース１０５、光学ドライブ装置１０６、および通信インタフェース１０７，１０８がある。
【００３６】
ＨＤＤ１０３は、内蔵したディスクに対して、磁気的にデータの書き込みおよび読み出しを行う。ＨＤＤ１０３は、リダイレクト装置１００の二次記憶装置として使用される。ＨＤＤ１０３には、ＯＳのプログラム、アプリケーションプログラム、および各種データが格納される。なお、二次記憶装置としては、フラッシュメモリなどの半導体記憶装置を使用することもできる。
【００３７】
グラフィック処理装置１０４には、モニタ１１が接続されている。グラフィック処理装置１０４は、ＣＰＵ１０１からの命令に従って、画像をモニタ１１の画面に表示させる。モニタ１１としては、ＣＲＴ（Cathode Ray Tube）を用いた表示装置や液晶表示装置などがある。
【００３８】
入力インタフェース１０５には、キーボード１２とマウス１３とが接続されている。入力インタフェース１０５は、キーボード１２やマウス１３から送られてくる信号をＣＰＵ１０１に送信する。なお、マウス１３は、ポインティングデバイスの一例であり、他のポインティングデバイスを使用することもできる。他のポインティングデバイスとしては、タッチパネル、タブレット、タッチパッド、トラックボールなどがある。
【００３９】
光学ドライブ装置１０６は、レーザ光などを利用して、光ディスク１４に記録されたデータの読み取りを行う。光ディスク１４は、光の反射によって読み取り可能なようにデータが記録された可搬型の記録媒体である。光ディスク１４には、ＤＶＤ（Digital Versatile Disc）、ＤＶＤ−ＲＡＭ、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）、ＣＤ−Ｒ（Recordable）／ＲＷ（ReWritable）などがある。
【００４０】
通信インタフェース１０７は、スイッチ２００の通常の通信ポートに接続されている。通信インタフェース１０７は、スイッチ２００を介して、サーバ３００または端末装置３１〜３８との間でデータの送受信を行う。
【００４１】
通信インタフェース１０８は、スイッチ２００のミラーポートに接続されている。通信インタフェース１０８は、ミラーポートを介して、スイッチ２００で転送されたパケットを受信する。なお通信インタフェース１０８は、スイッチ２００から入力されたパケットは、リダイレクト装置１００以外の装置が宛先のパケットであっても受信するように設定されている。このように、パケットの宛先とは無関係に、入力されたパケットをすべて傍受する処理を、キャプチャと呼ぶ。
【００４２】
以上のようなハードウェア構成によって、本実施の形態の処理機能を実現することができる。なお図５には、リダイレクト装置１００のハードウェア構成例を示したが、図４に示したリダイレクト装置１００ａもリダイレクト装置１００と同様のハードウェアで実現することができる。また図４に示したサーバ３００，３００ａ、ルータ２１〜２７、および端末装置３１〜３８もリダイレクト装置１００と同様のハードウェアで実現することができる。なおサーバ３００，３００ａ、ルータ２１〜２７、および端末装置３１〜３８については、宛先とは無関係にすべてのパケットを受信する通信インタフェース１０８は、無くてもよい。またルータ２１〜２７は、データの送受信を行うための通信インタフェース１０７を複数有する。さらに図１に示した情報処理装置１も、図５に示したリダイレクト装置１００と同様のハードウェアにより実現することができる。
【００４３】
図６は、スイッチのハードウェア構成の一例を示す図である。スイッチ２００は、スイッチ回路２１０、メモリ２２０、および複数の通信インタフェース（Ｉ／Ｆ）２３１，２３２，２３３，２３４，・・・を有する。複数の通信Ｉ／Ｆ２３１，２３２，２３３，２３４，・・・は、それぞれ通信ケーブルを接続する通信ポートを有する。図６の例では、通信Ｉ／Ｆ２３１の通信ポートが、ミラーポートとして使用される。
【００４４】
図６の例では、通信Ｉ／Ｆ２３１には、リダイレクト装置１００の通信インタフェース１０８が接続されている。通信Ｉ／Ｆ２３２には、リダイレクト装置１００の通信インタフェース１０７が接続されている。通信Ｉ／Ｆ２３３には、ルータ２６の通信インタフェースが接続されている。通信Ｉ／Ｆ２３４には、サーバ３００の通信インタフェースが接続されている。
【００４５】
スイッチ回路２１０は、通信Ｉ／Ｆ２３２，２３３，２３４，・・・から入力されたフレームを、そのフレームの宛先に応じて、他の通信Ｉ／Ｆ２３２，２３３，２３４，・・・に転送する。またスイッチ回路２１０は、通信Ｉ／Ｆ２３２，２３３，２３４，・・・に入力されたフレームのコピーを生成し、通信Ｉ／Ｆ２３１を介して送信する。
【００４６】
メモリ２２０には、入力されたデータリンク層（ＯＳＩ（Open Systems Interconnection）参照モデルの第２層）のフレームの宛先に対応する出力ポートが登録されたデータテーブルなどが格納される。またメモリ２２０には、ＡＣＬ（Access Control List）が格納される。ＡＣＬは、通信ポートごとに、その通信ポートを介した通信を許可する、または不許可とするパケットを定義する情報である。
【００４７】
なお、図４に示したスイッチ２００ａも、スイッチ２００と同様のハードウェアで実現することができる。
図７は、リダイレクト装置の機能の一例を示すブロック図である。リダイレクト装置１００は、キャプチャ部１１０、品質計測部１２０、品質情報記憶部１３０、リダイレクト制御部１４０、送受信部１５０、および表示部１６０を有する。
【００４８】
キャプチャ部１１０は、スイッチ２００のミラーポートから出力されたパケットを受信する（キャプチャする）。キャプチャ部１１０は、キャプチャしたパケットを品質計測部１２０とリダイレクト制御部１４０とに転送する。
【００４９】
品質計測部１２０は、キャプチャ部１１０、あるいは送受信部１５０で受信したパケットを発着ＩＰ（Internet Protocol）アドレスごとのトラヒックフローに分類する。例えば、品質計測部１２０は、各パケットの送信元ＩＰアドレスと宛先ＩＰアドレスとを抽出し、ＩＰアドレスの組を生成する。そして品質計測部１２０は、ＩＰアドレスの組が共通するパケットを、時系列に並べ、トラヒックフローとする。生成されたトラヒックフローには、サーバ３００といずれかの端末装置との間のリクエストメッセージとレスポンスメッセージとのそれぞれを構成するパケットが時系列に並べられる。品質計測部１２０は、トラヒックフローごとの品質を計測する。例えば品質計測部１２０は、トラヒックフローごとに、損失パケット数を計数する。損失パケット数は、数が多いほど通信の品質が悪いことを示している。損失パケット数は、例えば、ＩＰパケットのＩＤフィールド、ＴＣＰ（Transmission Control Protocol）パケットのシーケンス番号の抜けを調べることにより計数できる。ＵＤＰ（User Datagram Protocol）の場合は、ＲＴＰ（Real-time Transport Protocol）パケットのシーケンス番号の抜けを調べることにより、損失パケット数を計数できる。品質計測部１２０は、品質の計測結果に基づいて、トラヒックフローごと（送信元と宛先との組ごと）に、品質の良否判定を行う。例えば、品質計測部１２０は、送受信パケット数に対する損失パケットの割合が所定値未満であれば通信品質が良いと判定し、送受信パケット数に対する損失パケットの割合が所定値以上であれば通信品質が悪いと判定する。
【００５０】
品質計測部１２０は、品質の計測結果と良否判定結果とを、品質情報記憶部１３０に格納する。また品質計測部１２０は、通信品質が悪いと判定したトラヒックフローにおけるリクエストメッセージの送信元の端末装置のＩＰアドレスに基づいて、切替対象の端末装置を特定する。そして品質計測部１２０は、切替対象の端末装置のＩＰアドレスをリダイレクト制御部１４０内の切替制御部１４１に通知する。
【００５１】
例えば品質計測部１２０は、同一サブネット内の品質が劣化した端末装置の数が所定数以上であれば、そのサブネット全体を切替対象とする。また、品質計測部１２０は、同一サブネット内の通信実績がある端末装置のうちの、品質が劣化した端末装置の割合が所定値以上であれば、そのサブネット全体を切替対象とする。品質計測部１２０は、サブネット全体を切替対象とした場合、例えば、過去に通信実績がある、そのサブネット内の端末装置のＩＰアドレスを特定し、切替対象とする。
【００５２】
過去の通信実績の有無は、例えば、品質情報記憶部１３０を参照して判断できる。過去に通信が行われた端末装置の通信品質の情報が、品質情報記憶部１３０に登録されている。そこで例えば品質計測部１２０は、品質情報記憶部１３０に通信品質の情報が登録されている端末装置のＩＰアドレスのうち、切替対象のサブネット内のＩＰアドレスを、切替対象として抽出する。また、品質計測部１２０は、品質計測のために生成したトラヒックフローを通信履歴として、過去の所定期間分ＲＡＭ１０２などに保存しておき、保存しておいたトラヒックフローを参照して、各端末装置の通信実績の有無を判断することもできる。また品質計測部１２０は、品質が劣化した端末装置の数が所定数未満であれば、品質が劣化した端末装置を、切替対象として特定する。
【００５３】
品質情報記憶部１３０は、品質の計測結果と良否判定結果とを記憶する。例えばＲＡＭ１０２またはＨＤＤ１０３の記憶領域の一部が品質情報記憶部１３０として使用される。
リダイレクト制御部１４０は、通信品質が悪い端末装置に対して、サーバ３００とは別のサーバ３００ａにリクエストメッセージを送信させるリダイレクトメッセージの送信を制御する。リダイレクト制御部１４０は、リダイレクトメッセージの送信制御のために、切替制御部１４１とＡＲＰ（Address Resolution Protocol）管理部１４２とを有する。
【００５４】
切替制御部１４１は、品質計測部１２０から通知された切替対象の端末装置のＩＰアドレスに基づいて、切替対象の端末装置のアクセス先の切替を制御する。例えば切替制御部１４１は、サーバ３００のＡＲＰテーブル３１０を収集し、ＡＲＰ管理部１４２に登録する。ここで、切替制御部１４１は、切替対象として特定した端末装置のＩＰアドレスと、ＡＲＰ管理部１４２に登録したＩＰアドレスのエントリとを比較する。そして切替制御部１４１は、切替対象のＩＰアドレスであっても、ＡＲＰ管理部１４２に登録されているＩＰアドレスについては、通信中と判断し、リクエスト送信先の切替処理を一時保留する。すなわちＡＲＰテーブル３１０には数分オーダの間（例えば５分）、エントリが登録されている。そのため、ＡＲＰテーブルに残っているＩＰアドレスは、数分以内にリクエストを送信した端末装置のＩＰアドレスである。そこで第２の実施の形態では、ＡＲＰテーブルに残っているＩＰアドレスについては通信中とみなして、リクエストメッセージの送信先の切替処理を保留する。
【００５５】
切替制御部１４１は、切替対象のＩＰアドレスのうち、ＡＲＰ管理部１４２に登録されてないＩＰアドレスを、サーバ３００のＡＲＰテーブル３１０に、リダイレクト装置１００のＭＡＣ（Media Access Control）アドレスに対応付けて登録する。そして切替制御部１４１は、切替対象のＩＰアドレスのうち、ＡＲＰ管理部１４２に登録されてないＩＰアドレスを送信元とするリクエストメッセージが入力されると、そのリクエストメッセージ対する応答として、リダイレクトメッセージを生成する。生成されたリダイレクトメッセージには、サーバ３００ａへのリダイレクトが指示されている切替制御部１４１は、生成したリダイレクトメッセージを、送受信部１５０を介して送信する。
【００５６】
ＡＲＰ管理部１４２は、切替制御部１４１が収集したＡＲＰテーブルを記憶する。例えばＲＡＭ１０２またはＨＤＤ１０３の記憶領域の一部が、ＡＲＰ管理部１４２として使用される。
【００５７】
送受信部１５０は、スイッチ２００のミラーポート以外の通信ポートに接続され、端末装置３１〜３８、サーバ３００などの他の機器と通信する。例えば送受信部１５０は、端末装置３１〜３８にリダイレクトメッセージを送信する。また送受信部１５０は、サーバ３００のＡＲＰテーブル３１０の収集、および設定を行うため、ＳＮＭＰ（Simple Network Management Protocol ）のコマンドメッセージをサーバ３００に送信する。また送受信部１５０は、リダイレクト装置１００に転送されたサーバ３００からのレスポンスメッセージを廃棄する。
【００５８】
表示部１６０は、モニタ１１を介して、切替対象のＩＰアドレスや、切替が完了したことなどを表示する。
これらの要素が各処理を実行することにより、通信中の端末装置に影響を及ぼすことなく、切替対象の端末装置ごとにリダイレクトメッセージを送信できる。その結果、ルータや負荷分散装置などを追加することなく、簡易な装置をスイッチ２００に接続するだけで、負荷分散制御が可能となる。
【００５９】
なお、図７に示した各要素間を接続する線は通信経路の一部を示すものであり、図示した通信経路以外の通信経路も設定可能である。
また、図７に示す品質計測部１２０は、第１の実施の形態に示した情報処理装置１の計測手段１ａの機能を有する。また図７に示す切替制御部１４１は、第１の実施の形態に示した情報処理装置１の遮断手段１ｂと送信手段１ｃとの機能を有する。
【００６０】
ところでリダイレクト装置１００におけるリダイレクト制御には、各装置のＩＰアドレスやＭＡＣアドレスが使用される。
図８は、各装置のＩＰアドレスまたはＭＡＣアドレスの一例を示す図である。図８の例では、端末装置３１のＩＰアドレスは「192.168.1.10」である。端末装置３２のＩＰアドレスは「192.168.1.20」である。端末装置３３のＩＰアドレスは「192.168.1.15」である。端末装置３４のＩＰアドレスは「192.168.1.25」である。端末装置３５のＩＰアドレスは「192.168.10.10」である。端末装置３６のＩＰアドレスは「192.168.10.15」である。端末装置３７のＩＰアドレスは「192.168.10.20」である。端末装置３８のＩＰアドレスは「192.168.10.25」である。サーバ３００のＩＰアドレスは「192.168.100.5」である。
【００６１】
またリダイレクト装置１００のＭＡＣアドレスは「aa:bb:cc:dd:ee:ff」である。ルータ２６のＭＡＣアドレスは「00:11:22:33:44:55」である。
次に、リダイレクト装置１００内の品質情報記憶部１３０のデータ構造について説明する。品質情報記憶部１３０には、端末装置３１〜３８それぞれの通信品質に関する情報が格納される。
【００６２】
図９は、品質情報記憶部のデータ構造の一例を示す図である。品質情報記憶部１３０には、品質管理テーブル１３１が格納されている。
品質管理テーブル１３１には、送信元ＩＰアドレス、宛先ＩＰアドレス、送信パケット数、受信パケット数、送信側損失パケット数、受信側損失パケット数、および品質解析結果の欄が設けられている。各欄の横方向に対応付けられた情報どうしが関連付けられ、端末装置の通信品質に関する情報としてエントリされている。
【００６３】
送信元ＩＰアドレスの欄には、サーバ３００にリクエストメッセージを送信した端末装置のＩＰアドレスが設定される。
宛先ＩＰアドレスの欄には、リクエストメッセージの宛先であるサーバ３００のＩＰアドレスが設定される。
【００６４】
送信パケット数の欄には、端末装置からサーバ３００に所定期間内に送信されたパケット数（送信パケット数）が設定される。
受信パケット数の欄には、サーバ３００から端末装置に所定期間内に送信されたパケット数（受信パケット数）が設定される。
【００６５】
送信側損失パケット数の欄には、端末装置からサーバ３００に所定期間内に送信されたパケットのうち、損失したパケットの数（送信側損失パケット数）が設定される。例えば、端末装置からサーバ３００に所定期間内に送信されたパケットのうち、リダイレクト装置１００で取得できなかったパケットの数が、送信側損失パケット数に設定される。
【００６６】
受信側損失パケット数の欄には、サーバ３００から端末装置に所定期間内に送信されたパケットのうち、損失したパケットの数（受信側損失パケット数）が設定される。例えばサーバ３００から端末装置に所定期間内に送信されたパケットのうち、リダイレクト装置１００で取得できなかったパケットの数が、受信側損失パケット数に設定される。
【００６７】
品質解析結果の欄には、品質計測部１２０による通信品質の良否判定の結果を示すフラグが設定される。例えば、通信品質が良いと判定された場合、品質判定結果の欄に丸印が設定される。また通信品質が悪いと判定された場合、品質判定結果の欄にバツ印が設定される。
【００６８】
図９の例では、ＩＰアドレスが、「192.168.1.10」、「192.168.1.20」、「192.168.1.15」、「192.168.1.25」の各端末装置３１〜３４について、通信品質が悪いと判断されている。この場合、品質計測部１２０から切替制御部１４１へ、通信品質が悪い端末装置３１〜３４のＩＰアドレスが、切替対象として通知される。
【００６９】
すると切替制御部１４１は、品質計測部１２０からの切替対象の端末装置のＩＰアドレスの通知に基づいて、サーバ３００のＡＲＰテーブル３１０を制御する。ＡＲＰテーブル３１０の制御では、まず切替制御部１４１は、サーバ３００からＡＲＰテーブル３１０を収集する。
【００７０】
図１０は、ＡＲＰテーブルのデータ構造の一例を示す図である。ＡＲＰテーブル３１０には、ＩＰアドレスとＭＡＣアドレスとの組が設定されている。
ＩＰアドレスの欄には、サーバ３００と通信を行った端末装置のＩＰアドレスが設定される。ＭＡＣアドレスの欄には、対応するＩＰアドレスで示される端末装置宛に送信するパケットを送信する際のデータリンク層におけるフレームの宛先とするＭＡＣアドレスが設定される。例えば、リダイレクトの対象外の端末装置のＩＰアドレスに対応付けて、その端末装置とサーバ３００との間の通信経路上で、サーバ３００に隣接するルータのＭＡＣアドレスが、ＭＡＣアドレスの欄に設定される。またリダイレクトの対象の端末装置のＩＰアドレスに対応付けて、リダイレクト装置１００の通信インタフェース１０７のＭＡＣアドレスが、ＭＡＣアドレスの欄に設定される。
【００７１】
図１０の例は、リダイレクトの対象とする端末装置が検出される以前の状態のＡＲＰテーブル３１０である。そのためすべてのエントリのＭＡＣアドレスの欄には、ルータ２６のＭＡＣアドレス「00:11:22:33:44:55」が設定されている。
【００７２】
なおサーバ３００のＡＲＰテーブル３１０は、通信が一定の保持期間（エージングタイム：Aging time）行われていない端末装置のエントリは、クリアされる。例えばサーバ３００におけるＡＲＰテーブル３１０のエージングタイムは、数分のオーダ（例えば５分）で設定されているものとする。
【００７３】
次に、リダイレクト装置１００で実行されるリダイレクト処理について説明する。
図１１は、リダイレクト処理の手順の一例を示すフローチャートの前半である。以下、図１１に示す処理をステップ番号に沿って説明する。
【００７４】
［ステップＳ１１］品質計測部１２０は、端末装置ごとのトラヒックフローの品質を計測する。例えば品質計測部１２０は、トラヒックフローごとに、端末装置からの送信パケット数、受信パケット数、送信側損失パケット数、および受信側損失パケット数を計数する。そして、品質計測部１２０は、計数結果に基づいて、通信品質の良否を判断する。例えば品質計測部１２０は、送信パケット数と受信パケット数との合計値に対する、送信側損失パケット数と受信側損失パケット数との合計値の割合が、所定の閾値未満であれば、品質が良いと判断する。また品質計測部１２０は、送信パケット数と受信パケット数との合計値に対する、送信側損失パケット数と受信側損失パケット数との合計値の割合が、所定の閾値以上であれば、品質が悪いと判断する。
【００７５】
そして品質計測部１２０は、端末装置ごとのトラヒックフローの通信品質の計測結果と品質の良否判断結果とを登録した品質管理テーブルを作成し、品質情報記憶部１３０に格納する。
【００７６】
［ステップＳ１２］品質計測部１２０は、品質が劣化した端末装置のＩＰアドレスに基づいて、切替対象の端末装置またはサブネットを特定する。例えば品質計測部１２０は、同一サブネット内の品質が劣化した端末装置の数が所定数以上であれば、そのサブネット全体を切替対象として特定する。また品質計測部１２０は、同一サブネット内の品質が劣化した端末装置の数が所定数未満であれば、品質計測部１２０から品質が劣化した端末装置を、切替対象として特定する。
【００７７】
［ステップＳ１３］品質計測部１２０は、サブネットを切替対象として特定した場合、過去に通信の実績がある該当サブネット内の端末装置を検索する。例えば品質計測部１２０は、品質情報記憶部１３０内の品質管理テーブル１３１を参照し、品質管理テーブル１３１送信元ＩＰアドレスから、切替対象のサブネット内の端末装置のＩＰアドレスを検索する。そして品質計測部１２０は、検索結果として得られたＩＰアドレスに対応する端末装置を、切替対象の端末装置とする。そして品質計測部１２０は、切替対象の端末装置のＩＰアドレスを切替制御部１４１に通知する。
【００７８】
［ステップＳ１４］切替制御部１４１は、サーバ３００のＡＲＰテーブル３１０を収集する。例えば切替制御部１４１は、ＳＮＭＰのＡＲＰテーブル３１０の取得コマンドを、送受信部１５０を介してサーバ３００に送信する。するとサーバ３００からＡＲＰテーブル３１０が応答される。切替制御部１４１は、サーバ３００から収集したＡＲＰテーブル３１０を、ＡＲＰ管理部１４２に格納する。
【００７９】
［ステップＳ１５］切替制御部１４１は、切替対象の端末装置を１つ選択する。
［ステップＳ１６］切替制御部１４１は、選択した端末装置が、サーバ３００から収集したＡＲＰテーブル３１０に登録されているか否かを判断する。例えば切替制御部１４１は、選択した端末装置のＩＰアドレスが、ＡＲＰテーブル３１０のＩＰアドレスの欄に登録されていれば、その端末装置が登録されていると判断する。切替制御部１４１は、選択した端末装置が登録されている場合、処理をステップＳ１８に進める。また切替制御部１４１は、選択した端末装置が登録されていない場合、選択した端末装置を、即時リダイレクト可能と判定し、処理をステップＳ１７に進める。
【００８０】
［ステップＳ１７］切替制御部１４１は、サーバ３００のＡＲＰテーブル３１０に、即時リダイレクト可能と判定された端末装置のエントリを登録する。登録するエントリには、選択した端末装置のＩＰアドレスと、リダイレクト装置１００のＭＡＣアドレスとが含まれる。例えば切替制御部１４１は、サーバ３００に対してtelnetなどのリモートログインコマンドによりログインし、arpコマンドを実行することで、サーバ３００内のＡＲＰテーブル３１０に新たなレコードを登録することができる。
【００８１】
［ステップＳ１８］切替制御部１４１は、切替対象のすべての端末装置について、ステップＳ１５〜Ｓ１７の処理を実行したか否かを判断する。切替制御部１４１は、該当するすべての端末装置に対して処理が実行された場合、処理をステップＳ２１（図１２参照）に進める。切替制御部１４１は、該当する端末装置のうち、未処理の端末装置がある場合、処理をステップＳ１５に進める。
【００８２】
図１２は、リダイレクト処理の手順の一例を示すフローチャートの後半である。以下、図１２に示す処理をステップ番号に沿って説明する。
［ステップＳ２１］切替制御部１４１は、キャプチャ部１１０を介して、いずれかの端末装置からサーバ３００へのリクエストメッセージを受信する。
【００８３】
［ステップＳ２２］切替制御部１４１は、受信したリクエストメッセージが、即時リダイレクト可能と判定された端末装置から送信されたリクエストメッセージか否かを判断する。切替制御部１４１は、即時リダイレクト可能と判定された端末装置から送信されたリクエストメッセージであれば、処理をステップＳ２３に進める。また切替制御部１４１は、即時リダイレクト可能と判定された端末装置から送信されたリクエストメッセージでなければ、処理をステップＳ２４に進める。
【００８４】
［ステップＳ２３］切替制御部１４１は、即時リダイレクト可能と判定された端末装置へ、リダイレクトメッセージを送信する。リダイレクトメッセージでは、例えばサーバ３００ａがリダイレクト先に指定されている。リダイレクトメッセージが送信された端末装置は、リクエストメッセージの送信先がリダイレクト先のサーバに切り替えられる。
【００８５】
また送受信部１５０は、ステップＳ２１で受信したリクエストメッセージに対するサーバ３００からのレスポンスメッセージを受信する。そして送受信部１５０は、受信したレスポンスメッセージを廃棄する。
【００８６】
［ステップＳ２４］切替制御部１４１は、切替対象のすべての端末装置のリクエストメッセージの送信先を切り替えたか否かを判断する。切替制御部１４１は、該当するすべての端末装置の切り替えが完了した場合、処理をステップＳ２６に進める。また切替制御部１４１は、切り替えが完了していない端末装置がある場合、処理をステップＳ２５に進める。
【００８７】
［ステップＳ２５］切替制御部１４１は、ステップＳ１４でＡＲＰテーブル３１０を収集してから、サーバ３００におけるＡＲＰテーブル３１０のエージングタイムを超過したか否かを判断する。切替制御部１４１は、保持期間を超過した場合、処理をステップＳ１４に進め、再度、ＡＲＰテーブル３１０の収集から処理を繰り返す。切替制御部１４１は、保持期間を超過していない場合、処理をステップＳ２１に進める。
【００８８】
［ステップＳ２６］切替制御部１４１は、ステップＳ１７の処理においてサーバ３００に設定したＡＲＰテーブル３１０へのエントリをクリアする。
このようにして、切替対象の端末装置に対して、リダイレクトメッセージを送信し、アクセス先を別のサーバに切り替えさせることができる。なおセグメント全体を切替対象とした場合、過去に通信実績が確認されている端末装置のみを切替対象とすることで、存在しない端末装置からのリクエストメッセージの受信を待って、リダイレクト処理が終了できないような事態の発生が抑止されている。
【００８９】
例えば、品質計測の結果、図９に示す品質管理テーブル１３１が生成された場合を想定する。図９の例では、「192.168.1.0」のサブネットのすべての端末装置について、ネットワークで品質劣化が発生している。そこで、「192.168.1.0」のサブネットのすべての端末装置が切替対象となったものとする。
【００９０】
この場合、リダイレクト装置１００では、サーバ３００からＡＲＰテーブル３１０を収集し、適宜、ＡＲＰテーブル３１０の内容を制御する。リダイレクト装置１００からサーバ３００のＡＲＰテーブル３１０の制御は、例えばＳＮＭＰを用いて行うことができる。
【００９１】
図１３は、ＡＲＰテーブルの制御の手順の一例を示すシーケンス図である。以下、図１３に示す処理をステップ番号に沿って説明する。
［ステップＳ３１］リダイレクト装置１００の品質計測部１２０は、通信品質の劣化に伴う切替対象サブネットを「192.168.1.0」と特定する。
【００９２】
［ステップＳ３２］切替制御部１４１は、ＡＲＰテーブル３１０を収集するためのＳＮＭＰリクエストをサーバ３００に送信する。例えば「snmpwalk -v1 -c public 192.168.100.5 1.3.6.1.2.1.4.22.1.2」という内容のＳＮＭＰリクエストが送信される。
【００９３】
［ステップＳ３３］サーバ３００は、ＳＮＭＰリクエストに対して、ＳＮＭＰレスポンスによりＡＲＰテーブル３１０を応答する。ＳＮＭＰレスポンスには、例えば以下の内容が含まれる。
「1.3.6.1.2.1.4.22.1.2.192.168.1.10 = String: 00:11:22:33:44:55
1.3.6.1.2.1.4.22.1.2.192.168.1.20 = String: 00:11:22:33:44:55
1.3.6.1.2.1.4.22.1.2.192.168.10.100 = String: 00:11:22:33:44:55
1.3.6.1.2.1.4.22.1.2.192.168.10.200 = String: 00:11:22:33:44:55」
［ステップＳ３４］ＳＮＭＰレスポンスを受信したリダイレクト装置１００の切替制御部１４１は、取得したＡＲＰテーブル３１０の内容を解析する。そして切替制御部１４１は、「192.168.1.0」のサブネットにおいて通信実績がある端末装置のＩＰアドレスのうち、ＡＲＰテーブル３１０に登録されていないＩＰアドレス「192.168.1.15」、「192.168.1.25」を検出する。そして切替制御部１４１は、検出したＩＰアドレスを、即時リダイレクト可能な端末装置３３，３４のＩＰアドレスとする。
【００９４】
［ステップＳ３５］切替制御部１４１は、サーバ３００にリモートでログインし、例えば以下のarpコマンドを実行し、新たなエントリをＡＲＰテーブル３１０に登録する。
「arp -s 192.168.1.15 aa:bb:cc:dd:ee:ff
arp -s 192.168.1.25 aa:bb:cc:dd:ee:ff」
［ステップＳ３６］リダイレクト装置１００は、ＩＰアドレス「192.168.1.15」、「192.168.1.25」を送信元とするサーバ３００宛のリクエストメッセージに応じて、リダイレクト処理を行う。リダイレクト処理では、例えば切替制御部１４１によるリダイレクトメッセージの送信と、送受信部１５０によるサーバ３００からのレスポンスメッセージの廃棄とが行われる。
【００９５】
［ステップＳ３７］切替制御部１４１は、ステップＳ３２のＡＲＰテーブル収集処理からエージングタイムが経過すると、再度、ＡＲＰテーブル３１０を収集するためのＳＮＭＰリクエストをサーバ３００に送信する。ＳＮＭＰリクエストの内容は、ステップＳ３２の場合と同様である。
【００９６】
［ステップＳ３８］サーバ３００は、ＳＮＭＰリクエストに対して、ＳＮＭＰレスポンスによりＡＲＰテーブル３１０を応答する。ここで、ＩＰアドレス「192.168.1.10」の端末装置３１とサーバ３００との間の通信が終了し、この時点のＡＲＰテーブル３１０には、ＩＰアドレス「192.168.1.10」のエントリが含まれていないものとする。この場合、ＳＮＭＰレスポンスには、例えば以下の内容が含まれる。
「1.3.6.1.2.1.4.22.1.2.192.168.1.20 = String: 00:11:22:33:44:55
1.3.6.1.2.1.4.22.1.2.192.168.10.100 = String: 00:11:22:33:44:55
1.3.6.1.2.1.4.22.1.2.192.168.10.200 = String: 00:11:22:33:44:55
1.3.6.1.2.1.4.22.1.2.192.168.1.15 = String: aa:bb:cc:dd:ee:ff
1.3.6.1.2.1.4.22.1.2.192.168.1.25 = String: aa:bb:cc:dd:ee:ff」
［ステップＳ３９］ＳＮＭＰレスポンスを受信したリダイレクト装置１００の切替制御部１４１は、取得したＡＲＰテーブル３１０の内容を解析する。そして切替制御部１４１は、「192.168.1.0」のサブネットにおいて通信実績がある端末装置のＩＰアドレスのうち、ＡＲＰテーブル３１０に登録されていないＩＰアドレス「192.168.1.10」を、即時リダイレクト可能な端末装置３１のＩＰアドレスとして検出する。
【００９７】
［ステップＳ４０］切替制御部１４１は、サーバ３００にリモートでログインし、例えば以下のarpコマンドを実行し、新たなエントリをＡＲＰテーブル３１０に登録する。
「arp -s 192.168.1.10 aa:bb:cc:dd:ee:ff」
その後、同様にＡＲＰテーブル３１０の収集処理から処理を繰り返す。そして、ＩＰアドレス「192.168.1.20」の端末装置３２とサーバ３００との間の通信が終了すると、端末装置３２に対するリダイレクト処理が行われる。
【００９８】
［ステップＳ５１］切替制御部１４１は、切替対象のサブネット内の通信実績のあるすべての端末装置に対するリダイレクト処理が完了したと判断する。例えば切替制御部１４１は、ステップＳ３１で切替対象のサブネットを特定したときに、切替対象のサブネット内の通信実績のあるすべての端末装置のＩＰアドレスのリストを保持しておく。切替制御部１４１は、リダイレクト処理を実行した端末装置のＩＰアドレスを、リストから削除する。そして切替制御部１４１は、リストが空になると、リダイレクト処理が完了したと判断する。
【００９９】
［ステップＳ５２］切替制御部１４１は、サーバ３００に対して、ＡＲＰテーブル３１０内のエントリクリアのＳＮＭＰリクエストを送信する。例えば以下のような内容のＳＮＭＰリクエストが送信される。
「snmpset -v1 -c private 192.168.100.5 1.3.6.1.2.1.4.22.1.4.192.168.1.10 i 2
snmpset -v1 -c private 192.168.100.5 1.3.6.1.3.6.1.2.1.4.22.1.4.192.168.1.25 i 2」
このように、リダイレクト装置１００では、切替対象の端末装置が特定されると、サーバ３００からＡＲＰテーブル３１０が収集される。その後、切替対象の端末装置のＩＰアドレスとＡＲＰテーブル３１０のエントリが比較され、未通信の端末装置のＩＰアドレスが、リダイレクト装置１００のＭＡＣアドレスに対応付けてサーバ３００のＡＲＰテーブル３１０に登録される。
【０１００】
図１４は、更新後のＡＲＰテーブルの一例を示す図である。図１４に示したＡＲＰテーブル３１０は、図１０に示した状態に対して、端末装置３３，３４に関するエントリが追加されている。
【０１０１】
端末装置３３のエントリは、ＩＰアドレスが「192.168.1.15」、ＭＡＣアドレスがが「aa:bb:cc:dd:ee:ff」である。端末装置３４のエントリは、ＩＰアドレスが「192.168.1.25」、ＭＡＣアドレスが「aa:bb:cc:dd:ee:ff」である。
【０１０２】
なお、図１０に示したＡＲＰテーブル３１０のエントリとして、「192.168.1.10」と「192.168.1.20」とのＩＰアドレスが存在する。したがって、切替制御部１４１において、それらのＩＰアドレスに対応する端末装置３１，３２は通信中と判断され、通信が終了するまで、該当するＩＰアドレスに関する切替制御部１４１によるエントリの登録は行われない。
【０１０３】
図１４に示すようなＡＲＰテーブル３１０に基づいて、サーバ３００がデータリンク層のフレームを送信すると、サーバ３００から端末装置３３，３４宛のパケットが、リダイレクト装置１００に送られる。すなわち、サーバ３００から端末装置３３，３４宛のパケットには、データリンク層におけるフレームの宛先としてリダイレクト装置１００のＭＡＣアドレスが設定される。スイッチ２００では、宛先のＭＡＣアドレスに基づいて、リダイレクト装置１００から送出されたフレームを送出する通信ポートを判断する。その結果、スイッチ２００は、リダイレクト装置１００から送出された端末装置３３，３４宛のパケットを含むフレームを、リダイレクト装置１００が接続された通信ポートから送出する。その結果、該当フレームは、端末装置３３，３４には送信されず、リダイレクト装置１００に送信される。
【０１０４】
次に図１４に示すＡＲＰテーブル３１０がサーバ３００に格納されている状況におけるリダイレクト処理について説明する。
図１５は、第２の実施の形態におけるリダイレクト制御の一例を示す図である。図１５の例では、端末装置３１，３３それぞれからリクエストメッセージ４１，４４が送信された場合の、メッセージの流れを示している。
【０１０５】
なお、図１５では、リクエストメッセージには、送信元（Source）の端末装置のＩＰアドレスが示されている。図１５に示したリクエストメッセージ４１，４４の宛先（Destination）のＩＰアドレスは、すべてサーバ３００のＩＰアドレスである。また、レスポンスメッセージとリダイレクトメッセージとには、宛先の端末装置のＩＰアドレスが示されている。レスポンスメッセージとリダイレクトメッセージとの送信元のＩＰアドレスは、すべてサーバ３００のＩＰアドレスである。
【０１０６】
通信中の端末装置３１から送信されたリクエストメッセージ４１は、スイッチ２００を介してサーバ３００に転送される。このとき、スイッチ２００では、リクエストメッセージ４１の複製を生成し、複製のリクエストメッセージ４２をミラーポートから出力する。複製のリクエストメッセージ４２はリダイレクト装置１００に入力される。
【０１０７】
リクエストメッセージ４１を受信したサーバ３００は、リクエストメッセージ４１の内容に応じて処理を実行し、端末装置３１のＩＰアドレスを宛先とするパケットにより、レスポンスメッセージ４３を出力する。このとき、サーバ３００のＡＲＰテーブル３１０では、端末装置３１のＩＰアドレス「192.168.1.10」に対応付けて、ルータ２６のＭＡＣアドレス「00:11:22:33:44:55」が登録されている（図１４参照）。従って、レスポンスメッセージ４３を構成するパケットの送信用のフレームの宛先には、ルータ２６のＭＡＣアドレスが設定される。その結果、レスポンスメッセージ４３は、スイッチ２００においてルータ２６に転送される。そしてレスポンスメッセージ４３は、ネットワーク２０を介して端末装置３１に転送される。
【０１０８】
なお、図１５には示していないが、切替対象外の端末装置からサーバ３００宛のリクエストメッセージが送信された場合も、端末装置３１からリクエストメッセージが送信された場合と同様に処理され、レスポンスメッセージが端末装置に応答される。
【０１０９】
また通信中でなかった端末装置３３から送信されたリクエストメッセージ４４は、スイッチ２００を介してサーバ３００に転送される。このとき、スイッチ２００では、リクエストメッセージ４４の複製を生成し、複製のリクエストメッセージ４５をミラーポートから出力する。複製のリクエストメッセージ４５はリダイレクト装置１００に入力される。
【０１１０】
リクエストメッセージ４４を受信したサーバ３００は、リクエストメッセージ４４の内容に応じて処理を実行し、端末装置３３のＩＰアドレスを宛先とするパケットにより、レスポンスメッセージ４６を出力する。このとき、サーバ３００のＡＲＰテーブル３１０では、端末装置３３のＩＰアドレス「192.168.1.15」に対応付けて、リダイレクト装置１００のＭＡＣアドレス「aa:bb:cc:dd:ee:ff」が登録されている（図１４参照）。従って、レスポンスメッセージ４６を構成するパケットの送信用のフレームの宛先には、リダイレクト装置１００のＭＡＣアドレスが設定される。その結果、レスポンスメッセージ４６は、スイッチ２００においてリダイレクト装置１００に転送される。
【０１１１】
リダイレクト装置１００では、切替制御部１４１によりレスポンスメッセージ４６が廃棄される。またリダイレクト装置１００では、端末装置３３を送信元とする複製のリクエストメッセージ４５に応じ、切替制御部１４１により端末装置３３宛のリダイレクトメッセージ４７が生成され、リダイレクトメッセージ４７が送受信部１５０を介して出力される。リダイレクトメッセージ４７は、スイッチ２００においてルータ２６に転送される。そしてリダイレクトメッセージ４７は、ネットワーク２０を介して端末装置３３に転送される。
【０１１２】
リダイレクトメッセージ４７は、送信元のＩＰアドレスとしてサーバ３００のＩＰアドレスが設定されているため、端末装置３３は、リクエストメッセージ４４に対してリダイレクトメッセージ４７が応答されたものと認識する。リダイレクトメッセージ４７には、例えばサーバ３００が設置されたデータセンタＡとは別のデータセンタＢ内のサーバ３００ａのＩＰアドレスを指定した、リダイレクト指示が含まれている。そこで、リダイレクトメッセージ４７を受信した端末装置３３は、リダイレクトの指示に従い、サーバ３００ａに対して改めてリクエストメッセージを送信する。これにより、端末装置３３は、サーバ３００ａからサービス提供を受けることができる。
【０１１３】
このようにして、既存の通信に影響を及ぼすことなく、端末装置からのリクエストメッセージの送信先を、別のサーバに切り替えることが可能となる。すなわち、即時リダイレクトが可能な端末装置以外の端末装置の通信には影響を及ぼさずに、即時リダイレクトが可能な端末装置に対してリダイレクトメッセージを送信し、別のサーバへアクセス先を誘導することができる。
【０１１４】
サーバ３００では、ＡＲＰテーブル３１０内の通信していない端末装置のエントリが、通信が途絶えてからエージングタイムだけ経過するとクリアされる。そこで、第２の実施の形態では、あらかじめ設定した収集間隔（例えばエージングタイムと同じ期間）で、通信実績がある切替対象の端末装置すべてに対するリダイレクト処理が完了するまで、図１１のステップＳ１５〜Ｓ１７の処理が繰り返される。その結果、端末装置３１，３２のエントリについても、通信が終了してからエージングタイム経過後にＡＲＰテーブル３１０から削除される。その後、端末装置３１，３２のＩＰアドレス「192.168.1.10」、「192.168.1.20」に、リダイレクト装置１００のＭＡＣアドレス「aa:bb:cc:dd:ee:ff」を対応付けたエントリがＡＲＰテーブル３１０に登録される。その結果、端末装置３１，３２に対するリダイレクトメッセージの送信も可能となる。
【０１１５】
なお、各端末装置とサーバ３００との間は、例えばＨＴＴＰにより通信を行うことができる。そこで端末装置３３とサーバ３００との間のＨＴＴＰによる通信のメッセージの例を図１６〜図１８に示す。
【０１１６】
図１６は、リクエストメッセージの一例を示す図である。図１６に示すリクエストメッセージ４４は、ＧＥＴコマンドにより、情報の取得を要求するメッセージである。このようなリクエストメッセージがサーバ３００に送られると、サーバ３００から要求された情報を含むレスポンスメッセージ４６が応答される。
【０１１７】
図１７は、レスポンスメッセージの一例を示す図である。レスポンスメッセージ４６には、図１７に示すようなヘッダ情報に加えて、端末装置３３から要求された情報が含まれる。ただし、端末装置３３は、切替対象であり、且つ即時リダイレクト可能であるため、レスポンスメッセージ４６は、リダイレクト装置１００で廃棄される。端末装置３３には、レスポンスメッセージ４６に代えて、リダイレクトメッセージ４７が送信される。
【０１１８】
図１８は、リダイレクトメッセージの一例を示す図である。リダイレクトメッセージ４７では、「Location」によってリダイレクト先が指定されている。
以上説明したように、第２の実施の形態によれば、通信品質が良好な間は、リダイレクト装置１００は、端末装置３１〜３８とサーバ３００との間の通信に関与していない。そのため、切替対象の端末装置とサーバ３００との間の通信に影響を及ぶことが抑止されている。その結果、リダイレクト装置１００の性能の善し悪しが、端末装置とサーバ３００との間の応答時間の遅延などの通信品質に影響を及ぼすことがなく、リダイレクト装置１００に求められる性能も低くてすむ。
【０１１９】
また、通信品質が劣化した端末装置が検出された場合においても、即時リダイレクト可能な端末装置以外の端末装置に関する通信は、リダイレクト装置１００を経由せずに行われる。そのため、リダイレクト制御を行う場合であっても、切替対象の端末装置以外の端末装置とサーバ３００との間の通信に影響が及ぶことも抑止されている。
【０１２０】
しかも既存のネットワークに設けられたスイッチ２００のミラーポートにリダイレクト装置１００を接続するだけで、端末装置のアクセス先の切替制御が可能となる。そのため、既存のネットワークへの適用が容易であると共に、例えば運用中のネットワークにおけるサービスを停止せずに、端末装置に対するアクセス先の切替制御機能の導入が可能となる。
【０１２１】
さらに、サーバ３００との間で通信中の端末装置については、通信が終了した後にリダイレクトメッセージを送信するため、一連の処理の途中で通信が遮断されることが抑止されている。その結果、リダイレクト制御を行うことによる通信への悪影響が抑止されている。
【０１２２】
また、品質計測に基づき、自動でリダイレクト制御を行うため、ユーザからのクレームなどがなくてもアクセス先を切り替えることができる。すなわち、早急なアクセス先の切替制御が可能である。
【０１２３】
なお、第２の実施の形態では、サーバ３００のＡＲＰテーブル３１０に、端末装置のＩＰアドレスに対応付けて、リダイレクト装置１００のＭＡＣアドレスを登録しているが、他のＭＡＣアドレスを登録してもよい。すなわち第２の実施の形態では、サーバ３００から端末装置宛に送信されるパケットが廃棄されるのであれば、そのパケットを含むフレームの宛先はリダイレクト装置１００でなくてもよい。例えば、サーバ３００に対して同一セグメントで接続されたルータ２６のＭＡＣアドレス以外のＭＡＣアドレスを、端末装置のＩＰアドレスに対応付けてＡＲＰテーブル３１０に設定することもできる。同一セグメント内のルータ２６以外のＭＡＣアドレス宛に送信されたフレームは、どの機器でも受信されないか、受信する機器が存在してもルーティングされず、端末装置に転送されることはない。
【０１２４】
〔第３の実施の形態〕
次に第３の実施の形態について説明する。第３の実施例では、サーバからのレスポンスメッセージをリダイレクト装置で廃棄する代わりに、全てのリクエストメッセージをリダイレクト装置に送信する。切替対象のクライアントに対しては、リダイレクト装置からリダイレクトメッセージを送信し、そうでないクライアントのリクエストメッセージはリダイレクト装置がサーバに転送する。サーバは、受信したリクエストメッセージに対応するレスポンスメッセージを応答する。
【０１２５】
なお、第３の実施の形態におけるシステム構成は、図４〜図８に示した第２の実施の形態のシステム構成と同様である。ただし、切替制御部１４１の機能が、第２の実施の形態と第３の実施の形態とで異なる。そこで、以下第２の実施の形態の構成要素に示した符号を用いて、第３の実施の形態について説明する。
【０１２６】
第３の実施の形態では、切替制御部１４１は、サーバ３００のＡＲＰテーブル３１０を制御する代わりに、リダイレクト装置１００が接続されたスイッチ２００の端末装置側のポートにＡＣＬを設定する。この際、切替制御部１４１は、切替対象となる端末装置、あるいはサブネットからのリクエストメッセージを他のポートに転送しないように、ＡＣＬを設定する。また第３の実施の形態では、切替制御部１４１は、ルータ２６のＡＲＰテーブル２６ａを収集し、ＡＲＰ管理部１４２にエントリを登録し、通信中の端末装置を特定する。
【０１２７】
図１９は、第３の実施の形態で利用する情報の一例を示す図である。図１９の例は、「192.168.1.0/24」のサブネットが切替対象となっている場合を想定している。なお、「192.168.1.0/24」の「/24」はサブネットマスクを示しており、「192.168.1.0」の上位２４ビットがネットワークアドレスであることを表している。この場合、スイッチ２００のＡＣＬ２４０には、例えば「192.168.1.0/24」からのＨＴＴＰのメッセージの入力を遮断するように設定される。例えば、ＡＣＬ２４０に「deny,192.168.1.0/24,HTTP」と設定される。なおＡＣＬ２４０は、例えばスイッチ２００のメモリ２２０（図６参照）に格納されている。
【０１２８】
またルータ２６は、ＡＲＰテーブル２６ａを有している。ＡＲＰテーブル２６ａは、例えばルータ２６内のＲＡＭなどの記憶装置に格納されている。サーバ３００に対する端末装置から通信は、すべてルータ２６で中継されるため、ルータ２６内のＡＲＰテーブル２６ａを参照することで、サーバ３００と通信中の端末装置を把握することが可能である。
【０１２９】
なお通信中の端末装置は、例えばリダイレクト装置１００の品質計測部１２０で計測中の端末装置のＩＰアドレスにより特定することもできる。また品質計測部１２０においてキャプチャしたリクエストメッセージを解析し、新規のリクエストメッセージかどうかで通信中の端末装置を判定することもできる。
【０１３０】
図２０は、第３の実施の形態のリダイレクト処理の手順の一例を示すフローチャートである。以下、図２０に示す処理をステップ番号に沿って説明する。
［ステップＳ４１］品質計測部１２０は、端末装置ごとのトラヒックフローの品質を計測する。
【０１３１】
［ステップＳ４２］品質計測部１２０は、品質が劣化した端末装置のＩＰアドレスに基づいて、切替対象の端末装置またはサブネットを特定する。
［ステップＳ４３］品質計測部１２０は、サブネットを切替対象として特定した場合、過去に通信の実績がある該当サブネット内の端末装置を検索する。そして品質計測部１２０は、過去に通信の実績がある該当サブネット内の端末装置を、切替対象として特定する。品質計測部１２０は、特定した切替対象装置のＩＰアドレスを切替制御部１４１に通知する。
【０１３２】
［ステップＳ４４］切替制御部１４１は、ルータ２６のＡＲＰテーブル２６ａを収集する。切替制御部１４１は、収集したＡＲＰテーブル２６ａを、ＡＲＰ管理部１４２に格納する。
【０１３３】
［ステップＳ４５］切替制御部１４１は、スイッチ２００のＡＣＬ２４０を設定する。例えば切替制御部１４１は、サブネット全体が切替対象に特定された場合、ルータ２６に接続されたポートへの切替対象のサブネットからの入力パケットを遮断するように、ＡＣＬ２４０を設定する。また、切替制御部１４１は、切替対象に設定されたサブネット内の端末装置とは別に、個々の端末装置が切替対象に特定された場合、ルータ２６に接続されたポートへの該当する端末装置からの入力パケットを遮断するように、ＡＣＬ２４０を設定する。
【０１３４】
［ステップＳ４６］切替制御部１４１は、キャプチャ部１１０でキャプチャされたパケットで示されるメッセージを受信する。
［ステップＳ４７］切替制御部１４１は、受信したメッセージが、即時リダイレクト可能な切替対象の端末装置からのリクエストか否かを判断する。即時リダイレクト可能かどうかは、ステップＳ４４で取得したＡＲＰテーブル２６ａを参照して判断する。取得したリクエストメッセージの送信元のＩＰアドレスのエントリが、取得したＡＲＰテーブル２６ａに含まれていなければ、送信元のＩＰアドレスに対応する端末装置は、即時リダイレクト可能な端末装置と判断できる。切替制御部１４１は、即時リダイレクト可能な切替対象の端末装置からのリクエストであれば、処理をステップＳ４９に進める。切替制御部１４１は、即時リダイレクト可能な切替対象の端末装置からのリクエストでなければ、処理をステップＳ４８に進める。
【０１３５】
［ステップＳ４８］切替制御部１４１は、サーバ３００にリクエストメッセージを転送する。切替制御部１４１は、その後、処理をステップＳ４６に進める。
［ステップＳ４９］切替制御部１４１は、受信したリクエストメッセージの送信元の端末装置に対して、リダイレクトメッセージを送信する。送信されるリダイレクトメッセージには、例えばサーバ３００ａへのリダイレクトの指示が含まれる。この際、ステップＳ４６で受信したメッセージは廃棄される。
【０１３６】
［ステップＳ５０］切替制御部１４１は、切替対象のすべての端末装置に対してリダイレクトメッセージを送信し、アクセス先の切替制御を行ったか否かを判断する。切替対象のすべての端末装置の切替制御が完了した場合、切替制御部１４１は、処理をステップＳ５１に進める。またアクセス先の切り替えを行っていない切替対象の端末装置がある場合、切替制御部１４１は、処理をステップＳ４６に進める。
【０１３７】
［ステップＳ５１］切替制御部１４１は、ステップＳ４５で行ったスイッチ２００のＡＣＬ２４０の設定を解除する。
このようにして、スイッチ２００のＡＣＬ２４０を利用して、切替対象の端末装置からのリクエストメッセージがサーバ３００に送られるのを遮断し、リダイレクト装置１００がそのリクエストメッセージに対してリダイレクトメッセージを応答することができる。
【０１３８】
図２１は、第３の実施の形態におけるリダイレクト制御の一例を示す図である。図２１の例では、端末装置３１，３３それぞれからリクエストメッセージ５１，５５が送信された場合の、メッセージの流れを示している。なお、図１９に示すように、「192.168.1.0/24」のサブネット全体が切替対象であり、該当サブネットの通信がスイッチ２００で遮断されているものとする。また図１９のＡＲＰテーブル２６ａに示すように、ＩＰアドレス「192.168.1.10」の端末装置３１は通信中であるが、ＩＰアドレス「192.168.1.15」の端末装置３３は通信中でないものとする。
【０１３９】
通信中の端末装置３１から送信されたリクエストメッセージ５１は、スイッチ２００において遮断される。このとき、スイッチ２００では、リクエストメッセージ５１の複製を生成し、複製のリクエストメッセージ５２をミラーポートから出力する。複製のリクエストメッセージ５２はリダイレクト装置１００に入力される。
【０１４０】
複製のリクエストメッセージ５２を受信したリダイレクト装置１００は、端末装置３１が通信中であるため、複製のリクエストメッセージ５２と同じ内容のリクエストメッセージ５３を、サーバ３００に送信する。リクエストメッセージ５３を受信したサーバ３００は、リクエストメッセージ５３の内容に応じて処理を実行し、端末装置３１のＩＰアドレスを宛先とするパケットにより、レスポンスメッセージ５４を出力する。レスポンスメッセージ５４は、スイッチ２００を介してルータ２６に転送される。そしてレスポンスメッセージ５４は、ネットワーク２０を介して端末装置３１に転送される。
【０１４１】
なお、図２１には示していないが、切替対象外の端末装置からサーバ３００宛のリクエストメッセージが送信された場合、スイッチ２００で遮断されずにリクエストメッセージがサーバ３００に送られ、サーバ３００からレスポンスメッセージが応答される。
【０１４２】
また通信中でなかった端末装置３３から送信されたリクエストメッセージ５５は、スイッチ２００において遮断される。このとき、スイッチ２００では、リクエストメッセージ５５の複製を生成し、複製のリクエストメッセージ５６をミラーポートから出力する。複製のリクエストメッセージ５６はリダイレクト装置１００に入力される。
【０１４３】
複製のリクエストメッセージ５６を受信したリダイレクト装置１００では、切替制御部１４１により端末装置３３宛のリダイレクトメッセージ５７が生成され、リダイレクトメッセージ５７が送受信部１５０を介して出力される。リダイレクトメッセージ５７は、スイッチ２００においてルータ２６に転送される。そしてリダイレクトメッセージ５７は、ネットワーク２０を介して端末装置３３に転送される。
【０１４４】
リダイレクトメッセージ５７には、例えばサーバ３００が設置されたデータセンタＡとは別のデータセンタＢ内のサーバ３００ａのＩＰアドレスを指定した、リダイレクト指示が含まれている。そこで、リダイレクトメッセージ５７を受信した端末装置３３は、リダイレクトの指示に従い、サーバ３００ａに対して改めてリクエストメッセージを送信する。これにより、端末装置３３は、サーバ３００ａからサービス提供を受けることができる。
【０１４５】
このようにして、既存の通信に影響を及ぼすことなく、端末装置からのリクエストメッセージの送信先を、別のサーバに切り替えることが可能となる。すなわち、即時リダイレクトが可能な端末装置以外の端末装置の通信には影響を及ぼさずに、即時リダイレクトが可能な端末装置に対してリダイレクトメッセージを送信し、別のサーバへアクセス先を誘導することができる。
【０１４６】
〔第４の実施の形態〕
次に第４の実施の形態について説明する。第４の実施の形態では、通信品質が劣化した端末装置を検出すると、すべてのリクエストメッセージをリダイレクト装置に送信する。リダイレクト装置は、即時リダイレクト可能な切替対象の端末装置に対してはリダイレクトメッセージを送信し、そうでない端末装置のリクエストメッセージはサーバに転送する。このようにして、サーバからは、通常のレスポンスメッセージのみを応答させるようにしたものである。
【０１４７】
なお、第４の実施の形態におけるシステム構成は、図４〜図８に示した第２の実施の形態のシステム構成と同様である。ただし、切替制御部１４１の機能が、第２の実施の形態と第４の実施の形態とで異なる。そこで、以下第２の実施の形態の構成要素に示した符号を用いて、第４の実施の形態について説明する。
【０１４８】
第４の実施の形態では、すべてのリクエストメッセージをリダイレクト装置１００に送信させるために、ルータ２６のＡＲＰテーブル２６ａを操作する。例えばリダイレクト装置１００は、通信品質が劣化した端末装置を検出すると、ルータ２６のＡＲＰテーブル２６ａ内のサーバ３００のＩＰアドレスのエントリのＭＡＣアドレスを、リダイレクト装置１００のＭＡＣアドレスに書き換える。
【０１４９】
図２２は、更新後のルータのＡＲＰテーブルの一例を示す図である。ルータ２６のＡＲＰテーブル２６ａには、サーバ３００のＩＰ「192.168.100.5」に対応付けてリダイレクト装置１００のＭＡＣアドレス「aa:bb:cc:dd:ee:ff」を設定したエントリが登録されている。このようなＡＲＰテーブル２６ａに基づいてルータ２６がパケットの転送を行うと、転送するパケットを含むフレームの宛先には、リダイレクト装置１００のＭＡＣアドレス「aa:bb:cc:dd:ee:ff」が設定される。すると、リダイレクト装置１００のＭＡＣアドレス「aa:bb:cc:dd:ee:ff」を宛先とするフレームは、スイッチ２００においてリダイレクト装置１００に転送される。このようにしてサーバ３００宛のすべてのＩＰパケットを、リダイレクト装置１００に転送させることができる。
【０１５０】
また、リダイレクト装置１００の切替制御部１４１はルータ２６のＡＲＰテーブル２６ａを収集し、ＡＲＰ管理部１４２に登録する。そして切替制御部１４１は、取得したＡＲＰテーブル２６ａに基づいて、通信中の端末装置を特定する。なお通信中の端末装置は、例えばリダイレクト装置１００の品質計測部１２０で計測中の端末装置のＩＰアドレスにより特定することもできる。また品質計測部１２０においてキャプチャしたリクエストメッセージを解析し、新規のリクエストメッセージかどうかで通信中の端末装置を判定することもできる。
【０１５１】
図２３は、第４の実施の形態のリダイレクト処理の手順の一例を示すフローチャートである。以下、図２３に示す処理をステップ番号に沿って説明する。なお、図２３に示すステップＳ６１〜Ｓ６４、Ｓ６７〜Ｓ７１の処理は、それぞれ図２０に示した第３の実施の形態のフローチャートのステップＳ４１〜Ｓ４４、Ｓ４７〜Ｓ５１の処理と同じである。以下、図２０のフローチャートと処理が異なるステップＳ６５，Ｓ６６，Ｓ７２について説明する。
【０１５２】
［ステップＳ６５］切替制御部１４１は、ルータ２６のＡＲＰテーブル２６ａを設定する。例えば切替制御部１４１は、ルータ２６内のＡＲＰテーブル２６ａに登録されているサーバ３００のＩＰアドレスのエントリのＭＡＣアドレスを、リダイレクト装置１００のＭＡＣアドレスに変更する。
【０１５３】
［ステップＳ６６］切替制御部１４１は、ルータ２６のＡＲＰテーブル２６ａの設定によって転送されてきた、サーバ３００を宛先としたメッセージを受信する。なお切替制御部１４１は、図２０に示した第３の実施の形態のステップＳ４６の処理と同様に、キャプチャ部１１０でキャプチャしたパケットで示されるメッセージを受信することもできる。
【０１５４】
［ステップＳ７２］切替制御部１４１は、ステップＳ６５で行ったルータ２６のＡＲＰテーブル２６ａの設定の解除指示（例えば、サーバ３００のＭＡＣアドレスに戻す指示）を送信する。
【０１５５】
このようにして、ルータ２６のＡＲＰテーブル２６ａを利用して、切替対象の端末装置からのリクエストメッセージがサーバ３００に送られるのを遮断できる。そして、リダイレクト装置１００が、リクエストメッセージに対してリダイレクトメッセージを応答することができる。
【０１５６】
図２４は、第４の実施の形態におけるリダイレクト制御の一例を示す図である。図２４の例では、端末装置３１，３３それぞれからリクエストメッセージ６１，６４が送信された場合の、メッセージの流れを示している。なお、「192.168.1.0/24」のサブネット全体が切替対象であるものとする。また図２２のＡＲＰテーブル２６ａに示すように、ＩＰアドレス「102.168.1.10」の端末装置３１は通信中であるが、ＩＰアドレス「102.168.1.15」の端末装置３３は通信中でないものとする。
【０１５７】
通信中の端末装置３１から送信されたリクエストメッセージ６１は、スイッチ２００においてリダイレクト装置１００に転送される。リクエストメッセージ６１を受信したリダイレクト装置１００は、端末装置３１が通信中であるため、リクエストメッセージ６１と同じ内容のリクエストメッセージ６２を、サーバ３００に送信する。リクエストメッセージ６２を受信したサーバ３００は、リクエストメッセージ６２の内容に応じて処理を実行し、端末装置３１のＩＰアドレスを宛先とするパケットにより、レスポンスメッセージ６３を出力する。レスポンスメッセージ６３は、スイッチ２００を介してルータ２６に転送される。そしてレスポンスメッセージ６３は、ネットワーク２０を介して端末装置３１に転送される。
【０１５８】
なお、図２４には示していないが、切替対象外の端末装置からサーバ３００宛のリクエストメッセージが送信された場合も、端末装置３１からリクエストメッセージが送信された場合と同様に処理され、レスポンスメッセージが端末装置に応答される。
【０１５９】
また通信中でなかった端末装置３３から送信されたリクエストメッセージ６４は、スイッチ２００においてリダイレクト装置１００に転送される。
リクエストメッセージ６４を受信したリダイレクト装置１００では、切替制御部１４１により端末装置３３宛のリダイレクトメッセージ６５が生成され、リダイレクトメッセージ６５が送受信部１５０を介して出力される。リダイレクトメッセージ６５は、スイッチ２００においてルータ２６に転送される。そしてリダイレクトメッセージ６５は、ネットワーク２０を介して端末装置３３に転送される。
【０１６０】
リダイレクトメッセージ６５には、例えばサーバ３００が設置されたデータセンタＡとは別のデータセンタＢ内のサーバ３００ａのＩＰアドレスを指定した、リダイレクト指示が含まれている。そこで、リダイレクトメッセージ６５を受信した端末装置３３は、リダイレクトの指示に従い、サーバ３００ａに対して改めてリクエストメッセージを送信する。これにより、端末装置３３は、サーバ３００ａからサービス提供を受けることができる。
【０１６１】
このようにして、既存の通信に影響を及ぼすことなく、端末装置からのリクエストメッセージの送信先を、別のサーバに切り替えることが可能となる。すなわち、即時リダイレクトが可能な端末装置以外の端末装置の通信には影響を及ぼさずに、即時リダイレクトが可能な端末装置に対してリダイレクトメッセージを送信し、別のサーバへアクセス先を誘導することができる。
【０１６２】
〔第５の実施の形態〕
次に第５の実施の形態について説明する。第５の実施の形態は、リダイレクト装置の制御によるサーバからのレスポンスメッセージを遮断する手法を用いて、試験対象サーバの運用前の事前検証を実施するものである。
【０１６３】
図２５は、第５の実施の形態のシステム構成の一例を示す図である。図２５では、図４に示した第２の実施の形態と同じ要素には図４と同じ符号を付し、説明を省略する。
第５の実施の形態では、第２の実施の形態におけるリダイレクト装置１００に代えて、試験装置４００がスイッチ２００に接続されている。試験装置４００は、スイッチ２００のミラーポートと通常の通信ポートとのそれぞれに対して接続されている。またスイッチ２００には、運用サーバ３００ｂと試験対象サーバ３００ｃとが接続されている。
【０１６４】
運用サーバ３００ｂは、ネットワーク２０を介して、端末装置３１〜３４に対してサービスを提供するコンピュータである。試験対象サーバ３００ｃは、運用サーバ３００ｂと同様の処理機能を有することの試験対象となるコンピュータである。例えば運用サーバ３００ｂの代替用に用意されたコンピュータが、試験対象サーバ３００ｃとしてスイッチ２００に接続される。
【０１６５】
試験装置４００は、試験対象サーバ３００ｃの動作試験および性能試験を実施するコンピュータである。例えば試験装置４００は、端末装置３１〜３４と運用サーバ３００ｂとの間で通信されたメッセージを、スイッチ２００のミラーポートからキャプチャする。試験装置４００は、取得したメッセージフローを通信履歴として記憶する。
【０１６６】
その後、試験装置４００は、スイッチ２００のＡＣＬ２４０を操作し、試験対象サーバ３００ｃからのレスポンスメッセージが、端末装置３１〜３４に転送されないように制御する。次に、試験装置４００は、記憶した通信履歴を用いて、試験対象サーバ３００ｃの動作試験を行う。
【０１６７】
なお、試験装置４００と運用サーバ３００ｂ，３００ｃとは、図５に示したリダイレクト装置１００と同様のハードウェア構成で実現することができる。
図２６は、第５の実施の形態における試験装置の機能の一例を示すブロック図である。試験装置４００は、キャプチャ部４１０、履歴管理部４２０、履歴記憶部４３０、試験実施部４４０、送受信部４５０、および表示部４６０を有する。
【０１６８】
キャプチャ部４１０は、スイッチ２００のミラーポートから出力されたパケットをキャプチャする。
履歴管理部４２０は、キャプチャ部４１０でキャプチャしたパケットに基づいて認識できるメッセージの通信履歴を、履歴記憶部４３０に格納する。例えば履歴管理部４２０は、端末装置３１〜３４と運用サーバ３００ｂとの間で通信されたメッセージの履歴情報を履歴記憶部４３０に格納する。また履歴管理部４２０は、試験実施部４４０と試験対象サーバ３００ｃとの間で通信されたメッセージの履歴情報を履歴記憶部４３０に格納する。
【０１６９】
履歴記憶部４３０は、通信履歴を記憶する。例えば試験装置４００内のＲＡＭまたはＨＤＤの記憶領域の一部が、履歴記憶部４３０として使用される。
試験実施部４４０は、履歴管理部４２０を介して履歴記憶部４３０に格納された通信履歴を取得し、取得した通信履歴を用いて、試験対象サーバ３００ｃの動作試験を行う。例えば試験実施部４４０は、端末装置３１〜３４から運用サーバ３００ｂに送られたリクエストメッセージと同じリクエストメッセージを、送受信部４５０を介して試験対象サーバ３００ｃに送信する。このとき送信されるリクエストメッセージの送信元のＩＰアドレスは、いずれかの端末装置３１〜３４のＩＰアドレスである。試験実施部４４０は、試験対象サーバ３００ｃからのレスポンスメッセージを、キャプチャ部４１０を介して取得する。そして試験実施部４４０は、端末装置３１〜３４と運用サーバ３００ｂとの間の通信履歴と、試験装置４００と試験対象サーバ３００ｃとの間の通信履歴とを比較し、試験対象サーバ３００ｃが運用サーバ３００ｂと同様に動作することを検証する。
【０１７０】
送受信部４５０は、スイッチ２００を介して、試験対象サーバ３００ｃへのリクエストメッセージを送信する。
表示部４６０は、試験実施部４４０による試験結果を、モニタなどに表示する。
【０１７１】
このような機能を有する試験装置４００により、試験対象サーバ３００ｃの動作試験が行われる。なお、スイッチ２００では、初期状態として、運用サーバ３００ｂが接続された通信ポートにおける入出力パケットの複製を、ミラーポートから出力するように設定されている。
【０１７２】
図２７は、試験の手順を示すフローチャートである。以下、図２７に示す処理をステップ番号に沿って説明する。なお以下の処理は、例えば試験担当者による試験開始指示の入力が行われたときに実行される。
【０１７３】
［ステップＳ８１］キャプチャ部４１０は、運用サーバ３００ｂと端末装置３１〜３４それぞれとの間で通信されたパケットをキャプチャする。キャプチャ部４１０は、キャプチャしたパケットを履歴管理部４２０に渡す。履歴管理部４２０は、例えば取得したパケットを解析して通信されたメッセージを生成し、生成したメッセージを履歴記憶部４３０に格納する。
【０１７４】
［ステップＳ８２］試験実施部４４０は、ステップＳ８１におけるキャプチャ処理の期間が所定期間に達すると、スイッチ２００におけるミラーリングの対象を、試験対象サーバ３００ｃが接続された通信ポートに設定する。
【０１７５】
［ステップＳ８３］試験実施部４４０は、スイッチ２００のＡＣＬの設定を行う。例えば試験実施部４４０は、スイッチ２００のＡＣＬに、試験対象サーバ３００ｃが接続された通信ポートからの入力パケットのうち、端末装置３１〜３４が属するサブネット「192.168.1.0/24」を宛先とするパケットを遮断する設定を行う。これにより、試験対象サーバ３００ｃから端末装置３１〜３４宛のレスポンスメッセージは、スイッチ２００で遮断される。
【０１７６】
［ステップＳ８４］試験実施部４４０は、履歴記憶部４３０内の運用サーバ３００ｂを宛先とする、未抽出のリクエストメッセージを、取得時刻の早い順に１つずつ抽出する。そして試験実施部４４０は、抽出したリクエストメッセージと同じ内容のリクエストメッセージを、端末装置３１〜３４のＩＰアドレスを送信元のアドレスとして、試験対象サーバ３００ｃに対して送信する。
【０１７７】
［ステップＳ８５］履歴管理部４２０は、試験対象サーバからのレスポンスメッセージを、キャプチャ部４１０を介して受信する。そして履歴管理部４２０は、受信したレスポンスメッセージを、履歴記憶部４３０に格納する。
【０１７８】
［ステップＳ８６］試験実施部４４０は、履歴記憶部４３０内に、運用サーバ３００ｂを宛先とする未抽出のリクエストメッセージが残っているか否かを判断する。試験実施部４４０は、該当するリクエストメッセージがあれば、処理をステップＳ８４に進める。また試験実施部４４０は、該当するリクエストメッセージがなければ、処理をステップＳ８７に進める。
【０１７９】
［ステップＳ８７］試験実施部４４０は、送信したリクエストメッセージに対して運用サーバ３００ｂが応答したレスポンスメッセージと、ステップＳ８５で受信したレスポンスメッセージとの内容が同じか否かを判断する。試験実施部４４０は、レスポンスメッセージの内容が同じなら、処理をステップＳ８８に進める。また試験実施部４４０は、レスポンスメッセージの内容が異なる場合、処理をステップＳ８９に進める。
【０１８０】
［ステップＳ８８］試験実施部４４０は、試験対象サーバ３００ｃは正常動作していると判定する。例えば、試験実施部４４０は、正常動作していることを、表示部４６０を介してモニタに表示するその後、処理が終了する。
【０１８１】
［ステップＳ８９］試験実施部４４０は、試験対象サーバ３００ｃは異常動作していると判定する。例えば、試験実施部４４０は、異常動作していることを、表示部４６０を介してモニタに表示するその後、処理が終了する。
【０１８２】
このようにして、試験対象サーバ３００ｃの動作試験が行われる。
図２８は、通信履歴の取得状況の一例を示す図である。端末装置３１から運用サーバ３００ｂにリクエストメッセージ７１が送信されると、スイッチ２００においてリクエストメッセージ７１が複製される。そしてスイッチ２００のミラーポートから、複製のリクエストメッセージ７２が出力され、試験装置４００に入力される。運用サーバ３００ｂでは、リクエストメッセージ７１に応じた処理を実行し、端末装置３１宛のレスポンスメッセージ７３を送信する。するとスイッチ２００において、レスポンスメッセージ７３が複製される。そしてスイッチ２００のミラーポートから複製のレスポンスメッセージ７４が出力され、試験装置４００に入力される。
【０１８３】
同様に、端末装置３３から運用サーバ３００ｂにリクエストメッセージ７５が送信されると、スイッチ２００においてリクエストメッセージ７５が複製される。そしてスイッチ２００のミラーポートから、複製のリクエストメッセージ７６が出力され、試験装置４００に入力される。運用サーバ３００ｂでは、リクエストメッセージ７５に応じた処理を実行し、端末装置３３宛のレスポンスメッセージ７７を送信する。するとスイッチ２００において、レスポンスメッセージ７７が複製される。そしてスイッチ２００のミラーポートから複製のレスポンスメッセージ７８が出力され、試験装置４００に入力される。
【０１８４】
試験装置４００では、スイッチ２００から受信した複製のリクエストメッセージ７２，７６や、複製のレスポンスメッセージ７４，７８を履歴情報として記憶する。
図２９は、取得される通信履歴の一例を示す図である。図２９には、端末装置３１と運用サーバ３００ｂとの間の通信履歴４３１の例が示されている。例えば通信履歴４３１には、端末装置のＩＰアドレスと運用サーバのＩＰアドレスとの組に対応付けて、リクエストメッセージとレスポンスメッセージとの組のリストが、時系列に登録されている。
【０１８５】
このような通信履歴４３１を取得した後、試験装置４００は、ミラーポートへのミラーリングの対象を、試験対象サーバ３００ｃが接続された通信ポートへの入力パケットに切り替える。また試験装置４００は、スイッチ２００のＡＣＬを操作する。
【０１８６】
図３０は、スイッチのＡＣＬ操作の一例を示す図である。試験装置４００の試験実施部４４０は、スイッチ２００のＡＣＬ２４０に、例えば「deny,192.168.1.0/24,HTTP」と設定する。これにより、試験対象サーバ３００ｃからサブネット「192.168.1.0/24」内の端末装置宛のパケットは、スイッチ２００で遮断される。
【０１８７】
その後、試験実施部４４０は、試験対象サーバ３００ｃに対して、試験用のリクエストメッセージを送信する。
図３１は、試験時のメッセージの送受信状況の一例を示す図である。例えば試験装置４００から、端末装置３１のＩＰアドレスを送信元とするリクエストメッセージ８１が、試験対象サーバ３００ｃ宛に送信される。リクエストメッセージ８１は、スイッチ２００により試験対象サーバ３００ｃに転送される。試験対象サーバ３００ｃでは、リクエストメッセージ８１に応じた処理を実行し、端末装置３１宛のレスポンスメッセージ８２を送信する。レスポンスメッセージ８２は、スイッチ２００において遮断されると共に、スイッチ２００でレスポンスメッセージ８２が複製される。そしてスイッチ２００のミラーポートから複製のレスポンスメッセージ８３が出力され、試験装置４００に入力される。
【０１８８】
同様に、試験装置４００から、端末装置３３のＩＰアドレスを送信元とするリクエストメッセージ８４が、試験対象サーバ３００ｃ宛に送信される。リクエストメッセージ８４は、スイッチ２００により試験対象サーバ３００ｃに転送される。試験対象サーバ３００ｃでは、リクエストメッセージ８４に応じた処理を実行し、端末装置３３宛のレスポンスメッセージ８５を送信する。レスポンスメッセージ８５は、スイッチ２００において遮断されると共に、スイッチ２００でレスポンスメッセージ８５が複製される。そしてスイッチ２００のミラーポートから複製のレスポンスメッセージ８６が出力され、試験装置４００に入力される。
【０１８９】
試験装置４００では、このようにして取得したレスポンスメッセージ８３，８６を、例えば対応するリクエストメッセージ８１，８４と組にして、履歴記憶部４３０内に試験時の履歴情報として格納する。そして、運用時の履歴情報と試験時の履歴情報とを比較することで、試験対象サーバ３００ｃが正しく動作しているか否かが検証される。
【０１９０】
図３２は、試験対象サーバが正しく動作した場合の通信例を示す図である。図３２には、試験装置４００と試験対象サーバ３００ｃとの間の通信履歴４３２の例が示されている。例えば通信履歴４３２には、試験装置４００がリクエストメッセージの送信元に設定した端末装置のＩＰアドレスと、試験対象サーバ３００ｃのＩＰアドレスとの組に対応付けて、通信されたメッセージが登録されている。例えば通信履歴４３２には、リクエストメッセージとレスポンスメッセージとの組のリストが、時系列に登録されている。
【０１９１】
図３２に示す通信履歴４３２では、運用サーバ３００ｂから端末装置３１に送信されたレスポンスメッセージと同じレスポンスメッセージが、試験対象サーバ３００ｃから送信されている。従って、試験実施部４４０は、試験対象サーバ３００ｃが正常に動作していると判定する。
【０１９２】
図３３は、試験対象サーバが正しく動作していない場合の通信例を示す図である。図３３には、試験装置４００と試験対象サーバ３００ｃとの間の通信履歴４３３の例が示されている。図３３に示す通信履歴４３３では、運用サーバ３００ｂから端末装置３１に送信されたレスポンスメッセージと一部異なるレスポンスメッセージが、試験対象サーバ３００ｃから送信されている。従って、試験実施部４４０は、試験対象サーバ３００ｃが正常に動作していないと判定する。
【０１９３】
以上により、これから導入しようとしているサーバが正しく動作するかを事前に検証できる。
〔その他の実施の形態〕
第２〜第５の実施の形態では、スイッチ２００のミラーポートを用いて、パケットのキャプチャを行っているが、スイッチ機能を有していないハブ（マルチポートリピータ）を用いてパケットをキャプチャすることもできる。スイッチ機能を有していないハブでは、１つの通信ポートに入力されたパケットは、他のすべての通信ポートから出力される。そのため、リダイレクト装置１００または試験装置４００を、端末装置とサーバとの通信経路上に設置されたハブの任意の通信ポートに接続することで、ハブを経由して送受信されるパケットのキャプチャが可能となる。
【０１９４】
第５の実施の形態では、スイッチ２００のＡＣＬ２４０の設定により、試験対象サーバ３００ｃから端末装置へのレスポンスメッセージの通信を遮断しているが、他の方法で通信を遮断することもできる。例えば第２の実施の形態と同様に、試験対象サーバ３００ｃのＡＲＰテーブル３１０を操作することで、端末装置へのレスポンスメッセージを試験装置４００に転送させるようにしてもよい。
【０１９５】
なお、上記の各実施の形態に示した処理機能は、コンピュータによって実現することができる。その場合、リダイレクト装置１００や試験装置４００が有する機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記憶装置、光ディスク、光磁気記録媒体、半導体メモリなどがある。磁気記憶装置には、ハードディスク装置（ＨＤＤ）、フレキシブルディスク（ＦＤ）、磁気テープなどがある。光ディスクには、ＤＶＤ、ＤＶＤ−ＲＡＭ、ＣＤ−ＲＯＭ／ＲＷなどがある。光磁気記録媒体には、ＭＯ（Magneto-Optical disc）などがある。
【０１９６】
プログラムを流通させる場合には、例えば、そのプログラムが記録されたＤＶＤ、ＣＤ−ＲＯＭなどの可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
【０１９７】
プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、サーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムに従った処理を実行することもできる。
【０１９８】
また、上記の処理機能の少なくとも一部を、ＤＳＰ（Digital Signal Processor）、ＡＳＩＣ（Application Specific Integrated Circuit）、ＰＬＤ（Programmable Logic Device）などの電子回路で実現することもできる。
【０１９９】
以上、実施の形態を例示したが、実施の形態で示した各部の構成は同様の機能を有する他のものに置換することができる。また、他の任意の構成物や工程が付加されてもよい。さらに、前述した実施の形態のうちの任意の２以上の構成（特徴）を組み合わせたものであってもよい。
【０２００】
以上の実施の形態に開示された技術には、以下の付記に示す技術が含まれる。
（付記１）  第１の装置が送信した第２の装置宛の要求の、前記第１の装置と前記第２の装置との通信経路上に配置されたネットワーク機器から前記第２の装置への通信と、前記第２の装置が送信した前記第１の装置宛の応答の通信との少なくとも一方の通信を、ネットワークを介した遠隔制御により遮断する遮断手段と、
前記第１の装置が送信した前記第２の装置宛の要求を、前記ネットワーク機器から取得し、要求の送信先の第３の装置への切替指示を、前記第１の装置へ送信する送信手段と、
を有する情報処理装置。
【０２０１】
（付記２）  前記遮断手段は、前記第１の装置と前記第２の装置との間の最後の通信から所定期間以上経過後に、通信の遮断を行い、
前記送信手段は、通信の遮断後に前記第１の装置が送信した前記第２の装置宛の要求を取得し、要求の送信先の前記第３の装置への切替指示を前記第１の装置へ送信する、
ことを特徴とする付記１記載の情報処理装置。
【０２０２】
（付記３）  前記遮断手段は、前記第２の装置から、所定期間以内に通信が行われた通信相手のアドレスが登録されたテーブルを取得して、記憶手段に格納し、該テーブルに前記第１の装置のアドレスが登録されていなければ、前記第１の装置と前記第２の装置との間の最後の通信から所定期間以上経過していると判断することを特徴とする付記２記載の情報処理装置。
【０２０３】
（付記４）  前記遮断手段は、前記第２の装置に対して、前記第１の装置宛のパケットを送信する際のデータリンク層におけるフレームの宛先アドレスとして、前記第１の装置と前記第２の装置との通信経路上の装置のアドレスと異なるアドレスの登録指示を送信する、
ことを特徴とする付記１乃至３のいずれかに記載の情報処理装置。
【０２０４】
（付記５）  前記遮断手段は、前記第２の装置に対して、前記第１の装置宛のパケットを送信する際のデータリンク層におけるフレームの宛先のアドレスとして、前記情報処理装置のアドレスの登録を指示する登録指示を送信し、前記第２の装置から送られた前記第１の装置宛のパケットを廃棄する、
ことを特徴とする付記４記載の情報処理装置。
【０２０５】
（付記６）  前記遮断手段は、前記ネットワーク機器に対して、前記第１の装置が送信した前記第２の装置宛の要求の通信の遮断指示を送信する、
ことを特徴とする付記１乃至３のいずれかに記載の情報処理装置。
【０２０６】
（付記７）  前記遮断手段は、前記ネットワーク機器から、前記第１の装置が送信した前記第２の装置宛の要求を取得し、前記第１の装置と前記第２の装置との間の直前の通信から所定期間以上経過していなければ、該要求を前記第２の装置に転送し、
前記送信手段は、前記第１の装置と前記第２の装置との間の直前の通信から所定期間以上経過した後に、前記第１の装置が送信した前記第２の装置宛の要求を取得した場合、要求の送信先の前記第３の装置への切替指示を前記第１の装置へ送信する、
ことを特徴とする付記６記載の情報処理装置。
【０２０７】
（付記８）  前記遮断手段は、前記第１の装置への切替指示送信後、前記ネットワーク機器に対して、第１の装置が送信した前記第２の装置宛の通信の遮断の解除指示を送信する、
ことを特徴とする付記６または７のいずれかに記載の情報処理装置。
【０２０８】
（付記９）  前記遮断手段は、前記第２の装置と同一セグメントで接続されたルータに対して、前記第２の装置宛のパケットを送信する際のデータリンク層におけるフレームの宛先アドレスとして、前記第１の装置と前記第２の装置との通信経路上の装置のアドレスと異なるアドレスの登録指示を送信する、
ことを特徴とする付記１乃至３のいずれかに記載の情報処理装置。
【０２０９】
（付記１０）  前記遮断手段は、前記ルータに対して、前記第２の装置宛のパケットを送信する際のデータリンク層におけるフレームの宛先のアドレスとして、前記情報処理装置のアドレスの登録を指示する登録指示を送信し、前記ルータから送られた前記第２の装置宛のパケットのうち、前記第１の装置以外の装置からのパケットは前記第２の装置に転送し、前記第１の装置からのパケットは廃棄する、
ことを特徴とする付記９記載の情報処理装置。
【０２１０】
（付記１１）  前記遮断手段は、前記第１の装置への切替指示送信後、前記ルータに対して、前記第２の装置宛のパケットを送信する際のデータリンク層におけるフレームの宛先アドレスの設定の解除指示を送信する、
ことを特徴とする付記９または１０のいずれかに記載の情報処理装置。
【０２１１】
（付記１２）  前記第２の装置に要求を送信する複数の装置それぞれの前記第２の装置との間の通信品質を計測し、通信品質が所定値以下になった装置を前記第１の装置に決定する計測手段をさらに有することを特徴とする付記１乃至１１のいずれかに記載の情報処理装置。
【０２１２】
（付記１３）  前記計測手段は、前記第２の装置と他の装置との間の通信を前記ネットワーク機器から取得し、取得した通信を解析して、通信品質が所定値以下になった装置を判断する、
ことを特徴とする付記１２記載の情報処理装置。
【０２１３】
（付記１４）  前記計測手段は、通信品質が所定値以下になった装置と同一サブネットに属する装置それぞれを、前記第１の装置に決定することを特徴とする付記１２または１３のいずれかに記載の情報処理装置。
【０２１４】
（付記１５）  前記計測手段は、通信品質が所定値以下になった装置と同一サブネットに属する装置のうち、前記第２の装置との間で過去に通信実績のある装置を、前記第１の装置に決定することを特徴とする付記１２乃至１４のいずれかに記載の情報処理装置。
【０２１５】
（付記１６）  前記送信手段は、前記切替指示の送信元を、前記第２の装置に偽装することを特徴とする付記１乃至１５のいずれかに記載の情報処理装置。
（付記１７）  第１の装置が送信した第２の装置宛の応答の、前記第１の装置と前記第２の装置との通信経路上に配置されたネットワーク機器から前記第２の装置への通信を、ネットワークを介した遠隔制御により遮断する遮断手段と、
送信元を前記第２の装置に偽装した要求を前記第１の装置に送信する送信手段と、
前記第１の装置からの応答を前記ネットワーク機器から取得し、該応答の内容に基づいて前記第１の装置の動作検証を行う検証手段と、
を有する情報処理装置。
【０２１６】
（付記１８）  コンピュータに、
第１の装置が送信した第２の装置宛の要求の、前記第１の装置と前記第２の装置との通信経路上に配置されたネットワーク機器から前記第２の装置への通信と、前記第２の装置が送信した前記第１の装置宛の応答の通信との少なくとも一方の通信を、ネットワークを介した遠隔制御により遮断し、
前記第１の装置が送信した前記第２の装置宛の要求を、前記ネットワーク機器から取得し、要求の送信先の第３の装置への切替指示を、前記第１の装置へ送信する、
処理を実行させるプログラム。
【０２１７】
（付記１９）  コンピュータが、
第１の装置が送信した第２の装置宛の要求の、前記第１の装置と前記第２の装置との通信経路上に配置されたネットワーク機器から前記第２の装置への通信と、前記第２の装置が送信した前記第１の装置宛の応答の通信との少なくとも一方の通信を、ネットワークを介した遠隔制御により遮断し、
前記第１の装置が送信した前記第２の装置宛の要求を、前記ネットワーク機器から取得し、要求の送信先の第３の装置への切替指示を、前記第１の装置へ送信する、
ことを特徴とする制御方法。
【符号の説明】
【０２１８】
１  情報処理装置
１ａ  計測手段
１ｂ  遮断手段
１ｃ  送信手段
２  第１の装置
３  第２の装置
４  ネットワーク機器
５  第３の装置
Ｎ  ネットワーク
【図１】
0005782925.tif 000002
【図２】
0005782925.tif 000003
【図３】
0005782925.tif 000004
【図４】
0005782925.tif 000005
【図５】
0005782925.tif 000006
【図６】
0005782925.tif 000007
【図７】
0005782925.tif 000008
【図８】
0005782925.tif 000009
【図９】
0005782925.tif 000010
【図１０】
0005782925.tif 000011
【図１１】
0005782925.tif 000012
【図１２】
0005782925.tif 000013
【図１３】
0005782925.tif 000014
【図１４】
0005782925.tif 000015
【図１５】
0005782925.tif 000016
【図１６】
0005782925.tif 000017
【図１７】
0005782925.tif 000018
【図１８】
0005782925.tif 000019
【図１９】
0005782925.tif 000020
【図２０】
0005782925.tif 000021
【図２１】
0005782925.tif 000022
【図２２】
0005782925.tif 000023
【図２３】
0005782925.tif 000024
【図２４】
0005782925.tif 000025
【図２５】
0005782925.tif 000026
【図２６】
0005782925.tif 000027
【図２７】
0005782925.tif 000028
【図２８】
0005782925.tif 000029
【図２９】
0005782925.tif 000030
【図３０】
0005782925.tif 000031
【図３１】
0005782925.tif 000032
【図３２】
0005782925.tif 000033
【図３３】
0005782925.tif 000034