(57)【要約】【課題】ネットワークを介して通信するための改良されたソリューションを提供すること。【解決手段】具体的には、サーバ上で規則セットが定義され、クライアントに提供される。クライアント上の規則セットは、サーバ上の規則セットと定期的に同期することができる。クライアントは規則セットを使用して、メッセージをサーバに送信する前に分類する。サーバは、特定のメッセージ分類を有するメッセージについて別々に監視し、それに応じてメッセージを処理することができる。結果としてメッセージは、サーバ上でメッセージの分類を変更するための柔軟性を維持しながら、クライアント上で分類される。【選択図】  図１
2007515699.tif 000002
【特許請求の範囲】
【請求項１】
クライアント上でメッセージを分類するための規則セットを取得するステップと、
サーバに送信されることになるメッセージを前記クライアント上に提供するステップと、
前記クライアント上のメッセージを前記規則セットに基づいて分類するステップと、
前記メッセージの分類に基づいて前記メッセージを前記サーバに送信するステップと、
を有する、ネットワークを介して通信する方法。
【請求項２】
前記提供するステップが、前記メッセージを生成するステップを有する、請求項１に記載の方法。
【請求項３】
前記サーバに、更新済みの規則セットを定期的に要求するステップをさらに有する、請求項１または２に記載の方法。
【請求項４】
前記分類するステップが、前記メッセージの属性を前記規則セットのうちの少なくとも１つに一致させるステップを有する、前記請求項のいずれかに記載の方法。
【請求項５】
前記送信するステップに先立って、前記分類に基づいて前記メッセージに関するポートを調整するステップをさらに有する、前記請求項のいずれかに記載の方法。
【請求項６】
前記メッセージについて前記サーバとの接続をオープンするステップをさらに有する、前記請求項のいずれかに記載の方法。
【請求項７】
前記サーバから応答メッセージを受信するステップをさらに有する、前記請求項のいずれかに記載の方法。
【請求項８】
前記分類されたメッセージおよび前記応答メッセージが第１のポートを介して送られ、前記第１のポートがデフォルト・ポートではない、請求項７に記載の方法。
【請求項９】
メッセージについて前記サーバ上の複数のポートを別々に監視するステップをさらに有する、前記請求項のいずれかに記載の方法。
【請求項１０】
メッセージを分類するための規則セットを作成するステップと、
前記規則セットをクライアントに提供するステップと、
前記規則セットに基づいて複数のメッセージ分類のうちの１つを有する分類済みメッセージについてサーバ上で別々に監視するステップと、
を有する、ネットワークを介して通信する方法。
【請求項１１】
前記クライアントから、固有のポートを介して分類済みメッセージを受信するステップをさらに有する、請求項１０に記載の方法。
【請求項１２】
前記分類済みメッセージを処理するステップと、
前記クライアントに応答メッセージを送信するステップと、
をさらに有する、請求項１１に記載の方法。
【請求項１３】
前記クライアントとの接続をオープンするステップをさらに有する、請求項１０から１２のいずれかに記載の方法。
【請求項１４】
更新済み規則セットについての要求を前記クライアントから受信するステップと、
前記更新済み規則セットを前記クライアントに送信するステップと、
をさらに有する、請求項１０から１３のいずれかに記載の方法。
【請求項１５】
メッセージを分類するための規則セットを管理するための規則システムと、
前記規則セットをクライアントに提供するための更新システムと、
各監視システムが固有のメッセージ分類を有するメッセージについて監視する、複数の監視システムと、
を備える、ネットワークを介して通信するためのシステム。
【請求項１６】
各処理システムが固有のメッセージ分類を有するメッセージを処理する、複数の処理システムをさらに備える、請求項１５に記載のシステム。
【請求項１７】
クライアント上でメッセージを分類するための分類システムをさらに備える、請求項１５または１６に記載のシステム。
【請求項１８】
前記規則セットを前記サーバに定期的に要求するための保守システムをさらに備える、請求項１５から１７のいずれかに記載のシステム。
【請求項１９】
各監視システムが前記サーバの固有のポートを監視する、請求項１５から１８のいずれかに記載のシステム。
【請求項２０】
請求項１に記載のすべてのステップを実行するように適合されたプログラム・コード手段を有するコンピュータ・プログラムであって、前記プログラムがコンピュータ上で実行される、コンピュータ・プログラム。
【請求項２１】
請求項１０に記載のすべてのステップを実行するように適合されたプログラム・コード手段を有するコンピュータ・プログラムであって、前記プログラムがコンピュータ上で実行される、コンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般にネットワークを介して通信することに関し、とりわけ、メッセージを処理のためにサーバへ送信する前にクライアント上のメッセージを分類する方法、システム、およびプログラムに関する。
【背景技術】
【０００２】
サーバは、しばしば、様々なオペレーションを実行している多数のユーザによって共有される。これらのオペレーションに関連して、サーバに送られるメッセージを処理するために、異なる優先順位あるいはグループ化またはその両方を割り当てることが望ましい場合が多い。たとえば、１人または複数のユーザの第１のグループが、即時応答時間であることが予想されるオペレーション（たとえば株価情報の取得）をサーバ上で実行する一方で、１人または複数のユーザの第２のグループは、即時応答時間を必要としない、あるいは大量のサーバ・リソースを使用する、またはその両方の、オペレーションを実行する場合がある。理論上は、サーバはオペレーションに関して異なる優先順位を割り当てることになる。たとえば、即時応答時間を必要としないオペレーションには、これらのオペレーションのパフォーマンスが即時応答時間を必要とするオペレーションを妨げないように、低い優先順位が割り当てられる可能性がある。加えて、あるオペレーションによって多くのサーバ・リソースが消費される場合、サーバがデッドロックしないように、処理中であるこれらのオペレーションの数が制限される可能性がある。
【０００３】
現行のソリューションは、しばしば未分類のメッセージを受け入れ、メッセージを復号し、このメッセージを処理のために分類するよう、サーバに要求する。たとえば、典型的なインプリメンテーションでは、あるスレッドが様々なクライアントからの接続を受け入れ、対応するメッセージをキューに格納することができる。次に、１つまたは複数の追加のスレッドを使用してメッセージを復号および分類し、分類されたメッセージを対応する処理キュー内に配置することができる。その後で、メッセージを処理するための様々なスレッドは、それら独自の処理キューからメッセージを取得して、メッセージを処理することができる。
【０００４】
サーバにメッセージを分類解除（ｄｅｃｌａｓｓｉｆｙ）するように要求することには、いくつかの欠点がある。たとえば、メッセージの分類に関する情報が、メッセージをトランスポートするためのいくつかのプロトコル層（たとえば、ＨｙｐｅｒＴｅｘｔ  Ｔｒａｎｓｐｏｒｔ  Ｐｒｏｔｏｃｏｌ（ＨＴＴＰ）、Ｉｎｔｅｒｎｅｔ  Ｉｎｔｅｒ−Ｏｂｊｅｃｔ  Ｒｅｑｕｅｓｔ  Ｂｒｏｋｅｒ（ＯＲＢ）  Ｐｒｏｔｏｃｏｌ（ＩＩＯＰ）など）に含まれている場合がある。その結果、メッセージを適切に分類するためには、メッセージのほぼ全体を復号しなければならない。しかしながら、結果としてパフォーマンスの低下が生じるため、いくつかのメッセージは分類されない場合がある。これらのメッセージについて、不必要な復号が実行される可能性がある。さらに、メッセージの復号および分類のために、追加のスレッドがインプリメントされることが多い。この特別なスレッドが、サーバ・リソース（たとえば、ＣＰＵタイム・スライス、キャッシュ・メモリ・スペースなど）用の他のスレッドと競合し、これによって、サーバ全体のパフォーマンスが低下する。さらに、メッセージを復号および分類するための追加のキューは、処理のためにキュー内で待機する追加の応答時間をメッセージに加え、接続を受け入れているスレッドと分類を実行しているスレッドとの同期を必要とする。
【０００５】
他のソリューションは、クライアント側のソフトウェア開発者にメッセージの分類方法を理解すること、およびメッセージを適切にルーティングすることを要求する。しかしながらこれらのソリューションは、クライアント・ソフトウェアがいったんデプロイされると、分類が容易に変更できないという結果を生じさせる。さらにこれらのソリューションは、サーバを十分に活用するように調整できない静的デプロイメントにより、サーバが十分に活用されないという状況を生じさせることにもなる。結果として、サーバ上で保守される柔軟性および制御の量が大幅に減少する可能性がある。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
結果として、メッセージを分類するための改良されたソリューションが求められている。
【課題を解決するための手段】
【０００７】
分類規則がクライアントからサーバに提供される、サーバにメッセージを送る前にクライアント側でメッセージを分類するための方法、システム、およびプログラムが提供される。
【０００８】
本発明は、ネットワークを介して通信するための方法、システム、およびプログラムを提供するものである。具体的に言えば、本発明の下で、サーバはメッセージを分類するための１セット（すなわち１つまたは複数）の規則を生成する。この規則セットが、サーバと通信する際に使用するためにクライアントに提供され、クライアントの規則セットはサーバ上の規則セットと定期的に同期させることができる。クライアントがサーバにメッセージを送る前に、クライアントは規則セットを使用してメッセージを分類することができる。たとえば、このメッセージの分類に従って、様々なポートを介してメッセージを送信することができる。この場合、サーバはメッセージ用の複数のポートを別々に監視し、それに応じてメッセージを処理することができる。結果として本発明は、サーバ上で処理するためにメッセージを分類するための改良されたソリューションを提供することになる。
【０００９】
本発明の第１の態様は、ネットワークを介して通信する方法を提供するものであり、この方法は、クライアント上でメッセージを分類するための規則セットを取得すること、サーバに送信されることになるメッセージをクライアント上に提供すること、クライアント上のメッセージを規則セットに基づいて分類すること、および、このメッセージの分類に基づいてメッセージをサーバに送信することを有する。
【００１０】
本発明の第２の態様は、ネットワークを介して通信する方法を提供するものであり、この方法は、メッセージを分類するための規則セットを作成すること、規則セットをクライアントに提供すること、および規則セットに基づいて複数のメッセージ分類のうちの１つを有する分類済みメッセージについてサーバ上で別々に監視することを有する。
【００１１】
本発明の第３の態様は、ネットワークを介して通信するためのシステムを提供するものであり、このシステムは、メッセージを分類するための規則セットを管理するための規則システムと、規則セットをクライアントに提供するための更新システムと、各監視システムが固有のメッセージ分類を有するメッセージについて監視する、複数の監視システムとを備える。
【００１２】
本発明の第４の態様は、ネットワークを介して通信するために書き込み可能媒体上に格納されたプログラムを提供するものであり、このプログラムは実行された場合、メッセージを分類するための規則セットを管理するためのプログラム・コードと、規則セットをクライアントに提供するためのプログラム・コードと、分類済みメッセージについてサーバ上の複数のポートを別々に監視するためのプログラム・コードとを有する。
【００１３】
本発明のこれらおよび他の特徴は、添付の図面に関して記載された本発明の様々な態様についての以下の詳細な説明から、さらに容易に理解されるであろう。
【００１４】
図面は、本発明の典型的な態様のみを示すことを意図しているため、本発明の範囲を限定するものとみなすべきではない。諸図面において、図面間で同じ番号は同じ要素を表す。
【発明を実施するための最良の形態】
【００１５】
前述のように、本発明は、ネットワークを介して通信するための方法、システム、およびプログラムを提供する。具体的に言えば、本発明の下で、サーバはメッセージを分類するための１セット（すなわち１つまたは複数）の規則を生成する。この規則セットがサーバと通信する際に使用するためにクライアントに提供され、クライアントの規則セットはサーバ上の規則セットと定期的に同期させることができる。クライアントがサーバにメッセージを送る前に、クライアントは規則セットを使用してメッセージを分類することができる。たとえば、このメッセージの分類に従って、様々なポートを介してメッセージを送信することができる。この場合、サーバはメッセージ用の複数のポートを別々に監視し、それに応じてメッセージを処理することができる。結果として本発明は、サーバ上で処理するためにメッセージを分類するための改良されたソリューションを提供することになる。
【００１６】
次に図面を見ると、図１には、ネットワーク１３を介して通信するための例示的なシステム１０が示される。特に、サーバ１２およびクライアント２６は、それぞれ通信システム２８Ａ〜Ｂを使用してネットワーク１３を介して通信する。この点で、ネットワーク１３は任意のタイプの通信リンクを備えることができる。たとえばネットワーク１３は、無線あるいは無線伝送方法またはその両方の任意の組み合わせを利用することが可能な、クライアント・サーバ（またはサーバ・サーバ）環境におけるアドレス可能な接続を備えることができる。この場合、サーバ１２およびクライアント２６は、トークン・リング、イーサネット、ＷｉＦｉ、または他の従来の通信規格などの、従来のネットワーク接続を利用することができる。さらにネットワーク１３は、インターネット、ワイド・エリア・ネットワーク（ＷＡＮ）、ローカル・エリア・ネットワーク（ＬＡＮ）、仮想プライベート・ネットワーク（ＶＰＮ）などを含む、任意のタイプのネットワークを有することができる。クライアント２６がインターネットを介してサーバ１２と通信する場合、従来のＴＣＰ／ＩＰソケット・ベース・プロトコルによって接続を提供することが可能であり、クライアント２６はインターネット・サービス・プロバイダを利用してサーバ１２への接続を確立することができる。
【００１７】
図に示されるように、サーバ１２は一般に、中央処理ユニット（ＣＰＵ）１４、メモリ１６、入出力（Ｉ／Ｏ）インターフェース１８、バス２０、外部Ｉ／Ｏデバイス／リソース２２、およびストレージ・ユニット２４を含む。ＣＰＵ  １４は、単一の処理ユニットを備えるか、あるいは、たとえばクライアントおよびサーバ上などの１つまたは複数の場所で１つまたは複数の処理ユニットにまたがって分散することができる。メモリ１６は、磁気媒体、光媒体、ランダム・アクセス・メモリ（ＲＡＭ）、読み取り専用メモリ（ＲＯＭ）、データ・キャッシュ、データ・オブジェクトなどの、任意の既知のタイプのデータ・ストレージあるいは伝送媒体またはその両方を備えることができる。ストレージ・ユニット２４は、以下で説明するように、本発明を実施するのに必要な情報用のストレージを提供するための、任意のタイプのデータ・ストレージを備えることができる。したがって、ストレージ・ユニット２４は、磁気ディスク・ドライブまたは光ディスク・ドライブなどの１つまたは複数のストレージ・デバイスを含むことができる。さらに、ＣＰＵ  １４と同様に、メモリ１６あるいはストレージ・ユニット２４またはその両方が、１つまたは複数のタイプのデータ・ストレージを有し、単一の物理的位置に常駐するか、あるいは様々な形で複数の物理システムにまたがって分散することができる。さらに、メモリ１６あるいはストレージ・ユニット２４またはその両方は、たとえばＬＡＮ、ＷＡＮ、またはストレージ・エリア・ネットワーク（ＳＡＮ）（図示せず）などにまたがって分散するデータを含むこともできる。
【００１８】
Ｉ／Ｏインターフェース１８は、外部ソースとの間で情報を交換するための任意のシステムを備えることができる。Ｉ／Ｏデバイス２２は、スピーカ、ＣＲＴ、ＬＥＤスクリーン、ハンドヘルド・デバイス、キーボード、マウス、音声認識システム、音声出力システム、プリンタ、モニタ／ディスプレイ、ファクシミリ、ページャなどを含む、任意の既知のタイプの外部デバイスを備えることができる。バス２０は、サーバ１２内のそれぞれのコンポーネント間に通信リンクを提供し、同様に、電気、光、無線などを含む、任意の既知のタイプの伝送リンクを備えることができる。加えて、図には示されていないが、キャッシュ・メモリ、通信システム、システム・ソフトウェアなどの追加のコンポーネントを、サーバ１２に組み込むこともできる。
【００１９】
さらにサーバ１２は、１つまたは複数の他のコンピューティング・デバイス（たとえば、クライアント２６）との通信が可能な、任意のタイプのコンピューティング・デバイスを備えることが理解されよう。同様に、クライアント２６は、サーバ、デスクトップ・コンピュータ、ラップトップ、ハンドヘルド・デバイス、携帯電話、ページャ、携帯情報端末などの、任意のタイプのコンピューティング・デバイスを備えることが可能である。この点で、通常、クライアント２６は、サーバ１２内に示されたものと同じ要素（たとえば、ＣＰＵ、メモリ、Ｉ／Ｏインターフェースなど）を含む。簡潔にするために、これらについては別々に図示および説明していない。しかしながら、クライアント２６がハンドヘルド・デバイスなどである場合、クライアント２６には、サーバ１２に示されるような外部Ｉ／Ｏデバイス２２ではなく、ディスプレイが含まれる場合があることを理解されよう。
【００２０】
ネットワーク１３を介してサーバ１２とクライアント２６との間で通信するための通信システム２８Ａ〜Ｂが、メモリ１６内およびクライアント２６上に格納されるように図示されている。さらに、複数の処理システム３６がサーバ１２のメモリ１６内に図示され、複数のプログラム４２がクライアント２６上に図示されている。一般にプログラム４２は、処理システム３６によって処理するためにサーバ１２に送られることになるメッセージを生成する。メッセージの処理が完了すると、処理システム３６は応答メッセージをプログラム４２に送信することができる。
【００２１】
サーバとクライアントの間の通信をインプリメントするために、サーバ１２上の通信システム２８Ａは、規則システム３０、更新システム３２、および１セット（１つまたは複数）の監視システム３４を含むように図示され、通信システム２８Ｂは、分類システム３８および保守システム４０を含むように図示される。一般に、各監視システム３２は固有のメッセージ分類のメッセージを監視し、メッセージを受信すればそれを対応する処理システム３６に転送する。規則システム３０を使用して、分類済みメッセージをクライアント２６からサーバ１２に送るための規則セットを管理することが可能であり、更新システム３２は、クライアント２６上で使用するために規則セットを保守システム４０に提供することができる。クライアント２６からサーバ１２にメッセージが送信された場合、分類システム３８はこの規則セットを参照して、メッセージをサーバ１２に送信する前にどのように分類するかを決定することができる。
【００２２】
図２を見ると、様々なシステム間の例示的なデータ・フローが示されている。図に示されるように、規則セット４４Ａ〜Ｂは、それぞれサーバ１２およびクライアント２６上（たとえば、ストレージ・ユニット２４（図１）上）に格納される。各規則セット４４Ａ〜Ｂは、メッセージを分類するための１つまたは複数の規則を含み、各規則は、メッセージの１つまたは複数の属性に基づいて１つまたは複数のメッセージの分類方法を指定する。したがって、クライアント２６がサーバ１２に送信されるメッセージを分類するためには、規則セット４４Ｂが使用される。メッセージは、たとえば、メッセージを送信中のプログラム４２の１つまたは複数の属性、メッセージのコンテンツ、メッセージの送信元であるクライアント２６、メッセージを処理中の処理システム３６などを含む、メッセージの任意の属性を使用して分類することができる。たとえば規則は、メッセージ・タイプと、メッセージ・タイプに対応する分類情報とを有することができる。この場合、規則に関するメッセージ・タイプと一致するメッセージ・タイプを有する各メッセージが、対応する分類情報に基づいて分類されることになる。
【００２３】
管理者４８は、規則システム３０を使用して規則セット４４Ａを管理することができる。特に規則システム３０は、管理者４８が規則セット４４Ａ内の１つまたは複数の規則の作成、削除、修正、表示などを実行できるようにする、インターフェースを提供することが可能である。クライアント２６上の規則セット４４Ｂは、特定の時点にサーバ１２から取得された規則セット４４Ａのコピーを有する。たとえば、クライアント２６がまだサーバ１２から規則セット４４Ｂを獲得していない場合、保守システム４０は、更新システム３２から規則セット４４Ａのコピーを取得し、これを規則セット４４Ｂとして格納することができる。
【００２４】
加えて、規則セット４４Ｂを規則セット４４Ａと定期的に同期させることができる。たとえば保守システム４０は、更新済みの規則セット４４Ｂをサーバ１２に定期的に要求することができる。一実施形態では、規則セット４４Ｂは、その後に規則セット４４Ｂを取得すべきである日付あるいは時刻またはその両方を含むことができる。この時刻の後、保守システム４０は、更新済みの規則セット４４Ｂを更新システム３２に要求することができる。別の方法として保守システム４０は、設定された時間間隔後、毎日同時刻などに、更新済みの規則セット４４Ｂを要求することもできる。いずれの場合も、クライアント２６はそのクロックをサーバ１２と定期的に同期させて、規則セット４４Ｂが適切に更新されるように保証することができる。他の代替形態では、更新システム３２は、管理者４８が規則セット４４Ａを修正した後、または管理者４８が更新済みの規則セット４４Ａを送信するよう要求した場合に、規則セット４４Ａに対する１つまたは複数の更新を、規則セット４４Ｂとして定期的に使用するために、クライアント２６にブロードキャストすることができる。いかなる場合も、更新システム３２は、現在の規則セット４４Ａを保守システム４０に提供することができる。別の方法として、更新システム３２は、規則セット４４Ｂが以前に同期された後で規則セット４４Ａに対して実行された修正セットと、その後に更新済みの規則セットを取得するべきである（たとえば、規則セット４４Ａに対して何の修正も実行されなかった場合）新しい日付あるいは時刻またはその両方との、両方あるいはいずれかを、提供することもできる。この点で、規則セット４４Ｂは、現在の規則セット４４Ａを使用して更新中の特定の規則セット４４Ｂを識別するバージョンなどを含むことも可能であり、保守システム４０は、このバージョンを更新システム３２に送信することができる。別の方法として、保守システム４０は、規則セット４４Ｂが以前に取得された日付／時刻を提供することもできる。いずれの場合も、更新システム３２は必要な修正を決定し、それらを保守システム４０に提供することができる。
【００２５】
ユーザ４６がプログラム４２を操作している間、プログラム４２はサーバ１２に送信されることになるメッセージを生成することができる。この場合、プログラム４２は、メッセージを通信システム２８Ｂ（図１）に提供することになる。サーバ１２に送られる前に、分類システム３８は規則セット４４Ｂに基づいて規則を分類することができる。特に、分類システム３８は、メッセージの１つまたは複数の属性を決定し、規則セット４４Ｂ内にその１つまたは複数の属性と一致する規則があるかどうかを判別することができる。規則が存在する場合、分類システム３８は、対応する分類情報に従ってメッセージを分類することができる。規則が存在しない場合、分類システム３８はメッセージを未分類のままにしておくことができる。たとえば分類システム３８は、メッセージを分析してメッセージ・タイプを決定し、その後、決定されたメッセージ・タイプに対応する規則が規則セット４４Ｂ内に存在するかどうかを判別することができる。規則が見つからない場合、規則内の分類情報に従ってメッセージを分類することが可能であり、そうでない場合は、メッセージを未分類のままにしておくことが可能である。いずれの場合も、メッセージはサーバ１２に送られる。
【００２６】
前述のように、規則セット４４Ｂは、その後に更新済みの規則セットを取得するべきである、日付あるいは時刻またはその両方を含むことができる。分類システム３８は、日付あるいは時刻またはその両方にアクセスして、規則セット４４Ｂがメッセージの分類に引き続き使用できるかどうかを判別することもできる。たとえば、規則セット４４Ｂがすでに過ぎた日付／時刻を含む場合、分類システム３８は、サーバ１２上で１つまたは複数の規則がもはや使用されていないというリスクを負うよりも、規則セット４４Ｂの使用を中止することができる。同様に、規則セット４４Ｂが保守システム４０によって更新されている間、分類システム３８が規則セット４４Ｂにアクセスしないようにすることもできる。いずれの場合も、分類システム３８は、任意のメッセージを未分類としてサーバ１２に送信することができる。
【００２７】
クライアント２６によって送信されたメッセージは、監視システム３４の１つによって受信される。各監視システム３４はメッセージを監視し、固有のメッセージ分類を有するメッセージを受信することができる。分類済みのメッセージが監視システム３４によって受信されると、監視システム３４はメッセージの処理のために、このメッセージを対応する処理システム３６に提供することができる。さらにサーバ１２は、未分類のメッセージを受信するための監視システム３４を含むことが可能であり、これが未分類のメッセージを処理するための処理システム３６にメッセージを提供することも可能である。特定の処理システム３６が単一の監視システム３４からのメッセージしか処理できない場合がある一方で、監視システム３４と処理システム３６との間のいかなる関係も可能であることを理解されよう。
【００２８】
監視システム３４あるいは処理システム３６またはその両方は、規則セット４４Ａに基づいて構成することもできる。たとえば、管理者４８が新しいメッセージ分類を含む規則を作成した場合、規則システム３０は、新しいメッセージ分類を有するメッセージを監視するための追加の監視システム３４、およびメッセージを処理するための追加の処理システム３６を開始することができる。この点で、保守システム４０と同様に規則システム３０は、監視システム３４あるいは処理システム３６またはその両方の構成を、規則セット４４Ａと定期的に同期させることができる。たとえば、規則セット４４Ｂが更新されるべきであることを示すと同時に、監視システム３４の構成を同期させることができる。この方法では、サーバ１２上の監視システム３４の構成が、クライアント２６上で使用されている規則セット４４Ｂと一致することが保証される。
【００２９】
図３は、分類システム３８によって分類された後にサーバ１２に送信される、例示的メッセージ５０を示す。この場合、規則セット４４Ｂは複数の規則５４Ａ〜Ｃを含み、各規則５２Ａ〜Ｃは、メッセージの属性に関するメッセージ・タイプ５４と、分類情報に関する対応するポート番号５６とを含む。デフォルト・ポートを介して送信すべきであることを指定するメッセージ５０を、分類システム３８が受信することができる。メッセージ５０を受信すると、分類システム３８はそのメッセージ・タイプを決定することができる。その後、分類システム３８は、規則５２Ａ〜Ｃに関するメッセージ・タイプ５４がメッセージ５０のメッセージ・タイプと一致するかどうかを判別することができる。一致が見つかれば、分類システム３８は、メッセージ５０のポートを一致する規則５２Ａ〜Ｃ内のポート番号５６に変更することができる。たとえばメッセージ５０は、２に等しいメッセージ・タイプを有し、デフォルト・ポートの２８０９を指定するように示されている。このメッセージ・タイプは、規則セット４４Ｂ内の規則５２Ｂに関するメッセージ・タイプ５４に一致する。したがって、メッセージ５０のポートは規則５２Ｂのポート番号、たとえばポート２８０７に設定される。
【００３０】
その後、メッセージ５０はサーバ１２に送信される。クライアント２６がポート番号（たとえばポート２８０７）に関してサーバ１２との関係がない場合、通信システム２８Ａ〜Ｂ（図１）は第１にポート用の接続をオープンすることができる。接続が確立されると、メッセージ５０をサーバ１２に送信することができる。図に示されるように、サーバ１２は複数の監視システム３４Ａ〜Ｄを含むことが可能であり、各監視システム３４Ａ〜Ｄは、たとえば固有のポート番号を介して送信される、固有のメッセージ分類を有するメッセージ５０に関するポートを別々に監視する。さらに、各監視システム３４Ａ〜Ｄは、受信されたメッセージ５０を、特定のメッセージ分類、たとえばメッセージ・タイプを処理するために、ポート番号を介して固有の処理システム３６Ａ〜Ｄに提供する。この方法では、特定のメッセージ分類のメッセージ５０が、特定のメッセージ分類のメッセージを処理する処理システム３６Ａ〜Ｄに効率良く転送される。たとえばメッセージ５０は、監視システム３４Ｂによって監視されているポート２８０７を介して送信されるように示されている。メッセージ５０が監視システム３４Ｂによって受信されると、処理システム３６Ｂに提供され、これがメッセージ・タイプ２を有するメッセージを処理する。処理が完了すると、処理システム３６Ｂは、同じポート、たとえばポート２８０７を使用して、応答メッセージをクライアント２６に返送することができる。
【００３１】
サーバ２１は、デフォルト・ポート（たとえば、ポート２８０９）を監視する、監視システム３４Ｄを含むようにも示されている。監視システム３４Ｄは、デフォルト・ポートで受信したメッセージ５０を、任意のメッセージ分類（たとえば任意のタイプ）でメッセージを処理することが可能な処理システム３６Ｄに転送する。これによって、現在の規則セット４４Ｂあるいは分類システム３８（たとえば、通信システム２８Ｂ（図１）の以前のバージョン）またはその両方を有していないクライアント２６が、メッセージ分類機能を使用せずに、引き続きサーバ１２と通信できるようになる。さらにクライアント２６は、何らかのメッセージ５０に関して分類システム３８を迂回することができる。たとえば、メッセージ５０が一時的な（ｓｈｏｒｔ  ｌｉｖｅｄ）接続（たとえば、単一メッセージのみ）の一部である場合、メッセージ５０は、クライアント２６がサーバ１２との接続をすでにオープンしている可能性のあるデフォルト・ポートを介して、より効率的に送信することができる。分類システム３８を迂回することにより、限られた数のメッセージ５０のみに関して、別のポートで接続をオープン、維持、およびクローズすることによるオーバヘッドが避けられることになる。複数の監視システム３４Ａ〜Ｄについて図示および説明しているが、この別々のシステムを、たとえば各ポートについて固有のスレッドを使用して複数のポートを監視する単一の監視システム３４として解釈できることを理解されよう。
【００３２】
本発明は、ハードウェア、ソフトウェア、またはハードウェアおよびソフトウェアの組み合わせで実現可能であることを理解されよう。任意の種類のコンピュータ／サーバ・システム、または本明細書に記載された方法を実施するように適合された他の装置が好適である。ハードウェアとソフトウェアの典型的な組み合わせは、ロードおよび実行された場合に本明細書に記載されたそれぞれの方法を実行するコンピュータ・プログラムを備えた、汎用コンピュータ・システムとすることができる。別の方法として、本発明の機能タスクのうちの１つまたは複数を実行するための特殊なハードウェアを含む、特定用途向けコンピュータ（たとえば有限状態マシン）を利用することも可能である。本発明は、本明細書に記載された方法のインプリメンテーションを可能にするそれぞれの機能をすべて備え、コンピュータ・システムにロードされた場合にこれらの方法を実行することが可能な、コンピュータ・プログラムに埋め込むことも可能である。本書との関連において、コンピュータ・プログラム、ソフトウェア・プログラム、プログラム、またはソフトウェアとは、直接、あるいは、（ａ）他の言語、コード、または表記法への変換と（ｂ）異なる材料形式での再生とのいずれかまたは両方の後に、情報処理機能を有するシステムに特定の機能を実行させることを意図する、命令セットの任意の言語、コード、または表記法での任意の式を意味するものである。
【００３３】
以上、本発明の様々な態様について、例示および記述の目的で説明してきた。これは、本発明を網羅すること、または開示された精密な形に限定することを意図するものではなく、多くの修正および変形形態が可能であることは明らかである。当業者にとって明らかな可能性のあるこうした修正および変形形態は、添付の特許請求の範囲に定義された本発明の範囲内に含まれることが意図される。
【図面の簡単な説明】
【００３４】
【図１】本発明の一実施形態に従った、ネットワークを介して通信するための例示的システムを示す図である。
【図２】本発明の他の実施形態に従った、システム間のデータ・フローを示す図である。
【図３】本発明の他の実施形態に従った、サーバに送信される例示的メッセージを示す図である。
【図１】
2007515699.tif 000003
【図２】
2007515699.tif 000004
【図３】
2007515699.tif 000005
【国際調査報告】
2007515699.tif 000006
2007515699.tif 000007
2007515699.tif 000008