(57)【要約】  ドメインネームを共有しそしてドメインに対して権限のあるネームサーバーとして機能する装置のクラスターが設けられる。クラスター内の各装置又はノードは、通常、状態情報を、クラスター内の全ての他のノードへ繰り返しアナウンスし、クラスター内の全てのノードが、クラスターの他の全てのノードの状態情報に気付くようにする。クラスター内のノードの１つがマスターノードとして指定される。マスターノードには、権限のあるネームサーバーとしてＩＰアドレスが指定され、従って、ドメインに対するＤＮＳ問合せを受け取る。マスターノードは、各ノードの状態情報を使用して、ＤＮＳ問合せの結果としてクライアントと通信するためにクラスター内のノードの１つを選択し、ノードにおける負荷のバランスをとる。マスターノードは、選択されたノードのＩＰアドレスを通信する。【選択図】図１
2008537400.tif 000002
【特許請求の範囲】
【請求項１】
ネットワーク装置のクラスターのうちの少なくとも１つのネットワーク装置を、権限のあるドメインネームサーバーとして使用して、アクティブに負荷バランスをとるシステムにおいて、
クラスターにグループ編成された複数のネットワーク装置を備え、各ネットワーク装置は、異なる各々の装置インターネットプロトコル（ＩＰ）アドレスを有し、ネットワーク装置の１つは、マスター装置として指定され、
前記マスター装置には、前記権限のあるドメインネームサーバーとしてＩＰアドレスが指定され、各ネットワーク装置は、前記クラスター内の少なくともマスター装置へ状態情報を通信することができ、
前記マスター装置は、クライアントの要求に基づいてドメインネームサービス（ＤＮＳ）問合せを受け取り、各々のネットワーク装置の状態情報に基づいてクライアントと通信するためにネットワーク装置の１つを選択し、前記ＤＮＳ問合せに応答してネットワーク装置の前記選択された１つの装置ＩＰアドレスを返送することができる、システム。
【請求項２】
各ネットワーク装置は、ネットワーク装置の存在、負荷パーセンテージ、アクティブな接続の数、及び装置ＩＰアドレスを含むグループから状態情報を選択する、請求項１に記載のシステム。
【請求項３】
前記マスター装置は、予め定められた負荷バランシングアルゴリズムに基づいてネットワーク装置の１つを選択する、請求項１に記載のシステム。
【請求項４】
前記クラスターにグループ編成される付加的なネットワーク装置を更に備え、この付加的なネットワーク装置は、前記クラスター内の少なくともマスター装置に状態情報を通信することができ、その後、この付加的なネットワーク装置は、クライアントと通信するために選択されることが考えられる、請求項１に記載のシステム。
【請求項５】
異なるネットワーク装置がマスター装置として指定されてもよく、マスターとして指定されるこの異なる装置に前記権限のあるドメインネームサーバーＩＰアドレスが転送される、請求項１に記載のシステム。
【請求項６】
権限のあるドメインネームサーバーとして働き且つ複数のネットワーク装置のクラスター間でアクティブに負荷バランスをとるためのネットワーク装置において、
クラスターにグループ編成された複数のネットワーク装置の各々から状態情報を受け取ることのできるプロセッサを備え、このプロセッサは、更に、クライアントの要求に基づいてドメインネームサービス（ＤＮＳ）問合せを受け取り、各ネットワーク装置の状態情報に基づいてクライアントと通信するためにネットワーク装置それ自体を含む前記ネットワーク装置のクラスターの中から１つのネットワーク装置を選択し、前記ＤＮＳ問合せに応答してネットワーク装置の前記選択された１つの装置ＩＰアドレスを返送することができる、ネットワーク装置。
【請求項７】
前記プロセッサは、ネットワーク装置の存在、負荷パーセンテージ、アクティブな接続の数、及び装置ＩＰアドレスを含むグループから状態情報を受け取る、請求項６に記載のネットワーク装置。
【請求項８】
前記プロセッサは、予め定められた負荷バランシングアルゴリズムに基づいてネットワーク装置の１つを選択する、請求項６に記載のネットワーク装置。
【請求項９】
前記プロセッサは、更に、前記クラスターにグループ編成された付加的なネットワーク装置から状態情報を受け取り、次いで、この付加的なネットワーク装置をクライアントと通信するために選択するものとして考えることができる、請求項６に記載のネットワーク装置。
【請求項１０】
前記プロセッサは、前記クラスターから除去されたネットワーク装置からは状態情報をもはや受け取らず、前記プロセッサは、更に、クライアントと通信するために、除去されたネットワーク装置以外の１つのネットワーク装置を選択することができる、請求項６に記載のネットワーク装置。
【請求項１１】
前記プロセッサは、更に、マスター装置指定を異なるネットワーク装置に転送することができ、前記権限のあるドメインネームサーバーのＩＰアドレスが、マスターとして指定されたこの異なる装置に転送される、請求項６に記載のネットワーク装置。
【請求項１２】
ネットワーク装置のクラスターのうちの少なくとも１つのネットワーク装置を、権限のあるドメインネームサーバーとして使用して、アクティブに負荷バランスをとる方法において、
前記クラスターのネットワーク装置の１つをマスター装置として指定し、このマスター装置には、権限のあるドメインネームサーバーとしてＩＰアドレスが指定され、
各ネットワーク装置からの状態情報を前記クラスター内の少なくともマスター装置へ通信し、
クライアントの要求に基づいてドメインネームサービス（ＤＮＳ）問合せを受け取り、
各ネットワーク装置の状態情報に基づいてクライアントと通信するためのネットワーク装置の１つを選択し、
前記ＤＮＳ問合せに応答してネットワーク装置の前記選択された１つの装置ＩＰアドレスを返送する、
という段階を備えた方法。
【請求項１３】
前記状態情報は、ネットワーク装置の存在、負荷パーセンテージ、アクティブな接続の数、及び装置ＩＰアドレスを含むグループから選択される、請求項１２に記載の方法。
【請求項１４】
前記ネットワーク装置の１つは、予め定められた負荷バランシングアルゴリズムに基づいて選択される、請求項１２に記載の方法。
【請求項１５】
前記クラスターに付加的なネットワーク装置をグループ編成する段階を更に備え、この付加的なネットワーク装置は、前記クラスター内の少なくともマスター装置に状態情報を通信し、その後、この付加的なネットワーク装置は、クライアントと通信するために選択されることが考えられる、請求項１２に記載の方法。
【請求項１６】
前記クラスターから複数のネットワーク装置の１つを除去する段階を更に備え、この除去されたネットワーク装置は、前記クラスター内の少なくともマスター装置へ状態情報をもはや通信せず、この除去されたネットワーク装置は、クライアントと通信するために選択される資格がもはやない、請求項１２に記載の方法。
【請求項１７】
異なるネットワーク装置をマスター装置として指定し、マスターとして指定されるこの異なる装置に前記権限のあるドメインネームサーバーのＩＰアドレスが転送される、請求項１２に記載の方法。
【請求項１８】
権限のあるドメインネームサーバーとして働き且つ複数のネットワーク装置のクラスター間でアクティブに負荷バランスをとるためのコンピュータプログラム製品であって、このコンピュータプログラム製品は、コンピュータ読み取り可能なプログラムコード部分が記憶された少なくとも１つのコンピュータ読み取り可能な記憶媒体を備え、前記コンピュータ読み取り可能なプログラムコード部分は、
クラスターにグループ編成された複数のネットワーク装置の各々から状態情報を受け取ることのできる第１の実行可能な部分と、
クライアントの要求に基づいてドメインネームサービス（ＤＮＳ）問合せを受け取ることのできる第２の実行可能な部分と、
各ネットワーク装置の状態情報に基づいてクライアントと通信するために前記ネットワーク装置のクラスターの中から１つのネットワーク装置を選択することのできる第３の実行可能な部分と、
前記ＤＮＳ問合せに応答してネットワーク装置の前記選択された１つの装置ＩＰアドレスを返送することのできる第４の実行可能な部分と、
を備えたコンピュータプログラム製品。
【請求項１９】
前記第１の実行可能な部分は、ネットワーク装置の存在、負荷パーセンテージ、アクティブな接続の数、及び装置ＩＰアドレスを含むグループから選択された状態情報を受け取る、請求項１８に記載のコンピュータプログラム製品。
【請求項２０】
前記第３の実行可能な部分は、予め定められた負荷バランシングアルゴリズムに基づいてネットワーク装置の１つを選択する、請求項１８に記載のコンピュータプログラム製品。
【請求項２１】
前記第１の実行可能な部分は、更に、前記クラスター内の付加的なネットワーク装置から状態情報を受け取ることができ、前記第３の実行可能な部分は、この付加的なネットワーク装置を、クライアントと通信するために選択するものとして考える、請求項１８に記載のコンピュータプログラム製品。
【請求項２２】
前記クラスターから除去されたネットワーク装置は、前記第１の実行可能な部分がその除去されたネットワーク装置から状態情報をもはや受け取らない場合には、前記第３の実行可能な部分により、クライアントと通信するために選択されるものとしてもはや考えられない、請求項１８に記載のコンピュータプログラム製品。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般的に、ドメインネームサーバーに係り、より詳細には、クラスター化ノードを、権限のある(authoritative)ドメインネームサーバーとして使用するシステム、ターミナル、及び方法に係る。
【背景技術】
【０００２】
インターネットに接続された各装置は、インターネット上の特定ネットワーク及び特定装置を識別する数字識別子（例えば、６６．１９２．１３４．１１１）であるＩＰアドレスによって識別される。ｗｗｗ．ｘｙｚ−ｎｅｗｓ．ｃｏｍのようなインターネットドメインネームをＩＰアドレスに関連付けるためにドメインネームサーバー（ＤＮＳ）が使用される。ＤＮＳは、ユーザ（クライアント）が、ＩＰアドレスではなく容易に思い出せるドメインネームを使用することにより、インターネットに接続された他の装置（ホスト）にアクセスするのを許す。典型的なＤＮＳアーキテクチャーでは、ユーザは、特定ドメインネームにアクセスする要求（ＤＮＳ問合せと称される）を、ユーザのインターネットサービスプロバイダー（ＩＳＰ）により提供されるネームサーバーへ送信する。ＩＳＰネームサーバーは、各ドメインネームと、それに対応するＩＰアドレスとの間のクロスリファレンスを含む。ＩＳＰネームサーバーに含まれる対応するＩＰアドレスは、通常、ドメイン所有者により提供される権限のあるネームサーバー（ＡＮＳ）のアドレスである。ＡＮＳは、情報を供給するか又はサービスを提供するために、ドメイン所有者により設けられたホスト装置（１つ又は複数）のＩＰアドレス（１つ又は複数）を含む。これらホスト装置は、例えば、ウェブサーバー、メールサーバー、又はＶＰＮ（バーチャルプライベートネットワーク）ゲートウェイである。ＩＳＰネームサーバーは、ＤＮＳ問合せをドメインのＡＮＳへ送信する。次いで、ＡＮＳは、適当なＩＰアドレスをＩＳＰネームサーバーへ返送し、このサーバーは、次いで、ＩＰアドレスをクライアントへ送信して、クライアントが、インターネットを経てホスト装置と直接通信できるようにする。（クライアントとホスト装置との間の通信は、アプリケーション接続と称されることがある。）ＡＮＳは、情報やサービスをクライアントに提供するホスト装置とは個別の装置である。
【０００３】
１つのドメインネームが多数のＩＰアドレスを参照することがあり、各ＩＰアドレスは異なるホスト装置に対応している。例えば、ウェブサイトｗｗｗ．ｘｙｚ−ｎｅｗｓ．ｃｏｍは、非常に多数の情報要求を受け取って、非常に多数のクライアントと同時に通信する必要が生じ得る。ｗｗｗ．ｘｙｚ−ｎｅｗｓ．ｃｏｍドメインのプロバイダーは、ドメインが受け取る非常に多量の通信トラフィックを取り扱うために、同じ情報を各々ホストする４つのウェブサーバーを使用することができる。このような状況では、ＡＮＳは、４つの装置のＩＰアドレスをＩＳＰネームサーバーへ送信し、そしてＩＳＰネームサーバーが、クライアントに送信すべき１つのＩＰアドレスを選択するのを許す。より一般的には、ＡＮＳは、ＩＳＰネームサーバーへ送信すべき４つのＩＰアドレスの１つを選択し、そしてＩＳＰネームサーバーは、その１つのアドレスをクライアントへ送信する。
【０００４】
同じ情報又はサービスを提供する多数の装置をもつ目的は、多数の装置にわたってアプリケーション接続を分散することにより多数のアプリケーション接続を有効に取り扱うことである。これは、負荷バランシングと称される。多数の装置にわたって負荷バランスをとるために、ＡＮＳは、一般に、異なるＤＮＳ問合せに応答して異なるホスト装置のＩＰアドレスを送信し、１つのホスト装置が全てのアプリケーション接続を取り扱う必要がないようにする技術を使用する。ＤＮＳ問合せの負荷バランスをとる１つの既知の技術は、ＤＮＳラウンドロビンと称される。ＤＮＳラウンドロビンでは、ＡＮＳは、多数の装置のＩＰアドレスの予め定められたスタティックリストを維持し、そして各次々のＤＮＳ問合せを受け取るたびにこのスタティックリストを繰り返し通るようにする。例えば、ドメインプロバイダーが４つの装置を使用し、４つの装置が、各々、ＩＰアドレス１０．０．０．１、１０．０．０．２、１０．０．０．３、及び１０．０.０．４を有する前記例について考える。ＩＳＰネームサーバーから第１のＤＮＳ問合せが受け取られると、ＡＮＳは、ＩＰアドレス１０．０．０．１を返送する。第２のＤＮＳ問合せが受け取られると、ＡＮＳは、ＩＰアドレス１０．０．０．２を返送する。第３のＤＮＳ問合せが受け取られると、ＡＮＳは、ＩＰアドレス１０．０．０．３を返送する。第４のＤＮＳ問合せが受け取られると、ＡＮＳは、ＩＰアドレス１０．０．０．４を返送する。第５のＤＮＳ問合せが受け取られると、ＡＮＳは、ＩＰアドレス１０．０．０．１を返送する。ＡＮＳは、ＤＮＳ問合せが受け取られるにつれて、４つのＩＰアドレスのこのスタティックリストを繰り返し通り続ける。
【０００５】
個別のＡＮＳにより遂行されるＤＮＳラウンドロビン技術は、多数の欠点がある。スタティックリストで参照される装置の１つが利用不能になった場合には、ＡＮＳは、通常、ＤＮＳ問合せに応答してその装置のＩＰアドレスを返送し続け、これにより、クライアントは、利用不能の装置との接続を試みる。故障した装置のＩＰアドレスを除去するためにスタティックリストを手動で変更する必要がある。新たな装置が追加される場合には（例えば、増加した数のアプリケーション接続を取り扱うために）、新たな装置のＩＰアドレスを追加するためにスタティックリストを手動で変更することが必要である。ＤＮＳラウンドロビン技術は、多数の装置にわたりアプリケーション接続を分散するが、特定の装置への特定の接続の時間巾、又は特定の接続が特定の装置に課する相対的な負担を考慮していない。従って、ＤＮＳラウンドロビン技術は、ある状況では充分な負荷バランシングを与えることができない。上述した例では、装置１のＩＰアドレスが与えられたクライアントが装置１から情報を素早く検索し、次いで、接続を終了するが、装置２のＩＰアドレスが与えられたクライアントが広範囲なデータ転送を行なっている場合には、装置２の負荷が装置１の負荷を大幅に越えることがある。しかしながら、ＤＮＳラウンドロビン技術は、装置２の大きな負荷にも関わらず、４番目のＤＮＳ問合せのたびに装置２のＩＰアドレスを返送し続ける。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
従って、多数の装置にわたってＩＰトラフィックの負荷バランスをとる技術であって、装置の追加又は除去を容易に調整できると共に、各装置の相対的負荷に基づいてトラフィックを動的に分散することのできる技術が要望される。
【課題を解決するための手段】
【０００７】
一般的に述べると、本発明の実施形態は、装置のクラスターがドメインネームを共有し、そしてドメインに対して権限のあるネームサーバーとして機能するようにする手段を設けることにより、既知の従来技術に勝る改良を提供する。ドメインネームクラスターにおける各装置又はノードは、ネットワークにおける各装置の存在、現在負荷パーセンテージ、アクティブな接続の数、及びＩＰアドレスのような状態情報を、クラスターにおける全ての他のノードへ繰り返しアナウンスし、クラスターの全てのノードが、クラスターの他の全てのノードの状態情報に気付くようにする。クラスターにおけるノードの１つは、マスターノードとして指定される。マスターノードには、そのドメインに対する権限のあるネームサーバーのＩＰアドレスが指定され、従って、マスターノードは、ドメインに対するＤＮＳ問合せを受け取る。マスターノードは、各ノードの状態情報を使用して、ＤＮＳ問合せの結果としてクライアントと通信するためにクラスターにおけるノードの１つ（マスターノードそれ自身を含む）を選択し、ノードにおける負荷のバランスをとる。マスターノードは、多数の異なるアルゴリズムを使用して、ノードにおける負荷のバランスをとることができる。マスターノードは、選択されたノードのＩＰアドレスをＩＳＰネームサーバーへ通信する。
【０００８】
この点に関して、ネットワーク装置のクラスターの１つを権限のあるドメインネームサーバーとして使用してアクティブな負荷バランシングを遂行するためのシステムは、クラスターにグループ編成された複数のネットワーク装置を備えている。各ネットワーク装置は、異なる各装置のインターネットプロトコル（ＩＰ）アドレスを有する。ネットワーク装置の１つは、マスター装置として指定され、このマスター装置には、権限のあるドメインネームサーバーとしてＩＰアドレスが指定される。各ネットワーク装置は、クラスターの少なくともマスター装置へ状態情報を通信することができる。マスター装置は、クライアントの要求に基づいてドメインネームサーバー（ＤＮＳ）問合せを受け取り、各ネットワーク装置の状態情報に基づいてクライアントと通信するためにネットワーク装置の１つを選択し、そしてＤＮＳ問合せに応答して、その選択された１つのネットワーク装置の装置ＩＰアドレスを返送することができる。
【０００９】
一実施形態では、各ネットワーク装置は、ネットワーク装置の存在、負荷パーセンテージ、アクティブな接続の数、及び装置ＩＰアドレスを含むグループから状態情報を選択する。マスター装置は、予め定められた負荷バランシングアルゴリズムに基づいてネットワーク装置の１つを選択することができる。
【００１０】
一実施形態では、システムは、更に、クラスターにグループ編成された付加的なネットワーク装置を備えている。この付加的なネットワーク装置は、クラスター内の少なくともマスター装置へ状態情報を通信することができ、その後、付加的なネットワーク装置は、クライアントと通信するために選択されるものとして考えられる。
【００１１】
異なるネットワーク装置がマスター装置として指定されてもよく、権限のあるドメインネームサーバーのＩＰアドレスが、マスターとして指定されたその異なる装置へ転送される。
【００１２】
上述したように、クラスター化ネットワーク装置を権限のあるドメインネームサーバーとして使用してアクティブな負荷バランシングを遂行するシステムに加えて、本発明の他の態様は、ネットワーク装置のクラスターの１つを権限のあるドメインネームサーバーとして使用してアクティブな負荷バランシングを遂行するための対応するネットワーク装置、方法、及びコンピュータプログラム製品にも向けられる。
【００１３】
以上に本発明を一般的に説明したが、必ずしも正確な縮尺ではない添付図面を参照して本発明を詳細に説明する。
【発明を実施するための最良の形態】
【００１４】
本発明は、本発明の好ましい実施形態が示された添付図面を参照して、以下に詳細に説明する。しかしながら、本発明は、多数の異なる形態で実施することができ、ここに述べる実施形態に限定されるものではなく、むしろ、これら実施形態は、この開示が綿密且つ完全なものとなるように設けられたもので、本発明の範囲を当業者に充分に伝えるものである。全体を通じて同じ素子は、同じ番号で示されている。
【００１５】
図１は、本発明の一実施形態により、クラスター化ネットワーク装置又はノードを権限のあるドメインネームサーバーとして使用してアクティブな負荷バランシングを遂行することのできるシステムの概略ブロック図である。ネットワーク装置のクラスターの概念は、参考としてここに全体を援用するＡｄｅｌｍａｎ氏等の“Method and Apparatus for an Internet Protocol (IP) Network Clustering system”と題する米国特許第６，００６，２５９号に説明されている。
【００１６】
図１のシステムは、４つのネットワーク装置（又はノード）１２、１４、１６、１８のクラスター１０と、３つのクライアントターミナル２４と、ＩＳＰネームサーバー２２とを備え、これらは、全て、インターネット２０に接続されると共に、これらは、全て、図２に示すように構成される。ノード１２、１４、１６、１８は、例えば、ウェブサーバー又はＶＰＮゲートウェイである。クライアントターミナル２４は、移動装置であるかどうかに関わらず、多数の異なるターミナル、システム、装置、等のいずれかを含み、例えば、パーソナルコンピュータ、コンピュータワークステーション、移動電話、ポータブルデジタルアシスタント（ＰＤＡ）、ページャー、ラップトップコンピュータ、又はスマートカードを含む。クライアントターミナルは、通常、インターネット２０に接続され、次いで、セルラーネットワーク又はローカルエリアネットワーク（ＬＡＮ）のような種々のアクセスネットワークを経てドメインに接続される。
【００１７】
クラスター内の全てのノードは、通常、機能的に同等である。例えば、ノード１２、１４、１６、１８は、全て、同じ情報をホスティングするウェブサーバーであり、クライアントターミナルがどのノードにアクセスするかに関わらず、任意のクライアントターミナルを任意のノードに向けて、同じ情報にアクセスすることができる。図１には、説明上、４つのノードが示されているが、クラスターは、いかなる数のノードを備えてもよい。
【００１８】
各ノードは、異なるＩＰアドレスを有するが、同じドメインネームを共有する。更に、１つのノードは、マスターノードとして指定され、そのドメインに対するＡＮＳのＩＰアドレスが指定され、ドメインに対する全てのＤＮＳ問合せは、マスターノードにより受け取られる。クラスター内のいずれのノードも、一般に、マスターノードとして機能することができる。マスターノードの責任がクラスター内のあるノードからクラスター内の別のノードへ移行される場合には、ＡＮＳ  ＩＰアドレスがマスターノードの責任と共に転送され、以前のマスターノードは、ＡＮＳ  ＩＰアドレスがもはや指定されず、そして新たなマスターノードにＡＮＳ  ＩＰアドレスが指定される。
【００１９】
クライアントターミナル２４がクラスターのドメインへのアクセスを希望するときは、ドメインネームがクライアントターミナルにより指定される。ここに示す実施形態では、ドメインネームを含むＤＮＳ問合せがインターネット２０を経てＩＳＰネームサーバー２２へ送信される。ＩＳＰネームサーバー２２は、ドメインネームと、各ドメインネームに関連したＡＮＳのＩＰアドレスとのクロスリファレンステーブルを有する。ＩＳＰネームサーバー２２は、インターネット２０を経て、指定されたドメインのＡＮＳ  ＩＰアドレスへＤＮＳ問合せを送信する。マスターノードにはＡＮＳ  ＩＰアドレスが指定されるので、ＤＮＳ問合せは、マスターノードによって受け取られる。ＤＮＳ問合せが、典型的な個別のＡＮＳにより受け取られるのではなく、ＡＮＳとして機能するクラスターのマスターノードにより受け取られることは、クライアントターミナル２４及びＩＳＰネームサーバー２２にとって透過的である。従って、既存のＤＮＳ問合せプロセスに対して、変更が要求されない。
【００２０】
クラスター１０における各ノードは、クラスター内の他の全てのノードに状態情報を繰り返しアナウンスし、従って、クラスター内の全てのノードがクラスター内の他の全てのノードの状態情報を知ることができる。或いは又、各ノードが状態情報をマスターノードのみにユニキャストすることもできるし、又はマスターノードが他のノードをポーリングして、状態情報を得ることもできる。この状態情報は、例えば、ネットワーク上のノードの存在、ノードの現在負荷パーセンテージ、ノードによってサポートされるアクティブな接続の数、及びノードのＩＰアドレスを含むことができる。各ノードによる状態情報のこのアナウンスは、１秒に一度のように、繰り返し行なわれる。状態情報は、マルチキャストパケットプロトコルを使用して送信されてもよい。マスターノードがＤＮＳ問合せを受け取るときに、マスターノードは、ＤＮＳ問合せの結果としてクライアントターミナルと通信するためにクラスター内のノードの１つを選択する。マスターノードの機能は、クラスター内のノードの１つにより遂行されるので、マスターノードは、ＤＮＳ問合せに応答してクライアントターミナルと通信するための装置としてそれ自身を選択してもよい。マスターノードは、各ノードの状態情報を使用して、ノードの負荷を動的にバランスさせる。ノードの負荷をバランスさせるためにマスターノードにより多数の異なるアルゴリズムを使用することができる。マスターノードは、重み付けされたラウンドロビンアルゴリズムを使用することができ、この場合、ＤＮＳ問合せは、通常、ラウンドロビン形態で各ノードへ順次にルーティングされるが、あるノードが他のノードより重たい負荷がかかっている場合には、順番を狂わせてルーティングされる。例えば、各ノードが負荷パーセンテージをアナウンスし、そしてノード＃３の負荷パーセンテージが、他のノードの平均負荷パーセンテージより予め定められたパーセンテージだけ高い場合に、マスターノードは、新たなＤＮＳ問合せに応答したノード＃３のＩＰアドレスの送信を、ノード＃３の負荷パーセンテージが、他のノードの平均負荷パーセンテージの予め定められたパーセンテージ内のレベルに下がるまで、停止することができる。或いは又、各ノードがアクティブな接続の数をアナウンスし、そしてノード＃４のアクティブな接続の数が、他のノードのアクティブな接続の平均数より予め定められたパーセンテージだけ高い場合には、マスターノードは、新たなＤＮＳ問合せに応答したノード＃４のＩＰアドレスの送信を、ノード＃４のアクティブな接続の数が、他のノードの平均アクティブ接続の予め定められた数以内のレベルに下がるまで、停止することができる。
【００２１】
マスターノードが、ＤＮＳ問合せの結果としてクライアントターミナルと通信するためのノードの１つを選択した後に、マスターノードは、選択されたノードのＩＰアドレスをＩＳＰネームサーバーへ通信する。ＩＳＰネームサーバーは、選択されたノードのＩＰアドレスをクライアントターミナルに通信し、クライアントターミナルがその選択されたノードと直接通信できるようにする。選択されたノードのＩＰアドレスが、典型的な個別のＡＮＳにより与えられるのではなく、ＡＮＳとして機能するクラスターのマスターノードにより与えられることは、クライアントターミナル２４及びＩＳＰネームサーバー２２にとって透過的である。
【００２２】
クラスター化ネットワーク装置又はノードを権限のあるドメインネームサーバーとして使用してアクティブな負荷バランシングを遂行することのできる図１のシステムは、上述した動的な負荷バランシングに加えて、ＩＰアドレスのスタティックリストを経てラウンドロビンで循環する個別のＡＮＳを使用する既知のシステムに勝る多数の効果を発揮する。図１の実施形態のシステムは、動的な拡張を許し、コンフィギュレーションの変更を必要とせずに新たなノードをクラスターに追加することができる。新たなノードがクラスターに追加されたときは、新たなノードがその存在をクラスター内の他のノードにアナウンスし、そして認証手順が遂行される。新たなノードが認証されると、マスターノードは、マスターノードにより使用される負荷バランシングアルゴリズムに基づいて、適当なときに、新たなノードのＩＰアドレスを使用してＤＮＳ問合せに応答することを始める。
【００２３】
図１のシステムは、ノードの故障か又はノードが保守のために取り外されることによるクラスターからのノードの除去に動的に応答することができる。ノードが故障した場合には、ノードは、もはや、状態情報を他のノードにアナウンスしない。マスターノードは、故障したノードから状態情報を受け取らないので、ＤＮＳ問合せに応答した故障ノードのＩＰアドレスの送信を停止する。故障ノードとどんなクライアントターミナル接続が存在しても、ノードが故障したときに終了するが、クライアントターミナルによる故障ノードとの新たな接続は試みられない。
【００２４】
ノードを保守のために除去する必要がある場合には、ノードがクラスターから除去されるが、除去されたノードとの既存のクライアントターミナル接続は維持される。上述したように、除去されたノードは、もはや、状態情報を他のノードへアナウンスしない。マスターノードは、除去されたノードから状態情報を受け取らないので、ＤＮＳ問合せに応答した除去ノードのＩＰアドレスの送信を停止する。各セッションが自然に完了したときのように、全ての既存のクライアントターミナル接続がクライアントターミナルにより終了されると、除去ノードはアイドル状態になり、次いで、保守を行うことができる。或いは又、保守のために除去されるべきノードへのアクティブな接続は、別のノードへ移行することができる。
【００２５】
本発明の別の実施形態では、システムは、高レベルドメインのために個別のＡＮＳ２６を備えることもでき、この個別のＡＮＳは、低レベルドメインのためのＤＮＳ問合せを、アプリケーション接続を取り扱い且つ低レベルドメインに対してＡＮＳとして働く装置のクラスターへ再指向する。例えば、クライアントターミナル２４は、ドメインｗｗｗ．ｆｉｎａｎｃｅ．ｘｙｚ−ｎｅｗｓ．ｃｏｍへの接続を要求することができる。ＩＳＰネームサーバーは、通常、高レベルドメイン（即ち、ｘｙｚ−ｎｅｗｓ．ｃｏｍ）を見て、そのドメインに対するＡＮＳを決定する。高レベルドメインに対するＡＮＳは、個別のＡＮＳ２６でよく、ＩＳＰネームサーバー２２は、ＤＮＳ問合せを個別のＡＮＳ２６へ送信する。個別のＡＮＳ２６は、通常、ドメインネーム全体（ｗｗｗ．ｆｉｎａｎｃｅ．ｘｙｚ−ｎｅｗｓ．ｃｏｍ）を見、そしてクラスター１０が低レベルドメインに対してＡＮＳとして働くことを決定する。次いで、個別のＡＮＳ２６は、通常、ＤＮＳ問合せをクラスター１０に送信すべきであることを指示するためにＩＳＰネームサーバーへ再指向メッセージを送信する。この再指向メッセージに応答して、ＩＳＰネームサーバーは、ＤＮＳ問合せをクラスター１０へ送信する。クラスター１０は、次いで、上述したように、要求されたアプリケーション接続を取り扱うための適当なノードを決定し、そしてそのノードのＩＰアドレスをＩＳＰネームサーバーへ送信する。
【００２６】
図２は、本発明の一実施形態により、クライアントターミナル２４、ノード１２及び／又はネームサーバー２２として動作できるエンティティのブロック図である。個別のエンティティとして示されているが、ある実施形態では、１つ以上のエンティティが、論理的に個別であるがエンティティ内に共通配置されたクライアントターミナル、ノード及び／又はネームサーバーの１つ以上をサポートしてもよい。図示されたように、クライアントターミナル、ノード及び／又はネームサーバーとして動作できるエンティティは、一般的に、エンティティの動作を制御するために、メモリ３４に接続されたプロセッサ３２のような手段を含むことができる。メモリは、揮発性及び／又は不揮発性メモリを含み、通常、コンテンツ、データ、等を記憶する。例えば、メモリは、通常、エンティティから送信され及び／又はエンティティにより受信されたコンテンツを記憶する。又、例えば、メモリは、通常、本発明の実施形態に基づくエンティティの動作に関連したステップをプロセッサが実行するためのソフトウェアアプリケーション、インストラクション、等を記憶する。
【００２７】
又、プロセッサ３２は、少なくとも１つのインターフェイス３６、或いはデータ、コンテンツ、等を送信及び／又は受信するための他の手段に接続することもできる。インターフェイス（１つ又は複数）は、多数の異なる通信技術の１つ以上に基づき通信するための手段を含むことができる。この点に関して、インターフェイス（１つ又は複数）は、多数のワイヤライン及び／又はワイヤレス通信技術のいずれかに基づき通信するための手段を含むことができる。例えば、インターフェイスは、一般に、ＲＦ通信技術に基づいて通信することのできるＲＦモジュールを含み、より詳細には、Ｂｌｕｅｔｏｏｔｈ、ＷＬＡＮ及び／又はＵＷＢ通信技術に基づいて各々通信することのできるＢｌｕｅｔｏｏｔｈモジュール、ＷＬＡＮモジュール及び／又はＵＷＢモジュールを含むことができる。それに加えて又はそれとは別に、インターフェイスは、１Ｇ、２Ｇ、２．５Ｇ及び／又は３Ｇ通信技術に基づいて通信するための手段を含むこともできる。
【００２８】
図３は、本発明の一実施形態により、クラスター化ノードを権限のあるドメインネームサーバーとして使用してアクティブな負荷バランシングを遂行する方法を示すフローチャートである。複数のネットワーク装置又はノードが、通常、クラスターにグループ編成される。ブロック５０を参照。上述したように、これらのグループ編成されたネットワーク装置は、通常、機能的に同等であり、いかなる数の装置をクラスターにグループ編成することもできる。各装置は、通常、ネットワーク装置ＩＰアドレスを有する。クラスター内の１つのネットワーク装置がマスター装置として指定される。ブロック５２を参照。マスターとして指定される装置は、通常、マスター装置の装置ＩＰアドレスに加えて、権限のあるドメインネームサーバーのＩＰアドレスが指定される。マスター装置の指定は、必要に応じて、１つの装置から別の装置へ転送される。マスター装置の指定が転送されるときは、権限のあるドメインネームサーバーのＩＰアドレスも、通常、新たにマスターとして指定される装置へ転送される。
【００２９】
マスター装置は、通常、クラスター内の各ネットワーク装置から状態情報を受け取る。ブロック５４を参照。上述したように、状態情報は、ネットワーク上のネットワーク装置の存在、ネットワーク装置の現在負荷パーセンテージ、ネットワーク装置によりサポートされるアクティブな接続の数、及びネットワーク装置のＩＰアドレスを含む。状態情報は、マスター装置により繰り返し受け取られるので、マスター装置は、通常、どれほど多くのネットワーク装置がクラスターにおいてアクティブであるかを知る。又、マスター装置は、ノードが追加されたり除去されたりするときに、権限のあるネームサーバーに通常再構成を必要とせずに、クラスターへのネットワーク装置の追加又はそこからの除去に反応することもできる。
【００３０】
マスター装置には、通常、権限のあるドメインネームサーバーのＩＰアドレスが指定されるので、マスター装置は、そのドメインに対するＤＮＳ問合せを受け取る。ブロック５６を参照。マスター装置は、通常、ＤＮＳ問合せに応答してクライアントと通信するためにクラスター内のネットワーク装置の１つを選択する。ブロック５８を参照。マスター装置は、通常、状態情報を使用して、ネットワーク装置の１つを選択し、ネットワーク装置の負荷がバランスされるようにする。上述した重み付けラウンドロビン技術のような多数の異なる負荷バランシングアルゴリズムを使用することができる。マスター装置は、通常、マスター装置が状態情報を受け取ったと予想されるネットワーク装置のみを選択する。これは、マスター装置が、故障したネットワーク装置、さもなければ、クラスターから除去されたネットワーク装置を選択するのを防止する。選択されたネットワークのＩＰアドレスがマスター装置によりＩＳＰネームサーバーを経てクライアントへ返送される。ブロック６０を参照。ＩＳＰネームサーバーは、ＩＰアドレスをクライアントに与え、クライアントは、次いで、選択されたネットワーク装置と通信することができる。
【００３１】
本発明の１つの態様によれば、ノード１２のようなシステムの１つ以上のエンティティにより遂行される機能は、上述したものを含むハードウェア及び／又はファームウェアのような種々の手段のみによって遂行されてもよいし、及び／又はコンピュータプログラム製品の制御のもとで遂行されてもよい。本発明の実施形態の方法を遂行するためのコンピュータプログラム製品は、不揮発性記憶媒体のようなコンピュータ読み取り可能な記憶媒体、及びこのコンピュータ読み取り可能な記憶媒体に実施される一連のコンピュータインストラクションのようなコンピュータ読み取り可能なプログラムコード部分を含む。
【００３２】
この点に関して、図３は、本発明による方法及びプログラム製品のフローチャートである。このフローチャートの各ステップ、及びフローチャートにおけるステップの組み合せは、コンピュータプログラムインストラクションにより実施できることが理解されよう。これらのコンピュータプログラムインストラクションは、コンピュータ又は他のプログラム可能な装置にロードされて、マシンを形成し、コンピュータ又は他のプログラム可能な装置で実行されるインストラクションは、フローチャートのステップで指定された機能を実施するための手段を生成する。又、これらのコンピュータプログラムインストラクションは、コンピュータ読み取り可能なメモリに記憶されてもよく、これは、コンピュータ又は他のプログラム可能な装置が特定の仕方で機能するように命令し、コンピュータ読み取り可能なメモリに記憶されたインストラクションは、フローチャートのステップで指定された機能を実施するインストラクション手段を含む製品を形成する。又、コンピュータプログラムインストラクションは、コンピュータ又は他のプログラム可能な装置にロードされてもよく、一連の動作ステップをコンピュータ又は他のプログラム可能な装置で遂行して、コンピュータ実施プロセスを形成し、コンピュータ又は他のプログラム可能な装置で実行されるインストラクションが、フローチャートのステップで指定された機能を実施するためのステップを形成する。
【００３３】
従って、フローチャートのステップは、指定の機能を遂行する手段の組み合せ、指定の機能を遂行するステップの組み合せ、及び指定の機能を遂行するプログラムインストラクション手段をサポートする。フローチャートの各ステップ、及びフローチャートにおけるステップの組み合せは、指定の機能又はステップを遂行する特殊目的のハードウェアベースのコンピュータシステム、又は特殊目的のハードウェア及びコンピュータインストラクションの組み合せにより実施できることも理解されたい。
【００３４】
前記説明及び添付図面に表わされた教示から利益を得る本発明に係る当業者であれば、本発明の多数の変更や他の実施形態が明らかであろう。それ故、本発明は、ここに開示する特定の実施形態に限定されず、且つ特許請求の範囲内には変更や他の実施形態が包含されることを理解されたい。特定の用語を使用したが、一般的な且つ説明上の意味で使用されたもので、それに限定されるものではない。
【図面の簡単な説明】
【００３５】
【図１】本発明の一実施形態により、クラスター化ノードを権限のあるドメインネームサーバーとして使用してアクティブな負荷バランシングを遂行することのできるシステムの概略ブロック図である。
【図２】本発明の実施形態により、ターミナル、ＰＤＳＮ、サーバー、プロキシー及び／又はＤＮＳサーバーとして動作できるエンティティの概略ブロック図である。
【図３】本発明の一実施形態により、クラスター化ノードを権限のあるドメインネームサーバーとして使用してアクティブな負荷バランシングを遂行する方法を示すフローチャートである。
【図１】
2008537400.tif 000003
【図２】
2008537400.tif 000004
【図３】
2008537400.tif 000005
【国際調査報告】
2008537400.tif 000006
2008537400.tif 000007
2008537400.tif 000008