説明

情報処理装置、情報処理システム、メッセージ処理方法およびメッセージ処理プログラム

【課題】簡易な構成で、他の装置のアプリケーションからのメッセージを処理するとともに、セキュリティの向上を図ることが可能な情報処理装置、情報処理システム、メッセージ処理方法およびメッセージ処理プログラムを提供する。
【解決手段】他の装置における外部アプリケーションからのメッセージを自己の内部アプリケーションによって処理するための情報処理装置201であって、集約ポート番号を含むメッセージを1または複数の外部アプリケーションから受信するためのメッセージ受信部33と、メッセージ受信部33によって受信されたメッセージに対応する内部アプリケーションを判別するための判別部41と、判別部41によって判別された内部アプリケーションへ対応のメッセージを転送するためのメッセージ転送部35とを備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、情報処理システム、メッセージ処理方法およびメッセージ処理プログラムに関し、特に、他の装置のアプリケーションからのメッセージを処理する情報処理装置、情報処理システム、メッセージ処理方法およびメッセージ処理プログラムに関する。
【背景技術】
【0002】
クライアント・サーバーモデルにおいて、TCP/IP(Transmission Control Protocol/Internet Protocol)通信分野等のデータ転送に関する構成の一例が、特表2006−067831号公報(特許文献1)に開示されている。すなわち、ファイアウォールには、通過を許容する1または複数のポートを集約した集約ポートのみが許可設定されている。通信元クライアントは、内部ネットワークに接続する目的の接続要求先と接続する場合、目的の接続要求先が設定された接続要求情報を、集約ポートを宛先として発行する。中継機サーバーでは、接続要求情報取得手段は、ファイアウォールを通過し、集約ポートより入力された接続要求情報を読み出す。中継手段は、接続要求情報に基づいて宛先を目的の接続要求先に変更し、その接続要求情報を目的の接続要求先に送信して接続要求を行なうとともに、目的の接続要求先から取得した接続結果情報を通信元クライアントに送信する。
【0003】
また、特表2000−016201号公報(特許文献2)には、以下のような技術が開示されている。すなわち、複数のクライアントのPCに組込まれたhttp(HyperText Transfer Protocol)によりWebサーバーと連動するアプリケーションプログラムと上記各クライアントPC(Personal Computer)と、インターネットおよび/又はイントラネットを介して接続されhttpの通信プログラムおよびアプリケーションを実行するためのCGI(Common Gateway Interface)インターフェイスを有すると共にWeb型チャットサーバーを有するWebサーバーとからなり、該Web型チャットサーバーがPCのアプリケーションを使って各クライアント同士がインターネットおよび/又はイントラネットを通して、擬似リアルタイムの状態で電子文のやり取りできるように構成されたhttpプロトコル連動のマルチメディアダイレクト通信システムである。
【0004】
また、特開2007−142675号公報(特許文献3)には、以下のような技術が開示されている。すなわち、通信装置は、所定のプロトコルに含まれる第1のプロトコルで送信される第1のメッセージをサーバーに送信したときにネットワーク中継装置がアドレス変換した変換後ポート番号を含むポート番号情報メッセージをサーバーから受信する送受信部と、送信元ポート番号を変換後ポート番号と同一の値に設定した第2のメッセージを作成するUDP(User Datagram Protocol)処理部と、第2のメッセージを所定のプロトコルに含まれない第2のプロトコルでカプセル化した第3のメッセージを作成するESP(Encapsulated Security Payload)処理部と、第3のメッセージを所定のプロトコルに含まれる第3のプロトコルでカプセル化した第4のメッセージを作成するUDP処理部と、第4のメッセージを、ネットワーク中継装置を介してサーバーに送信する送受信部とを備える。
【0005】
また、特開2010−093465号公報(特許文献4)には、以下のような技術が開示されている。すなわち、ヘッダー領域、ペイロード領域およびトレイラー領域で構成されるデータパケットを、データ送信元より経路選択装置を経由してデータ転送先に送信するデータ転送システムにおいて、上記データ送信元は、上記データパケットのトレイラー領域に次のデータパケットのヘッダー情報を付与する次データヘッダー付与部を備え、上記経路選択装置は、上記データ送信元より受信したデータパケットに付与された次データヘッダー情報に基づいて次データパケットの転送先ポートを決定するヘッダー解析部を備える。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特表2006−067831号公報
【特許文献2】特表2000−016201号公報
【特許文献3】特開2007−142675号公報
【特許文献4】特開2010−093465号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
図15は、関連技術の課題1を説明するための図である。
【0008】
図15を参照して、TCP/IP通信を行なうアプリケーションでは、各アプリケーションのポート番号が重複していると通信が成立しない。具体的には、アプリケーション1および2に対応するポート番号が8500で競合していると、サーバー側のアプリケーション2は起動することができない(課題1)。
【0009】
図16は、関連技術の課題2を説明するための図である。
【0010】
図16を参照して、課題1を解決するために、ファイアウォールでは、TCP/IP通信を行なうアプリケーションのサービス数だけポートの穴開け処理すなわちアクセス制限の例外処理を行なう必要がある。具体的には、アプリケーション1に対応するポート番号8500、およびアプリケーション2に対応するポート番号8501の2つのポート番号の穴開け処理を行なう必要がある。しかしながら、このようなポートの穴空け処理は、ファイアウォールのセキュリティを弱める要因となってしまう(課題2)。
【0011】
また、クライアント側に専用モジュールおよび専用サーバーを用意してファイアウォールの穴開け数を集約することは可能であるが、モジュールの設定工数およびサーバーの購入費がかかるという課題があった。
【0012】
そして、特許文献1〜特許文献4には、このような課題を解決するための構成は開示されていない。
【0013】
この発明は、上述の課題を解決するためになされたもので、その目的は、簡易な構成で、他の装置のアプリケーションからのメッセージを処理するとともに、セキュリティの向上を図ることが可能な情報処理装置、情報処理システム、メッセージ処理方法およびメッセージ処理プログラムを提供することである。
【課題を解決するための手段】
【0014】
上記課題を解決するために、この発明のある局面に係わる情報処理装置は、他の装置における外部アプリケーションからのメッセージを自己の内部アプリケーションによって処理するための情報処理装置であって、集約ポート番号を含むメッセージを1または複数の前記外部アプリケーションから受信するためのメッセージ受信部と、前記メッセージ受信部によって受信された前記メッセージに対応する前記内部アプリケーションを判別するための判別部と、前記判別部によって判別された前記内部アプリケーションへ対応の前記メッセージを転送するためのメッセージ転送部とを備える。
【0015】
上記課題を解決するために、この発明のある局面に係わる情報処理システムは、クライアントと、サーバーとを備え、前記クライアントは、実行する各アプリケーションによって生成されるメッセージに集約ポート番号を含めて前記サーバーへ送信し、前記サーバーは、前記集約ポート番号を含むメッセージを1または複数の前記アプリケーションから受信し、受信した前記メッセージに対応する自己のアプリケーションを判別し、判別した前記アプリケーションへ対応の前記メッセージを転送する。
【0016】
上記課題を解決するために、この発明のある局面に係わるメッセージ処理方法は、他の装置における外部アプリケーションからのメッセージを自己の内部アプリケーションによって処理するための情報処理装置におけるメッセージ処理方法であって、集約ポート番号を含むメッセージを1または複数の前記外部アプリケーションから受信するステップと、受信した前記メッセージに対応する前記内部アプリケーションを判別するステップと、判別した前記内部アプリケーションへ対応の前記メッセージを転送するステップとを含む。
【0017】
上記課題を解決するために、この発明のある局面に係わるメッセージ処理プログラムは、他の装置における外部アプリケーションからのメッセージを自己の内部アプリケーションによって処理するための情報処理装置におけるメッセージ処理プログラムであって、コンピュータに、集約ポート番号を含むメッセージを1または複数の前記外部アプリケーションから受信するステップと、受信した前記メッセージに対応する前記内部アプリケーションを判別するステップと、判別した前記内部アプリケーションへ対応の前記メッセージを転送するステップとを実行させる。
【発明の効果】
【0018】
本発明によれば、簡易な構成で、他の装置のアプリケーションからのメッセージを処理するとともに、セキュリティの向上を図ることができる。
【図面の簡単な説明】
【0019】
【図1】本発明の第1の実施の形態に係る情報処理システムの構成を示す図である。
【図2】本発明の第1の実施の形態に係るサーバーの概略構成図である。
【図3】本発明の第1の実施の形態に係る情報処理装置におけるアプリケーション判別データベースの内容の一例を示す図である。
【図4】本発明の第1の実施の形態に係る情報処理装置におけるsrc/dst情報データベースの内容の一例を示す図である。
【図5】本発明の第1の実施の形態に係る情報処理装置がメッセージ処理を行なう際の動作手順を示すフローチャートである。
【図6】本発明の第1の実施の形態に係る情報処理装置がメッセージ処理を行なう際の動作手順を示すフローチャートである。
【図7】本発明の第1の実施の形態に係る情報処理装置がメッセージ処理を行なう際の動作手順を示すフローチャートである。
【図8】本発明の第2の実施の形態に係る情報処理システムの構成を示す図である。
【図9】本発明の第2の実施の形態に係る情報処理装置におけるアプリケーションデータ蓄積データベースの内容の一例を示す図である。
【図10】本発明の第2の実施の形態に係る情報処理装置がメッセージ蓄積処理を行なう際の動作手順を示すフローチャートである。
【図11】本発明の第2の実施の形態に係る情報処理システムの構成を示す図である。
【図12】本発明の第2の実施の形態に係る情報処理装置がメッセージ学習処理を行なう際の動作手順を示すフローチャートである。
【図13】本発明の第2の実施の形態に係る情報処理システムの構成を示す図である。
【図14】本発明の第2の実施の形態に係る情報処理システムの構成を示す図である。
【図15】関連技術の課題1を説明するための図である。
【図16】関連技術の課題2を説明するための図である。
【発明を実施するための形態】
【0020】
以下、本発明の第1の実施の形態について図面を用いて説明する。なお、図中同一または相当部分には同一符号を付してその説明は繰り返さない。
【0021】
<第1の実施の形態>
[構成および基本動作]
図1は、本発明の第1の実施の形態に係る情報処理システムの構成を示す図である。
【0022】
図1を参照して、情報処理システム401は、情報処理装置であるサーバー30およびクライアント10,20を備える。図1では、情報処理システム401におけるクライアントを2つとしているが、情報処理システム401が1つまたは3つ以上のクライアントを備える構成であってもよい。
【0023】
本発明の第1の実施の形態に係る情報処理装置は、典型的には、汎用的なアーキテクチャを有するコンピュータを基本構造としており、予めインストールされたプログラムを実行することで、後述するような各種機能を提供する。一般的に、このようなプログラムは、フレキシブルディスク(Flexible Disk)およびCD−ROM(Compact Disk Read Only Memory)などの記録媒体に格納されて、あるいはネットワークなどを介して流通する。
【0024】
本発明の第1の実施の形態に係るプログラムは、OS等の他のプログラムの一部に組み込まれて提供されるものであってもよい。この場合でも、本発明の第1の実施の形態に係るプログラム自体は、上記のような組み込み先の他のプログラムが有するモジュールを含んでおらず、当該他のプログラムと協働して処理が実行される。すなわち、本発明の第1の実施の形態に係るプログラムとしては、このような他のプログラムに組み込まれた形態であってもよい。
【0025】
なお、代替的に、プログラムの実行により提供される機能の一部もしくは全部を専用のハードウェア回路として実装してもよい。
【0026】
図2は、本発明の第1の実施の形態に係るサーバーの概略構成図である。クライアント10,20の構成は、たとえばサーバー30と同様である。
【0027】
図2を参照して、サーバー30は、演算処理部であるCPU(Central Processing Unit)101と、メインメモリ102と、ハードディスク103と、入力インターフェイス104と、表示コントローラ105と、データリーダ/ライタ106と、通信インターフェイス107とを備える。これらの各部は、バス121を介して、互いにデータ通信可能に接続される。
【0028】
CPU101は、ハードディスク103に格納されたプログラム(コード)をメインメモリ102に展開し、これらを所定順序で実行することにより、各種の演算を実施する。メインメモリ102は、典型的には、DRAM(Dynamic Random Access Memory)などの揮発性の記憶装置であり、ハードディスク103から読み出されたプログラムに加えて、各種の演算処理結果を示すデータなどを保持する。また、ハードディスク103は不揮発性の磁気記憶装置であり、CPU101で実行されるプログラムに加えて、各種設定値などが格納される。このハードディスク103にインストールされるプログラムは、後述するように、記録媒体111に格納された状態で流通する。なお、ハードディスク103に加えて、あるいはハードディスク103に代えて、フラッシュメモリなどの半導体記憶装置を採用してもよい。
【0029】
入力インターフェイス104は、CPU101とキーボード108、マウス109および図示しないタッチパネルなどの入力部との間のデータ伝送を仲介する。すなわち、入力インターフェイス104は、ユーザが入力部を操作することで与えられる操作指令などの外部からの入力を受け付ける。
【0030】
表示コントローラ105は、表示部の典型例であるディスプレイ110と接続され、ディスプレイ110での表示を制御する。すなわち、表示コントローラ105は、CPU101による画像処理の結果などをユーザに対して表示する。ディスプレイ110は、たとえばLCD(Liquid Crystal Display)またはCRT(Cathode Ray Tube)である。
【0031】
データリーダ/ライタ106は、CPU101と記録媒体111の間のデータ伝送を仲介する。すなわち、記録媒体111は、サーバー30で実行されるプログラムなどが格納された状態で流通し、データリーダ/ライタ106は、この記録媒体111からプログラムを読み出す。また、データリーダ/ライタ106は、CPU101の内部指令に応答して、サーバー30における処理結果などを記録媒体111へ書き込む。なお、記録媒体111は、たとえば、CF(Compact Flash)およびSD(Secure Digital)などの汎用的な半導体記憶デバイス、フレキシブルディスク(Flexible Disk)などの磁気記憶媒体、またはCD−ROM(Compact Disk Read Only Memory)などの光学記憶媒体である。
【0032】
通信インターフェイス107は、CPU101と他のパーソナルコンピュータおよびサーバー装置などの間のデータ伝送を仲介する。通信インターフェイス107は、典型的には、イーサネット(登録商標)またはUSB(Universal Serial Bus)の通信機能を有する。なお、記録媒体111に格納されたプログラムをサーバー30にインストールする形態に代えて、通信インターフェイス107を介して配信サーバーなどからダウンロードしたプログラムをサーバー30にインストールしてもよい。
【0033】
また、サーバー30には、必要に応じてプリンタなどの他の出力装置が接続されてもよい。
【0034】
[制御構造]
次に、サーバー30におけるメッセージ処理機能を提供するための制御構造について説明する。
【0035】
図1は、本発明の第1の実施の形態に係る情報処理装置が提供する制御構造も示している。図1に示すサーバー30における各ブロックは、ハードディスク103に格納されたプログラム(コード)などをメインメモリ102に展開して、CPU101に実行させることで提供される。なお、図1に示す制御構造の一部もしくは全部を専用ハードウェアおよび/または配線回路によって実現してもよい。
【0036】
図1を参照して、サーバー30は、その制御構造として、メッセージ送受部33と、メッセージ転送部35と、画面出力部39と、判別部41とを備える。また、サーバー30は、アプリケーション判別データベース(アプリケーション情報記憶部)38と、GUI(Graphical User Interface)40と、src/dst情報データベース(コネクション情報記憶部)42とを備える。判別部41は、データベース(DB)参照部41aと、整合判断部41bと、データベース(DB)書き換え部41cとを含む。アプリケーション判別データベース(DB)38およびsrc/dst情報データベース(DB)42は、図2に示すメインメモリ102またはハードディスク103に保存される。
【0037】
なお、GUI40はサーバー30に実装される構成に限らず、別の装置に実装されてもよい。
【0038】
サーバー30には、アプリケーション31と、アプリケーション32とが実装されている。クライアント10には、アプリケーション11と、アプリケーション12とが実装されている。クライアント20には、アプリケーション21と、アプリケーション22とが実装されている。アプリケーション31、アプリケーション11およびアプリケーション21は、同じ種類のアプリケーションAとして対応しており、アプリケーション32、アプリケーション12およびアプリケーション22は、同じ種類のアプリケーションBとして対応している。
【0039】
また、クライアント上アプリケーション(外部アプリケーション)11,12,21,22の受け付けポートはそれぞれ1111,2222,3333,4444番ポートである。クライアント上アプリケーション11,12,21,22のサーバー30への送信先ポートは8500番ポートであり、サーバー上アプリケーション(内部アプリケーション)31,32の受け付けポートはそれぞれ8501,8502番ポートである。
【0040】
サーバー30は、クライアント10,20におけるクライアント上アプリケーションからのメッセージを自己のサーバー上アプリケーション31,32によって処理する。
【0041】
クライアント10,20は、実行する各アプリケーションによって生成されるメッセージに集約ポート番号を含めてサーバー30へ送信する。
【0042】
サーバー30は、集約ポート番号を含むメッセージを各アプリケーションから受信し、受信したメッセージに対応する自己のアプリケーションを判別し、判別したアプリケーションへ対応のメッセージを転送する。
【0043】
より詳細には、サーバー30において、メッセージ送受部33は、集約ポート番号を含むメッセージを各クライアント上アプリケーションから受信する。
【0044】
判別部41は、メッセージ送受部33によって受信されたメッセージに対応するサーバー上アプリケーションを判別する。
【0045】
メッセージ転送部35は、判別部41によって判別されたサーバー上アプリケーションへ対応のメッセージを転送する。
【0046】
たとえば、判別部41は、メッセージ送受部33によって受信されたメッセージに基づいて、メッセージに対応するサーバー上アプリケーションの個別ポート番号を判別する。
【0047】
メッセージ転送部35は、メッセージ送受部33によって受信されたメッセージの集約ポート番号を、判別部41によって判別された個別ポート番号に置き換えたメッセージを生成して転送する。
【0048】
図3は、本発明の第1の実施の形態に係る情報処理装置におけるアプリケーション判別データベースの内容の一例を示す図である。
【0049】
図3を参照して、アプリケーション判別データベース38は、判別ルール、すなわちサーバー上アプリケーションとメッセージに含まれる所定の文字列との対応関係を示すアプリケーション情報を記憶する。アプリケーション判別DB38は、判別部41における整合判断部41bがメッセージの転送先情報を得るために利用される。
【0050】
判別部41は、メッセージ送受部33によって受信されたメッセージの文字列とアプリケーション情報における所定の文字列とを照合することにより、メッセージに対応するサーバー上アプリケーションを判別する。
【0051】
たとえば、アプリケーション判別DB38には、アプリケーション名、メッセージ方向、サーバー上アプリケーションへの転送先ポート、比較箇所、および比較文字列が格納される。
【0052】
本発明の第1の実施の形態に係る情報処理システムでは、管理者により与えられた判別ルールを用いる。
【0053】
まず、一般にプロトコルの仕様が公開されているため事前に判別ルールを用意しておけるメッセージに対して、テンプレートを作成しておきアプリケーション判別DB38に格納しておく。
【0054】
たとえば、アプリケーションBとして、RFC(Request for Comments)で公開されているHTTP(HyperText Transfer Protocol)のメッセージであって、メッセージ方向がClient→Serverのメッセージは「GET **** HTTP/****」というプロトコルヘッダーを有する。ここで、「****」は固定で無い文字列である。このため、「GET 」という固定文字列を判別ルールとしてテンプレート化しておくことが可能である。
【0055】
また、メッセージ方向がServer→Clientのメッセージは「HTTP/**** 200 OK」というプロトコルヘッダーを有するため、「HTTP/」という固定文字列を判別ルールとしてテンプレート化しておくことが可能である。
【0056】
なお、判別ルール作成のアルゴリズムを追加することにより、これらの他にも判別ルールを用意することが可能である。たとえば、SMTP(Simple Mail Transfer Protocol)については「HELO」といった固定文字列を判別ルールとしてテンプレート化しておくことが可能である。
【0057】
図4は、本発明の第1の実施の形態に係る情報処理装置におけるsrc/dst情報データベースの内容の一例を示す図である。
【0058】
図4を参照して、src/dst情報データベース42は、サーバー上アプリケーション、およびサーバー上アプリケーションとコネクション確立済みのクライアント上アプリケーションを実行するクライアントの識別情報を示すコネクション情報を記憶する。
【0059】
判別部41は、メッセージ送受部33によって受信されたメッセージの送信元の識別情報とコネクション情報における識別情報とを照合することにより、メッセージに対応するサーバー上アプリケーションを判別する。
【0060】
たとえば、src/dst情報DB42には、判別部41におけるDB書き換え部41cによりアプリケーション名、クライアント情報(送信元情報)たとえばIPアドレスおよびクライアント上アプリケーションの受け付けポート、およびサーバー上アプリケーションへの転送先ポート(送信先情報)が格納される。src/dst情報DB42は、一度コネクション確立したクライアント上アプリケーションからのメッセージをアプリケーション判別DB38における判別ルールと照合せずにサーバー上アプリケーションに転送するために利用される。
【0061】
[動作]
次に、本発明の第1の実施の形態に係る情報処理装置の動作について図面を用いて説明する。本発明の第1の実施の形態では、サーバー30を動作させることによって、本発明の第1の実施の形態に係るメッセージ処理方法が実施される。よって、本発明の第1の実施の形態に係るメッセージ処理方法の説明は、以下のサーバー30の動作説明に代える。なお、以下の説明においては、適宜図1を参照する。
【0062】
図5および図6は、本発明の第1の実施の形態に係る情報処理装置がメッセージ処理を行なう際の動作手順を示すフローチャートである。
【0063】
図5および図6を参照して、まず、クライアント10におけるアプリケーション11から送信されたメッセージ(ステップS303)は、サーバー30におけるメッセージ送受部33で受信され、整合判断部41bに送られる(ステップS215)。
【0064】
次に、整合判断部41bは、DB参照部41a経由でアプリケーション判別DB38を参照する(ステップS216)。
【0065】
次に、整合判断部41bは、DB参照部41a経由でアプリケーション判別DB38に格納されている判別ルールを呼び出し、当該メッセージに該当する判別ルールがあるか照らし合わせ(ステップS217)、該当判別ルールの有無により場合分けされた処理を行なう。
【0066】
すなわち、整合判断部41bは、該当判別ルールが存在しない場合には(ステップS218でNO)、当該メッセージを廃棄する(ステップS219)。
【0067】
次に、整合判断部41bは、画面出力部39からGUI40に結果を表示させて処理を終了する。GUI40は、エラー情報として「未登録のメッセージが廃棄されました。」を表示する(ステップS220,S221)。
【0068】
一方、整合判断部41bは、該当判別ルールが存在する場合には(ステップS218でYES)、DB書き換え部41cを経由してsrc/dst情報DB42に当該メッセージの送信元情報および送信先情報が格納されているかを確認する(ステップS222)。
【0069】
整合判断部41bは、src/dst情報DB42に該当情報が格納されていない場合には、DB書き換え部41cにて該当情報をsrc/dst情報DB42に格納する(ステップS223)。すなわち、整合判断部41bは、メッセージ送受部33によって受信されたメッセージに対応するサーバー上アプリケーションを判別した後(ステップS218でYES)、判別したメッセージに対応するコネクション情報が存在しない場合には(ステップS222でNO)、判別したメッセージに対応するサーバー上アプリケーションおよびメッセージを送信してきたクライアント上アプリケーションを実行するクライアントの識別情報をsrc/dst情報DB42におけるコネクション情報に追加する。
【0070】
そして、整合判断部41bは、当該メッセージをメッセージ転送部35からサーバー上アプリケーションに転送する(ステップS224)。
【0071】
一方、整合判断部41bは、src/dst情報DB42に該当情報が格納されている場合には、単に当該メッセージをメッセージ転送部35からサーバー上アプリケーションに転送する(ステップS224)。
【0072】
次に、サーバー上アプリケーションは、メッセージ転送部35からメッセージを受信して(ステップS103)、応答メッセージを送信する(ステップS104)。
【0073】
次に、整合判断部41bは、サーバー上アプリケーションから応答メッセージを受信して(ステップS225)、DB参照部41a経由でアプリケーション判別DB38を参照する(ステップS226)。
【0074】
次に、整合判断部41bは、DB参照部41a経由でアプリケーション判別DB38に格納されている判別ルールを呼び出し、サーバー上アプリケーションからの応答メッセージについても該当する判別ルールがあるか照らし合わせ(ステップS227)、該当判別ルールの有無により場合分けされた処理を行なう。
【0075】
すなわち、整合判断部41bは、該当判別ルールが存在しない場合には(ステップS228でNO)、当該メッセージを廃棄する(ステップS229)。
【0076】
次に、整合判断部41bは、画面出力部39からGUI40に結果を表示させて処理を終了する。GUI40は、エラー情報として「未登録のメッセージが廃棄されました。」を表示する(ステップS230,S231)。
【0077】
一方、整合判断部41bは、該当判別ルールが存在する場合には(ステップS228でYES)、単に当該メッセージをメッセージ送受部33からクライアント上アプリケーションに送信する(ステップS232)。
【0078】
次に、クライアント上アプリケーションは、整合判断部41bから当該メッセージを受信する(ステップS304)。
【0079】
図7は、本発明の第1の実施の形態に係る情報処理装置がメッセージ処理を行なう際の動作手順を示すフローチャートである。
【0080】
図7は、図5および図6に示す処理が行われ、クライアント上アプリケーションおよびサーバー上アプリケーション間のコネクションが確立している状態における動作を示している。
【0081】
まず、クライアント上アプリケーションおよびサーバー上アプリケーション間のコネクションが確立されている状態において、クライアント10におけるアプリケーション11からメッセージが送信される(ステップS305)。
【0082】
次に、サーバー30におけるメッセージ送受部33は、当該メッセージを受信し、整合判断部41bに送る(ステップS233)。
【0083】
次に、整合判断部41bは、DB書き換え部41c経由でsrc/dst情報DB42を参照し、当該メッセージに含まれる送信元情報すなわちクライアントのIPアドレスおよびクライアント上アプリケーションの受け付けポートに基づいて、src/dst情報DB42に格納されている送信先情報すなわち転送先ポートを呼び出す(ステップS234)。そして、整合判断部41bは、当該メッセージに送信先情報を含めて、メッセージ転送部35から該当アプリケーション宛にメッセージを転送する(ステップS235)。
【0084】
次に、アプリケーション31は、メッセージ転送部35からメッセージを受信して(ステップS105)、応答メッセージを送信する(ステップS106)。
【0085】
次に、メッセージ送受部33は、当該応答メッセージを受信して(ステップS236)、単に当該応答メッセージをクライアント10におけるアプリケーション11へ送信する(ステップS237)。
【0086】
次に、アプリケーション11は、メッセージ送受部33から当該応答メッセージを受信する(ステップS306)。
【0087】
次に、アプリケーション11は、アプリケーション31とのコネクションを切断しない場合には(ステップS307でNO)、処理を終了する。
【0088】
一方、アプリケーション11は、アプリケーション31とのコネクションを切断する場合には(ステップS307でYES)、サーバー30に対してFINパケットを送信する(ステップS308)。
【0089】
次に、整合判断部41bは、FINパケットを受信すると(ステップS238)、FINパケットをメッセージ転送部35からアプリケーション31に転送する(ステップS241)。
【0090】
ここで、整合判断部41bは、FINパケットの送信元に関する情報がsrc/dst情報DB42に存在する場合には(ステップS239でYES)、DB書き換え部41cを制御して、該当情報をsrc/dst情報DB42から削除する(ステップS240)。
【0091】
次に、アプリケーション31は、FINパケットを受信して(ステップS107)、ACKパケットを送信する(ステップS108)。
【0092】
次に、メッセージ送受部33は、アプリケーション31からACKパケットを受信して(ステップS242)、ACKパケットをクライアント10におけるアプリケーション11へ送信する(ステップS243)。
【0093】
次に、クライアント10におけるアプリケーション11がACKパケットを受信して、処理を終了する(ステップS309)。
【0094】
ところで、TCP/IP通信を行なうアプリケーションでは、各アプリケーションのポート番号が重複していると通信が成立しない。また、TCP/IP通信を行なうアプリケーションのサービス数だけポートの穴開け処理を行なうと、ファイアウォールのセキュリティを弱める要因となってしまう。
【0095】
また、クライアント側に専用モジュールおよび専用サーバーを用意してファイアウォールの穴開け数を集約することは可能であるが、モジュールの設定工数およびサーバーの購入費がかかってしまう。具体的には、ファイアウォールの穴開けを最小に留める構成であっても、クライアント・サーバーモデルに複数アプリケーションをインストールする場合、専用モジュールおよび専用サーバーを用意したり、アプリケーションの設定変更およびメッセージの判別ルールを事前設定したりする必要があり、人手の工数およびハードウェア費用がかかってしまう。
【0096】
たとえば、特許文献1に記載の構成は、通信元クライアントにおいて目的の接続要求先をパケットに含めておく構成であるため、通信元クライアントにおいて専用モジュール等が必要となってしまう。
【0097】
これに対して、本発明の第1の実施の形態に係る情報処理装置では、メッセージ送受部33は、集約ポート番号を含むメッセージを1または複数のクライアント上アプリケーションから受信する。判別部41は、メッセージ送受部33によって受信されたメッセージに対応するサーバー上アプリケーションを判別する。そして、メッセージ転送部35は、判別部41によって判別されたサーバー上アプリケーションへ対応のメッセージを転送する。
【0098】
具体的には、「パターンマッチングによりアプリケーションを判別するための判別ルール」を用意し、アプリケーション判別DBに格納する。この判別ルールは、管理者により与えられてもよいし、自動的な蓄積および学習により得られてもよいし、あるいはその他の何らかの方法で得ることができる。
【0099】
そして、集約ポート宛にメッセージを送信するようにクライアント上アプリケーションを設定しておく。そして、サーバーが、該当ポートを経由するメッセージを、アプリケーション判別DB内の判別ルールとを照合して整合性を判断し、サーバー上にある本来の送信先であるアプリケーションの受け付けポートに対して転送する。
【0100】
このように、本発明の第1の実施の形態に係る情報処理装置では、複数サービスの使用ポートを集約し、各サービスのクライアントからの接続を同一ポートで受け付ける。これにより、ファイアウォールの設定変更をなくし、セキュリティ強度を高めることができる。言い換えれば、複数アプリケーションが共存する環境で、クライアント側に専用モジュールおよび専用サーバーを設けることなく、ファイアウォールの穴開けを集約する、すなわちクライアントからサーバー宛に送信されるメッセージのサーバー側受け付けポートを集約することが可能となり、セキュリティを強固に保つことができる。
【0101】
また、クライアント側において専用モジュールおよび専用サーバーを用意する必要がないことから、大規模環境であるほど、クライアント側における設定のための工数およびハードウェア費用を削減する効果を顕著に得ることができる。
【0102】
すなわち、本発明の第1の実施の形態に係る情報処理装置における各構成要素のうち、メッセージ送受部33と、メッセージ転送部35と、判別部41とからなる最小構成により、簡易な構成で、他の装置のアプリケーションからのメッセージを処理するとともに、セキュリティの向上を図るという本発明の目的を達成することが可能となる。
【0103】
また、本発明の第1の実施の形態に係る情報処理装置では、判別部41は、メッセージ送受部33によって受信されたメッセージに基づいて、メッセージに対応するサーバー上アプリケーションの個別ポート番号を判別する。そして、メッセージ転送部35は、メッセージの集約ポート番号を、判別部41によって判別された個別ポート番号に置き換えたメッセージを生成して転送する。
【0104】
このような構成により、クライアント上アプリケーションからサーバー上アプリケーションへのメッセージ転送を、サーバー側における簡易な処理で行なうことが可能となる。
【0105】
また、本発明の第1の実施の形態に係る情報処理装置では、アプリケーション判別データベース38は、サーバー上アプリケーションとメッセージに含まれる所定の文字列との対応関係を示すアプリケーション情報を記憶する。そして、判別部41は、メッセージ送受部33によって受信されたメッセージの文字列とアプリケーション情報における所定の文字列とを照合することにより、メッセージに対応するサーバー上アプリケーションを判別する。
【0106】
このような構成により、クライアント上アプリケーションから受信したメッセージに対応するサーバー上アプリケーションの判別を、サーバー側における簡易な構成および処理で行なうことが可能となる。
【0107】
また、本発明の第1の実施の形態に係る情報処理装置では、src/dst情報データベース42は、サーバー上アプリケーション、およびサーバー上アプリケーションとコネクション確立済みのクライアント上アプリケーションを実行するクライアントの識別情報を示すコネクション情報を記憶する。そして、判別部41は、メッセージ送受部33によって受信されたメッセージの送信元の識別情報とコネクション情報における識別情報とを照合することにより、メッセージに対応するサーバー上アプリケーションを判別する。
【0108】
このような構成により、コネクションを確立したクライアント上アプリケーションからのメッセージを、判別ルールとの照合処理を行なうことなく、簡易な処理でサーバー上アプリケーションへ転送することができる。
【0109】
また、本発明の第1の実施の形態に係る情報処理装置では、判別部41は、メッセージ送受部33によって受信されたメッセージに対応するサーバー上アプリケーションを判別した後、判別したメッセージに対応するコネクション情報が存在しない場合には、判別したメッセージに対応するサーバー上アプリケーションおよびメッセージを送信してきたクライアント上アプリケーションを実行するクライアントの識別情報をコネクション情報に追加する。
【0110】
このような構成により、コネクション情報すなわちsrc/dst情報データベース42に、必要な情報を適切に追加することができる。
【0111】
また、本発明の第1の実施の形態に係る情報処理装置では、判別部41は、サーバー上アプリケーションとクライアント上アプリケーションとのコネクションが切断される場合には、クライアント上アプリケーションに対応する情報をコネクション情報から削除する。
【0112】
このような構成により、コネクション情報すなわちsrc/dst情報データベース42から、不要となった情報を適切に削除することができる。
【0113】
また、本発明の第1の実施の形態に係る情報処理装置では、メッセージ送受部33は、メッセージをサーバー上アプリケーションから受信する。判別部41は、サーバー上アプリケーションからのメッセージに対応するクライアント上アプリケーションを判別し、判別できなかった場合にはメッセージを廃棄する。そして、メッセージ転送部35は、判別部41がメッセージに対応するクライアント上アプリケーションを判別できた場合には、メッセージをクライアント上アプリケーションに転送する。
【0114】
このような構成により、サーバー上アプリケーションからクライアント上アプリケーションへのメッセージについて、誤った転送処理を防ぐことが可能となる。
【0115】
また、本発明の第1の実施の形態に係る情報処理装置では、判別部41は、メッセージ送受部33によって受信されたメッセージに対応するアプリケーションを判別できない場合には、エラー情報を出力する。
【0116】
このような構成により、メッセージ転送処理における異常をユーザに適切に通知することが可能となる。
【0117】
なお、メッセージ転送部35は、メッセージ送受部33によって受信されたメッセージの集約ポート番号を、判別部41によって判別された個別ポート番号に置き換えたメッセージを生成して転送する構成であるとしたが、これに限定するものではない。メッセージ転送部35は、当該メッセージに個別ポート番号を追加してサーバー上アプリケーションに転送する構成であってもよいし、個別ポート番号を用いずに何らかの方法で当該メッセージを対応のサーバー上アプリケーションに転送する構成であってもよい。
【0118】
次に、本発明の他の実施の形態について図面を用いて説明する。なお、図中同一または相当部分には同一符号を付してその説明は繰り返さない。
【0119】
<第2の実施の形態>
本実施の形態は、判別ルールを自動的な蓄積および学習により構築する情報処理装置に関する。以下で説明する内容以外は第1の実施の形態に係る情報処理装置と同様である。
【0120】
図8は、本発明の第2の実施の形態に係る情報処理システムの構成を示す図である。図8は、サーバー30によるメッセージの蓄積段階を示している。
【0121】
図8を参照して、情報処理システム402は、情報処理装置であるサーバー30およびクライアント10,20を備える。図8では、情報処理システム402におけるクライアントを2つとしているが、情報処理システム402が1つまたは3つ以上のクライアントを備える構成であってもよい。
【0122】
サーバー30は、その制御構造として、本発明の第1の実施の形態に係るサーバー30と比べて、さらに、蓄積部34と、学習部36とを備える。蓄積部34は、メッセージ格納部34aを含む。学習部36は、メッセージ呼出部36aと、パターン分析部36bと、パターン格納部36cとを含む。
【0123】
また、サーバー30は、本発明の第1の実施の形態に係るサーバーと比べて、さらに、アプリケーションデータ蓄積データベース(メッセージ蓄積部)37を備える。アプリケーションデータ蓄積データベース(DB)37は、図2に示すメインメモリ102またはハードディスク103に保存される。
【0124】
図9は、本発明の第2の実施の形態に係る情報処理装置におけるアプリケーションデータ蓄積データベースの内容の一例を示す図である。
【0125】
図9を参照して、アプリケーションデータ蓄積データベース37は、メッセージ送受部33によって受信された複数のメッセージを蓄積する。
【0126】
たとえば、アプリケーションデータ蓄積DB37には、蓄積部34におけるメッセージ格納部34aにより、アプリケーション名、クライアント情報、メッセージ方向、およびメッセージ全文が蓄積される。アプリケーションデータ蓄積DB37は、学習部36におけるパターン分析部36bがメッセージの判別ルールを作成するために利用される。
【0127】
すなわち、パターン分析部36bは、アプリケーションデータ蓄積データベース37によって蓄積された複数のメッセージに対してパターンマッチングを行なうことにより、所定の文字列を抽出し、サーバー上アプリケーションおよび抽出した所定の文字列の対応関係を示すアプリケーション情報を生成する。
【0128】
ここでは、前提条件として、蓄積段階および学習段階は個々のアプリケーション毎に行われるため、複数アプリケーションによる通信が同時に行われていない必要がある。たとえば、アプリケーション11に対して蓄積および学習を行った後に、アプリケーション21に関する蓄積および学習を行なう、といったように推移させる。
【0129】
まず、蓄積段階について、図8の構成図および図10のフローチャートを用いて説明する。
【0130】
図10は、本発明の第2の実施の形態に係る情報処理装置がメッセージ蓄積処理を行なう際の動作手順を示すフローチャートである。
【0131】
図10を参照して、クライアント10におけるアプリケーション11から送信されたメッセージ(ステップS301)は、サーバー30のメッセージ送受部33において受信される(ステップS201)。
【0132】
次に、メッセージ格納部34aは、当該メッセージに基づいて該当データをアプリケーションデータ蓄積DB37に格納する(ステップS202)。
【0133】
次に、アプリケーションデータ蓄積DB37への該当データの格納が終了すると、メッセージ転送部35は、当該メッセージをアプリケーション31に転送する(ステップS203)。ここで、クライアント上アプリケーションの送信先ポート、およびサーバー上アプリケーションの受け付けポートは事前に設定される。ここでは、クライアント上アプリケーションの送信先ポートは8500番ポートであり、サーバー上アプリケーションの受け付けポートは8501または8502番ポートである。
【0134】
次に、アプリケーション31は、メッセージ転送部35からメッセージを受信して(ステップS101)、応答メッセージを送信する(ステップS102)。
【0135】
次に、メッセージ格納部34aは、アプリケーション31から応答メッセージを受信して(ステップS204)、当該応答メッセージに基づいて該当データをアプリケーションデータ蓄積DB37に格納する(ステップS205)。
【0136】
なお、アプリケーションの仕様として応答メッセージを送信しない場合には、サーバー上アプリケーションからクライアント上アプリケーションへの応答メッセージは蓄積されないものとする。
【0137】
次に、メッセージ送受部33は、応答メッセージをクライアント10におけるアプリケーション11に送信する(ステップS206)。
【0138】
次に、アプリケーション11は、メッセージ送受部33から応答メッセージを受信する(ステップS302)。
【0139】
サーバー30は、上記の処理を繰り返すことにより、アプリケーションデータ蓄積DB37にメッセージを蓄積していく。
【0140】
続いて、学習段階について、図11の構成図および図12のフローチャートを用いて説明する。
【0141】
図11は、本発明の第2の実施の形態に係る情報処理システムの構成を示す図である。図11は、サーバー30によるメッセージの学習段階を示している。図12は、本発明の第2の実施の形態に係る情報処理装置がメッセージ学習処理を行なう際の動作手順を示すフローチャートである。
【0142】
図11および図12を参照して、まず、メッセージ呼出部36aは、アプリケーションデータ蓄積DB37から蓄積されたメッセージを呼び出す(ステップS207)。
【0143】
次に、パターン分析部36bは、メッセージのパターンマッチングを行なう(ステップS208)。
【0144】
ここで、図9に示すアプリケーションデータ蓄積DB37を参照して、パターンマッチングのアルゴリズムについて説明する。メッセージ方向がClient→Serverのメッセージ「APP11 ******」に対して、蓄積されている全メッセージの先頭から文字列を走査し、同一文字列を抽出する。「******」は固定で無い文字列である。
【0145】
このメッセージ例では1Byte目〜5Byte目までは順当に同一文字として抽出するが、6Byte目移行はメッセージ毎に異なる文字列となっている。このため、「APP11」が全てのメッセージで1Byte〜5Byte目に記載されている、という情報を抽出する。
【0146】
同様に、メッセージ方向がServer→Clientのメッセージ「RETURN APP11」に対して、「RETURN APP11」が全ての応答メッセージで1Byte〜12Byte目に記載されている、という情報を抽出する。
【0147】
再び図12を参照して、判別ルールが作成できるパターンであるかどうかにより以降の処理が場合分けされる。
【0148】
すなわち、パターン分析部36bは、判別ルールが作成できない場合には(ステップS209でNO)、画面出力部39からGUI40に結果を表示させて処理を終了する。GUI40は、分析結果として「特定パターンの無いメッセージです。」を表示する(ステップS210,211)。
【0149】
この例では、パターン分析部36bが判別ルールを作成することができたため(ステップS209でYES)、パターン格納部36cは、作成された判別ルールをアプリケーション判別DB38に格納する(ステップS212)。アプリケーション判別DB38の内容は、たとえば図3に示すようになる。
【0150】
次に、パターン格納部36cは、画面出力部39からGUI40に結果を表示させて処理を終了する。GUI40は、分析結果として「パターン分析完了しました。」を表示する(ステップS213,214)。
【0151】
図13および図14は、本発明の第2の実施の形態に係る情報処理システムの構成を示す図である。図13は、クライアント上アプリケーションおよびサーバー上アプリケーション間のコネクションが未確立の状態におけるメッセージ転送処理を示している。図14は、クライアント上アプリケーションおよびサーバー上アプリケーション間のコネクションが確立している状態におけるメッセージ転送処理を示している。
【0152】
図13および図14に示すメッセージ転送処理は、本発明の第1の実施の形態に係る情報処理システムと同様である。
【0153】
このように、本発明の第2の実施の形態に係る情報処理装置では、アプリケーションデータ蓄積データベース37は、メッセージ送受部33によって受信された複数のメッセージを蓄積する。そして、パターン分析部36bは、アプリケーションデータ蓄積データベース37によって蓄積された複数のメッセージに対してパターンマッチングを行なうことにより、所定の文字列を抽出し、サーバー上アプリケーションおよび抽出した所定の文字列の対応関係を示すアプリケーション情報を生成する。
【0154】
このような構成により、適切な判別ルールを自動的に生成することが可能となる。
【0155】
その他の構成および動作は第1の実施の形態に係る情報処理装置と同様であるため、ここでは詳細な説明を繰り返さない。
【0156】
上記実施の形態は、すべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記説明ではなく特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【産業上の利用可能性】
【0157】
本発明は、クライアント・サーバーモデルにおけるTCP/IP通信分野に適用できる。したがって、本発明は、産業上の利用可能性を有している。
【0158】
上記実施の形態の一部または全部は以下の付記のようにも記載されうるが、本発明の範囲は、以下の付記に限定されるものではない。
【0159】
[付記1]
他の装置における外部アプリケーションからのメッセージを自己の内部アプリケーションによって処理するための情報処理装置であって、
集約ポート番号を含むメッセージを1または複数の前記外部アプリケーションから受信するためのメッセージ受信部と、
前記メッセージ受信部によって受信された前記メッセージに対応する前記内部アプリケーションを判別するための判別部と、
前記判別部によって判別された前記内部アプリケーションへ対応の前記メッセージを転送するためのメッセージ転送部とを備える、情報処理装置。
【0160】
[付記2]
前記判別部は、前記メッセージ受信部によって受信された前記メッセージに基づいて、前記メッセージに対応する前記内部アプリケーションの個別ポート番号を判別し、
前記メッセージ転送部は、前記メッセージの集約ポート番号を前記個別ポート番号に置き換えた前記メッセージを生成して転送する、付記1に記載の情報処理装置。
【0161】
[付記3]
前記情報処理装置は、さらに、
前記内部アプリケーションと前記メッセージに含まれる所定の文字列との対応関係を示すアプリケーション情報を記憶するためのアプリケーション情報記憶部を備え、
前記判別部は、前記メッセージ受信部によって受信された前記メッセージの文字列と前記アプリケーション情報における前記所定の文字列とを照合することにより、前記メッセージに対応する前記内部アプリケーションを判別する、付記1または2に記載の情報処理装置。
【0162】
[付記4]
前記情報処理装置は、さらに、
前記内部アプリケーション、および前記内部アプリケーションとコネクション確立済みの前記外部アプリケーションを実行する他の装置の識別情報を示すコネクション情報を記憶するためのコネクション情報記憶部を備え、
前記判別部は、前記メッセージ受信部によって受信された前記メッセージの送信元の識別情報と前記コネクション情報における前記識別情報とを照合することにより、前記メッセージに対応する前記内部アプリケーションを判別する、付記1から3のいずれかに記載の情報処理装置。
【0163】
[付記5]
前記判別部は、前記メッセージ受信部によって受信された前記メッセージに対応する前記内部アプリケーションを判別した後、判別した前記メッセージに対応する前記コネクション情報が存在しない場合には、判別した前記メッセージに対応する前記内部アプリケーションおよび前記メッセージを送信してきた前記外部アプリケーションを実行する他の装置の識別情報を前記コネクション情報に追加する、付記4に記載の情報処理装置。
【0164】
[付記6]
前記判別部は、前記内部アプリケーションと前記外部アプリケーションとのコネクションが切断される場合には、前記外部アプリケーションに対応する情報を前記コネクション情報から削除する、付記4または5に記載の情報処理装置。
【0165】
[付記7]
前記メッセージ受信部は、メッセージを前記内部アプリケーションから受信し、
前記判別部は、前記内部アプリケーションからの前記メッセージに対応する前記外部アプリケーションを判別し、判別できなかった場合には前記メッセージを廃棄し、
前記メッセージ転送部は、前記判別部が前記メッセージに対応する前記外部アプリケーションを判別できた場合には、前記メッセージを前記外部アプリケーションに転送する、付記1から6のいずれかに記載の情報処理装置。
【0166】
[付記8]
前記判別部は、前記メッセージ受信部によって受信された前記メッセージに対応するアプリケーションを判別できない場合には、エラー情報を出力する、付記1から7のいずれかに記載の情報処理装置。
【0167】
[付記9]
前記情報処理装置は、さらに、
前記メッセージ受信部によって受信された複数の前記メッセージを蓄積するためのメッセージ蓄積部と、
前記メッセージ蓄積部によって蓄積された複数の前記メッセージに対してパターンマッチングを行なうことにより、前記所定の文字列を抽出し、前記内部アプリケーションおよび抽出した前記所定の文字列の対応関係を示すアプリケーション情報を生成するためのパターン分析部とを備える、付記3に記載の情報処理装置。
【0168】
[付記10]
クライアントと、
サーバーとを備え、
前記クライアントは、実行する各アプリケーションによって生成されるメッセージに集約ポート番号を含めて前記サーバーへ送信し、
前記サーバーは、
前記集約ポート番号を含むメッセージを1または複数の前記アプリケーションから受信し、受信した前記メッセージに対応する自己のアプリケーションを判別し、判別した前記アプリケーションへ対応の前記メッセージを転送する、情報処理システム。
【0169】
[付記11]
他の装置における外部アプリケーションからのメッセージを自己の内部アプリケーションによって処理するための情報処理装置におけるメッセージ処理方法であって、
集約ポート番号を含むメッセージを1または複数の前記外部アプリケーションから受信するステップと、
受信した前記メッセージに対応する前記内部アプリケーションを判別するステップと、
判別した前記内部アプリケーションへ対応の前記メッセージを転送するステップとを含む、メッセージ処理方法。
【0170】
[付記12]
前記内部アプリケーションを判別するステップにおいては、受信した前記メッセージに基づいて、前記メッセージに対応する前記内部アプリケーションの個別ポート番号を判別し、
前記メッセージを転送するステップにおいては、前記メッセージの集約ポート番号を前記個別ポート番号に置き換えた前記メッセージを生成して転送する、付記11に記載のメッセージ処理方法。
【0171】
[付記13]
前記メッセージ処理方法は、さらに、
前記内部アプリケーションと前記メッセージに含まれる所定の文字列との対応関係を示すアプリケーション情報を記憶するステップを含み、
前記内部アプリケーションを判別するステップにおいては、受信した前記メッセージの文字列と前記アプリケーション情報における前記所定の文字列とを照合することにより、前記メッセージに対応する前記内部アプリケーションを判別する、付記11または12に記載のメッセージ処理方法。
【0172】
[付記14]
前記メッセージ処理方法は、さらに、
前記内部アプリケーション、および前記内部アプリケーションとコネクション確立済みの前記外部アプリケーションを実行する他の装置の識別情報を示すコネクション情報を記憶するステップを含み、
前記内部アプリケーションを判別するステップにおいては、受信した前記メッセージの送信元の識別情報と前記コネクション情報における前記識別情報とを照合することにより、前記メッセージに対応する前記内部アプリケーションを判別する、付記11から13のいずれかに記載のメッセージ処理方法。
【0173】
[付記15]
前記内部アプリケーションを判別するステップにおいては、受信した前記メッセージに対応する前記内部アプリケーションを判別した後、判別した前記メッセージに対応する前記コネクション情報が存在しない場合には、判別した前記メッセージに対応する前記内部アプリケーションおよび前記メッセージを送信してきた前記外部アプリケーションを実行する他の装置の識別情報を前記コネクション情報に追加する、付記14に記載のメッセージ処理方法。
【0174】
[付記16]
前記内部アプリケーションを判別するステップにおいては、前記内部アプリケーションと前記外部アプリケーションとのコネクションが切断される場合には、前記外部アプリケーションに対応する情報を前記コネクション情報から削除する、付記14または15に記載のメッセージ処理方法。
【0175】
[付記17]
前記メッセージ処理方法は、さらに、
メッセージを前記内部アプリケーションから受信するステップと、
前記内部アプリケーションからの前記メッセージに対応する前記外部アプリケーションを判別し、判別できなかった場合には前記メッセージを廃棄するステップと、
前記メッセージに対応する前記外部アプリケーションを判別できた場合には、前記メッセージを前記外部アプリケーションに転送するステップとを含む、付記11から16のいずれかに記載のメッセージ処理方法。
【0176】
[付記18]
前記内部アプリケーションまたは前記外部アプリケーションを判別するステップにおいては、受信した前記メッセージに対応するアプリケーションを判別できない場合には、エラー情報を出力する、付記11から17のいずれかに記載のメッセージ処理方法。
【0177】
[付記19]
前記メッセージ処理方法は、さらに、
受信した複数の前記メッセージを蓄積するステップと、
蓄積した複数の前記メッセージに対してパターンマッチングを行なうことにより、前記所定の文字列を抽出し、前記内部アプリケーションおよび抽出した前記所定の文字列の対応関係を示すアプリケーション情報を生成するステップとを含む、付記13に記載のメッセージ処理方法。
【0178】
[付記20]
他の装置における外部アプリケーションからのメッセージを自己の内部アプリケーションによって処理するための情報処理装置におけるメッセージ処理プログラムであって、コンピュータに、
集約ポート番号を含むメッセージを1または複数の前記外部アプリケーションから受信するステップと、
受信した前記メッセージに対応する前記内部アプリケーションを判別するステップと、
判別した前記内部アプリケーションへ対応の前記メッセージを転送するステップとを実行させる、メッセージ処理プログラム。
【0179】
[付記21]
前記内部アプリケーションを判別するステップにおいては、受信した前記メッセージに基づいて、前記メッセージに対応する前記内部アプリケーションの個別ポート番号を判別し、
前記メッセージを転送するステップにおいては、前記メッセージの集約ポート番号を前記個別ポート番号に置き換えた前記メッセージを生成して転送する、付記20に記載のメッセージ処理プログラム。
【0180】
[付記22]
前記メッセージ処理プログラムは、さらに、コンピュータに、
前記内部アプリケーションと前記メッセージに含まれる所定の文字列との対応関係を示すアプリケーション情報を記憶するステップを実行させ、
前記内部アプリケーションを判別するステップにおいては、受信した前記メッセージの文字列と前記アプリケーション情報における前記所定の文字列とを照合することにより、前記メッセージに対応する前記内部アプリケーションを判別する、付記20または21に記載のメッセージ処理プログラム。
【0181】
[付記23]
前記メッセージ処理プログラムは、さらに、コンピュータに、
前記内部アプリケーション、および前記内部アプリケーションとコネクション確立済みの前記外部アプリケーションを実行する他の装置の識別情報を示すコネクション情報を記憶するステップを実行させ、
前記内部アプリケーションを判別するステップにおいては、受信した前記メッセージの送信元の識別情報と前記コネクション情報における前記識別情報とを照合することにより、前記メッセージに対応する前記内部アプリケーションを判別する、付記20から22のいずれかに記載のメッセージ処理プログラム。
【0182】
[付記24]
前記内部アプリケーションを判別するステップにおいては、受信した前記メッセージに対応する前記内部アプリケーションを判別した後、判別した前記メッセージに対応する前記コネクション情報が存在しない場合には、判別した前記メッセージに対応する前記内部アプリケーションおよび前記メッセージを送信してきた前記外部アプリケーションを実行する他の装置の識別情報を前記コネクション情報に追加する、付記23に記載のメッセージ処理プログラム。
【0183】
[付記25]
前記内部アプリケーションを判別するステップにおいては、前記内部アプリケーションと前記外部アプリケーションとのコネクションが切断される場合には、前記外部アプリケーションに対応する情報を前記コネクション情報から削除する、付記23または24に記載のメッセージ処理プログラム。
【0184】
[付記26]
前記メッセージ処理プログラムは、さらに、コンピュータに、
メッセージを前記内部アプリケーションから受信するステップと、
前記内部アプリケーションからの前記メッセージに対応する前記外部アプリケーションを判別し、判別できなかった場合には前記メッセージを廃棄するステップと、
前記メッセージに対応する前記外部アプリケーションを判別できた場合には、前記メッセージを前記外部アプリケーションに転送するステップとを実行させる、付記20から25のいずれかに記載のメッセージ処理プログラム。
【0185】
[付記27]
前記内部アプリケーションまたは前記外部アプリケーションを判別するステップにおいては、受信した前記メッセージに対応するアプリケーションを判別できない場合には、エラー情報を出力する、付記20から26のいずれかに記載のメッセージ処理プログラム。
【0186】
[付記28]
前記メッセージ処理プログラムは、さらに、コンピュータに、
受信した複数の前記メッセージを蓄積するステップと、
蓄積した複数の前記メッセージに対してパターンマッチングを行なうことにより、前記所定の文字列を抽出し、前記内部アプリケーションおよび抽出した前記所定の文字列の対応関係を示すアプリケーション情報を生成するステップとを実行させる、付記22に記載のメッセージ処理プログラム。
【符号の説明】
【0187】
10,20 クライアント
11,12,21,22,31,32 アプリケーション
30 サーバー
33 メッセージ送受部
34 蓄積部
34a メッセージ格納部
35 メッセージ転送部
36 学習部
36a メッセージ呼出部
36b パターン分析部
36c パターン格納部
37 、アプリケーションデータ蓄積データベース(メッセージ蓄積部)
38 アプリケーション判別データベース(アプリケーション情報記憶部)
39 画面出力部
40 GUI
41 判別部
41a データベース参照部
41b 整合判断部
41c データベース書き換え部
42 src/dst情報データベース
101 CPU
102 メインメモリ
103 ハードディスク
104 入力インターフェイス
105 表示コントローラ
106 データリーダ/ライタ
107 通信インターフェイス
108 キーボード
109 マウス
110 ディスプレイ
111 記録媒体
121 バス
201 情報処理装置
401,402 情報処理システム

【特許請求の範囲】
【請求項1】
他の装置における外部アプリケーションからのメッセージを自己の内部アプリケーションによって処理するための情報処理装置であって、
集約ポート番号を含むメッセージを1または複数の前記外部アプリケーションから受信するためのメッセージ受信部と、
前記メッセージ受信部によって受信された前記メッセージに対応する前記内部アプリケーションを判別するための判別部と、
前記判別部によって判別された前記内部アプリケーションへ対応の前記メッセージを転送するためのメッセージ転送部とを備える、情報処理装置。
【請求項2】
前記判別部は、前記メッセージ受信部によって受信された前記メッセージに基づいて、前記メッセージに対応する前記内部アプリケーションの個別ポート番号を判別し、
前記メッセージ転送部は、前記メッセージの集約ポート番号を前記個別ポート番号に置き換えた前記メッセージを生成して転送する、請求項1に記載の情報処理装置。
【請求項3】
前記情報処理装置は、さらに、
前記内部アプリケーションと前記メッセージに含まれる所定の文字列との対応関係を示すアプリケーション情報を記憶するためのアプリケーション情報記憶部を備え、
前記判別部は、前記メッセージ受信部によって受信された前記メッセージの文字列と前記アプリケーション情報における前記所定の文字列とを照合することにより、前記メッセージに対応する前記内部アプリケーションを判別する、請求項1または2に記載の情報処理装置。
【請求項4】
前記情報処理装置は、さらに、
前記内部アプリケーション、および前記内部アプリケーションとコネクション確立済みの前記外部アプリケーションを実行する他の装置の識別情報を示すコネクション情報を記憶するためのコネクション情報記憶部を備え、
前記判別部は、前記メッセージ受信部によって受信された前記メッセージの送信元の識別情報と前記コネクション情報における前記識別情報とを照合することにより、前記メッセージに対応する前記内部アプリケーションを判別する、請求項1から3のいずれかに記載の情報処理装置。
【請求項5】
前記判別部は、前記メッセージ受信部によって受信された前記メッセージに対応する前記内部アプリケーションを判別した後、判別した前記メッセージに対応する前記コネクション情報が存在しない場合には、判別した前記メッセージに対応する前記内部アプリケーションおよび前記メッセージを送信してきた前記外部アプリケーションを実行する他の装置の識別情報を前記コネクション情報に追加する、請求項4に記載の情報処理装置。
【請求項6】
前記メッセージ受信部は、メッセージを前記内部アプリケーションから受信し、
前記判別部は、前記内部アプリケーションからの前記メッセージに対応する前記外部アプリケーションを判別し、判別できなかった場合には前記メッセージを廃棄し、
前記メッセージ転送部は、前記判別部が前記メッセージに対応する前記外部アプリケーションを判別できた場合には、前記メッセージを前記外部アプリケーションに転送する、請求項1から5のいずれかに記載の情報処理装置。
【請求項7】
前記情報処理装置は、さらに、
前記メッセージ受信部によって受信された複数の前記メッセージを蓄積するためのメッセージ蓄積部と、
前記メッセージ蓄積部によって蓄積された複数の前記メッセージに対してパターンマッチングを行なうことにより、前記所定の文字列を抽出し、前記内部アプリケーションおよび抽出した前記所定の文字列の対応関係を示すアプリケーション情報を生成するためのパターン分析部とを備える、請求項3に記載の情報処理装置。
【請求項8】
クライアントと、
サーバーとを備え、
前記クライアントは、実行する各アプリケーションによって生成されるメッセージに集約ポート番号を含めて前記サーバーへ送信し、
前記サーバーは、
前記集約ポート番号を含むメッセージを1または複数の前記アプリケーションから受信し、受信した前記メッセージに対応する自己のアプリケーションを判別し、判別した前記アプリケーションへ対応の前記メッセージを転送する、情報処理システム。
【請求項9】
他の装置における外部アプリケーションからのメッセージを自己の内部アプリケーションによって処理するための情報処理装置におけるメッセージ処理方法であって、
集約ポート番号を含むメッセージを1または複数の前記外部アプリケーションから受信するステップと、
受信した前記メッセージに対応する前記内部アプリケーションを判別するステップと、
判別した前記内部アプリケーションへ対応の前記メッセージを転送するステップとを含む、メッセージ処理方法。
【請求項10】
他の装置における外部アプリケーションからのメッセージを自己の内部アプリケーションによって処理するための情報処理装置におけるメッセージ処理プログラムであって、コンピュータに、
集約ポート番号を含むメッセージを1または複数の前記外部アプリケーションから受信するステップと、
受信した前記メッセージに対応する前記内部アプリケーションを判別するステップと、
判別した前記内部アプリケーションへ対応の前記メッセージを転送するステップとを実行させる、メッセージ処理プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate


【公開番号】特開2012−69057(P2012−69057A)
【公開日】平成24年4月5日(2012.4.5)
【国際特許分類】
【出願番号】特願2010−215255(P2010−215255)
【出願日】平成22年9月27日(2010.9.27)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.COMPACTFLASH
【出願人】(000004237)日本電気株式会社 (19,353)
【Fターム(参考)】