(57)【要約】【課題】フォールバックの再発を低減するネットワークシステムを提供する。【解決手段】フォールバック検出装置５は、名前解決応答から、ホスト名に対応するＩＰアドレスを取得し、ホスト名、ホスト名に対応するＩＰアドレス、ホスト名に対応するＩＰアドレスへの通信に関する情報を関連付けてフォールバック判定テーブルとして登録し、フォールバック判定テーブルに、端末６が送信する接続要求の宛先ＩＰアドレスがある場合、その送信パケット数を記憶し、通信に関する情報に基づいて、接続要求についてフォールバックが発生したと判定するフォールバック判定部５１を備え、フォールバック回避部６３（３２）は、フォールバックが発生したと判定された接続要求の宛先ＩＰアドレスへの接続を、端末６に回避させる。【選択図】図１
2014022819.tif 000002
【特許請求の範囲】
【請求項１】
サービスを提供するサーバと、
前記サーバのホスト名に対する名前解決を行うＤＮＳサーバと、
前記サーバに接続要求を送信する端末と、
前記端末の通信を傍受し、前記接続要求についてフォールバックの発生を判定するフォールバック検出装置と、
フォールバック回避部とを備え、
前記端末は、前記接続要求の送信に先立って、前記ＤＮＳサーバに、前記名前解決を要求する名前解決要求を送信し、前記ＤＮＳサーバが前記名前解決要求に応じて送信する名前解決応答を受信し、前記名前解決応答から、前記サーバのホスト名に対応するＩＰアドレスのリストを取得する名前解決部と、前記リストについてＩＰアドレスの優先度を決定するポリシーに従って、前記リストのうち、優先度の高いＩＰアドレスから順に前記接続要求を送信するサービス利用部とを備え、
前記フォールバック検出装置は、前記名前解決応答から、前記ホスト名に対応するＩＰアドレスを取得し、前記ホスト名と、前記ホスト名に対応するＩＰアドレスと、前記ホスト名に対応するＩＰアドレスへの通信に関する情報とを関連付けて判定テーブルとして登録し、前記判定テーブルに、前記端末が送信する接続要求の宛先ＩＰアドレスがある場合、前記判定テーブルの、前記接続要求の宛先ＩＰアドレスへの通信に関する情報を更新し、前記端末と前記サーバとの接続が成功すると、前記通信に関する情報に基づいて、前記接続要求についてフォールバックが発生したと判定するフォールバック判定部を備え、
前記フォールバック回避部は、前記フォールバック検出装置が、前記接続要求についてフォールバックが発生したと判定する場合において、前記フォールバックが発生したと判定された前記接続要求の宛先ＩＰアドレスへの接続を、前記端末に回避させることを特徴とするネットワークシステム。
【請求項２】
前記サーバは、前記接続要求に対する接続応答を前記端末に送信し、
前記フォールバック判定部は、前記判定テーブルに、前記接続応答の送信元ＩＰアドレスがある場合、前記判定テーブルから、前記接続応答の送信元ＩＰアドレスに対応するホスト名を有するＩＰアドレス抽出し、抽出されたＩＰアドレスのうち、前記接続応答の送信元ＩＰアドレスでなく、且つ前記送信パケット数が０でないＩＰアドレスについて、フォールバックが発生したと判定することを特徴とする請求項１に記載のネットワークシステム。
【請求項３】
前記フォールバック判定部は、前記接続応答があっても、前記接続要求に対してエラーを示すパケットである場合、前記接続応答があったと判定しないことを特徴とする請求項１又は２に記載のネットワークシステム。
【請求項４】
前記端末は、前記フォールバック回避部を備え、
前記フォールバック回避部は、前記ポリシーを変更することによって、前記フォールバックが発生したと判定された前記接続要求の宛先ＩＰアドレスへの接続を、前記端末に回避させることを特徴とする請求項１〜３のいずれか１項に記載のネットワークシステム。
【請求項５】
前記ＤＮＳサーバは、前記フォールバック回避部を備え、
前記フォールバック回避部は、前記名前解決応答を変更することによって、前記フォールバックが発生したと判定された前記接続要求の宛先ＩＰアドレスへの接続を、前記端末に回避させることを特徴とする請求項１〜３のいずれか１項に記載のネットワークシステム。
【請求項６】
前記フォールバック検出装置は、前記フォールバック判定部によりフォールバックが発生したと判定されたＩＰアドレスについて、所定の条件を満たす場合において、フォールバックが解消したと判定するフォールバック更新部を備えることを特徴とする請求項１〜５のいずれか１項に記載のネットワークシステム。
【請求項７】
前記端末は、前記フォールバック回避部と、入力部と、表示部とを備え、
前記フォールバック回避部は、前記フォールバック判定部が、フォールバックが発生したと判定するＩＰアドレスを前記表示部に表示させ、前記入力部の入力に応じて、前記ポリシーを変更することを特徴とする請求項４に記載のネットワークシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＩＰ（Internet Protocol）通信を行うネットワークシステムに関する。
【背景技術】
【０００２】
ＩＰ通信を行うアプリケーションは、名前解決によってＯＳ（Operating System）からＩＰアドレスのリストを取得し、リストが示す優先度の順に接続を試みるように実装することが推奨されている。このようなアプリケーションでは、リストにおいて優先度が高い装置への接続を失敗した場合において、タイムアウト時間が経過するまで待ってから、次に優先度が高い装置に接続するフォールバックを行わなければなければならない。これが繰り返されると、接続が成功するまでに大きな時間的損失が発生することにもなりかねない。その為、端末利用者にとっては、理由が分からないままに長時間待たなければならないという状況が起こることがあった。
【０００３】
これに対し、例えば特許文献１では、端末からのＴＣＰ（Transmission Control Protocol）接続に対して、ルータからＩＣＭＰパケットが返されたときに接続の中断を行う技術が提案されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−２５０９７６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１に記載の技術は、優先度が高い装置が長く停止している場合においても、その都度、優先度が高い装置に接続を試行することになる。
本発明は、上記問題点を鑑み、フォールバックの再発を低減するネットワークシステムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するために、本発明の第１の態様は、サービスを提供するサーバと、前記サーバのホスト名に対する名前解決を行うＤＮＳサーバと、前記サーバに接続要求を送信する端末と、前記端末の通信を傍受し、前記接続要求についてフォールバックの発生を判定するフォールバック検出装置と、前記フォールバック検出装置が、前記接続要求についてフォールバックが発生したと判定する場合において、前記フォールバックが発生したと判定された前記接続要求の宛先ＩＰアドレスへの接続を、前記端末に回避させるフォールバック回避部とを備え、前記端末は、前記接続要求の送信に先立って、前記ＤＮＳサーバに、前記名前解決を要求する名前解決要求を送信し、前記ＤＮＳサーバが前記名前解決要求に応じて送信する名前解決応答を受信し、前記名前解決応答から、前記サーバのホスト名に対応するＩＰアドレスのリストを取得する名前解決部と、前記リストについてＩＰアドレスの優先度を決定するポリシーに従って、前記リストのうち、優先度の高いＩＰアドレスから順に前記接続要求を送信するサービス利用部とを備え、前記フォールバック検出装置は、前記名前解決応答から、前記ホスト名に対応するＩＰアドレスを取得し、前記ホスト名と、前記ホスト名に対応するＩＰアドレスと、前記ホスト名に対応するＩＰアドレスへの通信に関する情報とを関連付けて判定テーブルとして登録し、前記判定テーブルに、前記端末が送信する接続要求の宛先ＩＰアドレスがある場合、前記判定テーブルの、前記接続要求の宛先ＩＰアドレスへの通信に関する情報を更新し、前記端末と前記サーバとの接続が成功すると、前記通信に関する情報基づいて、前記接続要求についてフォールバックが発生したと判定するフォールバック判定部を備え、前記フォールバック回避部は、前記フォールバック検出装置が、前記接続要求についてフォールバックが発生したと判定する場合において、前記フォールバックが発生したと判定された前記接続要求の宛先ＩＰアドレスへの接続を、前記端末に回避させることを特徴とする。
【０００７】
また、本発明の第１の態様に係るネットワークシステムにおいては、前記サーバは、前記接続要求に対する接続応答を前記端末に送信し、前記フォールバック判定部は、前記判定テーブルに、前記接続応答の送信元ＩＰアドレスがある場合、前記判定テーブルから、前記接続応答の送信元ＩＰアドレスに対応するホスト名を有するＩＰアドレス抽出し、抽出されたＩＰアドレスのうち、前記接続応答の送信元ＩＰアドレスでなく、且つ前記送信パケット数が０でないＩＰアドレスについて、フォールバックが発生したと判定することができる。
【０００８】
また、本発明の第１の態様に係るネットワークシステムにおいては、前記フォールバック判定部は、前記接続応答があっても、前記接続応答があったと判定しないことができる。
【０００９】
また、本発明の第１の態様に係るネットワークシステムにおいては、前記端末は、前記フォールバック回避部を備え、前記フォールバック回避部は、前記ポリシーを変更することによって、前記フォールバックが発生したと判定された前記接続要求の宛先ＩＰアドレスへの接続を、前記端末に回避させることができる。
【００１０】
また、本発明の第１の態様に係るネットワークシステムにおいては、前記ＤＮＳサーバは、前記フォールバック回避部を備え、前記フォールバック回避部は、前記名前解決応答を変更することによって、前記フォールバックが発生したと判定された前記接続要求の宛先ＩＰアドレスへの接続を、前記端末に回避させることができる。
【００１１】
また、本発明の第１の態様に係るネットワークシステムにおいては、前記フォールバック検出装置は、前記フォールバック判定部により、フォールバックが発生したと判定されたＩＰアドレスについて、所定の条件を満たす場合において、フォールバックが解消したと判定するフォールバック更新部を備えることができる。
【００１２】
また、本発明の第１の態様に係るネットワークシステムにおいては、前記端末は、前記フォールバック回避部と、入力部と、表示部とを備え、前記フォールバック回避部は、前記フォールバック判定部が、フォールバックが発生したと判定するＩＰアドレスを前記表示部に表示させ、前記入力部の入力に応じて、前記ポリシーを変更することができる。
【発明の効果】
【００１３】
本発明によれば、フォールバックの再発を低減するネットワークシステムを提供することができる。
【図面の簡単な説明】
【００１４】
【図１】本発明の第１の実施の形態に係るネットワークシステムの基本的な構成を説明する模式的なブロック図である。
【図２】本発明の第１の実施の形態に係るネットワークシステムが備えるＤＮＳサーバの基本的な論理構成を説明するブロック図である。
【図３】本発明の第１の実施の形態に係るネットワークシステムが備えるＤＮＳサーバの記憶部を説明する図である。
【図４】本発明の第１の実施の形態に係るネットワークシステムに用いるアドレステーブルを説明する図である。
【図５】本発明の第１の実施の形態に係るネットワークシステムが備える端末の基本的な論理構成を説明するブロック図である。
【図６】本発明の第１の実施の形態に係るネットワークシステムが備える端末の記憶部を説明する図である。
【図７】本発明の第１の実施の形態に係るネットワークシステムに用いるポリシーテーブルを説明する図である。
【図８】本発明の第１の実施の形態に係るネットワークシステムが備えるフォールバック検出装置の基本的な論理構成を説明するブロック図である。
【図９】本発明の第１の実施の形態に係るネットワークシステムが備えるフォールバック検出装置の記憶部を説明する図である。
【図１０】本発明の第１の実施の形態に係るネットワークシステムに用いるフォールバック判定テーブルを説明する図である。
【図１１】本発明の第１の実施の形態に係るネットワークシステムの基本的な動作を説明するシーケンス図である。
【図１２】本発明の第１の実施の形態に係るネットワークシステムが備えるフォールバック検出装置の動作を説明するフローチャートである。
【図１３】本発明の第２の実施の形態に係るネットワークシステムが備えるＤＮＳサーバの基本的な論理構成を説明するブロック図である。
【図１４】本発明の第２の実施の形態に係るネットワークシステムが備えるＤＮＳサーバの記憶部を説明する図である。
【図１５】本発明の第２の実施の形態に係るネットワークシステムに用いる無効アドレステーブルを説明する図である。
【図１６】本発明の他の実施の形態に係るネットワークシステムが備える端末の基本的な論理構成を説明する模式的なブロック図である。
【発明を実施するための形態】
【００１５】
次に、図面を参照して、本発明の実施の形態を説明する。以下の図面の記載において、同一又は類似の部分には同一又は類似の符号を付している。但し、以下に示す実施の形態は、本発明の技術的思想を具体化するための装置や方法、及びこれらの装置を用いたシステムを例示するものであって、本発明の技術的思想は、下記の実施の形態に例示した装置や方法、及びこれらの装置を用いたシステムに特定するものでない。本発明の技術的思想は、特許請求の範囲に記載された技術的範囲内において、種々の変更を加えることができる。
【００１６】
（第１の実施の形態）
本発明の第１の実施の形態に係るネットワークシステムは、図１に示すように、インターネット２に接続されたサーバ１及びＤＮＳサーバ３と、内部ネットワーク７に接続された端末６と、ルータ４と、フォールバック検出装置５とを備える。ルータ４は、インターネット２とローカルエリアネットワークである内部ネットワーク７との間の通信を中継する。サーバ１は、端末６の要求に応じて、サービスを提供する。サーバ１は、例えば、ウェブサーバ、ファイルサーバ等からなる。
【００１７】
ＤＮＳサーバ３は、図２に示すように、端末６の名前解決要求に応じて、名前解決の処理を行う名前解決応答部３１と、外部と通信する通信部３８と、記憶部３９とを備える。ＤＮＳサーバ３は、ドメインネームシステム技術により名前解決を行う。
【００１８】
ＤＮＳサーバ３の記憶部３９は、図３に示すように、名前解決応答部３１が名前解決に用いる、ホスト名とＩＰアドレスとを関連付けるアドレステーブルを記憶する。アドレステーブルは、図４に示すように、ホスト名と、各ホスト名に対応するＩＰアドレスとが関連付けられている。
【００１９】
名前解決応答部３１は、通信部３８を介して端末６から名前解決要求を受信し、名前解決要求に含まれるホスト名に対応するＩＰアドレスを、記憶部３９のアドレステーブルから取得する。名前解決応答部３１は、取得したＩＰアドレスのリストを、名前解決応答として端末６に送信することにより名前解決を行う。
【００２０】
端末６は、図５に示すように、名前解決部６１と、サービス利用部６２と、フォールバック回避部６３と、外部と通信する通信部６８と、記憶部６９とを備える。記憶部６９は、図６に示すように、ＤＮＳサーバ３のＩＰアドレスであるＤＮＳサーバアドレスと、サーバ１のホスト名であるサーバ名と、ホスト名に対応するＩＰアドレスの優先度を決定するポリシーであるポリシーテーブルとを記憶する。
【００２１】
端末６の記憶部６９が記憶するポリシーテーブルは、例えば、図７に示すように、ＩＰｖ６アドレスにおけるプレフィックスの種別に応じて、優先度が設定される。優先度は、例えば、プレフィックスが示す種別が、ループバックアドレス、他に分類されないＩＰｖ６アドレス、６ｔｏ４、ＩＰｖ４互換アドレス、ＩＰｖ４アドレス、フォールバックが発生したＩＰアドレスの順に高く設定される。なお、本発明において「フォールバック」とは、ＤＮＳサーバ３から取得したＩＰアドレスのうち、優先度が高いＩＰアドレスへの接続に失敗した後に、優先度の低いＩＰアドレスに接続することをいう。
【００２２】
名前解決部６１は、サービス利用部６２がサーバ１に接続する際、通信部６８を介して、ＤＮＳサーバ３に、サーバ１の名前解決を要求する名前解決要求を送信する。名前解決部６１は、ＤＮＳサーバ３の名前解決応答部３１が名前解決要求に応じて送信する名前解決応答を受信し、名前解決応答に含まれるＩＰアドレスのリストを、ポリシーテーブルに従って優先度の高い順に並べ替えて記憶部６９に記憶させる。
【００２３】
サービス利用部６２は、記憶部６９が記憶する、名前解決部６１により並べ替えられたＩＰアドレスのリストを参照し、サーバ１のホスト名に対応するＩＰアドレスのうち、優先度の高いＩＰアドレスから順に接続要求を送信する。サービス利用部６２は、送信した接続要求に対する接続応答をサーバ１から受信した場合において、サーバ１との接続を確立し、サーバ１により提供されるサービスを利用する。
【００２４】
フォールバック回避部６３は、フォールバック検出装置５からフォールバックが発生したＩＰアドレスを通知された場合において、通知されたＩＰアドレスへの接続を端末６に回避させるように、ポリシーテーブルを設定する。フォールバック回避部６３は、通知されたＩＰアドレスを、優先度を最も低くしてポリシーテーブルに登録する。
【００２５】
また、フォールバック回避部６３は、フォールバック検出装置５からフォールバックが解消したＩＰアドレスを通知された場合において、通知されたＩＰアドレスを、ポリシーテーブルから削除する。
【００２６】
フォールバック検出装置５は、図８に示すように、フォールバック判定部５１と、フォールバック通知部５２と、外部と通信する通信部５８と、記憶部５９とを備える。記憶部５９は、図９に示すように、フォールバック判定テーブルと、フォールバック回避部６３のＩＰアドレス（第１の実施の形態において端末６のＩＰアドレス）を示すフォールバック回避部アドレスとを記憶する。
【００２７】
フォールバック検出装置５の記憶部５９が記憶するフォールバック判定テーブルは、フォールバック判定部５１が行う、フォールバックが発生したＩＰアドレスか否かの判定に用いられる。フォールバック判定テーブルは、例えば、図１０に示すように、ＤＮＳサーバ３が端末６に宛てて送信する名前解決応答に含まれるホスト名と、ホスト名に対応するＩＰアドレスと、ＩＰアドレス毎の送信パケット数とが設定される。
【００２８】
フォールバック判定部５１によりフォールバック判定テーブルに設定される送信パケット数は、その他、各ＩＰアドレスへの通信に関する情報であってよい。各ＩＰアドレスへの通信に関する情報は、例えば、各ＩＰアドレスへの通信試行回数、各ＩＰアドレスへの通信試行済を示すフラグ等を採用できる。
【００２９】
フォールバック判定部５１は、通信部５８を介して、端末６とインターネット２との間の通信を傍受し、端末６の送信パケット数に基づいて、端末６が接続要求を送信したＩＰアドレスについて、フォールバックが発生したか否かを判定する。フォールバック判定部５１は、ＤＮＳサーバ３が端末６に宛てて送信する名前解決応答から、サーバ１のホスト名と、ホスト名に対応するＩＰアドレスとを取得し、フォールバック判定テーブルに登録する。
【００３０】
フォールバック判定部５１は、端末６がサーバ１に送信する接続要求を傍受し、フォールバック判定テーブルから、接続要求の宛先ＩＰアドレスと合致するＩＰアドレスを検索する。フォールバック判定部５１は、宛先ＩＰアドレスと合致するレコードがある場合、フォールバック判定テーブルの、宛先ＩＰアドレスに対応するレコードに、送信パケット数を更新する。
【００３１】
フォールバック判定部５１は、サーバ１が、端末６からの接続要求に対して送信する接続応答を傍受し、記憶部５９のフォールバック判定テーブルから、接続応答の送信元ＩＰアドレスと合致するＩＰアドレスを検索する。フォールバック判定部５１は、送信元ＩＰアドレスと合致するレコードがある場合、フォールバック判定テーブルの、送信元ＩＰアドレスに対応するホスト名を有するレコードをすべて抽出する。フォールバック判定部５１は、抽出したレコードから、ＩＰアドレスが接続応答の送信元ＩＰアドレスでなく、且つ送信パケット数が０でないレコードを検索する。
【００３２】
端末６が、サーバ１への接続を成功した時点（接続応答を受信した時点）で、それ以前にサーバ１のホスト名に対して接続を試みたＩＰアドレスは、接続に失敗したＩＰアドレスと見なすことができる。よって、フォールバック判定部５１は、ＩＰアドレスが接続応答の送信元ＩＰアドレスでなく、且つ送信パケット数が０でないレコードがある場合、該当するレコードのＩＰアドレスについて、フォールバックが発生したと判定する。
【００３３】
また、フォールバック判定部５１は、端末６からの接続要求に対してサーバ１が送信する接続応答のパケットが、接続要求に対してエラーを示すパケットである場合には、エラーを示すパケットについて、フォールバックが発生したか否かの前述のような判定を行わない。
【００３４】
フォールバック判定部５１は、エラーを示すパケットを検出した後に他のＩＰアドレスで接続成功した場合、検出したパケットの送信元ＩＰアドレスについて、フォールバック判定テーブルに、フォールバックが発生したＩＰアドレスとして登録するようにしてもよい。これにより、フォールバック判定部５１は、ネットワークレベルだけでなく、上層のアプリケーションレベルにおいてもフォールバックを検出できるため、より高い精度でフォールバックの発生を検出できる。
【００３５】
フォールバック通知部５２は、フォールバック判定部５１が、フォールバックが発生したと判定するＩＰアドレスを、フォールバック発生通知として、記憶部５９が記憶するフォールバック回避部アドレスに、通信部５８を介して送信する。これにより、端末６のフォールバック回避部６３は、フォールバック通知部５２から、フォールバックが発生したＩＰアドレスを通知される。
【００３６】
フォールバック更新部５３は、フォールバック判定部５１が、フォールバックが発生したと判定するＩＰアドレスについて、所定の条件を満たす場合において、フォールバックが解消したと判定する。例えば、フォールバック更新部５３は、フォールバックが発生したと判定されたＩＰアドレスについて、フォールバックが発生したと判定されてから一定時間経過した場合において、フォールバックが解消したと判定する。また、フォールバック更新部５３は、フォールバックが発生したと判定されたＩＰアドレスについて、定期的に接続を試行し、接続が成功した場合において、フォールバックが解消したと判定するようにしてもよい。
【００３７】
フォールバック通知部５２は、フォールバック更新部５３が、フォールバックが解消したと判定するＩＰアドレスを、フォールバック解消通知として、記憶部５９が記憶するフォールバック回避部アドレスに、通信部５８を介して送信する。これにより、端末６のフォールバック回避部６３は、フォールバック通知部５２から、フォールバックが解消したＩＰアドレスを通知される。
【００３８】
−ネットワークシステムの動作−
図１１に示すシーケンス図を用いて、本発明の第１の実施の形態に係るネットワークシステムの動作の一例を説明する。
ステップＳ１において、端末６の名前解決部６１は、サービス利用部６２がサーバ１に接続することに先立って、ＤＮＳサーバ３に、サーバ１のホスト名の名前解決を要求する名前解決要求（ＤＮＳクエリ）を送信する。
【００３９】
ステップＳ２において、ＤＮＳサーバ３の名前解決応答部３１は、端末６から受信した名前解決要求に応じて、名前解決要求に含まれるホスト名に対応するＩＰアドレスを取得する。名前解決応答部３１は、取得したＩＰアドレスのリストを、名前解決応答（ＤＮＳレスポンス）として端末６宛てに送信することにより名前解決を行う。
【００４０】
ステップＳ３において、フォールバック検出装置５のフォールバック判定部５１は、ＤＮＳサーバ３が端末６に宛てて送信する名前解決応答から、サーバ１のホスト名と、ホスト名に対応するＩＰアドレスとを取得する。フォールバック判定部５１は、取得した各ＩＰアドレスについて、初期状態として送信パケット数を０に設定し、フォールバック判定テーブルに登録する。
【００４１】
ステップＳ４において、端末６の名前解決部６１は、ＤＮＳサーバ３から送信された名前解決応答を受信し、名前解決応答に含まれるＩＰアドレスのリストを、記憶部６９のポリシーテーブルに従って、優先度の高い順に並べ替えて記憶部６９に記憶させる。また、サービス利用部６２は、記憶部６９に記憶されたＩＰアドレスのリストを参照し、サーバ１のホスト名に対応するＩＰアドレスのうち、最も優先度が高いＩＰアドレスに、サーバ１への接続を要求する接続要求を送信する。
【００４２】
ステップＳ５において、フォールバック検出装置５のフォールバック判定部５１は、ステップＳ４において送信された接続要求を傍受し、記憶部５９のフォールバック判定テーブルから、接続要求の宛先ＩＰアドレスと合致するＩＰアドレスを検索する。フォールバック判定部５１は、宛先ＩＰアドレスと合致するレコードがある場合、フォールバック判定テーブルの、該当するＩＰアドレスに対応する送信パケット数を加算する。
【００４３】
ステップＳ４において送信された接続要求が、宛先ＩＰアドレスに到達できなかった場合、ステップＳ６において、サービス利用部６２は、再度、接続要求を送信する。サービス利用部６２は、記憶部６９に記憶されたＩＰアドレスのリストを参照し、サーバ１のホスト名に対応するＩＰアドレスのうち、ステップＳ４において送信された接続要求の宛先ＩＰアドレスの次に優先度が高いＩＰアドレスに接続要求を送信する。
【００４４】
ステップＳ７において、フォールバック検出装置５のフォールバック判定部５１は、ステップＳ６において送信された接続要求を傍受し、記憶部５９のフォールバック判定テーブルから、接続要求の宛先ＩＰアドレスと合致するＩＰアドレスを検索する。フォールバック判定部５１は、宛先ＩＰアドレスと合致するレコードがある場合、フォールバック判定テーブルの、該当するＩＰアドレスに対応する送信パケット数を加算する。
ステップＳ８において、サーバ１は、端末６から送信された接続要求に対する接続応答を端末６宛てに送信することにより、端末６に対して接続を許可する。
【００４５】
ステップＳ９において、フォールバック検出装置５のフォールバック判定部５１は、ステップＳ８において送信された接続応答を傍受し、記憶部５９のフォールバック判定テーブルから、接続応答の送信元ＩＰアドレスと合致するＩＰアドレスを検索する。フォールバック判定部５１は、送信元ＩＰアドレスと合致するレコードがある場合、フォールバック判定テーブルの、送信元ＩＰアドレスに対応するホスト名を有するレコードをすべて抽出する。フォールバック判定部５１は、抽出したレコードから、ＩＰアドレスが接続応答の送信元ＩＰアドレスでなく、且つ送信パケット数が０でないレコードを検索する。フォールバック判定部５１は、この場合、ステップＳ４において送信された接続要求の宛先ＩＰアドレスについて、フォールバックが発生したと判定する。
【００４６】
サービス利用部６２は、ステップＳ８において送信された接続応答を受信することによりサーバ１との接続を確立し、サーバ１により提供されるサービスを利用できる。
【００４７】
ステップＳ１０において、フォールバック通知部５２は、ステップＳ９においてフォールバックが発生したと判定されたＩＰアドレスを、フォールバック発生通知として、記憶部５９が記憶するフォールバック回避部アドレスに送信する。
【００４８】
ステップＳ１１において、フォールバック回避部６３は、ステップＳ１０において送信されたフォールバック発生通知を受信し、通知されたＩＰアドレスへの接続を回避させるように、ポリシーテーブルを設定する。フォールバック回避部６３は、通知されたＩＰアドレスを、優先度を最も低くしてポリシーテーブルに登録する。
【００４９】
−フォールバック検出装置の動作−
図１２のフローチャートを用いて、第１の実施の形態に係るネットワークシステムが備えるフォールバック検出装置５の動作の一例を説明する。
先ず、ステップＳ１１１において、フォールバック判定部５１は、通信部５８を介して、端末６とインターネット２との間の通信を傍受する。
【００５０】
ステップＳ１１２において、フォールバック判定部５１は、ステップＳ１１１において傍受したパケットが、名前解決応答か否かを判定する。フォールバック判定部５１は、名前解決応答と判定する場合、ステップＳ１１９に進み、名前解決応答でないと判定する場合、ステップＳ１１３に進む。
【００５１】
ステップＳ１１３において、フォールバック判定部５１は、ステップＳ１１１において傍受したパケットが、端末６からサーバ１に送信された接続要求であるかどうかを判定するために、フォールバック判定テーブルに、宛先ＩＰアドレスがあるか否かを判定する。フォールバック判定部５１は、記憶部５９のフォールバック判定テーブルから、宛先ＩＰアドレスと合致するＩＰアドレスを検索し、該当するレコードがある場合、ステップＳ１１４に進む。フォールバック判定テーブルに、宛先ＩＰアドレスと合致するＩＰアドレスがない場合は、ステップＳ１１５に進む。
【００５２】
ステップＳ１１４において、フォールバック判定部５１は、記憶部５９のフォールバック判定テーブルの、宛先ＩＰアドレスに対応する送信パケット数を加算する。
【００５３】
ステップＳ１１５において、フォールバック判定部５１は、ステップＳ１１１において傍受したパケットが、サーバ１から送信された、端末６からの接続要求に対してエラーを示すパケットか否かを判定する。エラーを示すパケットである場合、フォールバック判定部５１は、フォールバックが発生したか否かの判定を行わず、ステップＳ１１１に戻る。エラーを示すパケットでない場合、ステップＳ１１６に進む。
【００５４】
ステップＳ１１６において、フォールバック判定部５１は、ステップＳ１１１において傍受したパケットが、サーバ１から端末６に送信された接続応答であるかどうかを判定するために、フォールバック判定テーブルに送信元ＩＰアドレスがあるか否かを判定する。フォールバック判定部５１は、記憶部５９のフォールバック判定テーブルから、送信元ＩＰアドレスと合致するＩＰアドレスを検索し、該当するレコードがある場合、ステップＳ１１７に進む。フォールバック判定テーブルに、送信元ＩＰアドレスと合致するＩＰアドレスがない場合は、ステップＳ１１１に戻る。
【００５５】
ステップＳ１１７において、フォールバック判定部５１は、記憶部５９のフォールバック判定テーブルの、送信元ＩＰアドレスに対応するホスト名を有するレコードをすべて抽出する。フォールバック判定部５１は、抽出したレコードから、ＩＰアドレスが接続応答の送信元ＩＰアドレスでなく、且つ送信パケット数が０でないレコードを検索する。フォールバック判定部５１は、検索された該当するレコードのＩＰアドレスについて、フォールバックが発生したと判定する。フォールバックが発生したと判定される場合はステップＳ１１８に進み、判定されない場合はステップＳ１１１に戻る。
【００５６】
ステップＳ１１８において、フォールバック通知部５２は、ステップＳ１１７においてフォールバックが発生したと判定されたＩＰアドレスを、フォールバック発生通知として、記憶部５９が記憶するフォールバック回避部アドレスに送信する。フォールバック通知部５２は、フォールバック発生通知をフォールバック回避部アドレスに送信し、ステップＳ１１１に戻る。
【００５７】
本発明の第１の実施の形態に係るネットワークシステムによれば、端末６の送信パケット数に基づいて、フォールバックの発生を検出し、接続要求を送信する優先度を変更することによって、フォールバックの再発を低減することができる。
【００５８】
（第２の実施の形態）
本発明の第２の実施の形態に係るネットワークシステムは、第１の実施の形態において端末６が備えたフォールバック回避部６３を、ＤＮＳサーバ３が備える点等において、第１の実施の形態と異なる。第２の実施の形態において説明しない他の構成は、第１の実施の形態と実質的に同様であるので重複する説明を省略する。
【００５９】
第２の実施の形態において、フォールバック検出装置５の記憶部５９は、フォールバック回避部アドレスとして、ＤＮＳサーバ３のＩＰアドレスを記憶する。よって、フォールバック通知部５２は、フォールバック判定部５１が、フォールバックが発生したと判定するＩＰアドレスを、フォールバック発生通知として、ＤＮＳサーバ３に送信する。また、フォールバック通知部５２は、フォールバック更新部５３が、フォールバックが解消したと判定するＩＰアドレスを、フォールバック解消通知として、ＤＮＳサーバ３に送信する。
【００６０】
第２の実施の形態に係るネットワークシステムが備えるＤＮＳサーバ３は、図１３に示すように、名前解決応答部３１と、フォールバック回避部３２と、通信部３８と、記憶部３９とを備える。
【００６１】
ＤＮＳサーバ３の記憶部３９は、図１４に示すように、アドレステーブルと、無効アドレステーブルとを記憶する。記憶部３９の無効アドレステーブルは、例えば、図１５に示すように、フォールバック検出装置５のフォールバック判定部５１が、フォールバックが発生したと判定するＩＰアドレスのリストである。
【００６２】
フォールバック回避部３２は、フォールバック検出装置５からフォールバックが発生したＩＰアドレスを通知された場合において、通知されたＩＰアドレスへの接続を端末６に回避させるように、名前解決応答部３１が送信する名前解決応答を変更する。フォールバック回避部３２は、フォールバック検出装置５のフォールバック通知部５２が送信したフォールバック発生通知を受信すると、通知されたＩＰアドレスを、記憶部３９の無効アドレステーブルに登録する。
【００６３】
名前解決応答部３１は、端末６から名前解決要求を受信すると、名前解決要求に含まれるホスト名に対応するＩＰアドレスを、記憶部３９のアドレステーブルから取得する。名前解決応答部３１は、取得したＩＰアドレスのリストを、無効アドレステーブルに登録されたＩＰアドレスを除外して、名前解決応答として端末６に送信する。
【００６４】
本発明の第１の実施の形態に係るネットワークシステムによれば、端末６の送信パケット数に基づいて、フォールバックの発生を検出し、名前解決応答の内容を変更することによって、フォールバックの再発を低減することができる。
【００６５】
（その他の実施の形態）
上記のように、本発明を第１及び第２の実施の形態によって記載したが、この開示の一部をなす論述及び図面は本発明を限定するものであると理解すべきではない。この開示から当業者には様々な代替実施の形態、実施例及び運用技術が明らかとなろう。
【００６６】
既に述べた第１の実施の形態においては、端末６は、図１６に示すように、入力装置からなる入力部６５と、表示装置からなる表示部６６とを備え、端末６のユーザの操作により、接続の優先度を変更するようにしてもよい。例えば、フォールバック回避部６３は、フォールバック検出装置５のフォールバック通知部５２からフォールバック発生通知を受信すると、通知されたＩＰアドレスを表示部６６に表示させることによりユーザに提示する。フォールバック回避部６３は、ユーザの操作に応じた入力部６５からの入力により、通知されたＩＰアドレスへの接続を回避するか否かを決定する。フォールバック回避部６３は、通知されたＩＰアドレスへの接続を回避する場合において、通知されたＩＰアドレスを、優先度を最も低くして記憶部６９のポリシーテーブルに登録する。これにより、端末６は、ユーザの意図しないフォールバックの回避を防止することができ、状況に応じたポリシーでサーバ１への接続を行うことができる。
また、既に述べた第１及び第２の実施の形態においては、フォールバック回避部は、端末６と、ＤＮＳサーバ３との両方に備えられてもよい。
【００６７】
上記の他、第１及び第２の実施の形態を応用した構成等、本発明はここでは記載していない様々な実施の形態等を含むことは勿論である。したがって、本発明の技術的範囲は上記の説明から妥当な特許請求の範囲に係る発明特定事項によってのみ定められるものである。
【符号の説明】
【００６８】
１  サーバ
３  ＤＮＳサーバ
５  フォールバック検出装置
６  端末
３２，６３  フォールバック回避部
５１  フォールバック判定部
５３  フォールバック更新部
６２  サービス利用部
６５  入力部
６６  表示部
【図１】
2014022819.tif 000003
【図２】
2014022819.tif 000004
【図３】
2014022819.tif 000005
【図４】
2014022819.tif 000006
【図５】
2014022819.tif 000007
【図６】
2014022819.tif 000008
【図７】
2014022819.tif 000009
【図８】
2014022819.tif 000010
【図９】
2014022819.tif 000011
【図１０】
2014022819.tif 000012
【図１１】
2014022819.tif 000013
【図１２】
2014022819.tif 000014
【図１３】
2014022819.tif 000015
【図１４】
2014022819.tif 000016
【図１５】
2014022819.tif 000017
【図１６】
2014022819.tif 000018