(57)【要約】【課題】第１のネットワークと第２のネットワークとの間にゲートウェイ装置を備えるシステムにおいて、端末の通信品質の低下を回避する。【解決手段】端末が接続される第１のネットワークと、当該端末のアクセス先となるサーバが接続される第２のネットワークとの間に備えらえる複数のゲートウェイ装置を有するネットワークシステムにおいて、当該複数のゲートウェイ装置のうちのいずれかのゲートウェイ装置として用いられるゲートウェイ装置であって、前記サーバへのアクセスを、前記端末の代理として実行するプロキシ部と、前記ゲートウェイ装置の状態を示すメトリック値を取得するメトリック収集部と、前記端末のＩＰアドレスと、設定情報と、前記複数のゲートウェイ装置から収集されたメトリック値とに基づいて、前記複数のゲートウェイ装置の中から前記端末が使用するゲートウェイ装置を決定する分散制御部とを備える。【選択図】図４
2020058011.tif 000002
【特許請求の範囲】
【請求項１】
端末が接続される第１のネットワークと、当該端末のアクセス先となるサーバが接続される第２のネットワークとの間に備えらえる複数のゲートウェイ装置を有するネットワークシステムにおいて、当該複数のゲートウェイ装置のうちのいずれかのゲートウェイ装置として用いられるゲートウェイ装置であって、
前記サーバへのアクセスを、前記端末の代理として実行するプロキシ部と、
前記ゲートウェイ装置の状態を示すメトリック値を取得するメトリック収集部と、
前記端末のＩＰアドレスと、設定情報と、前記複数のゲートウェイ装置から収集されたメトリック値とに基づいて、前記複数のゲートウェイ装置の中から前記端末が使用するゲートウェイ装置を決定する分散制御部と
を備えるゲートウェイ装置。
【請求項２】
前記端末から名前解決の問い合わせを受信し、当該問い合わせに基づき取得する前記端末のＩＰアドレスを前記分散制御部に通知することで、前記端末が使用するゲートウェイ装置を前記分散制御部に問い合わせる内部ＤＮＳ部
を更に備える請求項１に記載のゲートウェイ装置。
【請求項３】
前記設定情報は、端末のＩＰアドレス毎に、優先的に接続するゲートウェイ装置の情報を含む
請求項１又は２に記載のゲートウェイ装置。
【請求項４】
前記第１のネットワークはプライベートネットワークであり、前記第２のネットワークはインターネットである
請求項１ないし３のうちいずれか１項に記載のゲートウェイ装置。
【請求項５】
端末が接続される第１のネットワークと、当該端末のアクセス先となるサーバが接続される第２のネットワークとの間に備えらえる複数のゲートウェイ装置を有するネットワークシステムであって、当該複数のゲートウェイ装置のそれぞれが請求項１ないし４のうちいずれか１項に記載のゲートウェイ装置である
ネットワークシステム。
【請求項６】
端末が接続される第１のネットワークと、当該端末のアクセス先となるサーバが接続される第２のネットワークとの間に備えらえる複数のゲートウェイ装置を有するネットワークシステムにおいて、当該複数のゲートウェイ装置のうちのいずれかのゲートウェイ装置が実行する制御方法であって、
前記ゲートウェイ装置は、前記サーバへのアクセスを、前記端末の代理として実行するプロキシ部を備え、
前記ゲートウェイ装置の状態を示すメトリック値を取得するメトリック収集ステップと、
前記端末のＩＰアドレスと、設定情報と、前記複数のゲートウェイ装置から収集されたメトリック値とに基づいて、前記複数のゲートウェイ装置の中から前記端末が使用するゲートウェイ装置を決定する分散制御ステップと
を備える制御方法。
【請求項７】
コンピュータを、請求項１ないし４のうちいずれか１項に記載のゲートウェイ装置における各部として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、大規模なプライベートネットワーク向け分散型インターネットゲートウェイに関連するものである。
【背景技術】
【０００２】
企業が利用する大規模なプライベートネットワークでは、エンドユーザの端末がインターネット上のＷｅｂサーバにアクセスする際に、通信内容の監査やセキュリティ上の問題を回避するため、Ｗｅｂ  Ｐｒｏｘｙを介した通信とする場合が多い。
【０００３】
このようなプライベートネットワークからインターネットに通信するためのゲートウェイは「Internet Gateway（ＩＧＷ）」と呼ばれ、Ｗｅｂ  Ｐｒｏｘｙを利用する方法の他にＮＡＰＴ（Network Address Port Translation）を介して通信をする方法もあるが、以降ではＷｅｂ  Ｐｒｏｘｙを利用した方法をＩＧＷと呼ぶ。
【０００４】
ＩＧＷは、Ｗｅｂ  Ｐｒｏｘｙ装置をプライベートネットワークとインターネットの両方に接続し、プライベートネットワーク内の端末からのＷｅｂ通信を一旦終端し、外部Ｗｅｂサーバに対して端末の代理としてアクセスする。
【０００５】
ＩＧＷは、ＷｅｂＰｒｏｘｙの機能だけでなく、外部Ｗｅｂサイトからのマルウェアのダウンロードなどセキュリティ上の問題の検知および回避のため、Unified Threat Management（ＵＴＭ）と呼ばれる高度なセキュリティ機能と組合せて利用する場合が多い。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１６−１４４１４４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
企業が大規模なプライベートネットワークにおいてＩＧＷを構築する場合、当該ＩＧＷを１つの拠点に物理マシンを用いて構築するのが一般的であった。しかし、特にプライベートネットワークが広域に分散する場合、ＩＧＷの設置場所から離れた場所にある端末の通信品質が低下する可能性があるという課題がある。
【０００８】
なお、上記のような課題は、プライベートネットワークとインターネットとの間のゲートウェイ装置に限らずに生じ得る課題である。
【０００９】
本発明は上記の点に鑑みてなされたものであり、第１のネットワークと第２のネットワークとの間にゲートウェイ装置を備えるシステムにおいて、端末の通信品質の低下を回避することを可能とする技術を提供することを目的とする。
【課題を解決するための手段】
【００１０】
開示の技術によれば、端末が接続される第１のネットワークと、当該端末のアクセス先となるサーバが接続される第２のネットワークとの間に備えらえる複数のゲートウェイ装置を有するネットワークシステムにおいて、当該複数のゲートウェイ装置のうちのいずれかのゲートウェイ装置として用いられるゲートウェイ装置であって、
前記サーバへのアクセスを、前記端末の代理として実行するプロキシ部と、
前記ゲートウェイ装置の状態を示すメトリック値を取得するメトリック収集部と、
前記端末のＩＰアドレスと、設定情報と、前記複数のゲートウェイ装置から収集されたメトリック値とに基づいて、前記複数のゲートウェイ装置の中から前記端末が使用するゲートウェイ装置を決定する分散制御部と
を備えるゲートウェイ装置が提供される。
【発明の効果】
【００１１】
開示の技術によれば、第１のネットワークと第２のネットワークとの間にゲートウェイ装置を備えるシステムにおいて、端末の通信品質の低下を回避することを可能とする技術が提供される。
【図面の簡単な説明】
【００１２】
【図１】集中型ＩＧＷ構成を示す図である。
【図２】仮想化環境上のＩＧＷ構成を示す図である。
【図３】セルの分散配置を示す図である。
【図４】トラフィック分散制御を示す図である。
【図５】分散制御部が保持する設定情報の例を示す図である。
【図６】処理手順を説明するためのシーケンス図である。
【図７】装置のハードウェア構成例を示す図である。
【発明を実施するための形態】
【００１３】
以下、図面を参照して本発明の実施の形態（本実施の形態）を説明する。以下で説明する実施の形態は一例に過ぎず、本発明が適用される実施の形態は、以下の実施の形態に限られるわけではない。以下、課題をより詳細に説明した後に、本発明の実施の形態に係る技術を説明する。
【００１４】
なお、本実施の形態では、プライベートネットワークとインターネットとの間のゲートウェイ装置を対象としているが、本発明は、プライベートネットワークとインターネットとの間のゲートウェイ装置に限らずに適用可能である。例えば、異なる企業のプライベートネットワーク間のゲートウェイ装置などにも本発明を適用することが可能である。
【００１５】
（集中型ＩＧＷの課題）
前述したように、企業が大規模なプライベートネットワークでＩＧＷを構築する場合、Ｗｅｂ  ＰｒｏｘｙやＵＴＭを組合せＩＧＷのシステムを１つの拠点に構築する。エンド端末からのトラフィックはこのＩＧＷに集中するため、これを集中型ＩＧＷと呼ぶ。
【００１６】
集中型ＩＧＷの構成例を図１に示す。図１に示すとおり、ＩＧＷ１０が、プライベートネットワーク２０とインターネット３０との両方に接続されている。図１の例において、拠点Ａ〜Ｃに端末ａ〜ｃが存在し、それぞれプライベートネットワーク２０に接続されている。また、端末のアクセス先となるＷｅｂサーバ４０がインターネット３０に接続されている。ＩＧＷ１０は、冗長構成として、複数のＷｅｂ  ｐｒｏｘｙ１１と複数のＵＴＭを有する。
【００１７】
図１のように、単一のＩＧＷ１０を構築する場合、端末からのトラフィックが１つのＩＧＷ１０に集中し、ＩＧＷ１０がボトルネックとなる可能性がある。
【００１８】
また、装置や回線の不具合による通信障害を回避するため、図１の例のように、Ｗｅｂ  ＰｒｏｘｙやＵＴＭなどの装置や回線をＡｃｔ／Ｓｂｙの冗長構成とし、Ａｃｔ側での障害発生時にはＳｂｙ機器に切り替えるよう設計する場合が多い。しかし、システムが正常に動作する状態ではＳｂｙ機器が活用されずに、設備の利用効率が低いという課題がある。
【００１９】
また、プライベートネットワーク２０が広域に分散する場合、ＩＧＷ１０の設置場所から離れた場所にある端末は、ＩＧＷ１０を経由することでＷｅｂサイトまでの通信経路や遅延が大きくなり、通信品質が低下する可能性がある。
【００２０】
以下、上述した課題を解決する本発明の実施の形態に係る技術を説明する。
【００２１】
（仮想化技術を用いたＩＧＷ）
近年、通信装置の仮想化（Network Function Virtualization：ＮＦＶ）が進み、仮想化基盤上で通信システムの構築が可能になった。ＮＦＶを活用することで機器の設置や配線など物理作業が不要になる。
【００２２】
また、ＮＦＶを構築する仮想化基盤を提供するクラウドなどのサービスが国内外で数多く提供されるようになり、プライベートネットワークと直接接続可能なクラウドサービスも提供されるようになった。仮想版のＷｅｂ  ＰｒｏｘｙやＵＴＭと、プライベートネットワークと直接接続可能な仮想化基盤を組合せることで、物理装置を利用する場合と同様なＩＧＷシステムを構築することができる。
【００２３】
図２に、仮想化環境上のＩＧＷの構成例を示す。図２に示すように仮想化基盤上に、ＩＧＷ１００が構築されている。当該ＩＧＷ１００は、Ｗｅｂ  ｐｒｏｘｙ１１０、ＵＴＭ１２０を有する。
【００２４】
（分散型ＩＧＷ）
本実施の形態では、仮想化環境上のＩＧＷを、集中型の構成として構築するのではなく、異なる仮想化環境に分散配置し、端末からのトラフィックを分散制御することで、分散型のＩＧＷを構築することとしている。この分散型のＩＧＷシステムを、本明細書ではMicro Internet Gateway（ＭＩＧＷ）と呼ぶ。なお、異なる仮想化環境に分散配置するとは、例えば、仮想化環境を提供しているデータセンタが複数の地理的場所に分散配置されていて、それぞれのデータセンタに仮想化環境上のＩＧＷが構築されることを意味する。
【００２５】
ＭＩＧＷでは、仮想化環境上のＩＧＷの機能セットを「セル」と呼ぶ。つまり、分散配置された複数のＩＧＷにおける個々のＩＧＷを「セル」と呼ぶ。分散型ＩＷＧでは、図３に示すように、セルを異なる地域の仮想化基盤に複数構築し、エンド端末からのトラフィックを、複数のセルで分散処理する。例えば、図３の例では、セル１００−１は拠点Ａの端末ａからのトラフィックを処理し、セル１００−２は拠点Ｂの端末ｂからのトラフィックを処理し、セル１００−３は拠点Ｃの端末ｃからのトラフィックを処理する。なお、複数のセルを有する構成をネットワークシステムと呼んでもよい。
【００２６】
本実施の形態における分散型ＩＧＷでは、エンド端末からの通信を、複数のセルのうち、端末に近いセルを経由するよう制御することで、通信品質を最適化する。また、複数セルのうち、あるセルに障害が発生した場合には、障害が発生していないセルを経由するようトラフィックを制御する。これらの制御方法の例については後述する。
【００２７】
（ＭＩＧＷのメリット）
ＭＩＧＷではＩＧＷを分散型にすることで、集中型ＩＧＷに比べて以下のメリットがある。
【００２８】
・セルを全てＡｃｔｉｖｅで利用するため、全ての設備を有効活用できるので、設備の利用効率が高い。
【００２９】
・エンド端末は、複数セルの中から、最適なセルを経由することができるので、通信品質の低下を回避できる。
【００３０】
・セルで障害が発生した場合、別のセルを経由するようトラフィックを制御することで、障害影響を回避することができる。
【００３１】
・離れた地域にセル構築することで、特定の地域で発生した大規模な障害を回避するＤＲ（Ｄｉｓａｓｔｅｒ  Ｒｅｃｏｖｅｒｙ）を実現できる。
【００３２】
・トラフィックが増えた場合に、セルを追加構築することで、処理するトラフィック容量を増やすことができる。
【００３３】
（複数セル間でのトラフィック分散方式）
複数セル間でのトラフィック分散制御を実現するための構成例を図４に示す。図４では、地域Ｘと地域Ｙのそれぞれにセルが設けられ、それぞれの内部構成が示されている。地域Ｘのセルと地域Ｙのセルとで同じ構成なので、ここでは、地域Ｘのセル１００を参照して説明する。
【００３４】
＜装置構成、機能＞
図４に示すとおり、セル１００は、ＵＴＭ１１０、Ｗｅｂ  ｐｒｏｘｙ１２０、分散制御部１３０、内部ＤＮＳ部１４０、メトリック収集部１５０を有する。なお、分散制御部、メトリック収集部、内部ＤＮＳ部をそれぞれ分散制御機能、メトリック収集機能、内部ＤＮＳ機能と呼んでもよい。また、内部ＤＮＳ部を内部ＤＮＳサーバと呼んでもよい。
【００３５】
ＵＴＭ１１０、Ｗｅｂ  ｐｒｏｘｙ１２０、分散制御部１３０、内部ＤＮＳ部１４０、メトリック収集部１５０は、クラウドなどの仮想化基盤上で構築される機能部であるが、その実体は、コンピュータ上で動作するプログラムである。また、ＵＴＭ１１０、Ｗｅｂ  ｐｒｏｘｙ１２０、分散制御部１３０、内部ＤＮＳ部１４０、メトリック収集部１５０のそれぞれは、仮想化基盤上ではなく、１つ又は複数の物理マシンで実現されてもよい。また、ＵＴＭ１１０、Ｗｅｂ  ｐｒｏｘｙ１２０、分散制御部１３０、内部ＤＮＳ部１４０、メトリック収集部１５０のうちの任意の組み合わせの複数の機能部のまとまりが１つ又は複数の物理マシンで実現されてもよい。
【００３６】
また、分散制御部１３０、及びメトリック収集部１５０が、Ｗｅｂ  ｐｒｏｘｙ１２０の内部の機能部であってもよい。
【００３７】
また、セル１００におけるＩＧＷ本来の機能として、Ｗｅｂ  ｐｒｏｘｙ１２０の他にＵＴＭ１１０を備えることは一例である。ＵＴＭ１１０を備えないこととしてもよいし、ＵＴＭ１１０以外の機能部を備えてもよい。各機能部の機能は以下のとおりである。
【００３８】
ＵＴＭ１１０は、外部Ｗｅｂサイトからのマルウェアのダウンロードなどセキュリティ上の問題の検知および回避を行う。Ｗｅｂ  ｐｒｏｘｙ１２０は、端末からのＷｅｂアクセス（ＨＴＴＰ通信）を一旦終端し、端末の代理で、外部Ｗｅｂサーバに対してアクセスする。
【００３９】
メトリック収集部１５０は、セル１００の状態を示すメトリック値を定期的に取得し、記憶手段に保持する。メトリック収集部１５０が取得するメトリック値は、例えば、セル１００のインターネット接続の正常性を示す値、Ｗｅｂ  Ｐｒｏｘｙ１２０の正常性を示す値、ＵＴＭ１１０の正常性を示す値、Ｗｅｂ  Ｐｒｏｘｙ１２０の負荷、ＵＴＭ１１０の負荷などである。メトリック収集部１５０はこれら全てを取得してもよいし、これらのうちのいずれか１つ又は複数を取得してもよい。
【００４０】
分散制御部１３０は、分散型ＩＧＷを構成する全てのセルのメトリック収集部からメトリック値を定期的に収集する。例えば、図４の例では、分散制御部１３０は、自セルのメトリック収集部１５０からメトリック値を収集するとともに、地域Ｙのセルのメトリック収集部からメトリック値を収集する。
【００４１】
また、分散制御部１３０は、設定情報として、端末のＩＰアドレスに対して優先的に接続するＭＩＧＷセルの情報と、最適なセルを決めるための優先度の情報を保存する。設定情報は、全てのセルで同じ情報が同期され保存される。つまり、図４の例では、地域Ｘの分散制御部１３０と地域Ｙの分散制御部は、設定情報として同じ情報を保持している。
【００４２】
また、分散制御部１３０は、最新のメトリック情報と設定情報とを用いて、端末のＩＰアドレスに応じた最適なセルを選択する。
【００４３】
内部ＤＮＳ部１４０は、端末からＷｅｂ  Ｐｒｏｘｙ１２０の名前解決の問い合わせを受けると、問合せ元端末のＩＰアドレスとともに、最適なＭＩＧＷセルのＩＰアドレスを分散制御部１３０に問い合わせる。つまり、内部ＤＮＳ部１４０は、問い合わせにより取得した端末のＩＰアドレスを分散制御部１３０に通知することで、当該端末が使用するセル（ゲートウェイ装置と称してもよい）を分散制御部１３０に問い合わせる。内部ＤＮＳ部１４０は、分散制御部１３０から応答のあったＩＰアドレスを、ＤＮＳ問合せの応答として、端末へ返す。
【００４４】
図５は、分散制御部１３０が、その記憶手段に保持する設定情報（の一部）であるテーブルの例を示す図である。図５の例において、当該テーブルは、端末のＩＰアドレス毎の、各セルの接続優先度からなる。優先度は、値が小さいほど優先度が高いものとする。例えば、ＩＰ−Ａの端末は、セル２に最も優先的に接続させる。なお、分散制御部１３０は、その記憶手段において、各セルのＩＰアドレスも保持している。
【００４５】
また、分散制御部１３０は、設定情報として、図５に示すようなテーブルの他に、メトリック毎の優先度、及び、端末の接続先判断においてメトリックとテーブルのどちらを優先させるかを示す優先度を保持してもよい。
【００４６】
＜処理シーケンス＞
図６を参照して、例として、端末ａがＷｅｂサーバ４００にアクセスする際に、最適なセルのＩＰアドレスが端末ａに通知されるまでの処理シーケンスを説明する。
【００４７】
Ｓ１０１において、端末ａは、Ｗｅｂ  ｐｒｏｘｙの名前解決の問い合わせを内部ＤＮＳ部１４０に送信する。なお、端末ａから内部ＤＮＳ部にアクセスする段階の通信については、端末ａのＩＰアドレスに基づいて、地理的に最も近いセルの内部ＤＮＳ部にアクセスがルーティングされるようになっていてもよいし、端末ａに、通信先とする内部ＤＮＳ部のＩＰアドレスが予め設定されることとしてもよい。
【００４８】
Ｓ１０２において、内部ＤＮＳ部１４０は、問い合わせ元の端末ａのＩＰアドレスとともに、最適なセルのＩＰアドレス問い合わせを分散制御部１３０に送信する。なお、ＩＰアドレス問い合わせのメッセージの中に問い合わせ元の端末ａのＩＰアドレスが含まれることとしてもよいし、問い合わせ元の端末ａのＩＰアドレスを分散制御部１３０に送信することが、ＩＰアドレス問い合わせを行っていることを意味することとしてもよい。
【００４９】
前述したように、分散制御部１３０は、分散型IGWの全てのセルのメトリック値を収集し、保持している。
【００５０】
Ｓ１０３において、分散制御部１３０は、問い合わせ元の端末ａのＩＰアドレス、設定情報、及びメトリック情報に基づいて、端末ａにアクセスさせる最適なセルを決定する。
【００５１】
具体的には、例えば、設定情報により、図５のようなテーブルの使用を最優先にするとの設定がなされている場合、テーブルにおいて、最優先で接続することが示されているセルのメトリック値（例：Ｗｅｂ  ｐｒｏｘｙの負荷とＵＴＭの負荷のそれぞれ）が、ある閾値と比べて悪くない限り、テーブルでの設定に従って最適なセルを決定する。もしも、最優先で接続することが示されているセルのメトリック値が、閾値よりも悪い場合には、テーブルにおける次の優先度のセルのメトリック値を判断し、それが閾値よりも悪くなければ、そのセルを最適なセルとして決定する。
【００５２】
また、例えば、設定情報により、図５のようなテーブルの設定よりもメトリック値を優先する設定がなされていて、最優先のメトリック値がＷｅｂ  ｐｒｏｘｙの負荷であるとすると、例えば、分散制御部１３０は、Ｗｅｂ  ｐｒｏｘｙの負荷が所定閾値以下であるセルを抽出し、そのセルが１つであればそのセルを最適なセルとして決定する。Ｗｅｂ  ｐｒｏｘｙの負荷が所定閾値以下であるセルが複数であれば、テーブルを参照し、複数の中で最も優先度の高いセルを最適なセルとして決定する。
【００５３】
Ｓ１０４において、分散制御部１３０は、Ｓ１０３で決定したセルのＩＰアドレス（具体的には、例えば、Ｗｅｂ  ｐｒｏｘｙのＩＰアドレス）を内部ＤＮＳ部１４０に通知する。Ｓ１０５において、内部ＤＮＳ部１４０は、名前解決問い合わせの応答として、分散制御部１３０から受け取ったＩＰアドレスを端末ａに返す。その後、端末ａは、そのＩＰアドレスを宛先としてＷｅｂアクセスを行う。
【００５４】
なお、本実施の形態では、分散制御部１３０は、名前解決問い合わせの送信元のＩＰアドレスを端末のＩＰアドレスとして用いることで最適なセルの選択を行っているが、これは一例である。名前解決問い合わせ以外の手段で、端末のＩＰアドレスを取得し、最適なセルの選択を行うこととしてもよい。
【００５５】
（ＭＩＧＷの容量の増減方法）
ＭＩＧＷは仮想基盤上に構築される分散型ＩＧＷであるため、セル単体の性能（仮想基盤で利用するリソース量や、ＶＮＦライセンスの容量）を増やすのではなく、セルを追加することで、ＭＩＧＷ全体として処理できるトラフィック容量を増やすことができる。
【００５６】
逆にセルの処理性能に余裕がある場合には、セルの一部を廃止し、残りのセルに廃止したセルの処理を分散させることで、ＭＩＧＷ全体としての容量を減らすことができる。
【００５７】
これら容量の増減は、仮想化基盤やＮＦＶを利用することで、機器設置や配線の作業が不要であり、ソフトウェア制御で容易に実現できる。ＭＩＧＷの利用ユーザは、セル追加によってＭＩＧＷ全体の容量を段階的に増やすことができるため、システム導入時に大きな初期投資することなく、最適なコストでＩＧＷを導入することができる。
【００５８】
（ハードウェア構成例）
本実施の形態において説明したＭＩＧＷにおけるセル、あるいは、セルを構成する複数の機能部の一つ一つ、あるいは、セルを構成する全部の機能部のうちの複数の機能部のまとまりは、上述したように、仮想化基盤上に構築されるものであるが、その実体は、コンピュータとプログラムである。なお、「セル、あるいは、セルを構成する複数の機能部の一つ一つ、あるいは、セルを構成する全部の機能部のうちの複数の機能部のまとまり」を総称して「ゲートウェイ装置」と呼んでもよい。当該ゲートウェイ装置は、仮想化基盤上に構築されるものに限定されるわけではなく、物理マシン（つまりコンピュータ）とプログラムで実現してもよい。
【００５９】
すなわち、ゲートウェイ装置は、コンピュータに、本実施の形態で説明する処理内容を記述したプログラムを実行させることにより実現可能である。
【００６０】
当該ゲートウェイ装置は、コンピュータに内蔵されるＣＰＵやメモリ等のハードウェア資源を用いて、当該ゲートウェイ装置で実施される処理に対応するプログラムを実行することによって実現することが可能である。上記プログラムは、コンピュータが読み取り可能な記録媒体（可搬メモリ等）に記録して、保存したり、配布したりすることが可能である。また、上記プログラムをインターネットや電子メール等、ネットワークを通して提供することも可能である。
【００６１】
図７は、本実施の形態における上記コンピュータのハードウェア構成例を示す図である。図７のコンピュータは、それぞれバスＢで相互に接続されているドライブ装置１０００、補助記憶装置１００２、メモリ装置１００３、ＣＰＵ１００４、インタフェース装置１００５、表示装置１００６、及び入力装置１００７等を有する。
【００６２】
当該コンピュータでの処理を実現するプログラムは、例えば、ＣＤ−ＲＯＭ又はメモリカード等の記録媒体１００１によって提供される。プログラムを記憶した記録媒体１００１がドライブ装置１０００にセットされると、プログラムが記録媒体１００１からドライブ装置１０００を介して補助記憶装置１００２にインストールされる。但し、プログラムのインストールは必ずしも記録媒体１００１より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置１００２は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
【００６３】
メモリ装置１００３は、プログラムの起動指示があった場合に、補助記憶装置１００２からプログラムを読み出して格納する。ＣＰＵ１００４は、メモリ装置１００３に格納されたプログラムに従って、当該ゲートウェイ装置に係る機能を実現する。インタフェース装置１００５は、ネットワークに接続するためのインタフェースとして用いられる。表示装置１００６はプログラムによるＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）等を表示する。入力装置１００７はキーボード及びマウス、ボタン、又はタッチパネル等で構成され、様々な操作指示を入力させるために用いられる。
【００６４】
（実施の形態のまとめ）
以上説明したように、本明細書には、少なくとも、下記の各項に記載したゲートウェイ装置、ネットワークシステム、制御方法、及びプログラムが開示されている。
（第１項）
端末が接続される第１のネットワークと、当該端末のアクセス先となるサーバが接続される第２のネットワークとの間に備えらえる複数のゲートウェイ装置を有するネットワークシステムにおいて、当該複数のゲートウェイ装置のうちのいずれかのゲートウェイ装置として用いられるゲートウェイ装置であって、
前記サーバへのアクセスを、前記端末の代理として実行するプロキシ部と、
前記ゲートウェイ装置の状態を示すメトリック値を取得するメトリック収集部と、
前記端末のＩＰアドレスと、設定情報と、前記複数のゲートウェイ装置から収集されたメトリック値とに基づいて、前記複数のゲートウェイ装置の中から前記端末が使用するゲートウェイ装置を決定する分散制御部と
を備えるゲートウェイ装置。
（第２項）
前記端末から名前解決の問い合わせを受信し、当該問い合わせに基づき取得する前記端末のＩＰアドレスを前記分散制御部に通知することで、前記端末が使用するゲートウェイ装置を前記分散制御部に問い合わせる内部ＤＮＳ部
を更に備える第１項に記載のゲートウェイ装置。
（第３項）
前記設定情報は、端末のＩＰアドレス毎に、優先的に接続するゲートウェイ装置の情報を含む
第１項又は第２項に記載のゲートウェイ装置。
（第４項）
前記第１のネットワークはプライベートネットワークであり、前記第２のネットワークはインターネットである
第１項ないし第３項のうちいずれか１項に記載のゲートウェイ装置。
（第５項）
端末が接続される第１のネットワークと、当該端末のアクセス先となるサーバが接続される第２のネットワークとの間に備えらえる複数のゲートウェイ装置を有するネットワークシステムであって、当該複数のゲートウェイ装置のそれぞれが第１項ないし第４項のうちいずれか１項に記載のゲートウェイ装置である
ネットワークシステム。
（第６項）
端末が接続される第１のネットワークと、当該端末のアクセス先となるサーバが接続される第２のネットワークとの間に備えらえる複数のゲートウェイ装置を有するネットワークシステムにおいて、当該複数のゲートウェイ装置のうちのいずれかのゲートウェイ装置が実行する制御方法であって、
前記ゲートウェイ装置は、前記サーバへのアクセスを、前記端末の代理として実行するプロキシ部を備え、
前記ゲートウェイ装置の状態を示すメトリック値を取得するメトリック収集ステップと、
前記端末のＩＰアドレスと、設定情報と、前記複数のゲートウェイ装置から収集されたメトリック値とに基づいて、前記複数のゲートウェイ装置の中から前記端末が使用するゲートウェイ装置を決定する分散制御ステップと
を備える制御方法。
（第７項）
コンピュータを、第１項ないし第４項のうちいずれか１項に記載のゲートウェイ装置における各部として機能させるためのプログラム。
【００６５】
以上、本実施の形態について説明したが、本発明はかかる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【００６６】
１０、１００  ＩＧＷ
１１、１１０  Ｗｅｂ  ｐｒｏｘｙ
１２、１２０  ＵＴＭ
２０、２００  プライベートネットワーク
３０、３００  インターネット
４０、４００  Ｗｅｂサーバ
１４０  内部ＤＮＳ部
１３０  分散制御部
１５０  メトリック収集部
１０００  ドライブ装置
１００２  補助記憶装置
１００３  メモリ装置
１００４  ＣＰＵ
１００５  インタフェース装置
１００６  表示装置
１００７  入力装置
【図１】
2020058011.tif 000003
【図２】
2020058011.tif 000004
【図３】
2020058011.tif 000005
【図４】
2020058011.tif 000006
【図５】
2020058011.tif 000007
【図６】
2020058011.tif 000008
【図７】
2020058011.tif 000009