(57)【特許請求の範囲】
【請求項１】
少なくとも１つのクライアント端末が接続されるＬＡＮに接続され、複数のルータのうちの少なくとも１つのルータとインターネットサービスプロバイダとを経由する複数の経路によってインターネットに接続可能なネットワークサーバであって、定期的に前記各ルータに第１のパケットを送信し、前記第１のパケットに対する応答が前記各ルータからあるか否かを確認するネットワークサーバにおいて、
前記各ルータのうち、前記第１のパケットに対して応答があったルータを経由する経路によって前記インターネットサービスプロバイダのサーバへ定期的に第２のパケットを送信し、前記第２のパケットに対する前記インターネットサービスプロバイダのサーバの応答が有るか否かを確認し、前記各ルータのうち、前記第１のパケットに対して応答がなかったルータの動作レベルを第１のレベルとし、前記各ルータのうち、前記第１のパケットに対して応答があったルータであって、前記インターネットサービスプロバイダのサーバの応答がなかったルータの動作レベルを第２のレベルとし、前記各ルータのうち、前記インターネットサービスプロバイダのサーバの応答があった経路上のルータの動作レベルを第３のレベルとし、前記各ルータのうち、動作レベルを該第３のレベルとしたルータを、前記各クライアント端末からの第３のパケットを転送するルータとして選択して前記クライアント端末からの第３のパケットを転送することを特徴とするネットワークサーバ。
【請求項２】
前記第３のパケットを断続的に受信した場合、前記動作レベルを前記第３のレベルとしたルータに対し、予め設定された前記各ルータの優先順位の順に前記第３のパケットを転送する請求項１記載のネットワークサーバ。
【請求項３】
前記各サーバの動作レベルのうち、全てのルータの動作レベルが、前記第３のレベルでない場合には、前記第３のパケットを破棄する請求項１または２記載のネットワークサーバ。
【請求項４】
少なくとも１つのクライアント端末が接続されるＬＡＮに接続され、複数のルータのうちの少なくとも１つのルータとインターネットサービスプロバイダとを経由する複数の経路によってインターネットに接続可能なネットワークサーバの制御方法であって、定期的に前記各ルータに第１のパケットを送信し、前記第１のパケットに対する応答が前記各ルータからあるか否かを確認するステップを有する、ネットワークサーバの制御方法において、
前記各ルータのうち、前記第１のパケットに対して応答があったルータを経由する経路によって前記インターネットサービスプロバイダのサーバへ定期的に第２のパケットを送信し、前記第２のパケットに対する前記インターネットサービスプロバイダのサーバの応答が有るか否かを確認するステップと、
前記各ルータのうち、前記第１のパケットに対して応答がなかったルータの動作レベルを第１のレベルとするステップと、
前記各ルータのうち、前記第１のパケットに対して応答があったルータであって、前記インターネットサービスプロバイダのサーバの応答がなかったルータの動作レベルを第２のレベルとするステップと、
前記各ルータのうち、前記インターネットサービスプロバイダのサーバの応答があった経路上のルータの動作レベルを第３のレベルとするステップと、
前記各ルータのうち、動作レベルを該第３のレベルとしたルータを、前記各クライアント端末からの第３のパケットを転送するルータとして選択するステップと、
前記各ルータのうち、前記各クライアント端末からの第３のパケットを転送するルータとして選択されたルータだけに、前記クライアント端末からの第３のパケットを転送することを特徴とするステップとをさらに有する、ネットワークサーバの制御方法。
【請求項５】
前記第３のパケットを断続的に受信した場合、前記動作レベルを前記第３のレベルとしたルータに対し、予め設定された前記各ルータの優先順位の順に前記第３のパケットを転送するステップをさらに有する、請求項４記載のネットワークサーバの制御方法。
【請求項６】
前記各ルータの動作レベルのうち、全てのルータの動作レベルが、前記第３のレベルでない場合には、前記ネットワークサーバによって前記第３のパケットを破棄するステップをさらに有する、請求項４または５記載のネットワークサーバの制御方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ローカルエリアネットワーク（以下、ＬＡＮ）上のクライアント端末からインターネットに接続するためのネットワークサーバおよびその制御方法に関し、特に、複数の経路を介してインターネットに接続可能なサーバであり、クライアント端末から断続的に送信されるパケットを複数の経路に分散して転送する負荷分散処理サーバであるネットワークサーバおよびその制御方法に関する。
【０００２】
【従来の技術】
図４は、ＬＡＮ上のクライアント端末からインターネットに接続するための従来のネットワークの一例を示すブロック図である。図４に示すように、このネットワークは、プロバイダ２１、２２と、ルータ４１、４２と、ネットワークサーバである負荷分散処理サーバ６と、ＬＡＮ７と、クライアント８１〜８ｎと、公衆回線９１、９２と、ネットワーク１０１、１０２と、サーバ１１１、１１２とを備えている。
【０００３】
このネットワークでは、クライアント８１〜８ｎは、ＬＡＮ７に接続されており、同じようにＬＡＮ７に接続されている負荷分散処理サーバ６に第３のパケットであるパケットを送信することができるようになっている。
【０００４】
ルータ４１、４２は、それぞれネットワーク１０１、１０２を介して負荷分散処理サーバ６に接続されている。プロバイダ２１は公衆回線９１を介してルータ４１に接続されており、プロバイダ２２は公衆回線９２を介してルータ４２に接続されている。プロバイダ２１、２２は、インターネット１への接続サービスを提供するインターネットサービスプロバイダである。サーバ１１１、１１２は、プロバイダ２１、２２のＤＮＳサーバ等のサーバである。
【０００５】
このネットワークでは、クライアントから負荷分散処理サーバ６を介してインターネット１へ接続することができる。負荷分散処理サーバ６からインターネット１への経路は、負荷分散処理サーバ６−ネットワーク１０１−ルータ４１−プロバイダ２１−インターネット１の経路と、負荷分散処理サーバ６−ネットワーク１０２−ルータ４２−プロバイダ２２−インターネット１の経路とがある。すなわち、このネットワークではインターネット１への経路が冗長に構成されており、負荷分散処理サーバ６は、クライアント８１〜８ｎから断続的に送信される各パケットを各経路に分散して送信することによって、各経路上のルータ等の負荷を分散している。
【０００６】
負荷分散処理サーバ６は、各経路が正常に動作しているか否かを監視するフォールトトレラント機能を有している。しかし、負荷分散処理サーバ６の従来のフォールトトレラント機能は、ルータ４１、４２の状態と、負荷分散処理サーバ６とルータ４１、４２との間のネットワーク１０１、１０２の状態としか監視しておらず、ルータ４１、４２とプロバイダ２１、２２との間の公衆回線９１、９２の状態を監視していなかった。そのため、公衆回線９１、９２のいずれかの回線が動作していなくても、負荷分散処理サーバ６はそのことを検知していないので、負荷分散処理サーバ６は、動作していない公衆回線に接続されているルータにもパケットを転送してしまい、最終的にパケットを通信先へ届けることができなくなってしまうという事態を招いていた。
【０００７】
【発明が解決しようとする課題】
以上述べたように、従来のネットワークサーバのフォールトトレラント機能は、各ルータの状態と、ネットワークサーバと各ルータとの間のネットワークの状態としか監視しておらず、各ルータと各プロバイダとの間の各公衆回線の状態を監視していなかった。そのため、各公衆回線のいずれかの回線が動作していなくても、ネットワークサーバがそのことを検知していないので、ネットワークサーバは、動作していない公衆回線に接続されているルータにもパケットを転送してしまい、最終的にパケットを通信先へ届けることができなくなってしまうという問題があった。
【０００８】
本発明は、フォールトトレラント機能を、より信頼性の高いものとすることができるネットワークサーバおよびその制御方法を提供することを目的とする。
【０００９】
【課題を解決するための手段】
上記問題を解決するために、本発明のネットワークサーバでは、少なくとも１つのクライアント端末が接続されるＬＡＮに接続され、複数のルータのうちの少なくとも１つのルータとインターネットサービスプロバイダとを経由する複数の経路によってインターネットに接続可能なネットワークサーバであって、定期的に前記各ルータに第１のパケットを送信し、前記第１のパケットに対する応答が前記各ルータからあるか否かを確認するネットワークサーバにおいて、前記各ルータのうち、前記第１のパケットに対して応答があったルータを経由する経路によって前記インターネットサービスプロバイダのサーバへ定期的に第２のパケットを送信し、前記第２のパケットに対する前記インターネットサービスプロバイダのサーバの応答が有るか否かを確認し、前記各ルータのうち、前記第１のパケットに対して応答がなかったルータの動作レベルを第１のレベルとし、前記各ルータのうち、前記第１のパケットに対して応答があったルータであって、前記インターネットサービスプロバイダのサーバの応答がなかったルータの動作レベルを第２のレベルとし、前記各ルータのうち、前記インターネットサービスプロバイダのサーバの応答があった経路上のルータの動作レベルを第３のレベルとし、前記各ルータのうち、動作レベルを該第３のレベルとしたルータを、前記各クライアント端末からの第３のパケットを転送するルータとして選択して前記クライアント端末からの第３のパケットを転送することを特徴とする。
【００１０】
本発明のネットワークサーバは、各ルータに正常にパケットを送信できるかを確認するだけでなく、それらのルータを経由してインターネットサービスプロバイダへも正常にパケットを送信できるかを確認している。こうすることによって、本発明のネットワークサーバでは、インターネットにクライアントからの第３のパケットを送信できない経路には、第３のパケットを送信しないようにすることができる。そのため、本発明のネットワークサーバでは、そのフォールトトレラント機能を、より信頼性の高いものとすることができる。
【００１１】
【発明の実施の形態】
次に、本発明の一実施形態のネットワークサーバおよびその制御方法を図面を参照して詳細に説明する。図１は、本実施形態のネットワークサーバを中心とするネットワークの構成を示すブロック図である。図１に示すように、このネットワークは、負荷分散処理サーバ６の代わりに、本実施形態のネットワークサーバである負荷分散処理サーバ３を備えている点が、図４のネットワークと異なっている。図１、図４において、同一の符号がつけられている構成要素は、すべて同一の構成要素を示す。
【００１２】
ルータ４１、４２は、フォールトトレラント機能の対象となるルータＲとして、負荷分散処理サーバ３に登録されている。図１には、説明を簡単にするために、ルータＲとしてルータ４１、４２の２つしか示されていないが、ルータＲの数は３つ以上であってもよい。
【００１３】
また、負荷分散処理サーバ３には、ルータ４１、４２のＩＰアドレス、ポート番号、優先順位、サーバ１１１、１１２等のＩＰアドレス等が登録されている。ルータ４１、４２の優先順位とは、負荷分散処理サーバ３がクライアント８１〜８ｎからのパケットを受信したときに、そのパケットをルータ４１、４２に分散して送信するときの転送先としての優先順位である。ルータ４１よりもルータ４２の方が優先順位が高い場合には、そのパケットは、まず、ルータ４１に送信され、その後受信した各パケットは、ルータ４２、ルータ４１…の順に交互に送信される。なお、これらの登録は、負荷分散処理サーバ３の管理者によって実行される。
【００１４】
また、負荷分散処理サーバ３は、第１のパケットであるＡＲＰリクエスト等を定期的にルータ４１、４２へ送信し、そのリクエストに対するルータ４１、４２の応答の有無で、ルータ４１、４２が動作しているか、ネットワーク１０１、１０２のケーブルが断線していないかをチェックしている。なお、このルータ４１、４２、ネットワーク１０１、１０２のチェックに用いられるＡＲＰ等のプロトコルをプロトコルＰｒとする。このようなプロトコルＰｒとして用い得る他のプロトコルには、ＰＩＮＧコマンドを用いたプロトコル等がある。プロトコルＰｒとして、どのプロトコルを用いるかは、負荷分散処理サーバ３に予め登録しておく必要がある。
【００１５】
さらに、負荷分散処理サーバ３は、自身のＯＳ等がサポートしているＰＩＮＧコマンドを実行してサーバ１１１、１１２を監視する、すなわち、サーバ１１１、１１２へ第２のパケットを送信し、その第２のパケットに応答があるか否かを確認することで、公衆回線９１、９２が正常に動作しているか否かを定期的にチェックする。このような、サーバ１１１、１１２をサーバＳｉｐとする。この公衆回線９１、９２のチェックに用いられるＰＩＮＧコマンドを用いたプロトコルをプロトコルＰｓとする。このようなプロトコルＰｓとして用い得る他のプロトコルには、ＡＲＰ等がある。プロトコルＰｓとして、どのプロトコルを用いるかは、予め負荷分散処理サーバ３に登録しておく必要がある。なお、このネットワークでは、各ルータＲ（ルータ４１、４２）につき、サーバＳｉｐとしてのサーバ（ルータ４１にはサーバ１１１、ルータ４２にはサーバ１１２）がそれぞれ１つずつしか示されていないが、各ルータＲ（ルータ４１、４２）につき、サーバＳｉｐは複数個あってもよい。この場合、各サーバＳｉｐは、当然、それぞれ異なるＩＰアドレスを有しており、各ルータＲのルーティングテーブルには、各サーバＳｉｐ毎にＩＰアドレスが設定される。
【００１６】
また、負荷分散処理サーバ３は、上述のプロトコルＰｒおよびプロトコルＰｓによるチェックにより、正常に動作していると見なされたルータＲ（ルータ４１、４２）の動作レベルＡを決定する。この動作レベルＡは、そのルータを経由する各経路がどのような動作状態にあるかを示すレベルであり、そのルータを前述のパケットの分散の対象とするか否かを決定するために設定されるレベルである。
【００１７】
プロトコルＰｒによるチェックでルータＲから応答が無かった場合には、ルータＲまたはルータＲと負荷分散処理サーバ３との間のネットワークに何らかの障害があると見なされ、ルータＲの動作レベルＡは第１のレベル「０」に設定される。
【００１８】
また、プロトコルＰｓによるチェックでサーバから応答がなかった場合には、ルータＲとプロバイダとの間の公衆回線に何らかの障害があると見なされ、ルータＲの動作レベルＡは第２のレベル「１」に設定される。
【００１９】
プロトコルＰｒおよびプロトコルＰｓによるチェックにより、正常に動作していると見なされた場合には、ルータＲの動作レベルＡは第３のレベル「２」に設定される。
【００２０】
なお、本実施形態のネットワークサーバでは、３つの動作レベルＡを「０」〜「２」としているが、本発明のネットワーク制御システムはこれに限定されるものではなく、３つの動作レベルＡはどのような形式で表現されていてもよい。また、動作レベルＡは、何らかの障害があること示すレベルと、転送可能を示すレベルの２段階のレベルとしてもよいが、動作レベルを３段階とするした方が、ネットワークサーバがインターネットの経路のその部分で障害が発生しているかを把握することができるので、より良好な実施形態となる。
【００２１】
クライアント８１〜８ｎが、インターネット１にアクセスするために負荷分散処理サーバ３のデフォルトルートへ断続的にパケットを送信すると、負荷分散処理サーバ３は、その動作レベルＡが「２」であったルータＲへ、それらのパケットを送信する。例えば、各ルータ４１の動作レベルＡだけが「２」であった場合には、負荷分散処理サーバ３は、ルータ４１だけにそれらのパケットを転送する。また、各ルータ４１、４２の動作レベルＡがともに「２」であった場合には、負荷分散処理サーバ３は、予め設定されている前述の優先順位に従って、各ルータ４１、４２に、それらのパケットを転送する。もし、ルータＲが３個以上あり、そのうち動作レベルＡが「２」であるルータＲが２個以上であった場合には、負荷分散処理サーバ３は、予め設定されている前述の優先順位に従って、動作レベルＡが「２」であった各ルータＲに、順々にそれらのパケットを転送する。パケットを受信したルータＲは、公衆回線を介して接続されるプロバイダにパケットを転送する。そのパケットはそのプロバイダを介してインターネット１上に転送される。
【００２２】
したがって、このネットワークでは、例えば、公衆回線９１がシステムダウンしても、公衆回線９２が正常であれば、負荷分散処理サーバ３はルータ４２だけにパケットを転送するので、クライアント８１〜８ｎは、正常にインターネット１上の通信先との通信を行うことができる。
【００２３】
次に、本実施形態のネットワークサーバの動作、すなわちネットワークサーバの制御方法について説明する。図２は、本実施形態のネットワークサーバである負荷分散処理サーバ３のフォールトトレラント機能の動作を示すフローチャートである。
【００２４】
図２に示すように、まず、負荷分散処理サーバ３は、接続されるルータＲについての設定を行う（ステップＡ０）。前述のとおり、接続されるルータＲとは、図１であれば、ルータ４１、４２のいずれかのルータのことである。なお、ステップＡ１において設定されるのは、各ルータＲの優先順位、プロトコルＰｒの設定、各サーバＳｉｐ（サーバ１１１、１１２）のＩＰアドレス、プロトコルＰｓの設定等である。なお、各ルータの優先順位は、重複して設定しないようにする。
【００２５】
また、各サーバＳｉｐのＩＰアドレスは、各ルータＲのルーティングテーブルに設定され、プロトコルＰｓは、各サーバＳｉｐのＩＰアドレス毎に設定可能であるとする。次に、負荷分散処理サーバ３は、ルータＲのうち１つのルータＲを選択する（ステップＡ１）。
【００２６】
さらに、負荷分散処理サーバ３は、プロトコルＰｒによって、プロトコルＰｒに基づいたパケットをステップＡ１において選択されたルータＲ（以下、単にルータＲと記す。）に送信し、ルータＲからそのパケットに対する応答があるか否かをチェックする（ステップＡ２）。ステップＡ２において、ルータＲから応答があった場合には、ルータＲと負荷分散処理サーバ３との間のネットワークは動作していると見なし、ルータＲの動作レベルＡを１に設定する（ステップＡ３）。また、ステップＡ２において、ルータＲから応答がなかった場合には、ルータＲの動作レベルＡを「０」に設定する（ステップＡ４）。ステップＡ３実行後、ルータＲに設定されたサーバＳｉｐのＩＰアドレスを宛先とするプロトコルＰｓのパケットをルータＲへ送信し、サーバＳｉｐから応答があるか否かをチェックする（ステップＡ５）。
【００２７】
ステップＡ５において、サーバＳｉｐから応答があった場合には、ルータＲの動作レベルＡを「２」に設定する（ステップＡ７）。ステップＡ４において、サーバＳｉｐから応答がなかった場合には、全てのサーバＳｉｐのチェックが終了したか否かチェックする（ステップＡ６）。ステップＡ６において、全てのサーバＳｉｐについてチェックが終了していない場合には、ステップＡ５に戻る。ステップＡ６において、すべてのサーバＳｉｐから応答がないまま、全てのサーバＳｉｐについてチェックが終了した場合には、そのルータＲの公衆回線には何らかの不具合が発生していると考えられ、ルータＲの動作レベルＡの設定は「１」のままとなっている。
【００２８】
ステップＡ４、ステップＡ７の実行後、あるいは、ステップＡ６において全てのサーバＳｉｐについてのチェックが終了した場合には、負荷分散処理サーバ３は、全てのルータＲの状態のチェックが終了したか否かを判断する（ステップＡ８）。ステップＡ８において、まだ、全てのルータＲの状態のチェックが終了していない場合には、負荷分散処理サーバ３の処理はステップＡ２に戻り、全てのルータＲの状態のチェックが終了した場合には、負荷分散処理サーバ３の処理は終了する。なお、ステップＡ２に戻る場合には、負荷分散処理サーバ３は、一定の間隔をおいてステップＡ２からステップＡ８を実行する。前述の通り、プロトコルＰｒ、プロトコルＰｓによるチェックは、定期的に行われるものだからである。
【００２９】
図３は、クライアント８１〜８ｎからパケットを受信した際の、本実施形態のネットワークサーバである負荷分散処理サーバ３の動作を示すフローチャートである。図３に示すように、ステップＢ１において、クライアント８１〜８ｎからパケットを受信すると、負荷分散処理サーバ３は、すべてのルータＲの動作レベルＡのチェックが終了するまで、優先順位が高い順にルータＲを選択し（ステップＢ２）、選択されたルータＲ（以下、単にルータＲと記す。）の動作レベルＡをチェックし、その動作レベルＡが「２」であるか否かをチェックする（ステップＢ３、Ｂ４）。ステップＢ３において、そのルータＲの動作レベルＡが「２」であった場合には、そのルータＲに対し、クライアント８１〜８ｎから受信したパケットを転送し（ステップＢ５）、ステップＢ１に戻る。ステップＢ４において、すべてのルータＲの動作レベルＡが「２」でなかった場合には、クライアント８１〜８ｎから受信したパケットを破棄し（ステップＢ６）、ステップＢ１に戻る。
【００３０】
以上述べたように、本実施形態のネットワークサーバでは、フォールトトレラントの対象となっている各ルータに正常にパケットを送信できるかを確認するだけでなく、それらのルータを経由してインターネットサービスプロバイダ２１、２２へも正常にパケットを送信できるかを確認している。こうすることによって、本実施形態のネットワークサーバでは、インターネット１にクライアント８１〜８ｎからのパケットを送信できない経路には、パケットを送信しないようにすることができる。そのため、ネットワークサーバでは、そのフォールトトレラント機能を、より信頼性の高いものとすることができる。
【００３１】
【発明の効果】
以上述べたように、本発明のネットワーク制御システムでは、各ルータに正常にパケットを送信できるかを確認するだけでなく、それらのルータを経由してインターネットサービスプロバイダへも正常にパケットを送信できるかを確認している。こうすることによって、本発明のネットワークサーバでは、インターネットにクライアントからのパケットを送信できない経路には、パケットを送信しないようにすることができる。そのため、本発明のネットワークサーバでは、そのフォールトトレラント機能をより信頼性の高いものとすることができる。
【図面の簡単な説明】
【図１】本発明の一実施形態のネットワークサーバを中心としたネットワークの構成を示すブロック図である。
【図２】本発明の一実施形態のネットワークサーバである負荷分散処理サーバのフォールトトレラント機能の動作を示すフローチャートである。
【図３】クライアントからパケットを受信した際の、本発明の一実施形態のネットワークサーバである負荷分散処理サーバの動作を示すフローチャートである。
【図４】従来のネットワークサーバを中心とした従来のネットワークの構成を示すブロック図である。
【符号の説明】
１    インターネット
２１、２２    プロバイダ
３、６    負荷分散処理サーバ
７    ＬＡＮ
８１、８ｎ    クライアント
９１、９２    公衆回線
１０１、１０２    ネットワーク
１１１、１１２    サーバ
Ａ０〜Ａ８、Ｂ１〜Ｂ６    ステップ
【図１】
0003570506.tif 000002
【図２】
0003570506.tif 000003
【図３】
0003570506.tif 000004
【図４】
0003570506.tif 000005