(57)【要約】【課題】処理を行うホスト側に対して複数の物理端末から通信要求が行われる場合に、ホスト側のリソースを適切に配分しつつ、各物理端末からの流量制御を適切に行うことができる通信制御システムを提供する。【解決手段】電文管理部８１は、受信した電文を送信した物理端末にエラーを示す電文を返信する処理、または、受信した電文を接続先割当部８３に送信する処理を行う。接続先割当部８３は、割り当て可能な通信パスが存在しない場合、割り当て可能な通信パスが見つかるまで受信した電文を保留し、割り当て可能な通信パスが見つかったときに、保留した電文を割り当て可能な通信パスに割り当てる。【選択図】図６
2015220667.tif 000002
【特許請求の範囲】
【請求項１】
ホストシステムと複数の物理端末との間の通信を制御する通信制御システムであって、
前記物理端末ごとに確立される接続を介して受信する電文を管理する電文管理部と、
前記ホストシステムとの間に確立される通信パスの使用状況を管理する接続先管理部と、
前記接続先管理部が管理する通信パスの使用状況に基づいて、受信した電文に未使用の前記通信パスを割り当てる接続先割当部とを備え、
前記電文管理部は、受信した電文を送信した物理端末にエラーを示す電文を返信する処理、または、受信した電文を前記接続先割当部に送信する処理を行い、
前記接続先割当部は、割り当て可能な通信パスが存在しない場合、割り当て可能な通信パスが見つかるまで受信した電文を保留し、割り当て可能な通信パスが見つかったときに、保留した電文を前記割り当て可能な通信パスに割り当てる
ことを特徴とする通信制御システム。
【請求項２】
物理端末ごとの接続を確立する物理端末接続部を備え、
前記物理端末接続部は、確立した物理端末との接続状態を監視する
請求項１記載の通信制御システム。
【請求項３】
接続先管理部は、接続先割当部によって電文に割り当てられた通信パスの使用状況を使用中に設定し、前記電文に対するホストシステムの処理が完了したときに、当該電文に割り当てられた通信パスの使用状況を未使用に設定する
請求項１または請求項２記載の通信制御システム。
【請求項４】
電文管理部は、受信した電文をホストシステムへ送信することにより、通信制御システム内の所定の諸元値が予め定めた閾値を超える場合に、当該電文を送信した物理端末にエラーを示す電文を返信する処理を行う
請求項１から請求項３のうちのいずれか１項に記載の通信制御システム。
【請求項５】
電文管理部は、物理端末から受信した電文に対する処理が完了する前に、同一の物理端末から電文を受信した場合、当該電文を送信した物理端末にエラーを示す電文を返信する処理を行う
請求項１から請求項４のうちのいずれか１項に記載の通信制御システム。
【請求項６】
電文管理部は、物理端末から受信した電文に含まれる発信元識別情報と、当該電文を受信した接続を示す情報とを対応付けた端末接続情報を保持し、受信した電文に対して行われたホストシステムによる処理結果を送信する物理端末を、前記端末接続情報を用いて特定する
請求項１から請求項５のうちのいずれか１項に記載の通信制御システム。
【請求項７】
複数の物理端末と、
前記物理端末からの要求を処理するホストシステムと、
前記物理端末と前記ホストシステムとの間の通信を制御する通信制御システムとを備え、
前記通信制御システムは、
前記物理端末ごとに確立される接続を介して受信する電文を管理する電文管理部と、
前記ホストシステムとの間に確立される通信パスの使用状況を管理する接続先管理部と、
前記接続先管理部が管理する通信パスの使用状況に基づいて、受信した電文に未使用の前記通信パスを割り当てる接続先割当部とを含み、
前記電文管理部は、受信した電文を送信した物理端末にエラーを示す電文を返信する処理、または、受信した電文を前記接続先割当部に送信する処理を行い、
前記接続先割当部は、割り当て可能な通信パスが存在しない場合、割り当て可能な通信パスが見つかるまで受信した電文を保留し、割り当て可能な通信パスが見つかったときに、保留した電文を前記割り当て可能な通信パスに割り当てる
ことを特徴とする通信システム。
【請求項８】
通信制御システムは、物理端末ごとの接続を確立する物理端末接続部を備え、
前記物理端末接続部は、確立した物理端末との接続状態を監視する
請求項７記載の通信システム。
【請求項９】
ホストシステムと複数の物理端末との間の通信を制御する通信制御方法であって、
前記物理端末ごとに確立される接続を介して電文を受信し、
電文を受信したときに、当該電文を送信した物理端末にエラーを示す電文を返信する処理、または、当該電文を前記ホストシステムに対して送信する処理を行い、
前記ホストシステムとの間に確立される通信パスの使用状況に基づいて、割り当て可能な通信パスが存在しない場合、割り当て可能な通信パスが見つかるまで送信された電文を保留し、割り当て可能な通信パスが見つかったときに、保留した電文を前記割り当て可能な通信パスに割り当てる
ことを特徴とする通信制御方法。
【請求項１０】
物理端末ごとの接続を確立し、確立した物理端末との接続状態を監視する
請求項９記載の通信制御方法。
【請求項１１】
ホストシステムと複数の物理端末との間の通信を制御するコンピュータに適用される通信制御プログラムであって、
前記コンピュータに、
前記物理端末ごとに確立される接続を介して受信する電文を管理する電文管理処理、
前記ホストシステムとの間に確立される通信パスの使用状況を管理する接続先管理処理、および、
前記接続先管理処理で管理される通信パスの使用状況に基づいて、受信した電文に未使用の前記通信パスを割り当てる接続先割当処理を実行させ、
前記電文管理処理で、受信した電文を送信した物理端末にエラーを示す電文を返信する処理、または、前記接続先割当処理を行う手段に受信した電文を送信する処理を実行させ、
前記接続先割当処理で、割り当て可能な通信パスが存在しない場合、割り当て可能な通信パスが見つかるまで受信した電文を保留させ、割り当て可能な通信パスが見つかったときに、保留した電文を前記割り当て可能な通信パスに割り当てさせる
ための通信制御プログラム。
【請求項１２】
コンピュータに、
物理端末ごとの接続を確立する物理端末接続処理を実行させ、
前記物理端末接続処理で、確立した物理端末との接続状態を監視させる
請求項１１記載の通信制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の物理端末からの通信を制御する通信制御システム、通信システム、通信制御方法および通信制御プログラムに関する。
【背景技術】
【０００２】
銀行などの金融機関では、ホストシステムと物理端末との通信手順に、「全銀協標準通信プロトコル（ベーシック手順）」（以下、Ｚ手順と記す。）を用いることが多い。例えば、特許文献１には、Ｚ手順を用いて振込データのファイルを伝送する方法が記載されている。Ｚ手順は、例えば、銀行が備えるホストシステム（ホスト側）と、営業店端末などの物理端末との間で通信を行う際に利用され、一般に、ホスト側と物理端末とは一対一で接続される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００３−１６２５８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上述するように、Ｚ手順を用いる場合、ホスト側と物理端末とが一対一に接続される。そのため、ホスト側は、物理端末数分の通信先を物理的に準備し、管理する必要がある。すなわち、この場合、ホスト側は、接続される物理端末数に応じてリソースを用意しなければならないという問題がある。
【０００５】
このような問題を解決するため、例えば、複数の物理端末を有する店舗ごとに、代表の物理端末を設定しておき、それ以外の店舗内の物理端末には、代表端末の枝番を設定する方法が考えられる。このようにすることで、各店舗から接続される物理端末は、見かけ上１台になるため、ホスト側が用意しなければならないリソースを削減することができる。
【０００６】
しかし、このような方法を用いたとしても、各店舗（具体的には、代表の物理端末）に対して配分されるリソースは固定的である。そのため、ある店舗ではリソースが枯渇している一方で、他の店舗ではリソースが余っているといった偏りが生じてしまうという問題がある。
【０００７】
そこで、複数の物理端末からの通信を受信し、受信した通信をホスト側の負荷に応じて振り分けることも考えられる。しかし、一度処理を受け付けたにも関わらず、ホスト側の負荷により処理が行えないとすると、処理が完了できなかったことによる影響だけでなく、システムの信頼性を損なう結果となってしまう。そのため、処理を行うホスト側に対して複数の物理端末から通信要求が行われる場合に、ホスト側のリソースを適切に配分しつつ、各物理端末からの流量制御を適切に行えることが望ましい。
【０００８】
そこで、本発明は、処理を行うホスト側に対して複数の物理端末から通信要求が行われる場合に、ホスト側のリソースを適切に配分しつつ、各物理端末からの流量制御を適切に行うことができる通信制御システム、通信システム、通信制御方法および通信制御プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明による通信制御システムは、ホストシステムと複数の物理端末との間の通信を制御する通信制御システムであって、物理端末ごとに確立される接続を介して受信する電文を管理する電文管理部と、ホストシステムとの間に確立される通信パスの使用状況を管理する接続先管理部と、接続先管理部が管理する通信パスの使用状況に基づいて、受信した電文に未使用の通信パスを割り当てる接続先割当部とを備え、電文管理部が、受信した電文を送信した物理端末にエラーを示す電文を返信する処理、または、受信した電文を接続先割当部に送信する処理を行い、接続先割当部が、割り当て可能な通信パスが存在しない場合、割り当て可能な通信パスが見つかるまで受信した電文を保留し、割り当て可能な通信パスが見つかったときに、保留した電文を割り当て可能な通信パスに割り当てることを特徴とする。
【００１０】
本発明による通信システムは、複数の物理端末と、物理端末からの要求を処理するホストシステムと、物理端末とホストシステムとの間の通信を制御する通信制御システムとを備え、通信制御システムが、物理端末ごとに確立される接続を介して受信する電文を管理する電文管理部と、ホストシステムとの間に確立される通信パスの使用状況を管理する接続先管理部と、接続先管理部が管理する通信パスの使用状況に基づいて、受信した電文に未使用の通信パスを割り当てる接続先割当部とを含み、電文管理部が、受信した電文を送信した物理端末にエラーを示す電文を返信する処理、または、受信した電文を接続先割当部に送信する処理を行い、接続先割当部は、割り当て可能な通信パスが存在しない場合、割り当て可能な通信パスが見つかるまで受信した電文を保留し、割り当て可能な通信パスが見つかったときに、保留した電文を割り当て可能な通信パスに割り当てることを特徴とする。
【００１１】
本発明による通信制御方法は、ホストシステムと複数の物理端末との間の通信を制御する通信制御方法であって、物理端末ごとに確立される接続を介して電文を受信し、電文を受信したときに、その電文を送信した物理端末にエラーを示す電文を返信する処理、または、その電文をホストシステムに対して送信する処理を行い、ホストシステムとの間に確立される通信パスの使用状況に基づいて、割り当て可能な通信パスが存在しない場合、割り当て可能な通信パスが見つかるまで送信された電文を保留し、割り当て可能な通信パスが見つかったときに、保留した電文を割り当て可能な通信パスに割り当てることを特徴とする。
【００１２】
本発明による通信制御プログラムは、ホストシステムと複数の物理端末との間の通信を制御するコンピュータに適用される通信制御プログラムであって、コンピュータに、物理端末ごとに確立される接続を介して受信する電文を管理する電文管理処理、ホストシステムとの間に確立される通信パスの使用状況を管理する接続先管理処理、および、接続先管理処理で管理される通信パスの使用状況に基づいて、受信した電文に未使用の通信パスを割り当てる接続先割当処理を実行させ、電文管理処理で、受信した電文を送信した物理端末にエラーを示す電文を返信する処理、または、接続先割当処理を行う手段に受信した電文を送信する処理を実行させ、接続先割当処理で、割り当て可能な通信パスが存在しない場合、割り当て可能な通信パスが見つかるまで受信した電文を保留させ、割り当て可能な通信パスが見つかったときに、保留した電文を割り当て可能な通信パスに割り当てさせることを特徴とする。
【発明の効果】
【００１３】
本発明によれば、処理を行うホスト側に対して複数の物理端末から通信要求が行われる場合に、ホスト側のリソースを適切に配分しつつ、各物理端末からの流量制御を適切に行うことができる。
【図面の簡単な説明】
【００１４】
【図１】本発明による通信システムの一実施形態の構成例を示すブロック図である。
【図２】電文の例を示す説明図である。
【図３】通信システムの動作例を示すフローチャートである。
【図４】実施例における通信システムの構成例を示すブロック図である。
【図５】実施例における通信システムの構成例を示すブロック図である。
【図６】本発明による通信制御システムの概要を示すブロック図である。
【図７】本発明による通信システムの概要を示すブロック図である。
【発明を実施するための形態】
【００１５】
以下、本発明の実施形態を図面を参照して説明する。
【００１６】
図１は、本発明による通信システムの一実施形態の構成例を示すブロック図である。本実施形態の通信システムは、通信制御システム１０と、複数の物理端末３０と、ホストシステム４０とを備えている。通信制御システム１０は、複数の物理端末３０に接続され、また、ホストシステム４０は、通信制御システム１０に接続される。
【００１７】
ホストシステム４０は、物理端末３０の要求に応じて処理を行うシステムである。ホストシステム４０は、１台の装置から構成されていてもよく、複数の装置から構成されていてもよい。本実施形態のホストシステム４０は、複数の仮想端末を実現するものであり、各仮想端末は、各物理端末３０の要求に応じて動作する。
【００１８】
また、本実施形態では、ホストシステム４０と物理端末３０とは、１対多の関係にあるものとする。また、図１に例示する通信システムは、通信制御システム１０を１つ備えているが、接続される物理端末３０の数に応じて、通信制御システム１０を２つ以上備えていてもよい。なお、本発明を実現するために用いられるホストシステム４０の数は１つに限定されない。例えば、ホットスタンバイのようにシステム全体の信頼性を向上させるため、主系と待機系で同じ構成のホストシステム４０が２系統用意されてもよい。
【００１９】
通信制御システム１０は、物理端末監視部１１と、電文管理部１２と、接続先割当部１３と、接続先管理部１４と、接続情報保持部１５と、パス使用状況保持部１６と、電文保持部１７と、システム情報保持部１８と、メッセージ制御部１９とを含む。
【００２０】
システム情報保持部１８は、通信制御システム１０内の各構成要素が処理を行うために必要な情報を保持する。システム情報保持部１８は、例えば、各処理に必要なパラメータや初期情報、接続状態などの監視情報を保持する。システム情報保持部１８が保持する情報は、各構成要素から適宜追加および更新される。システム情報保持部１８は、例えば、磁気ディスク等により実現される。
【００２１】
接続情報保持部１５は、通信制御システム１０と物理端末３０との接続に関する情報を記憶する。パス使用状況保持部１６は、通信制御システム１０とホストシステム４０との接続に関する情報を記憶する。電文保持部１７は、通信制御システム１０が受信した電文を保持する。
【００２２】
なお、本実施形態では、通信制御システム１０が、システム情報保持部１８以外に、接続情報保持部１５と、パス使用状況保持部１６と、電文保持部１７とを含む場合を例示している。ただし、システム情報保持部１８が、接続情報保持部１５、パス使用状況保持部１６および電文保持部１７が保持する各種情報をまとめて保持するようにしてもよい。
【００２３】
メッセージ制御部１９は、各構成要素間の通信に必要なメッセージの変換処理を行う。各構成要素間の通信は、メッセージ制御部１９を介して行われる。
【００２４】
物理端末監視部１１は、物理端末３０ごとに通信制御システム１０との接続状態を監視する。具体的には、物理端末監視部１１は、物理端末３０と一対一に対応するプロセス（スレッド）を物理端末の数だけ作成し、プロセスごとに各物理端末３０との接続処理を行う。物理端末監視部１１は、例えば、各物理端末３０へ定期的にヘルスチェックを行うことで、通信制御システム１０と物理端末３０との接続状態を監視する。
【００２５】
このように、本実施形態では、物理端末監視部１１が定期的に接続状態を監視するため、物理端末３０から電文の送信がない場合であっても、通信制御システム１０は、物理端末３０の状態を把握できる。
【００２６】
また、物理端末監視部１１は、各物理端末３０から送信される電文（上り電文）を受信し、メッセージ制御部１９を介して、受信した電文を電文管理部１２に送信する。図２は、物理端末３０から送信される電文の例を示す説明図である。図２に例示する電文は、電文の発信元を識別する発信ＩＤと、電文の送信先を識別する宛先ＩＤとを含む。また、物理端末３０から送信される電文には、図２に例示する情報以外に、ホストシステム４０に要求する処理に必要な各種情報を含む。電文は、例えば、ＴＣＰ／ＩＰ（Transmission Control Protocol/Internet Protocol ）の通信プロトコルに従ったフォーマットで作成されていてもよい。
【００２７】
電文管理部１２は、物理端末３０から受信した電文を管理する。具体的には、電文管理部１２は、電文を発信した物理端末３０の情報と、その電文を受信したプロセスとを対応付けて管理する。なお、このプロセスは、物理端末監視部１１が作成したプロセスである。電文管理部１２は、例えば、受信した電文中に含まれる発信ＩＤと、その電文を受信したプロセスを識別するプロセスＩＤとを対応付けた情報を接続情報保持部１５に登録してもよい。以下、この対応付けた情報を、端末接続情報と記すこともある。また、発信ＩＤは、発信元を識別するための情報であり、発信元識別情報と言うことができる。
【００２８】
また、電文管理部１２は、二重に電文を処理することを避けるため、受信した電文の処理が終了する前に同一の物理端末３０から電文を受信した場合、その電文に対するエラーを示す電文（以下、エラー電文と記す。）をその物理端末３０に返信してもよい。以下、二重の電文を処理するためのチェック処理を、二重電文チェックと記す。二重電文チェックの対象になる電文は、同一の内容の電文であってもよく、別の内容の電文であってもよい。
【００２９】
また、電文管理部１２は、物理端末３０から受信する電文の流量を抑制する制御を行ってもよい。具体的には、電文管理部１２は、物理端末３０から送信される電文を通信制御システム１０で受け付けることが不適切と判断した場合に、送信された電文に対するエラー電文を物理端末３０に返信する。すなわち、電文管理部１２は、電文を受け付ける前の早い段階で、エラー電文を物理端末３０に返信する。一方、不適切ではないと判断した場合、電文管理部１２は、メッセージ制御部１９を介して、受信した電文を接続先割当部１３に送信する。
【００３０】
ここで、電文を受け付けるとは、通信制御システム１０がホストシステム４０への処理要求を受諾することであり、単純に信号を受信することとは異なる。
【００３１】
電文管理部１２は、例えば、一定期間内に予め定められた上限数以上の電文を受信した時に、受信した電文をホストシステム４０へ送信することが不適切と判断してもよい。また、電文管理部１２は、受信した電文をホストシステム４０へ送信することにより、通信制御システム１０内の所定の諸元値が予め定めた閾値を超える場合に、不適切と判断してもよい。
【００３２】
他にも、電文管理部１２は、ホストシステム４０への経路が決まっていない、または、ホストシステム４０へ電文を送信できないと判断したときに、受信した電文をホストシステム４０へ送信することが不適切と判断してもよい。この場合、電文管理部１２は、ホストシステム４０の経路や各装置の監視状況を、例えば、システム情報保持部１８に記憶された各情報から判断すればよい。
【００３３】
なお、受信した電文をホストシステム４０へ送信することが不適切と判断する方法は、上述する方法に限定されない。
【００３４】
接続先管理部１４は、通信制御システム１０とホストシステム４０との接続状態を管理する。具体的には、接続先管理部１４は、ホストシステム４０に設けられる仮想端末に対応する数のプロセス（スレッド）を作成し、各プロセスにより確立される通信パスを介してホストシステム４０との接続処理を行う。
【００３５】
なお、本実施形態の通信システムでは、通信制御システム１０とホストシステム４０との間の通信パスの数は、ホストシステム４０が一定の性能を出せる数（すなわち、一定のサービスレベルを満たすことができる数）に設定される。この性能やサービスレベルは、実現する通信システムに応じて適宜設定され、その設定に応じて通信パスの数も設定される。したがって、設定される通信パスの上限も予め定められることになる。
【００３６】
そして、接続先管理部１４は、確立した通信パスの使用状況を管理する。接続先管理部１４は、後述する接続先割当部１３によって電文に割り当てられた通信パスの使用状況を使用中に設定してもよい。また、接続先管理部１４は、電文に対するホストシステム４０の処理が完了したときに、その電文に割り当てられた通信パスの使用状況を未使用に設定してもよい。
【００３７】
通信パスの使用状況は、例えば、パス使用状況保持部１６に記憶される。接続先管理部１４は、例えば、通信パスごとに、使用の有無を示すフラグを対応付けて管理してもよい。また、接続先管理部１４は、通信パスごとに、その通信パスを確立したスレッドの識別子や、接続時間などを対応付けて管理してもよい。
【００３８】
接続先割当部１３は、受信した電文をホストシステム４０に送信するための通信パスを、電文ごとに割り当てる。具体的には、接続先割当部１３は、電文を割り当て可能な未使用の通信パスを特定する。通信パスを特定する方法は任意であり、接続先割当部１３は、例えば、ラウンドロビンを用いて通信パスを特定する。
【００３９】
また、接続先割当部１３は、ホストシステム４０に電文を送信可能な通信パスが存在しない場合、電文を一時的に保留し、送信可能な通信パスが存在するようになったときに、保留した電文を順次ホストシステム４０に送信する。すなわち、接続先割当部１３は、割り当て可能な通信パスが存在しない場合、割り当て可能な通信パスが見つかるまで受信した電文を保留し、割り当て可能な通信パスが見つかったときに、その割り当て可能な通信パスに保留した電文を割り当てる。接続先割当部１３は、保留する電文を、例えば、電文保持部１７に記憶する。
【００４０】
すなわち、接続先割当部１３は、ホストシステム４０と通信可能な通信パスが埋まっている場合、すぐに物理端末３０にエラー電文を返信するのではなく、他の処理が終わるまで一時的に待機してから再度電文の送信を試みる。接続先割当部１３が通信パスを確認する間隔は、ホストシステム４０が行う処理に応じて定めておけばよい。
【００４１】
なお、ホストシステム４０により電文処理が完了すると、電文管理部１２は、接続先割当部１３および接続先管理部１４を介して、ホストシステム４０から処理結果を含む電文（下り電文）を受信する。この電文の宛先には、発信元の物理端末を識別する情報（例えば、発信ＩＤ）が含まれるため、電文管理部１２は、例えば、接続情報保持部１５に記憶された情報を参照してプロセスＩＤを特定する。そして、電文管理部１２は、そのプロセスＩＤで特定される処理で接続されている物理端末３０を特定し、その物理端末３０に対して処理結果を含む電文を送信する。
【００４２】
物理端末監視部１１と、電文管理部１２と、接続先割当部１３と、接続先管理部１４と、メッセージ制御部１９とは、プログラム（通信制御プログラム）に従って動作するコンピュータのＣＰＵによって実現される。例えば、プログラムは、通信制御システム１０の記憶部（図示せず）に記憶され、ＣＰＵは、そのプログラムを読み込み、プログラムに従って、物理端末監視部１１、電文管理部１２、接続先割当部１３、接続先管理部１４およびメッセージ制御部１９として動作してもよい。
【００４３】
物理端末監視部１１と、電文管理部１２と、接続先割当部１３と、接続先管理部１４と、メッセージ制御部１９とは、それぞれが専用のハードウェアで実現されていてもよい。また、接続情報保持部１５と、パス使用状況保持部１６と、電文保持部１７とは、例えば、メモリ等の記憶装置によって実現される。
【００４４】
次に、本実施形態の通信システムの動作を説明する。図３は、本実施形態の通信システムの動作例を示すフローチャートである。各物理端末３０がホストシステム４０に対する電文を通信制御システム１０に送信する前に、まず、物理端末監視部１１が、各物理端末３０と通信制御システム１０との接続を確立する。また、接続先管理部１４が、ホストシステム４０と通信制御システム１０との通信パスを確立する。なお、物理端末監視部１１は、各物理端末３０との接続状態を接続情報保持部１５に登録し、確立した接続状態を定期的に監視する。
【００４５】
物理端末監視部１１は、確立された接続を介して物理端末３０が通信制御システム１０に送信する電文を受信する（ステップＳ１１）。電文管理部１２は、受信した電文を受け付けることが不適切か否か判断する（ステップＳ１２）。不適切と判断した場合（ステップＳ１２におけるＹｅｓ）、電文管理部１２は、その電文を送信した物理端末３０に対してエラー電文を返信する（ステップＳ１３）。
【００４６】
一方、不適切と判断されなかった場合（ステップＳ１２におけるＮｏ）、電文管理部１２は、受信した電文を接続先割当部１３に送信する（ステップＳ１４）。接続先割当部１３は、受信した電文に割り当てる通信パスが存在するか否か判断する（ステップＳ１５）。通信パスが存在しないと判断した場合（ステップＳ１５におけるＮｏ）、接続先割当部１３は、割り当て可能な通信パスが見つかるまで受信した電文を保留する（ステップＳ１６）。そして、割り当て可能な通信パスが見つかったときに、接続先割当部１３は、保留した電文を、その割り当て可能な通信パスに割り当てる（ステップＳ１７）。
【００４７】
一方、ステップＳ１５において、割り当てる通信パスが存在すると判断した場合（ステップＳ１５におけるＹｅｓ）、接続先割当部１３は、受信した電文をその通信パスに割り当てる（ステップＳ１８）。
【００４８】
電文を割り当てる通信パスが決定されると、接続先管理部１４は、割り当てられた通信パスの使用状況を使用中に設定し（ステップＳ１９）、その通信パスを介してホストシステム４０との通信を行う（ステップＳ２０）。
【００４９】
ホストシステム４０による処理が完了すると、接続先管理部１４は、割り当てられた通信パスの使用状況を未使用に設定し（ステップＳ２１）、処理結果を示す電文を接続先割当部１３に送信する（ステップＳ２２）。接続先割当部１３は、受信した電文を電文管理部１２に送信する（ステップＳ２３）。電文管理部１２は、接続情報保持部１５を参照して物理端末３０を特定し、その物理端末３０に処理結果を示す電文を送信する（ステップＳ２４）。
【００５０】
以上のように、本実施形態では、物理端末監視部１１により物理端末３０ごとに接続が確立され、電文管理部１２が、確立される接続を介して受信する電文を管理する。また、接続先管理部１４が、ホストシステム４０との間に確立される予め定められた数の通信パスの使用状況を管理し、接続先割当部１３が、ホストシステム４０に送受信するための通信パスを受信した電文に割り当てる。
【００５１】
その際、電文管理部１２は、受信した電文を受け付けることが不適切と判断した場合に、その電文を送信した物理端末３０にエラー電文を返信し、受信した電文を受け付けることが適切と判断した場合に、その電文を接続先割当部１３に送信する。また、接続先割当部１３は、割り当て可能な通信パスが存在しない場合、割り当て可能な通信パスが見つかるまで受信した電文を保留し、割り当て可能な通信パスが見つかったときに、保留した電文を割り当て可能な通信パスに割り当てる。
【００５２】
そのような構成により、ホスト側（ホストシステム４０）に対して複数の物理端末から通信要求が行われる場合であっても、ホスト側のリソースを適切に配分しつつ、各物理端末からの流量制御を適切に行うことができる。
【００５３】
すなわち、本実施形態では、接続先割当部１３が電文単位でホスト側の通信先を動的に割り当てるため、ホスト側のリソースを適切に配分できる。また、本実施形態で示すように、ホスト側で一定のサービスレベルを満たすように制限された数の通信先しか設定されない場合であっても、電文管理部１２が、物理端末から送信される電文の流量を制御するため、多くの物理端末からの電文を適切に処理できる。
【００５４】
また、ホストシステム４０の負荷や処理数に余裕がある場合でも、通信制御システム１０自身の負荷や処理数が過大になり、物理端末３０からの電文を処理できない場合がある。そのため、ホストシステム４０の状態を監視して流量制御するだけでは、システム全体として適切に電文を処理できない可能性がある。
【００５５】
しかし、本実施形態では、電文管理部１２が物理端末３０から送信される電文の流量を制御し、一度受け付けた電文に対しては、接続先割当部１３が、責任を持ってホストシステム４０に送信する電文の流量を制御する。具体的には、接続先割当部１３は、ホストシステム４０に対して処理の依頼ができず、電文が送信できない場合、その電文を一旦保留し、処理が可能になった時点でホストシステム４０に再度電文を送信する。このように、本実施形態では、通信制御システム１０自身およびホストシステム４０の状況に応じて、各物理端末３０からの流量制御を動的に行うことができる。
【実施例】
【００５６】
以下、具体的な実施例により本発明を説明するが、本発明の範囲は以下に説明する内容に限定されない。図４および図５は、本実施例の通信システムの構成例を示すブロック図である。本実施例の通信システムは、ＨＵＢシステム１００と、物理端末２００および物理端末２００Ｓと、ホスト３００とを備えている。
【００５７】
物理端末２００は、制御部２０１と、問合せ部２０２とを含み、ＨＵＢシステム１００と通信網１１１を介して電文の送受信を行う。本実施例では、通信網１１１を介してＴＣＰ／ＩＰプロトコルに基づく通信が行われる。
【００５８】
また、物理端末２００Ｓは、制御部２０１と、問合せ部２０２と、シリアルプリンタ制御部（以下、ＳＰ制御部２０３と記す）を含む。物理端末２００Ｓは、ＳＰ（serial printer）２１０が接続されている点で物理端末２００と異なる。物理端末２００Ｓも、ＨＵＢシステム１００と通信網１１１を介して電文の送受信を行う。
【００５９】
以下、物理端末２００と物理端末２００Ｓをまとめて物理端末群と記し、物理端末２００が電文を送信する場合について説明する。本実施例では、物理端末２００と物理端末２００Ｓの台数は、あわせて１２００台を想定する。また、本実施例の物理端末２００および物理端末２００Ｓは、上記実施形態の物理端末３０に対応する。
【００６０】
本実施例のＨＵＢシステム１００は、上記実施形態の通信制御システム１０に対応する。本実施例では、ＨＵＢシステム１００を構成する装置により実行される各プロセスおよびサービスを主体として説明する。
【００６１】
ＨＵＢシステム１００の各処理は、物理ノード端末側通信機能プロセス１１０（以下、プロセス１１０と記す。）と、論理ノード端末業務機能プロセス１４０（以下、プロセス１４０と記す。）と、論理ノードホスト業務機能プロセス１６０（以下、プロセス１６０と記す。）と、物理ノードホスト通信機能プロセス１８０（以下、プロセス１８０と記す。）と、ＨＵＢサービス１３０，１５０，１７０により実現される。
【００６２】
プロセス１１０で行われる処理は、上記実施形態の物理端末監視部１１が行う処理に対応する。プロセス１４０で行われる処理は、上記実施形態の電文管理部１２が行う処理に対応する。プロセス１６０で行われる処理は、上記実施形態の接続先割当部１３が行う処理に対応する。プロセス１８０で行われる処理は、上記実施形態の接続先管理部１４が行う処理に対応する。ＨＵＢサービス１３０，１５０，１７０で行われる処理は、上記実施形態のメッセージ制御部１９が行う処理に対応する。
【００６３】
プロセス１１０では、チャネル１２０を介して通信を行うための複数のスレッド１２１，１２２が生成され、各スレッド内のセッション１２３，１２４では、プロトコルアダプタ１２５が通信網１１１を介して物理端末２００との通信を制御する。本実施例では、物理端末２００の台数に合わせて、通信網１１１が１２００本確立される。
【００６４】
プロセス１８０では、４２個のスレッド１８１が生成され、スレッドごとにホスト３００との通信パスが確立される。本実施例では、制御用の通信パスとして、下りの制御パス１８２と上りの制御パス１８３がそれぞれ１本ずつ、取引処理に用いられる通信パスとして、上りの取引パス１８４と下りの取引パス１８５がそれぞれ２０本ずつ、合計４２本確立される。また、本実施例では、通信パスを介してＯＬＦ／ＴＰ（Open Link Facilities/Transaction Processing ）プロトコルに基づく通信が行われる。
【００６５】
ホスト３００は、ＴＣＰ／ＩＰ通信上でトランザクション連携機能を実現するＯＬＦ／ＴＰ−ＵＴ（Unitary System）３１０を含み、各取引パスを介して通信する複数の仮想端末３１１を有する。
【００６６】
プロセス１４０およびプロセス１６０では、物理端末２００と仮想端末３１１の宛先制御が行われる。物理端末２００からホスト３００への上り電文の場合、仮想端末３１１への通信パス１８４，１８５が決定される。電文を送信する仮想端末３１１を決定する場合、どの物理端末２００から発信された電文かは意識されず、未使用の取引パスがラウンドロビンにて決定され、その取引パスに電文が割り当てられる。
【００６７】
一方、ホスト３００から物理端末２００への下り電文の場合、物理端末２００と接続される通信網１１１が特定される。上り電文に含まれる物理端末２００の発信ＩＤが、下り電文では宛先ＩＤに設定される。そこで、この宛先ＩＤの内容から物理端末２００が特定され、その物理端末２００に接続される通信網１１１を介して処理結果の電文が送信される。なお、通信網１１１は、物理端末２００と対で管理されている。
【００６８】
以下、本実施例の各プロセスで実現される機能を説明する。プロセス１１０では、物理端末通信機能および電文受付機能が実現される。物理端末監視機能は、物理端末２００と一対一に対応するプロセス（スレッド）を物理端末２００の数だけ用意し、物理端末２００に対して定期的にヘルスチェックを行うことで、物理端末２００の状態を監視する機能である。また、電文受付機能は、ＨＵＢシステム１００が物理端末２００からの電文（上り電文）を受け付ける機能である。
【００６９】
プロセス１４０では、電文管理機能と、二重電文チェック機能と、第一流量制御機能と、下り電文ルーティング機能が実現される。電文管理機能は、物理端末２００から受信した電文中の「発信ＩＤ」と、その電文を受け付けたプロセス（スレッド）とを関連付け、その電文処理が完了するまで管理する機能である。二重電文チェック機能は、電文処理が完了する前に、同一の物理端末２００から電文を受信した場合、その物理端末２００にエラー電文を返却する機能である。なお、同一の物理端末２００から受信する電文は、重複した同一内容の電文または別の内容の電文のいずれも対象とする。第一流量制御機能は、電文数が予め定められた上限値以上になった場合、「リソースビジー」を示すエラー電文を返却する機能である。下り電文ルーティング機能は、ホスト３００で処理された結果を示す電文（下り電文）に含まれる「宛先ＩＤ」から戻り先の物理端末２００を特定し、電文受付機能により受け付けたプロセス（スレッド）に電文をルーティングする機能である。
【００７０】
プロセス１８０では、接続先管理機能が実現される。接続先管理機能は、接続先であるホスト３００との通信に用いられる「取引パス」の空き状況を管理する機能である。
【００７１】
プロセス１６０では、接続先割当機能と、第二流量制御機能が実現される。接続先割当機能は、接続先管理機能で管理される取引パスのうち、未使用の取引パスにラウンドロビンで電文を割り当てる機能である。第二流量制御機能は、未使用の取引パスが存在しない（空きの取引パスがない）場合、一時的に電文をキューに保留し、取引パスに空きができた時点で保留した電文を順次処理する機能である。
【００７２】
本実施例で示すように、通信先に対して一対一で接続する物理端末２００を１２００台準備する場合、一般的な方法では、通信先に物理端末２００の台数と同じ１２００のリソースを準備する必要がある。しかし、通常、これらすべての物理端末２００が一度に稼働することは稀であり、また、稼働する物理端末２００にも偏りが生ずる。
【００７３】
本実施例のように、物理端末２００とＨＵＢシステム１００との間で通信を確立させておき、各物理端末２００から送信される電文数や電文のばらつきに応じて電文の接続先を動的に制御する。このようにすることで、ホスト側のリソースを適切に配分しつつ、各物理端末からの流量制御を適切に行うことができる。
【００７４】
次に、本発明の概要を説明する。図６は、本発明による通信制御システムの概要を示すブロック図である。本発明による通信制御システムは、ホストシステム（例えば、ホストシステム４０）と複数の物理端末（例えば、物理端末３０）との間の通信を制御する通信制御システム（例えば、通信制御システム１０）であって、物理端末ごとに確立される接続を介して受信する電文を管理する電文管理部８１（例えば、電文管理部１２）と、ホストシステムとの間に確立される（例えば、予め定められた数の）通信パスの使用状況を管理する接続先管理部８２（例えば、接続先管理部１４）と、接続先管理部８２が管理する通信パスの使用状況に基づいて、受信した電文に未使用の通信パスを割り当てる接続先割当部８３（例えば、接続先割当部１３）とを備えている。
【００７５】
電文管理部８１は、（例えば、受信した電文を受け付けることが不適切と判断した場合に、）受信した電文を送信した物理端末にエラーを示す電文を返信する処理、または、（受信した電文を受け付けることが適切と判断した場合に、）受信した電文を接続先割当部８３に送信する処理を行い、接続先割当部８３は、割り当て可能な通信パスが存在しない場合、割り当て可能な通信パスが見つかるまで受信した電文を保留し、割り当て可能な通信パスが見つかったときに、保留した電文を割り当て可能な通信パスに割り当てる。
【００７６】
そのような構成により、処理を行うホスト側に対して複数の物理端末から通信要求が行われる場合に、ホスト側のリソースを適切に配分しつつ、各物理端末からの流量制御を適切に行うことができる。
【００７７】
また、通信制御システムは、物理端末ごとの接続を確立する物理端末接続部（例えば、物理端末監視部１１）を備えていてもよい。そして、物理端末接続部は、確立した物理端末との接続状態を監視してもよい。そのような構成によれば、物理端末からの電文が送信されない場合であっても、物理端末の状況を把握することができる。
【００７８】
また、接続先管理部８２は、接続先割当部８３によって電文に割り当てられた通信パスの使用状況を使用中に設定し、電文に対するホストシステムの処理が完了したときに、その電文に割り当てられた通信パスの使用状況を未使用に設定してもよい。
【００７９】
また、電文管理部８１は、受信した電文をホストシステムへ送信することにより、通信制御システム内の所定の諸元値が予め定めた閾値を超える場合に、その電文を送信した物理端末にエラーを示す電文を返信する処理を行ってもよい。
【００８０】
また、電文管理部８１は、物理端末から受信した電文に対する処理が完了する前に、同一の物理端末から電文を受信した場合、その電文を送信した物理端末にエラーを示す電文を返信する処理を行ってもよい。このようにすることで、同一の物理端末から先に送信された電文が未処理の状態で、後続の電文を処理してしまうことを抑制できる。
【００８１】
また、電文管理部８１は、物理端末から受信した電文に含まれる発信元識別情報（例えば、発信ＩＤ）と、その電文を受信した接続を示す情報（例えば、プロセスＩＤ）とを対応付けた端末接続情報を保持し、受信した電文に対して行われたホストシステムによる処理結果を送信する物理端末を、端末接続情報を用いて特定してもよい。
【００８２】
図７は、本発明による通信システムの概要を示すブロック図である。本発明による通信システムは、複数の物理端末９１（例えば、物理端末３０）と、物理端末９１からの要求を処理するホストシステム９２（例えば、ホストシステム４０）と、物理端末９１とホストシステム９２との間の通信を制御する通信制御システム８０（例えば、通信制御システム１０）とを備えている。
【００８３】
通信制御システム８０の内容は、図６に例示する通信制御システムの内容と同様である。そのような構成であっても、処理を行うホスト側に対して複数の物理端末から通信要求が行われる場合に、ホスト側のリソースを適切に配分しつつ、各物理端末からの流量制御を適切に行うことができる。
【符号の説明】
【００８４】
１０  通信制御システム
１１  物理端末監視部
１２  電文管理部
１３  接続先割当部
１４  接続先管理部
１５  接続情報保持部
１６  パス使用状況保持部
１７  電文保持部
１８  システム情報保持部
１９  メッセージ制御部
３０  物理端末
４０  ホストシステム
【図１】
2015220667.tif 000003
【図２】
2015220667.tif 000004
【図３】
2015220667.tif 000005
【図４】
2015220667.tif 000006
【図５】
2015220667.tif 000007
【図６】
2015220667.tif 000008
【図７】
2015220667.tif 000009