説明

メッセージ交換システム、バイパス転送方法、及びプログラム

【課題】メッセージ交換システムの負荷を低減し、効率的にメッセージ転送を行う。
【解決手段】バス転送型のメッセージ交換システムにおいて、外部システムから送信されるメッセージの制御データのみをメッセージ交換システムで処理し、メッセージ本文は外部サービス間で直接転送する。例えば、バス転送型のメッセージ交換システムにおいて、外部システムと交換機で送受信するデータ構造を拡張し、データ内にデータの起源に関する情報を付加する。また、サービスを提供する外部システムへ接続するためのプロトコルを処理するサブシステム内に、交換機と送受信するデータの付加情報の検出機能を有し、データに付加された情報を使用してメッセージ本文ではなく外部システム間で直接メッセージ転送するための制御情報のみを扱う機能を追加し、メッセージ本文及びメッセージに付随するデータを交換機経由にしないようにする。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、メッセージ交換システムに関し、特にバス転送型のメッセージ交換システムに関する。
【背景技術】
【0002】
従来のメッセージ交換システムでは、メッセージ本文とメッセージに付随するデータと共に交換機を介して送信元から受信先へメッセージを転送していた。そのため、交換機には大量のデータが集中し、交換機が稼動するサーバは高負荷な状態になることがあった。
【0003】
また、転送データが大きくなるにつれて、交換機と接続しているネットワークの負荷も高い状態になることがあった。
【0004】
これらの問題の対策として、交換機を複数用意して負荷を分散する方法が取られてきた。
【0005】
しかしながら、そのような方法では、全ての交換機に流れるデータ量は変わらないため、システム全体としては高負荷のままであり、データ量が増大するにつれて交換機も増加させなければならなかった。
【0006】
また、どの交換機にメッセージを割り当てるかを制御する装置(制御装置)が新たに必要であり、新たにこの部分(制御装置)がネットワークの負荷に耐えられない状態になってしまうことがあった。
【0007】
関連する技術として、特開平11−126196号公報(特許文献1)にデータ転送方法およびそれに適した計算機システムが開示されている。
この関連技術では、送信側PUT/GETライブラリは、ユーザプロセスがMPIライブラリに対して発行したデータ送信要求コマンドに応答して転送制御情報を生成する。送信側ネットワークインタフェース回路は、その中の送信データアドレスと送信フラグアドレスを用いてそれぞれユーザデータとMPIライブラリにより使用されるユーザデータに対応する付加情報をローカルメモリから読み出し、一つのメッセージとしてネットワークに送出し、送信完了フラグを送信フラグアドレスを用いて書き込む。受信側のネットワークインタフェース回路は、メッセージ内の受信データアドレスと受信フラグアドレスで指定されるローカルメモリ領域、にそれぞれユーザデータと付加情報を書き込み、受信完了フラグを領域に書き込む。
【0008】
また、特開平11−127199号公報(特許文献2)に異種中継機器混在網におけるパケット中継方法及び中継機器が開示されている。
この関連技術では、通信網内のサブネット間でパケットを中継する中継機器に特定プロトコル(protocol)に対応できる中継機器と対応できない中継機器が存在する場合、各特定プロトコル対応中継機器は各パケット転送経路の中継機器の特定プロトコル対応の可否を確認して特定プロトコルパケットの送信方法を指定し、特定プロトコルパケットを送信する際は前記指定を確認し、隣接中継機器を含む中継機器に特定プロトコル非対応中継機器が存在する経路に対しては特定プロトコルパケットを汎用プロトコルのパケット内にカプセル化して特定プロトコル非対応中継機器内を通過させ、後位の特定プロトコル対応中継機器に転送する。
【0009】
また、特開平11−215134号公報(特許文献3)にパケット転送方式が開示されている。
この関連技術では、非ATMインタフェースのリンクからのIPパケットの宛先IPアドレスからルータ網の出口の変換ノードのATMアドレスを解決し、ショートカットパスを設定した後、ポイントツーポイントリンクの識別子と宛先IPアドレス及びショートカットパスの識別子を対応付けることでパケットとパスを決定し、ショートカットパスの受信側ノードで受信したIPアドレスと該受信パケットを送信すべきリンクの識別子及びリンクに送信する際のヘッダ情報などの対応づけを行ってショートカットから非ATMインタフェースへの転送処理を行うことにより、ルータ網のバイパス配送を実現する。
【0010】
【特許文献1】特開平11−126196号公報
【特許文献2】特開平11−127199号公報
【特許文献3】特開平11−215134号公報
【発明の開示】
【発明が解決しようとする課題】
【0011】
外部サービス間でメッセージ本文、及びメッセージに付随する大量のデータを転送するメッセージ交換システムにおいて、交換機の処理として転送時にメッセージのコピーが必要であった。このため、全てのデータは一旦交換機が動作するサーバ上を経由する必要があり、交換機が動作するサーバへのCPU負荷及びサーバへ通じるネットワーク負荷が集中するという問題がある。
【課題を解決するための手段】
【0012】
本発明のメッセージ交換システムは、複数の外部システムの各々とそれぞれ対になるようにネットワークを介して接続された複数のサブシステムと、複数のサブシステムの各々の間でデータの送受信を仲介する交換機とを含む。各サブシステムは、各外部システム間で送受信されるメッセージ本文及びメッセージに付随する制御情報を処理し、制御情報を用いて、各外部システム間で交換機を経由せずに直接メッセージを送受信するための制御を行う。
【0013】
本発明のバイパス転送方法は、交換機により、複数の外部システムの各々とそれぞれ対になるようにネットワークを介して接続された複数のサブシステムの各々の間でデータの送受信を仲介するステップと、各サブシステムにより、各外部システム間で送受信されるメッセージ本文及びメッセージに付随する制御情報を処理し、制御情報を用いて、各外部システム間で交換機を経由せずに直接メッセージを送受信するための制御を行うステップとを含む。
【0014】
本発明のプログラムは、交換機により、複数の外部システムの各々とそれぞれ対になるようにネットワークを介して接続された複数のサブシステムの各々の間でデータの送受信を仲介するステップと、各サブシステムにより、各外部システム間で送受信されるメッセージ本文及びメッセージに付随する制御情報を処理し、制御情報を用いて、各外部システム間で交換機を経由せずに直接メッセージを送受信するための制御を行うステップとをコンピュータに実行させるためのプログラムである。このとき、交換機、及び各サブシステムは、コンピュータ上で動作する仮想マシン(Virtual Machine(VM))環境でも良い。
【発明の効果】
【0015】
メッセージ交換システムの負荷を低減し、効率的にメッセージ転送を行う。
【発明を実施するための最良の形態】
【0016】
以下に、本発明の第1実施形態について添付図面を参照して説明する。
図1は、バス転送型のメッセージ交換システムの全体図を示す。
本発明のバイパス転送システムは、メッセージ交換システム10と、外部システム20(20−i、i=1〜n:nは任意)を含む。
【0017】
メッセージ交換システム10の例として、交換機、基地局、ルータ等の中継装置、サーバ、メインフレーム、スーパーコンピュータ等が考えられる。外部システム20の例として、PC(パソコン)、携帯端末、シンクライアント端末、ワークステーション等が考えられる。また、メッセージ交換システム10及び外部システム20は、コンピュータに搭載される拡張ボードやソフトウェアでも良い。更に、メッセージ交換システム10及び外部システム20は、コンピュータに搭載された仮想マシン(Virtual Machine(VM))環境でも良い。但し、実際には、これらの例に限定されない。
【0018】
ここでは、メッセージ交換システム10と外部システム20とは、ネットワーク30(30−i、i=1〜n)を介して接続されている。ネットワーク30は、有線、無線を問わない。ネットワーク30の例として、インターネット、LAN(Local Area Network)、無線LAN(Wireless LAN)、携帯電話網、専用線、シリアル通信回線、IrDA(Infrared Data Association)、Bluetooth(登録商標)等が考えられる。但し、実際には、これらの例に限定されない。
【0019】
なお、複数の外部システム20の各々は、同一のネットワーク30に属していても良い。
【0020】
メッセージ交換システム10は、交換機11と、サブシステム12(12−i、i=1〜n)を含む。
【0021】
交換機11は、メッセージを振り分ける。ここでは、交換機11は、ルーティング情報蓄積装置111からメッセージの送信先情報(ルーティング情報)を取得してメッセージ転送先を決定する。ルーティング情報蓄積装置111は、ルーティング情報を保持している。
【0022】
サブシステム12は、ネットワーク30を介して、外部システム20と接続されている。基本的に、サブシステム12は、外部システム20と対になっている。例えば、メッセージ送信側の外部システム20に対してメッセージ送信側のサブシステム12が対応し、メッセージ受信側の外部システム20に対してメッセージ受信側のサブシステム12が対応している。但し、実際には、これらの例に限定されない。
【0023】
サブシステム12の各々は、プロトコル変換機121と、メッセージ送受信装置122を備える。
【0024】
プロトコル変換機121は、付加情報挿入部1211と、付加情報参照部1212と、メッセージ正規化部1213と、メッセージ非正規化部1214を備える。
【0025】
付加情報挿入部1211は、交換機11へ送信するためのメッセージに、任意の情報を付加情報として挿入する。
【0026】
付加情報参照部1212は、交換機11から受信したメッセージに挿入された付加情報を検出し参照する。
【0027】
メッセージ正規化部1213は、交換機11へ送信するためのメッセージを正規化し、メッセージのデータ構造を拡張する。
【0028】
メッセージ非正規化部1214は、交換機11から受信したメッセージを外部システム20に合わせたプロトコルへ変換する。
【0029】
メッセージ送受信装置122は、送信部1221と、受信部1222を備える。
【0030】
送信部1221は、外部システム20とメッセージ交換システム10間のプロトコルに基づき、ネットワーク30を通して外部システム20にメッセージを送信する。
【0031】
受信部1222は、外部システム20とメッセージ交換システム10間のプロトコルに基づき、ネットワーク30を通して外部システム20からメッセージを受信する。
【0032】
外部システム20とメッセージ交換システム10間のプロトコルは任意である。メッセージ交換システム10は、モジュール化されたサブシステム12により複数のプロトコルを使用して複数の外部システムと同時に接続できる。更に、メッセージ交換システム10は、サブシステム12内のプロトコル変換機121により、複数の外部システム20間で、異なるプロトコルでのメッセージの送受信が可能である。
【0033】
外部システム20の各々は、メッセージ送受信装置21と、メッセージ蓄積装置22を含む。
【0034】
メッセージ送受信装置21は、送信部211と、受信部212を備える。
【0035】
送信部211は、外部システム20とメッセージ交換システム10間のプロトコルに基づき、ネットワーク30を通してメッセージ交換システム10にメッセージを送信する。また、送信部211は、外部システム20間で直接メッセージの送受信が可能な場合、他の外部システム20の受信部212にメッセージを送信する。この場合、外部システム20間は何らかの通信回線で直接接続されている。この通信回線は、有線、無線を問わない。通信回線は、ネットワーク30でも良い。
【0036】
受信部212は、外部システム20とメッセージ交換システム10間のプロトコルに基づき、ネットワーク30を通してメッセージ交換システム10からメッセージを受信する。また、受信部212は、外部システム20間で直接メッセージの送受信が可能な場合、他の外部システム20の送信部211からメッセージを受信する。この場合、外部システム20間は何らかの通信回線で直接接続されている。この通信回線は、有線、無線を問わない。通信回線は、ネットワーク30でも良い。
【0037】
メッセージ蓄積装置22は、メッセージを格納する。このとき、メッセージ蓄積装置22は、送信部211により送信するメッセージ、受信部212により受信されたメッセージのいずれも格納可能である。
【0038】
例えば、メッセージ送信側の外部システム20の送信部211は、メッセージ蓄積装置22に送信対象となるメッセージが格納されると、メッセージ交換システム10を介してメッセージ受信側の外部システム20の受信部212へメッセージを送信する。メッセージ受信側の外部システム20の受信部212は、メッセージ蓄積装置22にメッセージを格納する。
【0039】
なお、外部システム20のメッセージ送受信装置21は、外部入力されるコマンド等によりメッセージの送受信制御を行う。
【0040】
通常、個々の外部システム20は、メッセージ交換システム10を経由して他の外部システム20とメッセージの送受信を行うが、本発明により、メッセージ交換システム10から制御情報を通知された場合、個々の外部システム20は、メッセージ交換システム10を経由せずに、他の外部システム20と直接メッセージの送受信を行うことが可能になる。
【0041】
図2は、メッセージ交換システムで流れるメッセージのデータ構造を示す。
プロトコル変換機121は、交換機11を流れる送受信データ(メッセージ)を、図2に示すようなデータ構造に正規化する。本実施形態では、プロトコル変換機121は、データ起源に関する任意の情報(制御情報)を付加情報として格納できるように、メッセージのデータ構造を拡張する。すなわち、プロトコル変換機121は、メッセージのデータ構造を拡張し、メッセージにデータ起源に関する任意の情報を付加情報として格納する。
【0042】
なお、図2の送受信データ40は、メッセージを示す。
【0043】
この送受信データ40は、宛先41と、データ格納部42と、付加情報43を含む。
【0044】
宛先41は、メッセージの宛先を示すデータを格納する。
【0045】
データ格納部42は、メッセージ本文と、メッセージに付随するデータ自体、或いはこれらのデータのストリーム(stream)を格納する。なお、ストリームとは、データの入力又は出力の機能を提供する抽象データ型である。一般的なストリーム通信では、一方の側でストリームにデータ書き込むと、他方の側でこのデータを受け取ることができる。
【0046】
付加情報43は、外部システムのIPアドレス431と、外部システムのアカウント432と、プロトコル情報433を含む。但し、これらは一例に過ぎない。
【0047】
外部システムのIPアドレス431は、他の外部システム20のIPアドレス、又はドメイン名、或いはその他の識別情報を格納する。
【0048】
外部システムのアカウント432は、他の外部システム20に接続するためのアカウント情報を格納する。なお、他の外部システム20に接続する際にパスワードが必要な場合、外部システムのアカウント432は、アカウント情報と共に、パスワード情報も格納するようにしても良い。例えば、外部システムのアカウント432は、アカウント情報に、他の外部システム20に接続するためのアカウント(ID)とパスワードを含むようにしても良い。
【0049】
プロトコル情報433は、他の外部システム20との間でメッセージを送受信する際の通信プロトコルを示す情報を格納する。
【0050】
次に、図3、図4、図5を参照し、バス転送型のメッセージ交換システムの動作について説明する。
ここでは、プロトコル変換機121は、予め送信側と受信側のそれぞれで外部システムのIPアドレス、接続するためのアカウント情報等の接続情報を保持している。
【0051】
図3は、本実施形態のメッセージ交換システムのシーケンス図を示す。
図3において、プロトコル変換機121−1は、メッセージ送信側のプロトコル変換機121を示す。外部システム20−1は、メッセージ送信側の外部システム20を示す。同様に、プロトコル変換機121−2は、メッセージ受信側のプロトコル変換機121を示す。外部システム20−2は、メッセージ受信側の外部システム20を示す。
【0052】
(1)ステップS101
メッセージ送信側のプロトコル変換機121は、メッセージ送信側の外部システム20に、メッセージ受信側の外部システム20へ送信するメッセージ(送信メッセージ)が存在するか問い合わせる。
【0053】
(2)ステップS102
メッセージ送信側のプロトコル変換機121は、送信メッセージが存在する場合、送信メッセージの宛先、送信メッセージ本文、及び付加情報を、送信データに付加し、この送信データを交換機11に送信する。
【0054】
(3)ステップS103
メッセージ受信側のプロトコル変換機121は、交換機11を介して、この送信データを受信する。
【0055】
(4)ステップS104
メッセージ受信側のプロトコル変換機121は、メッセージ送信側の外部システム20へ、メッセージ受信側の外部システム20の接続情報を送信する。
【0056】
(5)ステップS105
或いは、メッセージ受信側のプロトコル変換機121は、メッセージ受信側の外部システム20に対して、メッセージ送信側の外部システム20から付加情報として受信したメッセージ転送用の接続情報を送信する。
【0057】
(6)ステップS106
メッセージ受信側のプロトコル変換機121は、メッセージ受信側の外部システム20に対して、メッセージ本文、及びメッセージに付随するデータの転送開始を指示する。
【0058】
(7)ステップS107
メッセージ受信側の外部システム20は、メッセージ送信側の外部システム20に対して接続する。
【0059】
(8)ステップS108
メッセージ受信側の外部システム20は、メッセージ送信側の外部システム20からのメッセージの受信を開始する。
【0060】
(9)ステップS109
メッセージ受信側の外部システム20は、メッセージ送信側の外部システム20から全てのメッセージを受信したら、メッセージ受信側のプロトコル変換機121に転送完了を通知する。
(10)ステップS110
メッセージ受信側のプロトコル変換機121は、交換機11を介して、メッセージ送信側のプロトコル変換機121に、転送完了を通知する。
【0061】
(11)ステップS111
メッセージ送信側のプロトコル変換機121は、転送完了の通知を受け取り、メッセージ転送を完了する。
【0062】
図4は、本実施形態におけるメッセージ送信側のプロトコル変換機のフローである。
【0063】
(1)ステップS201
メッセージ送信側のプロトコル変換機121は、メッセージ送信側の外部システム20に、メッセージ受信側の外部システム20へ送信するメッセージ(送信メッセージ)が存在するか問い合わせる。ここでは、プロトコル変換機121は、メッセージ送信側の外部システム20にメッセージが蓄積されているか確認し、メッセージが蓄積されていれば、蓄積されたメッセージを送信メッセージと判断し、送信メッセージが存在すると判断する。
【0064】
(2)ステップS202
メッセージ送信側のプロトコル変換機121は、送信メッセージが存在する場合、送信メッセージの宛先、送信メッセージ本文、及び送信メッセージに付随するデータのストリームに基づいて、交換機11への送信データを構築する。
【0065】
(3)ステップS203
メッセージ送信側のプロトコル変換機121は、送信メッセージに付随するデータのID、及びプロトコル変換機121が保有するメッセージ送信側の外部システム20の接続情報を付加情報として送信データに付加する。
【0066】
(4)ステップS204
メッセージ送信側のプロトコル変換機121は、交換機11に送信データを送信する。
【0067】
図5は、本実施形態におけるメッセージ受信側のプロトコル変換機のフローである。
【0068】
(1)ステップS301
メッセージ受信側のプロトコル変換機121は、交換機11を介して、送信データを受信する。ここでは、メッセージ受信側のプロトコル変換機121は、メッセージ送信側のプロトコル変換機121から交換機11を介して送信された送信データを受信する。受信された送信データは、交換機11からの受信データとなる。
【0069】
(2)ステップS302
メッセージ受信側のプロトコル変換機121は、交換機11からの受信データに付加情報が含まれており、且つ、外部システム20間で直接メッセージ転送が可能であるか判断する。ここでは、メッセージ受信側のプロトコル変換機121は、交換機11からの受信データから付加情報を取得でき、且つ、外部システム20間で直接メッセージ転送が可能であるか判断する。例えば、メッセージ受信側のプロトコル変換機121は、付加情報を参照した結果、メッセージ送信側の外部システム20とメッセージ受信側の外部システム20とが同じプロトコルで通信している場合、或いは、IPアドレス等からメッセージ送信側の外部システム20とメッセージ受信側の外部システム20とが同一ネットワークに所属していると判明した場合、外部システム20間で直接メッセージ転送が可能であると判断する。
【0070】
(3)ステップS303
メッセージ受信側のプロトコル変換機121は、交換機11からの受信データから付加情報を取得でき、且つ、外部システム20間で直接メッセージ転送が可能である場合、交換機11からの受信データに含まれるメッセージ本文のストリームを閉じ、付加情報から取得したメッセージ送信側の外部システム20へメッセージ受信側の接続情報を送信する。
【0071】
(4)ステップS304
一方、メッセージ受信側のプロトコル変換機121は、交換機11からの受信データから付加情報を取得できなかった場合、或いは、付加情報に保持されているプロトコル情報から外部システム20間で直接メッセージ転送ができないと判断された場合は、交換機11からの受信データに含まれるストリームに基づいて、交換機11を経由したメッセージ転送を行う。
【0072】
(5)ステップS305
メッセージ受信側のプロトコル変換機121は、全ての送信データを受信したら、メッセージ送信側の外部システム20から転送完了の通知を受け取り、メッセージの転送を完了する。このとき、メッセージ受信側のプロトコル変換機121は、交換機11を介して、メッセージ送信側のプロトコル変換機121に転送完了を通知する。
【0073】
このように、本発明のメッセージ交換システムは、交換機とルーティング情報蓄積装置を有し、サービスを提供する外部システムからのメッセージを送受信する装置とそのメッセージのプロトコルを変換する装置からなるサブシステムを持つバス転送型のメッセージ交換システムにおいて、メッセージ本文ならびににメッセージに付随するデータを交換機を介せず、外部システムが有するメッセージ送受信装置の制御情報のみを交換機を通じて転送し、メッセージ送信側と受信側の外部システム間で直接メッセージを送受信することを実現するものである。
【0074】
ここでいう外部システムのメッセージ送受信装置とは、データを転送することが可能な装置である。メッセージ送受信装置の例として、FTP(File Transfer Protocol)サーバや、HTTP(HyperText Transfer Protocol)サーバ(Webサーバ)、SMTP(Simple Mail Transfer Protocol)/POP(Post Office Protocol)サーバ(メールサーバ)、Telnetサーバ、SSL(Secure Socket Layer)サーバ等が考えられる。他にも、携帯端末や、ワークステーション、シンクライアント端末等が考えられる。但し、実際には、これらの例に限定されない。
【0075】
また、他の観点では、本発明のメッセージ交換システムは、メッセージ交換システムが持つサブシステム内のプロトコル変換機に、付加情報を検出する機能と、付加情報を利用して外部システム間で直接メッセージを送受信するための制御情報を使用して外部システム間で直接メッセージを転送する機能を追加し、メッセージ本文が交換機を経由しないでメッセージ転送を行うものである。
【0076】
なお、付加情報が検出されなかった場合や、外部システムが直接転送できない場合、或いはメッセージの送受信先のプロトコルが合致しない場合では、従来どおりメッセージ本文やメッセージに付随するデータを交換機を経由してメッセージ転送を実現する。
【0077】
本発明を適用することで、交換機を経由するメッセージの内容が外部サービス間のメッセージ転送制御情報のみになり、交換機でメッセージ本文、及びメッセージに付随するデータのコピーが不要のため、処理性能が向上する。
【0078】
また、処理性能の向上に伴い、交換機の処理が減少するため交換機が動作するサーバの負荷が減少し、メッセージ処理件数を増加させることが可能となる。
【0079】
更に、交換機へはメッセージ本文及びメッセージに付随するデータが流入しないため、交換機が動作するサーバに対するメッセージ量が減少し、ネットワークの負荷が減少する。
【0080】
以下に、本発明の第2実施形態について説明する。
第1実施形態のバス転送型のメッセージ交換システムでは、交換機を経由して送信するデータは、外部システム間のメッセージ転送制御情報のみであったが、メッセージ本文、及びメッセージに付随するデータを交換機を経由して転送する別方式と組み合わせ、選択的に使用することも可能である。本実施形態では、第1実施形態のバス転送型のメッセージ交換システムと、上記の別方式を選択して使用する事例について説明する。
【0081】
図6は、交換機を経由してメッセージ本文、及びメッセージに付随するデータを転送する別方式のシーケンス図である。
【0082】
(1)ステップS401
メッセージ送信側のプロトコル変換機121は、メッセージ送信側の外部システム20に、メッセージ受信側の外部システム20へ送信するメッセージ(送信メッセージ)が存在するか問い合わせる。
【0083】
(2)ステップS402
メッセージ送信側のプロトコル変換機121は、送信メッセージが存在する場合、送信メッセージ本文、及び送信メッセージに付随するデータを交換機11に送信する。
【0084】
(3)ステップS403
メッセージ受信側のプロトコル変換機121は、交換機11を介して、メッセージ本文、及びメッセージに付随するデータを受信する。
【0085】
(4)ステップS404
メッセージ受信側のプロトコル変換機121は、メッセージ受信側の外部システム20に対して、メッセージ本文、及びメッセージに付随するデータを転送する。
【0086】
(5)ステップS405
メッセージ受信側のプロトコル変換機121は、メッセージ受信側の外部システム20に全てのメッセージを受信したら、交換機11を介して、転送完了を、メッセージ送信側のプロトコル変換機121に通知する。このとき、メッセージ受信側のプロトコル変換機121は、メッセージ受信側の外部システム20から転送完了の通知を受け取るようにしても良い。
【0087】
(6)ステップS406
メッセージ送信側のプロトコル変換機121は、転送完了の通知を受け取り、メッセージ転送を完了する。
【0088】
この時、プロトコル変換機121は、メッセージの転送開始と転送完了の時間に基づいて、メッセージ転送に要した時間を導出(算出)し、メッセージ送信先情報と合わせて保持しておく。
【0089】
また、図3に示すような第1実施形態によるメッセージの転送開始と転送完了の時間に基づいて、メッセージ転送に要した時間を導出し、メッセージ転送先情報と合わせて保持しておく。
【0090】
メッセージ送信側のプロトコル変換機121は、メッセージ転送完了毎にこの情報を更新し、次回メッセージ転送時には、図7に示すように、交換機11へデータを送信する。
【0091】
図7は、本実施形態におけるメッセージ送信側のプロトコル変換機のフローである。
【0092】
(1)ステップS501
メッセージ送信側のプロトコル変換機121は、メッセージ送信側の外部システム20に、メッセージ受信側の外部システム20へ送信するメッセージ(送信メッセージ)が存在するか問い合わせる。
【0093】
(2)ステップS502
メッセージ送信側のプロトコル変換機121は、送信メッセージが存在する場合、送信メッセージの宛先、送信メッセージ本文、及びメッセージに付随するデータのストリームに基づいて、交換機11への送信データを構築する。
【0094】
(3)ステップS503
メッセージ送信側のプロトコル変換機121は、別方式でのメッセージ転送に要した時間と、本発明によるバイパス転送方式のメッセージ転送方式でのメッセージ転送に要した時間とを比較して、どちらが高速か判定する。このとき、メッセージ送信側のプロトコル変換機121は、メッセージ転送に要した時間が短い方を高速であると判定する。なお、メッセージ送信側のプロトコル変換機121は、前述の通り、それぞれの方式について、メッセージ転送に要した時間を、メッセージ送信先情報と合わせて保持している。
【0095】
(4)ステップS504
メッセージ送信側のプロトコル変換機121は、別方式よりも本発明によるバイパス転送方式の方が高速である場合、送信メッセージ本文、送信メッセージに付随するデータのID、及びプロトコル変換機121が保有するメッセージ送信側の外部システム20の接続情報を付加情報として送信データに付加する。また、メッセージ送信側のプロトコル変換機121は、別方式よりも本発明によるバイパス転送方式の方が高速でない場合、何もしない。
【0096】
(5)ステップS505
メッセージ送信側のプロトコル変換機121は、この送信データを交換機11に送信する。
【0097】
このように、メッセージ転送時間の短い方を選択することで、他の方式と、本発明による方式のうち、最適な方でメッセージの転送を行うことが可能となる。
【0098】
以上のように、本発明は、バス転送型のメッセージ交換システムにおいて、外部システムから送信されるメッセージの制御データのみをメッセージ交換システムで処理し、メッセージ本文は外部サービス間で直接転送することにより、メッセージ交換システムの負荷を低減し、効率的にメッセージ転送を行うことを特徴としている。
【0099】
本発明では、外部システムと交換機で送受信するデータ構造を拡張し、データ内にデータの起源に関する情報を付加する。
【0100】
本発明によるメッセージ交換システムでは、サービスを提供する外部システムへ接続するためのプロトコルを処理するサブシステム内に、交換機と送受信するデータ(交換機とサブシステムとの間で送受信されるデータ)の付加情報の検出機能を有し、データに付加された情報を使用して、「メッセージ本文」ではなく、外部システム間で直接メッセージ転送するための「制御情報」のみを扱う機能を追加し、メッセージ本文、及びメッセージに付随するデータを交換機経由にしない通信方法を実現する。
【0101】
すなわち、本発明では、バス転送型のメッセージ交換システムにおいて、外部システム間で送受信するメッセージ本文及びメッセージに付随するデータのみをメッセージ交換システムで処理する。
【0102】
また、バス転送型のメッセージ交換システムにおいて、メッセージ交換システムにあるサブシステム内のプロトコル変換機で付加情報検出する方法とその情報を用いて外部システム間でメッセージの転送を制御する。
【0103】
更に、バス転送型のメッセージ交換システムにおいて、メッセージ交換システムにあるサブシステム内のプロトコル変換機で付加したネットワーク環境の情報を元に交換機を経由したメッセージ転送と外部システム間で直接メッセージ転送の一方を選択し最適な方法でメッセージ転送を行う。
【0104】
以上、本発明の実施形態を詳述してきたが、実際には上記の実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の変更があっても本発明に含まれる。
【図面の簡単な説明】
【0105】
【図1】図1は、本発明の第1実施形態におけるバス転送型のメッセージ交換システムの全体図である。
【図2】図2は、メッセージ交換システムで流れるメッセージのデータ構造を示す図である。
【図3】図3は、本発明の第1実施形態におけるメッセージ交換システムのシーケンス図である。
【図4】図4は、本発明の第1実施形態におけるメッセージ送信側のプロトコル変換機の動作を示すフローチャートである。
【図5】図5は、本発明の第1実施形態におけるメッセージ受信側のプロトコル変換機の動作を示すフローチャートである。
【図6】図6は、交換機を経由してメッセージ本文、及びメッセージに付随するデータを転送する別方式のシーケンス図である。
【図7】図7は、本発明の第2実施形態におけるメッセージ送信側のプロトコル変換機の動作を示すフローチャートである。
【符号の説明】
【0106】
10… メッセージ交換システム
11… 交換機
111… ルーティング情報蓄積装置
12(−i、i=1〜n)… サブシステム
121(−i、i=1〜n)… プロトコル変換機
1211(−i、i=1〜n)… 付加情報挿入部
1212(−i、i=1〜n)… 付加情報参照部
1213(−i、i=1〜n)… メッセージ正規化部
1214(−i、i=1〜n)… メッセージ非正規化部
122(−i、i=1〜n)… メッセージ送受信装置
20(−i、i=1〜n)… 外部システム
21(−i、i=1〜n)… メッセージ送受信装置
211(−i、i=1〜n)… 送信部
212(−i、i=1〜n)… 受信部
22(−i、i=1〜n)… メッセージ蓄積装置
30(−i、i=1〜n)… ネットワーク
40… 送受信データ
41… 宛先
42… データ格納部
43… 付加情報
431… 外部システムのIPアドレス
432… 外部システムのアカウント
433… プロトコル情報

【特許請求の範囲】
【請求項1】
複数の外部システムの各々とそれぞれ対になるようにネットワークを介して接続された複数のサブシステムと、
前記複数のサブシステムの各々の間でデータの送受信を仲介する交換機と
を含み、
前記各サブシステムは、前記各外部システム間で送受信されるメッセージ本文及び前記メッセージに付随する制御情報を処理し、前記制御情報を用いて、前記各外部システム間で前記交換機を経由せずに直接メッセージを送受信するための制御を行う
メッセージ交換システム。
【請求項2】
請求項1に記載のメッセージ交換システムであって、
前記各サブシステムは、前記メッセージの送信側の外部システムに前記メッセージが蓄積されており、前記メッセージの送信側の外部システムと前記メッセージの送信側の外部システムとが直接メッセージ転送可能であれば、前記メッセージ本文及び前記制御情報を処理し、前記メッセージの受信側の外部システムに前記制御情報を通知し、
前記メッセージの送信側の外部システムは、前記制御情報に基づいて、前記交換機を経由せずに、前記メッセージの送信側の外部システムとの間で直接メッセージ転送を行う
メッセージ交換システム。
【請求項3】
請求項1又は2に記載のメッセージ交換システムであって、
前記各サブシステムは、
前記メッセージを受信した際に、前記メッセージから前記制御情報を検出し、前記メッセージを送信する際に、前記メッセージのデータ構造を拡張し、前記メッセージの送信側の外部システムの接続情報を前記制御情報として格納するプロトコル変換手段と、
前記ネットワークを介して接続された外部システムとの間で、前記メッセージの送受信を行うメッセージ送受信手段と
を具備する
メッセージ交換システム。
【請求項4】
請求項3に記載のメッセージ交換システムであって、
前記プロトコル変換手段は、
前記交換機へ送信するためのメッセージを正規化し、前記メッセージのデータ構造を拡張するメッセージ正規化手段と、
前記交換機へ送信するためのメッセージに、前記制御情報を挿入する付加情報挿入手段と、
前記交換機から受信したメッセージに挿入された前記制御情報を検出し参照する付加情報参照手段と、
前記交換機から受信したメッセージを前記メッセージの受信側の外部システムに合わせたプロトコルへ変換するメッセージ非正規化手段と
を具備する
メッセージ交換システム。
【請求項5】
請求項1乃至4のいずれか一項に記載のメッセージ交換システムであって、
前記各サブシステムは、前記交換機を経由してメッセージを転送した際のメッセージ転送に要した時間を示す情報と、前記交換機を経由せずに前記各外部システム間で直接メッセージを転送した際のメッセージ転送に要した時間を示す情報とを、メッセージ転送先情報と合わせて保持し、メッセージ転送完了毎に保持された情報を更新し、次回メッセージ転送時に、前記交換機を経由してメッセージを転送した際のメッセージ転送に要した時間と、前記交換機を経由せずに前記各外部システム間で直接メッセージを転送した際のメッセージ転送に要した時間とを比較して、いずれが高速か判断し、前記交換機を経由せずに前記各外部システム間で直接メッセージを転送した方が高速である場合、前記交換機へ送信するためのメッセージに前記制御情報を付加し、前記制御情報が付加されたメッセージを前記交換機へ送信する
メッセージ交換システム。
【請求項6】
交換機により、複数の外部システムの各々とそれぞれ対になるようにネットワークを介して接続された複数のサブシステムの各々の間でデータの送受信を仲介するステップと、
前記各サブシステムにより、前記各外部システム間で送受信されるメッセージ本文及び前記メッセージに付随する制御情報を処理し、前記制御情報を用いて、前記各外部システム間で前記交換機を経由せずに直接メッセージを送受信するための制御を行うステップと
を含む
バイパス転送方法。
【請求項7】
請求項6に記載のバイパス転送方法であって、
前記メッセージの送信側の外部システムに前記メッセージが蓄積されており、前記メッセージの送信側の外部システムと前記メッセージの送信側の外部システムとが直接メッセージ転送可能であれば、前記各サブシステムにより、前記メッセージ本文及び前記制御情報を処理し、前記メッセージの受信側の外部システムに前記制御情報を通知するステップと、
前記各外部システムにより、前記制御情報に基づいて、前記交換機を経由せずに、前記メッセージの送信側の外部システムとの間で直接メッセージ転送を行うステップと
を更に含む
バイパス転送方法。
【請求項8】
請求項6又は7に記載のバイパス転送方法であって、
前記各サブシステムにより、前記ネットワークを介して接続された外部システムとの間で、前記メッセージの送受信を行うメッセージステップと、
前記メッセージを受信した際に、前記メッセージから前記制御情報を検出するステップと、
前記メッセージを送信する際に、前記メッセージのデータ構造を拡張し、前記メッセージの送信側の外部システムの接続情報を前記制御情報として格納するステップと
を更に含む
バイパス転送方法。
【請求項9】
請求項8に記載のバイパス転送方法であって、
前記交換機へ送信するためのメッセージを正規化し、前記メッセージのデータ構造を拡張するステップと、
前記交換機へ送信するためのメッセージに、前記制御情報を挿入するステップと、
前記交換機から受信したメッセージに挿入された前記制御情報を検出し参照するステップと、
前記交換機から受信したメッセージを前記メッセージの受信側の外部システムに合わせたプロトコルへ変換するステップと
を更に含む
バイパス転送方法。
【請求項10】
請求項6乃至9のいずれか一項に記載のバイパス転送方法であって、
前記各サブシステムにより、前記交換機を経由してメッセージを転送した際のメッセージ転送に要した時間を示す情報と、前記交換機を経由せずに前記各外部システム間で直接メッセージを転送した際のメッセージ転送に要した時間を示す情報とを、メッセージ転送先情報と合わせて保持し、メッセージ転送完了毎に保持された情報を更新するステップと、
次回メッセージ転送時に、前記交換機を経由してメッセージを転送した際のメッセージ転送に要した時間と、前記交換機を経由せずに前記各外部システム間で直接メッセージを転送した際のメッセージ転送に要した時間とを比較して、いずれが高速か判断し、前記交換機を経由せずに前記各外部システム間で直接メッセージを転送した方が高速である場合、前記交換機へ送信するためのメッセージに前記制御情報を付加し、前記制御情報が付加されたメッセージを前記交換機へ送信するステップと
を更に含む
バイパス転送方法。
【請求項11】
交換機により、複数の外部システムの各々とそれぞれ対になるようにネットワークを介して接続された複数のサブシステムの各々の間でデータの送受信を仲介するステップと、
前記各サブシステムにより、前記各外部システム間で送受信されるメッセージ本文及び前記メッセージに付随する制御情報を処理し、前記制御情報を用いて、前記各外部システム間で前記交換機を経由せずに直接メッセージを送受信するための制御を行うステップと
をコンピュータに実行させるための
プログラム。
【請求項12】
請求項11に記載のプログラムであって、
前記メッセージの送信側の外部システムに前記メッセージが蓄積されており、前記メッセージの送信側の外部システムと前記メッセージの送信側の外部システムとが直接メッセージ転送可能であれば、前記各サブシステムにより、前記メッセージ本文及び前記制御情報を処理し、前記メッセージの受信側の外部システムに前記制御情報を通知するステップと、
前記各外部システムにより、前記制御情報に基づいて、前記交換機を経由せずに、前記メッセージの送信側の外部システムとの間で直接メッセージ転送を行うステップと
を更にコンピュータに実行させるための
プログラム。
【請求項13】
請求項11又は12に記載のプログラムであって、
前記各サブシステムにより、前記ネットワークを介して接続された外部システムとの間で、前記メッセージの送受信を行うメッセージステップと、
前記メッセージを受信した際に、前記メッセージから前記制御情報を検出するステップと、
前記メッセージを送信する際に、前記メッセージのデータ構造を拡張し、前記メッセージの送信側の外部システムの接続情報を前記制御情報として格納するステップと
を更にコンピュータに実行させるための
プログラム。
【請求項14】
請求項13に記載のプログラムであって、
前記交換機へ送信するためのメッセージを正規化し、前記メッセージのデータ構造を拡張するステップと、
前記交換機へ送信するためのメッセージに、前記制御情報を挿入するステップと、
前記交換機から受信したメッセージに挿入された前記制御情報を検出し参照するステップと、
前記交換機から受信したメッセージを前記メッセージの受信側の外部システムに合わせたプロトコルへ変換するステップと
を更にコンピュータに実行させるための
プログラム。
【請求項15】
請求項11乃至14のいずれか一項に記載のプログラムであって、
前記各サブシステムにより、前記交換機を経由してメッセージを転送した際のメッセージ転送に要した時間を示す情報と、前記交換機を経由せずに前記各外部システム間で直接メッセージを転送した際のメッセージ転送に要した時間を示す情報とを、メッセージ転送先情報と合わせて保持し、メッセージ転送完了毎に保持された情報を更新するステップと、
次回メッセージ転送時に、前記交換機を経由してメッセージを転送した際のメッセージ転送に要した時間と、前記交換機を経由せずに前記各外部システム間で直接メッセージを転送した際のメッセージ転送に要した時間とを比較して、いずれが高速か判断し、前記交換機を経由せずに前記各外部システム間で直接メッセージを転送した方が高速である場合、前記交換機へ送信するためのメッセージに前記制御情報を付加し、前記制御情報が付加されたメッセージを前記交換機へ送信するステップと
を更にコンピュータに実行させるための
プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate


【公開番号】特開2010−45630(P2010−45630A)
【公開日】平成22年2月25日(2010.2.25)
【国際特許分類】
【出願番号】特願2008−208526(P2008−208526)
【出願日】平成20年8月13日(2008.8.13)
【出願人】(000004237)日本電気株式会社 (19,353)
【Fターム(参考)】