(57)【要約】【課題】個別ネットワーク内部のサーヒ゛スへのアクセスの際に、ファイアウォール等のセキュリティ機構があっても、それが障害とならないネットワークを提供すること。【解決手段】サーヒ゛ス（５２ａ−５２ｚ）を提供するためのコンヒ゜ュータネットワークまたはシステム（１００）であって、電子メールメッセーシ゛（４０）によって制御され、各々が１以上のサーヒ゛ス（５２）をサホ゜ートするためのコンヒ゜ューティンク゛リソースを有する複数のコンヒ゜ューティク゛エレメント（２０ａ−２０ｚ）と、該コンヒ゜ューティンク゛エレメント（２０ａ−２０ｚ）の各々と通信するように接続され、前記コンヒ゜ューティンク゛エレメント（２０ａ−２０ｚ）に対してフ゜ロキシとして機能するように構成されたリタ゛イレクタ（５１，５１ａ）とを含み、前記サーヒ゛ス（５２ａ−５２ｚ）が前記リタ゛イレクタ（５１ａ，５１ａ）を用いてコンヒ゜ューティンク゛エレメント（２０ａ−２０ｚ）間でルーティンク゛される電子メールメッセーシ゛（４０）によって制御されるように構成されたコンヒ゜ュータネットワークまたはシステム（１００）。【選択図】　図１
2004005398.tif 000002
【特許請求の範囲】
【請求項１】
サービスを提供するためのコンピュータネットワーク（１００）であって、
複数のコンピューティングエレメント（２０ａ−２０ｚ）であって該コンピューティングエレメントの各々が１以上のサービス（５２ａ−５２ｚ）をサポートするためのコンピューティングリソース（９０）を含む複数のコンピューティングエレメントと、
前記コンピューティングエレメント（２０ａ−２０ｚ）の各々と通信するように接続され、前記複数のコンピューティングエレメント（２０ａ−２０ｚ）についての電子メールプロキシとして機能するように構成されたリダイレクタ（５１，５１ａ）と、
から構成され、
前記サービス（５２ａ−５２ｚ）が、前記リダイレクタ（５１，５１ａ）によって前記複数のコンピューティングエレメント（２０ａ−２０ｚ）間でルーティングされる電子メールメッセージ（４０）によって制御される、コンピュータネットワーク。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、コンピュータネットワークの分野に関する。詳しくは、本発明は、サービスを提供するコンピュータネットワーク、及びサービスを提供する方法に関する。
【０００２】
関連出願
本出願は、２００１年１月２４日に出願されたＲａｖｉｋｕｍａｒ　ＰｉｓｕｐａｔｉおよびＪａｍｅｓ　Ｍ．Ｓａｎｇｒｏｎｉｚによる「Ａｃｃｅｓｓｉｎｇ　Ｓｅｒｖｉｃｅｓ　Ａｃｒｏｓｓ　Ｎｅｔｗｏｒｋ　Ｓｅｃｕｒｉｔｙ　Ｍｅｃｈａｎｉｓｍｓ」と題する米国特許出願第０９／７６８，４３２号に関連する。
【０００３】
【従来の技術】
分散コンピューティング環境は、一般に、ネットワークによって相互接続された種々のコンピューティングエレメントを含む。コンピューティングエレメントの例には、コンピュータシステム、サーバシステム等とともに、コンピューティングリソースを有する専用装置が含まれる。分散コンピューティング環境のコンピューティングエレメントは、ローカルエリアネットワークおよび／または組織的なネットワーク等の１以上の個別ネットワークになるように構成することができ、それらはインターネット等のより大型のネットワークによって相互接続される場合がある。
【０００４】
分散コンピューティング環境におけるコンピューティングエレメントのうちの１つまたは複数は、ネットワークを通してアクセス可能なサービスを提供することができる。かかるサービスの例は、ウェブページである。かかるサービスの他の例は、分散アプリケーションプログラムである。
【０００５】
多くの場合、特定のコンピューティングエレメント上のサービスを別のコンピューティングエレメントからネットワークを介して呼び出すことが望ましい。たとえば、診断システムに居る技術者が、リモートサイトまで物理的に移動する必要なくリモートコンピューティングエレメント上で診断プログラムを呼び出すことが可能であることが望ましい。
【０００６】
ネットワークを介してサービスを呼び出す１つの従来の方法は、ハイパーテキスト転送プロトコル（ｈｙｐｅｒ　ｔｅｘｔ　ｔｒａｎｓｆｅｒ　ｐｒｏｔｏｃｏｌ（ＨＴＴＰ））等のウェブプロトコルを使用することである。たとえば、ＨＴＴＰコマンドを用いてリモートコンピューティングエレメント上のＪＡＶＡアプリケーションプログラムを呼び出す場合がある。
【０００７】
【発明が解決しようとする課題】
従来の個別ネットワークは、一般に、個別ネットワーク外部からの無許可のアクセスを防止するセキュリティメカニズムを有する。かかるセキュリティメカニズムの一例はファイアウォールである。通常、コンピューティングエレメントによって送信された適切に構成されていないＨＴＴＰコマンドは、ファイアウォールを通過することができない。不都合なことに、かかるセキュリティメカニズムは、個別ネットワークの外部からのサービスへの正当なアクセスに対しても実質的な障害になる場合がある。
【０００８】
【課題を解決するための手段】
本発明は、例えば、電子メールメッセージによって制御されるサービスを提供するコンピュータネットワークまたはシステムとして実施することができる。本発明の一実施形態は、各々が１つまたは複数のサービスをサポートするコンピューティングリソースを備える複数のコンピューティングエレメントと、コンピューティングエレメントの各々と通信するように接続され、複数のコンピューティングエレメントに対する電子メールプロキシと働くように構成されたリダイレクタとを備え、リダイレクタにより前記複数のコンピューティングエレメントの間でルーティングされる電子メールメッセージによってサービスを制御する、ネットワークである。
【０００９】
また、本発明は、各々が１以上のサービスをサポートするためのコンピューティングリソースを有する複数のコンピューティングエレメントと、コンピューティングエレメントの各々と通信するように接続されたリダイレクタとを備えるコンピュータネットワークによりサービスを提供する方法であって、コンピューティングエレメントのうちの１つにアドレス指定された電子メールメッセージを受信してサービスを制御することと、コンピューティングエレメントに対する電子メールプロキシとして機能するように構成されたリダイレクタにより、該電子メールメッセージのうちのいくらかまたはすべてを対応するコンピューティングエレメントにルーティングすることとを含む方法をさらに含む。
【００１０】
添付の図面は、本発明の好ましい実施形態を図示するものである。図面は、以下の説明とともに本発明の原理を例示するものである。例示する実施形態は、本発明の実施例であって本発明の範囲を制限するものではない。
【００１１】
図面を通して、同じ符号は同じ構成要素を指している。
【００１２】
【発明の実施の形態】
図１は、本発明の教示を組み込んだネットワーク（１０Ｘ）を示している。ネットワーク（１０Ｘ）はファイアウォール（２４）を有する個別ネットワークを含み、ファイアウォール（２４）の中にはコンピューティングエレメント（２０）、メールサーバ（２２）およびウェブクライアント（２６）が存在する。コンピューティングエレメント（２０）は、サービス（５２）をサポートするサービスハンドラ（５０）を実行する。サービス（５２）しか図示していないが、本発明の教示によると、サービスハンドラ（５０）は、コンピューティングエレメント（２０）上の任意数のサービスにアクセスすることが可能である。ネットワーク（１０Ｘ）は、ファイアウォール（２４）を通してサービス（５２）にアクセスするコンピューティングエレメント（３０）を含む。
【００１３】
コンピューティングエレメント（２０）は電子メールアドレスを有し、メールサーバ（２２）は、その電子メールアドレスを用いてコンピューティングエレメント（２０）宛ての電子メールメッセージを識別する。コンピューティングエレメント（３０）は、標準電子メールプロトコルを用いてコンピューティングエレメント（２０）の電子メールアドレスへ電子メールメッセージ（４０）を送信することにより、コンピューティングエレメント（２０）のサービス（５２）にアクセスする。従って、サービス（５２）は、コンピューティングエレメント（２０）へ直接送信されるＨＴＴＰコマンドではなく、電子メールコマンドを用いて呼び出される。
【００１４】
電子メールメッセージ（４０）は、ファイアウォール（２４）を通過して電子メールサーバ（２２）に届く。そして、サービスハンドラ（５０）がメールサーバ（２２）からその電子メールメッセージ（４０）を取得する。次いで、サービスハンドラ（５０）が、電子メールメッセージ（４０）で指定されたアクセス関数またはコマンドを実行する。電子メールメッセージ（４０）で指定されるアクセス関数の一例は、サービス（５２）を呼出すためのコマンドである。アクセス関数の他の例としては、サービス（５２）を呼び出した後のそのサービス（５２）に対するコマンドまたはデータ入力でる。コマンドの一例は、サービス（５２）から戻り電子メールアドレスへログデータを返させるコマンドである。
【００１５】
一実施形態では、電子メールメッセージ（４０）は、サービス（５２）の呼び出しをサービスハンドラ（５０）に命じるためのコマンドを伴うサービス（５２）を含むものである場合がある。その場合、アクセス関数は、そのサービスを抽出して呼び出すためのサービス及びコマンドである。したがって、サービスハンドラ（５０）は、電子メールメッセージ（４０）からサービス（５２）及びそれに関連するパラメータを抽出し、そのサービス（５２）をコンピューティングエレメント（２０）のコンピューティングリソースを用いてロードして実行する。
【００１６】
あるいは、電子メールメッセージ（４０）は、指定された場所からサービスを取得するための指示を与えるものである場合もある。その場合、アクセス関数は、その場所からサービスをダウンロードするコマンドであったり、あるいは、その場所のサービスにアクセスするコマンドであったりする場合がある。言換えれば、電子メールメッセージ（４０）は、サービス（５２）を取得するソースを指定するためのユニバーサルリソースロケータ（Ｕｎｉｖｅｒｓａｌ　Ｒｅｓｏｕｒｃｅ　Ｌｏｃａｔｏｒ（ＵＲＬ））アドレスと共に、その指定したＵＲＬからのサービス（５２）の取得及び呼び出しをサービスハンドラ（５０）に命令するためのコマンドを保持するものである場合がある。その場合、サービスハンドラ（５０）は、電子メールメッセージ（４０）からコマンド及びそれに関連するＵＲＬを抽出し、ＨＴＴＰプロトコルを用いて指定されたＵＲＬからサービス（５２）を取得する。例えば、指定されたＵＲＬはサービス（５２）を格納したウェブサーバ（３２）に対応している場合があり、サービスハンドラ（５０）はＨＴＴＰコマンドを用いてそのウェブサーバ（３２）からサービス（５２）を取得する。そして、サービスハンドラ（５０）は、コンピューティングエレメント（２０）のコンピューティングリソースを用いてそのサービス（５２）をインストールし、実行する。
【００１７】
さらに別の実施形態としては、サービス（５２）がコンピューティングエレメント（２０）上で動作していて、コンピューティングエレメント（３０）が電子メールメッセージ（４０）を用いてコマンドまたは入力データをそのサービス（５２）に送信する場合がある。例えば、サービス（５２）が診断プログラムである場合、電子メールメッセージ（４０）は、診断ロギングの開始、診断ロギングの停止、および、情報ログの返送などのコマンドを含む場合がある。
【００１８】
サービス（５２）がコンピューティングエレメント（２０）上で動作していれば、ウェブクライアント（２６）はＨＴＴＰプロトコルを用いてそのサービス（５２）にアクセスすることができる。サービスハンドラ（５０）は、ウェブクライアント（２６）がサービス（５２）宛てにＨＴＴＰコマンドを用いてコマンド及びその他の情報を送信できるようにするためのウェブページを生成し、そのＨＴＴＰコマンドに応答してそれらのコマンド及び情報をサービス（５２）へ渡す。また、このウェブページにより、ウェブクライアント（２６）はＨＴＴＰコマンドを用いてサービス（５２）から情報を取得することも可能になる。サービスハンドラ（５０）は、このＨＴＴＰコマンドに応答して、サービス（５２）から指定された情報を取得し、情報をウェブクライアント（２６）に渡す。あるいは、ウェブクライアント（２６）は、適当なメールサーバ、たとえばメールサーバ（２２）を利用して、電子メールメッセージを用いてサービス（５２）にアクセスすることもできる。
【００１９】
電子メールメッセージ（４０）には、メッセージ（４０）に対する応答を送信すべき応答電子メールアドレスを含めることがきる。この応答電子メールアドレスは、電子メールメッセージ（４０）の発信者、コンピューティングエレメント（３０）あるいは他の何らかの電子メールアカウントに対応するものでよい。サービスハンドラ（５０）は、応答メッセージをこの応答電子メールアドレスに送信する。応答メッセージには、電子メールメッセージ（４０）に含まれたコマンドの成功／失敗に関するステータス情報、及び／又は、サービス（５２）によって生成された応答情報などが含まれる。
【００２０】
コンピューティングエレメント（２０）は、メールサーバ（２２）から電子メールメッセージ（４０）を取得し、サービス（５２）をロードして実行するためのコンピューティングリソース及び適当なハードウェア／ソフトウェアを有する既知のあるいは今後開発されるであろう任意の装置またはシステムを表している。コンピューティングエレメント（２０）の例には、数例挙げると、コンピュータシステムと、ハンドヘルド装置と、入出力装置と、記憶装置、プリンタ、スキャナ等を含む周辺機器と、測定器および／またはアクチュエータ装置等の専用装置と、無線機器と、アプライアンス等とが含まれる。
【００２１】
コンピューティングエレメント（３０）は、電子メールメッセージ（４０）を送信することができ、任意でコンピューティングエレメント（２０）から応答電子メールメッセージを受信することも可能な、既知のあるいは今後開発されるであろう任意の装置またはシステムを表している。
【００２２】
サービス（５２）は、静的ファイル、アプリケーションプログラム、あるいは他のタイプのプログラムでよい。サービス（５２）は、コンピューティングエレメント（２０）のコンピューティングリソースに適したソフトウェアコードとして実現することができる。たとえば、コンピューティングエレメント（２０）がＪＡＶＡ仮想マシンを含む実施形態の場合、サービス（５２）はＪＡＶＡアプリケーションである場合がある。
【００２３】
コンピューティングエレメント（２０）がコンピューティングリソースを有する装置である例示的な実施形態の場合、サービス（５２）は装置（２０）に対して診断機能を実施するアプリケーションプログラムである場合もある。たとえば、サービス（５２）は、既にコンピューティングエレメント（２０）上に存在するユーティリティを呼び出し、その診断結果情報を応答電子メールメッセージで返送することにより、診断情報を取得することができる。
【００２４】
サービスハンドラ（５０）はウェブサーバの機能を有し、コンピューティングエレメント（２０）について１以上のウェブページを生成することが好ましい。コンピューティングエレメント（２０）のウェブページのうちの１以上は、コンピューティングエレメント（２０）上で動作しているサービス（たとえば、５２）へのリンクを提供する場合がある。サービス（５２）がコンピューティングエレメント（２０）にインストールされた後は、そのコンピューティングエレメント（２０）のウェブページを介してウェブクライアント（たとえば２６）からアクセスすることができる。コンピューティングエレメント（２０）のウェブページにアクセス可能なウェブクライアントには、ネットワーク（１０）内のウェブクライアント、及び／又は、ファイアウォール（２４）を通過するように設定されたネットワーク（１０）外部のウェブクライアントが含まれる。
【００２５】
ファイアウォール（２４）は、個別ネットワーク（１０）ともっと大きなネットワーク（１０Ｘ）の要素との間のブリッジとして機能する適当なハードウェアおよびソフトウェア要素を有する。ファイアウォール（２４）は、ネットワーク（１０）外部からの、適切に設定されたＩＰアドレスを持たないＨＴＴＰコマンドを通過させない。
【００２６】
一実施形態では、電子メールメッセージ（４０）に含まれるサービス（５２）および／またはコマンドは、公開鍵暗号／秘密鍵暗号を用いて認証される。コンピューティングエレメント（３０）は、秘密鍵を用いて電子メールメッセージ（４０）にデジタル署名する。コンピューティングエレメント（２０）は、それに対応する公開鍵を所有していて、電子メールメッセージ（４０）を受信するとその公開鍵を用いて認証を行なう。さらに、電子メールメッセージ（４０）は、コンピューティングエレメント（３０）によって暗号化され、コンピューティングエレメント（２０）によって復号される場合がある。
【００２７】
図２は、メールハンドラ（７０）及びＨＴＴＰサーバ（７２）を含むサービスハンドラ（５０）の例示的実施形態を示している。この実施形態では、装置（２０）は、メールハンドラ（７０）及びＨＴＴＰサーバ（７２）をサポートするＪＡＶＡ仮想マシン（図４の９１）を有している。
【００２８】
メールハンドラ（７０）は、メールサーバ（２２）から電子メールメッセージを取得し、それに応じて適当なアクセス関数を実行する。一実施形態では、メールハンドラ（７０）は、公開鍵を用いて受信した電子メールメッセージの発信者を検査する。
【００２９】
ＨＴＴＰサーバ（７２）によって、ウェブクライアント（２６）等のウェブクライアントはサービス（５２）にアクセスできるようになる。また、個別ネットワーク（１０）外部にある適当に設定されたウェブクライアントも、ＨＴＴＰサーバ（７２）を用いてサービス（５２）にアクセスすることができる。ＨＴＴＰサーバ（７２）はコンピューティングエレメント（２０）に関するウェブページを作成し、これらのウェブページには、サービス（５２）に関するコマンドへのリンクを提供したり、サービス（５２）に関するデータ入力を可能にしたりするウェブページが含まれる。
【００３０】
図３は、一例示的実施形態におけるメールハンドラ（７０）を示している。メールハンドラ（７０）は、メールサーバ（２２）から電子メールメッセージ（４０）を取得するためのメッセージ受信機（８０）を有する。一実施形態では、メッセージ受信機（８０）はポストオフィスプロトコル３（Ｐｏｓｔ　Ｏｆｆｉｃｅ　Ｐｒｏｔｏｃｏｌ−３（ＰＯＰ３））電子メールクライアントである。別の実施形態では、メッセージ受信機（８０）は、簡易メール転送プロトコル（Ｓｉｍｐｌｅ　Ｍａｉｌ　Ｔｒａｎｓｆｅｒ　Ｐｒｏｔｏｃｏｌ（ＳＭＴＰ））メッセージ受信機である。メッセージ受信機（８０）は、電子メールメッセージ（４０）をメッセージ構文解析器（８２）へ渡す。メッセージ構文解析器（８２）は、そのメッセージ（４０）からアクセス関数、コマンドまたはデータ入力を抽出して、適当な動作を行なう。
【００３１】
以下では、電子メールメッセージ（４０）があるサービス（５２）と共にそのサービス（５２）を呼び出すためのコマンドを含む例について説明する。メッセージ構文解析器（８２）は、電子メールメッセージ（４０）からあるサービス（５２）と共にそれを呼び出すためのコマンドを抽出する。呼び出すためのコマンドに応答して、メッセージ構文解析器（８２）は、そのサービス（５２）をサービスランチャ（８４）へ渡す。サービスランチャ（８４）がサービス（５２）を呼び出す。サービス（５２）がＪＡＶＡアプリケーションプログラムである一実施形態の場合、サービスランチャ（８４）は、装置（２０）上にある基礎とするＪＡＶＡ仮想マシンに設けられたユーティリティを用いてそのサービス（５２）を呼び出す。
【００３２】
サービス（５２）が呼び出されると、そのサービス（５２）は、メッセージ送信機（８６）へ渡すべきサービス応答を生成する場合がある。メッセージ送信機（８６）は、応答電子メールメッセージ内のそのサービス応答を、その電子メールメッセージ（４０）の返信先電子メールアドレスへ返信する。サービス応答には、アプリケーション特有の情報が含まれる場合がある。
【００３３】
サービス（５２）が呼び出された後、電子メールメッセージ（４０）がそのサービス（５２）についてのコマンドを含む場合、メッセージ構文解析器（８２）は、電子メールメッセージ（４０）からそのコマンドを抽出し、そのコマンドをサービス（５２）に渡す。メッセージ送信機（８６）により、そのコマンドに対する何らかのサービス応答が電子メールメッセージ（４０）の発信者へ返信される。
【００３４】
図４は、例示的実施形態におけるコンピューティング装置（２０）を示している。コンピューティングエレメント（２０）は、一連のコンピューティングリソース（９０）と共に、その装置特有の一連のハードウェアを含む。たとえば、コンピューティングリソース（９０）には、プロセッサハードウェア、メモリ、記憶装置、通信ハードウェア、オペレーティングシステムおよびドライバを有するソフトウェアサポート等が含まれる。コンピューティングエレメント（２０）がプリンタである場合、装置特有のハードウェアには、印刷用ハードウェア、印刷用メモリ等が含まれる場合がある。サービス（５２）及び一連のサービス（１６０〜１６２）、並びにサービスハンドラ（５０）は、仮想マシン（９１）の上で動作する。仮想マシン（９１）は、ハードウェアにアクセスするためのルーチンと、標準的なメールプロトコルおよびウェブプロトコルを用いてメッセージを送受信するためのルーチンとを含む。仮想マシン（９１）は、たとえばＪＡＶＡ仮想マシンでよい。
【００３５】
一実施形態では、サービス（５２）は、装置（２０）のその装置特有のハードウェアに関するデータをログ記録する診断サービスである。コンピューティングエレメント（３０）は、サービス（５２）にデータのロギングを開始させるコマンドを電子メールメッセージで送信し、その後データのロギングを停止するコマンドを送信し、その後サービス（５２）にログデータを返させるコマンドを送信することができる。あるいは、ウェブクライアント（２６）がサービスハンドラ（５０）によって生成されたウェブページ上に与えられたリンクを用いてこれらと同じコマンドを呼び出すようにすることもできる。
【００３６】
図５は、電子メールで伝達されたアクセス関数に応じてサービスを提供するネットワークの能力を向上させるためのリダイレクタ（５１）を有する本発明の一実施形態によるコンピュータネットワークを示している。図５の実施形態は、図１に示すものと類似しているので、すでに説明した要素の重複する説明については省略する。
【００３７】
図５に示し上述したように、個別ネットワーク（１０ａ）外部のコンピューティングエレメント（３０）は、ネットワーク（１０ａ）のファイアウォール（２４）を通して電子メールメッセージ（４０）を送信することができる。上述のように、このメッセージは例えば、ネットワーク（１０ａ）上のサービスについてのアクセス関数、ネットワーク（１０ａ）上で呼び出されるべきサービス、または、ネットワーク（１０ａ）が利用するためにサービスを取得することができる場所、たとえばＵＲＬを含む場合がある。
【００３８】
この電子メールメッセージ（４０）は、ネットワークのメールサーバ（２２）によって受信される。電子メールメッセージ（４０）は、ネットワーク（１０ａ）上の特定のサービスまたはコンピューティングエレメントにアドレス指定することができる。しかしながら、リダイレクタ（５１）は、かかるアドレスに対してプロキシとして働くように構成される。したがって、ネットワーク（１０ａ）上で利用可能なサービスを呼び出したり、あるいはそれにアクセスすることを意図した電子メールメッセージ（４０）が受信された場合、そのメッセージ（４０）は、ネットワーク（１０ａ）上でサービスを提供する任意のコンピューティングエレメントに対するプロキシとしてのリダイレクタ（５１）に送信される。
【００３９】
この実施形態のネットワーク（１０ａ）は、サービス（たとえば図１の５２）を提供する単一のコンピューティングエレメント（図１の２０）を有するのではなく、複数のコンピューティングエレメント（２０ａ〜２０ｚ）を有し、その各々がサービスハンドラ（５０ａ〜５０ｚ）及び１以上のサービス（５２ａ〜５２ｚ）を提供する。サービス（５２ａ〜５２ｚ）およびサービスハンドラ（５０ｚ〜５０ｚ）は、上記のように実施することができる。
【００４０】
複数のコンピューティングエレメント（２０ａ〜２０ｚ）を設けることにより、コンピューティングエレメント（３０）によっていずれのコンピューティングエレメント（２０ａ〜２０ｚ）がいずれのサービスを提供するかを追跡したり、かかるサービス／コンピューティングエレメントの各々に対する電子メールアドレスを管理したりする必要なく、ネットワーク（１０ａ）が提供するサービスの量を大幅に増大させることができる。むしろ、リダイレクタ（５１）だけは、いずれのコンピューティングエレメント（２０ａ〜２０ｚ）がいずれのサービスを提供するかについて追跡する必要がある。
【００４１】
リダイレクタ（５１）は、特定のサービスに関連する電子メール（４０）を受信すると、その電子メールメッセージ（４０）を、そのサービス（５２ａ〜５２ｚ）を提供する適当なコンピュータエレメント、または、そのサービスをロードするのに利用可能な適当なコンピューティングエレメント（２０ａ〜２０ｚ）に転送する。リダイレクタ（５１）内のメールルータ（５３）は、入ってきた電子メールメッセージ（４０）のアドレス指定または内容を検査して、そのメッセージ（４０）を送信すべき適当なコンピューティングエレメント（２０ａ〜２０ｚ）を判定することができる。
【００４２】
リダイレクタ（５１）がサービス（５２ａ〜５２ｚ）を提供するネットワーク（１０ａ）上のコンピューティングエレメント（２０ａ〜２０ｚ）に対するメールプロキシとして働くことにより、より多くのコンピューティングエレメント（２０ａ〜２０ｚ）および結果としてより多くのサービス（５２ａ〜５２ｚ）をネットワーク（１０ａ）に設けることができ、それらに対して電子メールメッセージ（たとえば４０）を用いてファイアウォール（２４）越しにアクセスすることが可能になる。さらに、コンピューティングエレメント（３０）からコンピューティングエレメント（２０ａ〜２０ｚ）へ機能が移転されるので、クライアントコンピューティングエレメント（３０）は、より多くのアプリケーションを含むことができるようになり、それらのアプリケーションをサポートするためにより多くのネットワークリソースを利用することが可能になる。
【００４３】
図６は、図５等に示すシステムによって実現することができる本発明の原理による方法を示すフロー図である。図６に示すように、本方法は、電子メールメッセージがネットワークメールサーバによって受信され、電子メールによって制御可能なサービスを有するコンピューティングエレメントに対するプロキシとしてのリダイレクタにルーティングされる時に、開始する（ステップ１００）。
【００４４】
リダイレクタはまず、そのメッセージがすでにネットワーク上に存在するサービスに関するものであるか否かを判定する（判断１０１）。代替的にこのメッセージは、サービスを含んだり、あるいはそのサービスを取得できる場所を例えばＵＲＬを指定することによって示す場合がある。メッセージが既にネットワークに存在するサービスに関連するものである場合、そのメッセージはリダイレクタによって、そのサービスをサポートするネットワーク内の適当なコンピューティングエレメントにルーティングされる（ステップ１０２）。そして、そのコンピューティングエレメント上のサービスハンドラは、そのメッセージからアクセス関数、すなわちコマンドまたは入力データを抽出し、たとえばサービスを呼び出したり、それらのコマンドまたはデータをサービスに提出したりすることにより、そのアクセス関数に従う（ステップ１０５）。
【００４５】
メッセージがまだネットワークによってサポートされていないサービスに関連するものである場合、そのメッセージは、利用可能なコンピューティングリソースを有するコンピューティングエレメントにルーティングされる（ステップ１０３）。そして、そのコンピューティングエレメント上のサービスハンドラが、そのメッセージからサービスまたはその新たなサービスを取得するための指示を抽出する。メッセージからサービスが抽出された場合、次いでそのサービスが呼び出される（ステップ（１０４）。サービスを取得するための指示が抽出された場合、例えば特定のＵＲＬからそのサービスがまず取得及びロードされ、その後呼び出される（ステップ１０４）。
【００４６】
指示があれば、応答メールが生成され、アクセス関数を含むオリジナルの電子メールメッセージの送信者に送信される場合もある。
【００４７】
図７は、電子メールで伝達されたアクセス関数に応答してサービスを提供するためのネットワークの能力を向上させるために使用されるサービスハンドラを有するリダイレクタ（５１）を含む本発明の一実施形態であるコンピュータネットワークを示している。図７の実施形態は、図１および図５に示すものと類似しているので、すでに説明した要素の重複する説明は省略する。
【００４８】
図７に示し上述したように、個別ネットワーク（１０ｚ）外部のコンピューティングエレメント（３０）は、ネットワーク（１０ｂ）のファイアウォール（２４）を通して電子メールメッセージ（４０）を送信することができる。上述のように、このメッセージは例えば、ネットワーク（１０ｂ）上のサービスについてのアクセス関数、ネットワーク（１０ｂ）上で呼び出されるべきサービス、または、ネットワーク（１０ｂ）が利用するためにサービスを取得することができる場所、たとえばＵＲＬを含む場合がある。
【００４９】
この電子メールメッセージ（４０）は、ネットワークのメールサーバ（２２）によって受信される。電子メールメッセージ（４０）は、ネットワーク（１０ａ）上の特定のサービスまたはコンピューティングエレメントにアドレス指定することができる。しかしながら、リダイレクタ（５１）は、かかるアドレスに対してプロキシとして働くように構成される。したがって、ネットワーク（１０ｂ）上で利用可能なサービスを呼び出したり、あるいはそれにアクセスすることを意図した電子メールメッセージ（４０）が受信された場合、そのメッセージ（４０）は、ネットワーク（１０ｂ）上でサービス提供するコンピューティングエレメントに対するプロキシとしてのリダイレクタ（５１）に送信される。
【００５０】
この実施形態のネットワーク（１０ｂ）は、サービス（たとえば図１の５２）を提供する単一のコンピューティングエレメント（図１の２０）を有するのではなく、複数のコンピューティングエレメント（２０ａ〜２０ｚ）を有し、その各々が１以上のサービス（５２ａ〜５２ｚ）をサポートしている。複数のコンピューティングエレメント（２０ａ〜２０ｚ）が提供されるため、ネットワーク（１０ｂ）によって提供されるサービスの量を大幅に増大させることができる。
【００５１】
リダイレクタ（５１）は、サービスハンドラ（５０ａ）を含む。このサービスハンドラ（５０ａ）は、好ましくは、上述したサービスハンドラの説明にしたがって実施される。リダイレクタ（５１ａ）のサービスハンドラ（５０ａ）は、あるサービスに関連する電子メール（４０）を受信すると、そのメッセージからアクセス関数を抽出する。言換えれば、サービスハンドラ（５０ａ）は、入ってきた電子メールメッセージから、たとえば既にネットワーク上に存在するサービスを呼び出すためのコマンド、ネットワーク上のサービスに提出されるコマンドまたはデータ、ネットワークにロードするためのサービス、ネットワーク上で使用されるサービスを取得することができる場所（ＵＲＬ）を抽出する。
【００５２】
そして、サービスハンドラ（５０ａ）は、抽出されたアクセス関数に適当に従う。その際、サービスハンドラ（５０ａ）は、コンピューティングエレメント（２０ａ〜２０ｚ）によってサポートされるサービス（５２ａ〜５２ｚ）を呼び出したり、あるいは、実行中のサービス（５２ａ〜５２ｚ）にコマンドまたはデータを提供したりすることができる。サービスハンドラ（５０ａ）は、電子メールメッセージによって受信されたサービス（たとえば５２ａ）を、利用可能なコンピューティングエレメント（たとえば２０ａ）上にロードすることができる。サービスハンドラ（５０ａ）は、指定されたＵＲＬにアクセスすることによって、ネットワーク上で使用されるサービスを取得したり、それにアクセスすることができる。
【００５３】
サービス（５２ａ〜５２ｚ）を提供するネットワーク（１０ｂ）上のコンピューティングエレメント（２０ａ〜２０ｚ）に対するメールプロキシとして働くリダイレクタ（５１）を用いることによって、より多くのコンピューティングエレメント（２０ａ〜２０ｚ）、及び結果としてより多くのサービス（５２ａ〜５２ｚ）をネットワーク（１０ｂ）に含めることができ、ファイアウォール（２４）越しに電子メールメッセージ（例えば４０）を用いてそれらにアクセスすることが可能になる。
【００５４】
サービスハンドラ（５０ａ）はウェブサーバの機能を有し、コンピューティングエレメント（２０ａ〜２０ｚ）について１以上のウェブページを生成することが好ましい。コンピューティングエレメント（２０ａ〜２０ｚ）のウェブページのうちの１以上は、コンピューティングエレメント（２０ａ〜２０ｚ）上で動作しているサービス（５２ａ〜５２ｚ）へのリンクを提供する場合がある。サービス（５２ａ〜５２ｚ）がコンピューティングエレメント（２０ａ〜２０ｚ）にインストールされた後は、それらのコンピューティングエレメント（２０ａ〜２０ｚ）のウェブページを通してウェブクライアント（たとえば、２６、３２）からアクセスすることができる。コンピューティングエレメント（２０ａ〜２０ｚ）のウェブページにアクセス可能なウェブクライアントには、ネットワーク（１０）内のウェブクライアント、及び／又は、ファイアウォール（２４）を通過するように設定されたネットワーク（１０）外部のウェブクライアントが含まれる。
【００５５】
図８は、図７等に示すシステムによって実施可能な本発明の原理による方法を示すフロー図である。図８に示すように、本方法は、電子メールメッセージがネットワークメールサーバによって受信され、電子メールによって制御可能なサービスを有するコンピューティングエレメントに対するプロキシとしてのリダイレクタにルーティングされる時に開始する（ステップ１００）。
【００５６】
電子メールが受信された後、リダイレクタ上のサービスハンドラは、その電子メールメッセージからアクセス関数を抽出する（ステップ１１０）。上述のように、このアクセス関数は、例えばネットワーク上のサービスについてのコマンドまたはデータ入力であり、利用可能なサービスを呼び出すためのコマンドが含まれる場合もある。また、このアクセス関数は、ネットワークのコンピューティングエレメント上にロードされるサービスであったり、あるいは、ネットワークのコンピューティングエレメント上にロードすべきサービスを探してそれをダウンロードする指示である場合もある。
【００５７】
抽出後、リダイレクタは、そのアクセス関数を適当なコンピューティングエレメントに送信する（ステップ１１１）。アクセス関数が既存のサービスに対するコマンドまたはデータ入力である場合、リダイレクタは、その関数をサポートするネットワークコンピューティングエレメントへアクセス関数を送信する。アクセス関数が新たなサービスである場合または新たなサービスをダウンロードする指示である場合、リダイレクタは、利用可能なリソースを有するネットワークコンピューティングエレメントへそのアクセス関数を送信する。
【００５８】
そして、コンピューティングエレメントがそのアクセス関数を受信して実行する（ステップ１１２）。例えば、サービスの呼び出し、動作中のサービスに対するコマンドまたはデータの入力、新たに受信したサービスのロード、ＵＲＬからの指定されたサービスのダウンロード等、アクセス関数を受信し実行する等である。その後、オリジナルの電子メールメッセージの送信者へ応答電子メールが返信される場合もある。
【００５９】
以下においては、本発明の種々の構成要件の組み合わせからなる例示的な実施態様を示す。
１．サービスを提供するためのコンピュータネットワーク（１００）であって、
複数のコンピューティングエレメント（２０ａ−２０ｚ）であって該コンピューティングエレメントの各々が１以上のサービス（５２ａ−５２ｚ）をサポートするためのコンピューティングリソース（９０）を含む複数のコンピューティングエレメントと、
前記コンピューティングエレメント（２０ａ−２０ｚ）の各々と通信するように接続され、前記複数のコンピューティングエレメント（２０ａ−２０ｚ）についての電子メールプロキシとして機能するように構成されたリダイレクタ（５１，５１ａ）と、
から構成され、
前記サービス（５２ａ−５２ｚ）が、前記リダイレクタ（５１，５１ａ）によって前記複数のコンピューティングエレメント（２０ａ−２０ｚ）間でルーティングされる電子メールメッセージ（４０）によって制御される、コンピュータネットワーク。
２．前記複数のコンピューティングエレメント（２０ａ−２０ｚ）の各々がサービスハンドラ（５０ａ−５０ｚ）を含み、
コンピューティングエレメント（２０）上の前記サービスハンドラ（５０）が、入ってきた電子メールメッセージ（４０）からアクセス関数を抽出して、抽出された前記アクセス関数に従うように構成される、上記１のコンピュータネットワーク。
３．前記リダイレクタ（５１）が電子メールメッセージ（４０）をルーティングするためのメールルータ（５３）を含む、上記２のコンピュータネットワーク。
４．前記リダイレクタ（５１ａ）が入ってきた電子メールメッセージ（４０）からアクセス関数を抽出するためのサービスハンドラ（５０ａ）を含み、
前記サービスハンドラ（５０ａ）が、前記サービス（５２ａ−５２ｚ）をサポートする前記複数のコンピューティングエレメント（２０ａ−２０ｚ）へコマンドまたはデータを送信することにより、前記抽出されたアクセス関数に従うように構成される、上記１のコンピュータネットワーク。
５．複数のコンピューティングエレメント（２０ａ−２０ｚ）であって該コンピューティングエレメントの各々が１以上のサービス（５２）をサポートするためのコンピューティングリソース（９０）を有する複数のコンピューティングエレメントと、前記コンピューティングエレメント（２０ａ−２０ｚ）の各々と通信するように接続されたリダイレクタ（５１，５１ａ）とを含むコンピュータネットワーク（１００）にサービス（５２ａ−５２ｚ）を提供する方法であって、
サービス（５２ａ−５２ｚ）を制御するために前記コンピューティングエレメント（２０ａ−２０ｚ）のうちの１つにアドレス指定された電子メールメッセージ（４０）を受信するステップと、
前記電子メールメッセージのうちの少なくともいくらかを、前記コンピューティングエレメント（２０ａ−２０ｚ）に対する電子メールプロキシとして機能するように構成された前記リダイレクタ（５１，５１ａ）を用いて、対応するコンピューティングエレメント（２０ａ−２０ｚ）にルーティングするステップと、
からなる方法。
６．前記リダイレクタ（５１，５１ａ）を用いて電子メールメッセージ（４０）をコンピューティングエレメント（２０ａ−２０ｚ）にルーティングするステップと、
前記コンピューティングエレメント（２０ａ−２０ｚ）上のサービスハンドラ（５０ａ−５０ｚ）を用いて、前記電子メールメッセージ（４０）からアクセス関数を抽出するステップと、
抽出された前記アクセス関数に従うステップと、
をさらに含む、上記５の方法。
７．前記リダイレクタ（５１ａ）上のサービスハンドラ（５０ａ）を用いて、入ってきた電子メールメッセージ（４０）からアクセス関数を抽出するステップと、
前記電子メールメッセージ（４０）中のコマンドまたはデータを前記サービス（５２ａ−５２ｚ）をサポートする前記複数のコンピューティングエレメント（２０ａ−２０ｚ）のうちの１つへ送信することにより、抽出された前記アクセス関数に従うステップと、
をさらに含む、上記５の方法。
８．前記リダイレクタ（５１，５１ａ）と通信するウェブクライアント（２６，３２）を用いて前記サービス（５２ａ−５２ｚ）にアクセスするステップをさらに含む上記５の方法。
９．前記リダイレクタ（５１，５１ａ）を用いて前記ウェブクライアント（２６，３２）のための前記サービス（５２ａ−５２ｚ）に関連するウェブページを生成するステップをさらに含む、上記８の方法。
【００６０】
【発明の効果】
本発明は、上記の構成により、個別ネットワーク内部のサービスへのアクセスの際に、ファイアウォール等のセキュリティ機構があっても、それが障害とならないネットワークを提供することができる。
【図面の簡単な説明】
【図１】本発明の原理を組込んだコンピュータネットワークの一実施形態を示す。
【図２】本発明の原理によるサービスハンドラの一実施形態を示す。
【図３】本発明の原理によるメールハンドラの一実施形態を示す。
【図４】本発明の原理による、たとえば図１のものと同様のネットワークで使用されるコンピューティングエレメントの一実施形態を示す。
【図５】本発明の原理を組込んだコンピュータネットワークの一実施形態を示す図であり、ネットワークが複数のコンピューティングエレメントに対する電子メールプロキシとしてリダイレクタを含み、各コンピューティングエレメントがサービスハンドラ及び１以上のサービスを提供している。
【図６】本発明の原理による、図５等に示すシステムによって実施される方法を示すフロー図である。
【図７】本発明の原理を組込んだコンピュータネットワークの一実施形態を示す図であり、ネットワークが複数のコンピューティングエレメントをサポートするサービスハンドラを有するリダイレクタを含み、各コンピューティングエレメントが１以上のサービスを提供している。
【図８】本発明の原理による、図７等に示すシステムによって実施される方法を示すフロー図である。
【図１】
2004005398.tif 000003
【図２】
2004005398.tif 000004
【図３】
2004005398.tif 000005
【図４】
2004005398.tif 000006
【図５】
2004005398.tif 000007
【図６】
2004005398.tif 000008
【図７】
2004005398.tif 000009
【図８】
2004005398.tif 000010