(57)【要約】      （修正有）【課題】中継装置と通信先装置とのセッションが切断された場合に、中継装置における無用な動作を減らす中継装置、制御方法、プログラム及びシステムを提供する。【解決手段】中継装置は、複数段のセッションにより通信元装置と通信先装置との通信を中継する中継装置であって、通信先装置とのセッションが切断されたか否かを判定する判定部と、通信先装置とのセッションが切断されたと判定した場合に、通信元装置とのセッションを切断する切断部とを有する。判定部は、通信先装置から応答パケットを受信しない期間が基準を超えた場合に、通信先装置の動作確認を行う。【選択図】図１２
2019016995.tif 000002
【特許請求の範囲】
【請求項１】
複数段のセッションにより通信元装置と通信先装置との通信を中継する中継装置であって、
前記通信先装置とのセッションが切断されたか否かを判定する判定部と、
前記通信先装置との前記セッションが切断されたと判定した場合に、前記通信元装置とのセッションを切断する切断部と
を有する中継装置。
【請求項２】
更に、
前記通信元装置との通信データから、前記通信元装置との前記セッションに関する第１識別データを抽出する第１抽出部
を有し、
前記切断部は、前記第１識別データに基づいて、前記通信元装置との前記セッションを特定する
請求項１記載の中継装置。
【請求項３】
更に、
前記通信元装置から送られた接続要求のパケットから、送信元ＩＰ（Internet Protocol）アドレス及び第１の送信元ポート番号を抽出する第１抽出部
を有し、
前記切断部は、前記送信元ＩＰアドレス及び前記第１の送信元ポート番号に基づいて、前記通信元装置との前記セッションを特定する
請求項１記載の中継装置。
【請求項４】
前記判定部は、前記通信先装置から応答パケットを受信しない期間が基準を超えた場合に、前記通信先装置の動作確認を行う
請求項１乃至３のいずれか１つ記載の中継装置。
【請求項５】
更に、
前記通信先装置との通信データから、前記通信先装置との前記セッションに関する第２識別データを抽出する第２抽出部
を有し、
前記判定部は、前記第２識別データに基づいて、前記応答パケットを特定する
請求項４記載の中継装置。
【請求項６】
更に、
前記通信元装置で入力されたコードを転送するパケットから、前記通信先装置との接続を要求するコマンドに含まれる前記通信先装置のＩＰアドレスを抽出する第２抽出部と、
前記通信先装置へ送られる接続要求のパケットから、第２の送信元ポート番号を抽出する第３抽出部と
を有し、
前記判定部は、前記通信先装置のＩＰアドレス及び前記第２の送信元ポート番号に基づいて、前記応答パケットを特定する
請求項４記載の中継装置。
【請求項７】
複数段のセッションにより通信元装置と通信先装置との通信を中継するコンピュータにより実行される制御方法であって、
前記通信先装置とのセッションが切断されたか否かを判定し、
前記通信先装置との前記セッションが切断されたと判定した場合に、前記通信元装置とのセッションを切断する
処理を含む制御方法。
【請求項８】
複数段のセッションにより通信元装置と通信先装置との通信を中継するコンピュータに、
前記通信先装置とのセッションが切断されたか否かを判定し、
前記通信先装置との前記セッションが切断されたと判定した場合に、前記通信元装置とのセッションを切断する
処理を実行させるプログラム。
【請求項９】
通信元装置と、
通信先装置と、
前記通信元装置からの要求に応じて前記通信元装置との間に第１セッションを設け、更に前記通信元装置からの要求に応じて前記通信先装置との間に第２セッションを設ける中継装置とを含み、
前記中継装置は、
前記第２セッションが切断されたか否かを判定する判定部と、
前記第２セッションが切断されたと判定した場合に、前記第１セッションを切断する切断部と
を有するシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数段のセッションによる通信を中継する技術に関する。
【背景技術】
【０００２】
例えばｔｅｌｎｅｔのような遠隔操作プロトコルに従って、操作元装置と中継装置とを接続すると共に、中継装置と操作先装置とを接続することによって、２段セッションによる遠隔操作を行うことがある。
【０００３】
このようにすれば、操作元装置において入力されたコマンドが、操作先装置において実行され、操作元装置は、実行結果のメッセージを得ることができる。
【０００４】
操作元装置と中継装置との間のセッションが何らかの理由で切断された場合に、操作元装置において入力されたコマンドは、転送されず、いずれの装置においても実行されない。一方、中継装置と操作先装置との間のセッションが切断された場合に、操作元装置において入力されたコマンドは、中継装置に至る。そして、中継装置は、コマンドを転送せずに、自ら実行してしまう場合がある。このような誤動作は、無用である。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１１−１２９０７６号公報
【特許文献２】特開２０１１−１８２３７２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明の目的は、一側面では、中継装置と通信先装置とのセッションが切断された場合に、中継装置における無用な動作を減らすことである。
【課題を解決するための手段】
【０００７】
一態様に係る中継装置は、複数段のセッションにより通信元装置と通信先装置との通信を中継する中継装置であって、（Ａ）通信先装置とのセッションが切断されたか否かを判定する判定部と、（Ｂ）通信先装置とのセッションが切断されたと判定した場合に、通信元装置とのセッションを切断する切断部とを有する。
【発明の効果】
【０００８】
一側面としては、中継装置と通信先装置とのセッションが切断された場合に、中継装置における無用な動作を減らすことができる。
【図面の簡単な説明】
【０００９】
【図１】図１は、ｔｅｌｎｅｔによる二段セッションの例を示す図である。
【図２】図２は、操作元装置、中継装置及び操作先装置のモジュール構成例を示す図である。
【図３】図３は、一次ｔｅｌｎｅｔの接続手続きに関するシーケンスを示す図である。
【図４】図４は、二次ｔｅｌｎｅｔの接続手続きに関するシーケンスを示す図である。
【図５】図５は、二次ｔｅｌｎｅｔの利用における操作元側のシーケンスを示す図である。
【図６】図６は、二次ｔｅｌｎｅｔの利用における操作先側のシーケンスを示す図である。
【図７】図７は、二次ｔｅｌｎｅｔの利用における操作元側のシーケンスを示す図である。
【図８】図８は、二次ｔｅｌｎｅｔの接続切断に関するシーケンスを示す図である。
【図９】図９は、中継装置における誤動作に関するシーケンスを示す図である。
【図１０】図１０は、本実施の形態の概要を示す図である。
【図１１Ａ】図１１Ａは、パケットに設定されているＩＰアドレス及びポート番号の例を示す図である。
【図１１Ｂ】図１１Ｂは、パケットに設定されているＩＰアドレス及びポート番号の例を示す図である。
【図１２】図１２は、中継管理部のモジュール構成例を示す図である。
【図１３】図１３は、中継テーブルの例を示す図である。
【図１４】図１４は、受信パケット処理フローを示す図である。
【図１５】図１５は、受信パケット処理フローを示す図である。
【図１６】図１６は、送信パケット処理フローを示す図である。
【図１７】図１７は、中継監視処理フローを示す図である。
【図１８】図１８は、中継監視処理フローを示す図である。
【図１９】図１９は、コンピュータの機能ブロック図である。
【発明を実施するための形態】
【００１０】
図１に、ｔｅｌｎｅｔによる二段セッションの例を示す。操作元装置１０１と中継装置１０３との間に一次ｔｅｌｎｅｔセッションが確立し、更に中継装置１０３と操作先装置１０５との間に二次ｔｅｌｎｅｔセッションが確立している状態で、操作元装置１０１がコマンドを発行すると、当該コマンドは、中継装置１０３を介して操作先装置１０５へ伝送される。
【００１１】
なお、このように中継装置１０３を用いて二段セッションとするのは、たとえばセキュリティの観点により操作元装置１０１が属するネットワークと、操作先装置１０５が属するネットワークが分離されている場合などがある。
【００１２】
操作先装置１０５は、受信したコマンドを実行して、実行結果のメッセージを返信する。実行結果のメッセージは、中継装置１０３を介して操作元装置１０１へ伝送される。このようにして、操作元装置１０１が、中継装置１０３を介して操作先装置１０５を遠隔操作する。この例では、操作元装置１０１において、遠隔操作のための一連のコマンド投入（テキスト入力）が自動化されていることを想定する。
【００１３】
図２に、操作元装置１０１、中継装置１０３及び操作先装置１０５のモジュール構成例を示す。
【００１４】
操作元装置１０１は、コマンドプログラム２１１、一次ｔｅｌｎｅｔクライアント２１３、ツール２１５、インターフェース制御部２２１及び通信インターフェース装置２２３を有する。
【００１５】
コマンドプログラム２１１は、コマンドを受け付けて実行する。具体的には、コマンドプログラム２１１は、オペレーティングシステムである。この例で、ツール２１５が、コマンドに相当するテキストを自動的にコマンドプログラム２１１へ入力する。一次ｔｅｌｎｅｔクライアント２１３は、コマンドプログラム２１１によって起動され、ｔｅｌｎｅｔの仕様に従ってクライアントとしての処理を行う。一次ｔｅｌｎｅｔクライアント２１３は、通信インターフェース装置２２３を制御するインターフェース制御部２２１を介して中継装置１０３との通信を行う。
【００１６】
中継装置１０３は、一次ｔｅｌｎｅｔサーバ２３１、ネットワーク仮想端末２３３、コマンドプログラム２３５、二次ｔｅｌｎｅｔクライアント２３７、中継管理部２３９、インターフェース制御部２４１及び通信インターフェース装置２４３を有する。
【００１７】
一次ｔｅｌｎｅｔサーバ２３１は、ｔｅｌｎｅｔの仕様に従ってサーバとしての処理を行う。一次ｔｅｌｎｅｔサーバ２３１は、通信インターフェース装置２４３を制御するインターフェース制御部２４１を介して通信を行う。ネットワーク仮想端末２３３は、伝送データに関する形式的な変換を行う。尚、操作元装置１０１の一次ｔｅｌｎｅｔクライアント２１３、中継装置１０３の一次ｔｅｌｎｅｔサーバ２３１及びネットワーク仮想端末２３３における動作は、従来技術に基づく。
【００１８】
コマンドプログラム２３５は、一次ｔｅｌｎｅｔセッションが確立している状態で、ネットワーク仮想端末２３３から文字又は記号のコードを受け付けて、受け付けた文字列がコマンドであると解釈した場合に、当該コマンドを実行する。具体的には、コマンドプログラム２３５は、オペレーティングシステムである。二次ｔｅｌｎｅｔクライアント２３７は、コマンドプログラム２３５によって起動され、ｔｅｌｎｅｔの仕様に従ってクライアントとしての処理を行う。二次ｔｅｌｎｅｔクライアント２３７は、通信インターフェース装置２４３を制御するインターフェース制御部２４１を介して操作先装置１０５との通信を行う。
【００１９】
操作先装置１０５は、二次ｔｅｌｎｅｔサーバ２５１、ネットワーク仮想端末２５３、コマンドプログラム２５５、インターフェース制御部２６１及び通信インターフェース装置２６３を有する。
【００２０】
二次ｔｅｌｎｅｔサーバ２５１は、ｔｅｌｎｅｔの仕様に従ってサーバとしての処理を行う。二次ｔｅｌｎｅｔサーバ２５１は、通信インターフェース装置２６３を制御するインターフェース制御部２６１を介して通信を行う。ネットワーク仮想端末２５３は、伝送データに関する形式的な変換を行う。尚、中継装置１０３の二次ｔｅｌｎｅｔクライアント２３７、操作先装置１０５の二次ｔｅｌｎｅｔサーバ２５１及びネットワーク仮想端末２５３における動作は、従来技術に基づく。
【００２１】
コマンドプログラム２５５は、二次ｔｅｌｎｅｔセッションが確立している状態で、ネットワーク仮想端末２５３から文字又は記号のコードを受け付けて、受け付けた文字列がコマンドであると解釈した場合に、当該コマンドを実行する。具体的には、コマンドプログラム２５５は、オペレーティングシステムである。
【００２２】
図３に、一次ｔｅｌｎｅｔの接続手続きに関するシーケンスを示す。操作元装置１０１のコマンドプログラム２１１が、操作元装置１０１のツール２１５から一次ｔｅｌｎｅｔ接続のコマンドを受け付けたと判定すると（Ｓ３０１）、操作元装置１０１のコマンドプログラム２１１は、操作元装置１０１の一次ｔｅｌｎｅｔクライアント２１３を起動する（Ｓ３０３）。当該コマンドには、一次ｔｅｌｎｅｔの接続対象である中継装置１０３のＩＰ（Internet Protocol）アドレスが含まれている。
【００２３】
操作元装置１０１の一次ｔｅｌｎｅｔクライアント２１３は、一次ｔｅｌｎｅｔ接続の要求パケットを中継装置１０３の一次ｔｅｌｎｅｔサーバ２３１宛に送信する（Ｓ３０５）。そして、操作元装置１０１の一次ｔｅｌｎｅｔクライアント２１３と中継装置１０３の一次ｔｅｌｎｅｔサーバ２３１との間で、一次ｔｅｌｎｅｔセッションが確立される（Ｓ３０７）。
【００２４】
一次ｔｅｌｎｅｔセッションが確立すると、操作元装置１０１の一次ｔｅｌｎｅｔクライアント２１３は、操作元装置１０１のコマンドプログラム２１１へ準備完了のメッセージを返す（Ｓ３０９）。準備完了のメッセージは、更に操作元装置１０１のツール２１５へ返される。
【００２５】
操作元装置１０１のツール２１５は、操作元装置１０１のコマンドプログラム２１１へ文字又は記号のコードを入力する。ここでは、二次ｔｅｌｎｅｔ接続のコマンドが１文字ずつ入力されるものとする。
【００２６】
操作元装置１０１のコマンドプログラム２１１が、操作元装置１０１のツール２１５から文字又は記号のコードを受け付けると（Ｓ３１１）、文字又は記号のコードが操作元装置１０１の一次ｔｅｌｎｅｔクライアント２１３へ渡される。操作元装置１０１の一次ｔｅｌｎｅｔクライアント２１３は、文字又は記号のコードを所定形式に変換する。そして、所定形式の文字又は記号のコードを含む一次ｔｅｌｎｅｔの転送パケットが、操作元装置１０１の一次ｔｅｌｎｅｔクライアント２１３から中継装置１０３の一次ｔｅｌｎｅｔサーバ２３１へ送られる（Ｓ３１３）。
【００２７】
中継装置１０３のネットワーク仮想端末２３３が、中継装置１０３の一次ｔｅｌｎｅｔサーバ２３１から受けた文字又は記号のコードを中継装置１０３における形式の文字又は記号のコードへ変換して、中継装置１０３のコマンドプログラム２３５へ渡す（Ｓ３１５、Ｓ３１７）。
【００２８】
図４に示したシーケンスに移る。中継装置１０３のコマンドプログラム２３５が、文字又は記号のコードを複数回受けて、その結果二次ｔｅｌｎｅｔ接続のコマンドを受け付けたと判定すると（Ｓ４０１）、中継装置１０３のコマンドプログラム２３５は、中継装置１０３の二次ｔｅｌｎｅｔクライアント２３７を起動する（Ｓ４０３）。当該コマンドには、二次ｔｅｌｎｅｔの接続対象である操作先装置１０５のＩＰアドレスが含まれている。
【００２９】
中継装置１０３の二次ｔｅｌｎｅｔクライアント２３７は、二次ｔｅｌｎｅｔ接続の要求パケットを操作先装置１０５の二次ｔｅｌｎｅｔサーバ２５１宛に送信する（Ｓ４０５）。そして、中継装置１０３の二次ｔｅｌｎｅｔクライアント２３７と操作先装置１０５の二次ｔｅｌｎｅｔサーバ２５１との間で、二次ｔｅｌｎｅｔセッションが確立される（Ｓ４０７）。
【００３０】
二次ｔｅｌｎｅｔセッションが確立すると、中継装置１０３の二次ｔｅｌｎｅｔクライアント２３７は、中継装置１０３のコマンドプログラム２３５へ準備完了のメッセージを返す（Ｓ４０９）。このメッセージを受けた中継装置１０３のコマンドプログラム２３５は、図５に示すように、準備完了のメッセージを、中継装置１０３のネットワーク仮想端末２３３を介して中継装置１０３の一次ｔｅｌｎｅｔサーバ２３１へ送る（Ｓ５０１、Ｓ５０３）。
【００３１】
中継装置１０３の一次ｔｅｌｎｅｔサーバ２３１は、この準備完了のメッセージを含む二次ｔｅｌｎｅｔの応答パケットを操作元装置１０１の一次ｔｅｌｎｅｔクライアント２１３へ返す（Ｓ５０５）。そして、準備完了のメッセージは、操作元装置１０１のコマンドプログラム２１１に送られ（Ｓ５０７）、操作元装置１０１のコマンドプログラム２１１からツール２１５へ返される。
【００３２】
操作元装置１０１のツール２１５は、続けて操作元装置１０１のコマンドプログラム２１１へ文字又は記号のコードを入力する。ここでは、操作先装置１０５のコマンドプログラム２５５に実行させることを意図したコマンド、つまり遠隔操作の内容に相当するコマンドが１文字ずつ入力されるものとする。なお、操作元装置１０１のツール２１５は、上記した二次telnetの接続に関する準備完了のメッセージの到達（Ｓ５０７）を確認してからコードを入力する処理を開始しても良い。また、操作元装置１０１のツール２１５は、操作先装置１０５に対する遠隔操作の内容に相当する一連のコマンドを記憶しておき、記憶されたコマンドを読み出してコマンドプログラム２１１へ入力するようにプログラムされていても良い。
【００３３】
操作元装置１０１のコマンドプログラム２１１が、操作元装置１０１のツール２１５から文字又は記号のコードを受け付けると（Ｓ５０９）、文字又は記号のコードが操作元装置１０１の一次ｔｅｌｎｅｔクライアント２１３へ渡される。上述の通り、操作元装置１０１の一次ｔｅｌｎｅｔクライアント２１３は、文字又は記号のコードを所定形式に変換する。所定形式の文字又は記号のコードを含む一次ｔｅｌｎｅｔの転送パケットが、操作元装置１０１の一次ｔｅｌｎｅｔクライアント２１３から中継装置１０３の一次ｔｅｌｎｅｔサーバ２３１へ送られる（Ｓ５１１）。
【００３４】
中継装置１０３のネットワーク仮想端末２３３が、中継装置１０３の一次ｔｅｌｎｅｔサーバ２３１から受けた文字又は記号のコードを中継装置１０３における形式の文字又は記号のコードへ変換して、中継装置１０３のコマンドプログラム２３５へ渡す（Ｓ５１３、Ｓ５１５）。
【００３５】
ここで、図４に示したシーケンスに戻る。中継装置１０３のコマンドプログラム２３５が、中継装置１０３のネットワーク仮想端末２３３から文字又は記号のコードを受け付けると（Ｓ４１１）、文字又は記号のコードが中継装置１０３の二次ｔｅｌｎｅｔクライアント２３７へ渡される。上述の通り、中継装置１０３の二次ｔｅｌｎｅｔクライアント２３７は、文字又は記号のコードを所定形式に変換する。所定形式の文字又は記号のコードを含む二次ｔｅｌｎｅｔの転送パケットが、中継装置１０３の二次ｔｅｌｎｅｔクライアント２３７から操作先装置１０５の二次ｔｅｌｎｅｔサーバ２５１へ送られる（Ｓ４１３）。
【００３６】
操作先装置１０５のネットワーク仮想端末２５３が、操作先装置１０５の二次ｔｅｌｎｅｔサーバ２５１から受けた文字又は記号のコードを操作先装置１０５における形式の文字又は記号のコードへ変換して、操作先装置１０５のコマンドプログラム２５５へ渡す（Ｓ４１５、Ｓ４１７）。
【００３７】
図６に示したシーケンスに移る。操作先装置１０５のコマンドプログラム２５５は、文字又は記号のコードをたとえば複数回受けて、その結果自らが実行すべきコマンドを受け付けたと判定すると（Ｓ６０１）。当該コマンドの処理を実行する（Ｓ６０３）。
【００３８】
このようにして操作元装置１０１から操作先装置１０５への、遠隔操作の内容に相当するコマンドが転送され、操作先装置１０５で実行されることになる。
【００３９】
そして、操作先装置１０５のコマンドプログラム２５５は、操作先装置１０５のネットワーク仮想端末２５３へコマンドの実行結果のメッセージを返す（Ｓ６０５）。操作先装置１０５の二次ｔｅｌｎｅｔサーバ２５１は、操作先装置１０５のネットワーク仮想端末２５３から受けたコマンドの実行結果のメッセージを含む二次ｔｅｌｎｅｔの応答パケットを中継装置１０３の二次ｔｅｌｎｅｔクライアント２３７へ送信する（Ｓ６０７、Ｓ６０９）。
【００４０】
中継装置１０３の二次ｔｅｌｎｅｔクライアント２３７は、二次ｔｅｌｎｅｔの応答パケットから抽出したコマンドの実行結果のメッセージを中継装置１０３のコマンドプログラム２３５へ渡す（Ｓ６１１）。
【００４１】
図７に示したシーケンスに移る。中継装置１０３のコマンドプログラム２３５は、コマンドの実行結果のメッセージを中継装置１０３のネットワーク仮想端末２３３へ渡す（Ｓ７０１）。中継装置１０３の一次ｔｅｌｎｅｔサーバ２３１は、中継装置１０３のネットワーク仮想端末２３３から受けたコマンドの実行結果のメッセージを含む一次ｔｅｌｎｅｔの応答パケットを操作元装置１０１の一次ｔｅｌｎｅｔクライアント２１３宛に送信する（Ｓ７０３、Ｓ７０５）。
【００４２】
操作元装置１０１の一次ｔｅｌｎｅｔクライアント２１３は、一次ｔｅｌｎｅｔの応答パケットから抽出したコマンドの実行結果のメッセージを操作元装置１０１のコマンドプログラム２１１へ渡す（Ｓ７０７）。そして、コマンドの実行結果のメッセージは、操作元装置１０１のツール２１５へ渡される。このようにして、遠隔操作が実現される。
【００４３】
続いて、図８を用いて、上述したように一次ｔｅｌｎｅｔセッションと二次ｔｅｌｎｅｔセッションとが確立されている状態で、二次ｔｅｌｎｅｔセッションが切断された場合のシーケンスについて説明する。中継装置１０３の二次ｔｅｌｎｅｔクライアント２３７と操作先装置１０５の二次ｔｅｌｎｅｔサーバ２５１との間の二次ｔｅｌｎｅｔセッションが、何らかの理由によって切断されたと想定する（Ｓ８０１）。
【００４４】
Ｓ８０３において、Ｓ４１１の場合と同様に、中継装置１０３のコマンドプログラム２３５が、中継装置１０３のネットワーク仮想端末２３３から文字又は記号のコードを受け付けると、文字又は記号のコードが中継装置１０３の二次ｔｅｌｎｅｔクライアント２３７へ渡される。但し、この場合には、中継装置１０３の二次ｔｅｌｎｅｔクライアント２３７は、所定形式の文字又は記号のコードを含む二次ｔｅｌｎｅｔの転送パケットを送れない（Ｓ８０５）。
【００４５】
図９に示したシーケンスに移る。この場合、中継装置１０３のコマンドプログラム２３５は、操作先装置１０５のコマンドプログラム２５５によって実行されることを意図して送られたコマンドを自らが受け付けたと判定する（Ｓ９０１）。その結果、中継装置１０３のコマンドプログラム２３５がこのコマンドの処理を実行する（Ｓ９０３）。そして、中継装置１０３のコマンドプログラム２３５は、自らのコマンドの実行結果のメッセージを中継装置１０３のネットワーク仮想端末２３３へ返す（Ｓ９０５）。中継装置１０３の一次ｔｅｌｎｅｔサーバ２３１は、中継装置１０３のネットワーク仮想端末２３３から受けたコマンドの実行結果のメッセージを含む一次ｔｅｌｎｅｔの応答パケットを操作元装置１０１の一次ｔｅｌｎｅｔクライアント２１３へ送信する（Ｓ９０７、Ｓ９０９）。
【００４６】
操作元装置１０１の一次ｔｅｌｎｅｔクライアント２１３は、一次ｔｅｌｎｅｔの応答パケットから抽出したコマンドの実行結果のメッセージを操作元装置１０１のコマンドプログラム２１１へ渡す（Ｓ９１１）。そして、コマンドの実行結果のメッセージは、操作元装置１０１のツール２１５へ渡される。このとき、操作元装置１０１のツール２１５は、中継装置１０３のコマンドプログラム２３５におけるコマンドの実行結果のメッセージを、操作先装置１０５のコマンドプログラム２５５におけるコマンドの実行結果のメッセージであると解釈することになる。
【００４７】
以上のように、操作先装置１０５に対して正常な動作をさせることができずに、中継装置１０３に誤動作をさせることになる。また、操作元装置１０１において誤った認識をすることになる。そして、操作元装置１０１のツール２１５において自動化された動作が続けば、中継装置１０３に対する誤操作は継続される。
【００４８】
図１０に、本実施の形態の概要を示す。上段に示すように、操作元装置１０１と中継装置１０３との間の一次ｔｅｌｎｅｔセッション及び中継装置１０３と操作先装置１０５との間の二次ｔｅｌｎｅｔセッションが確立している状態で、なんらかの理由で二次ｔｅｌｎｅｔセッションが切断されたとする。すると、中継装置１０３はこの二次ｔｅｌｎｅｔセッションの切断を検出する。そして、図１０の下段に示すように、この二次ｔｅｌｎｅｔセッションの切断の検出を受けて、中継装置１０３は、対応する一次ｔｅｌｎｅｔセッションを切断する。このようにすれば、上述した不具合を未然に防ぐことができる。
【００４９】
ここで、この例で各パケットに設定されているＩＰアドレス及びポート番号の例について、図１１Ａ及び図１１Ｂを用いて説明する。
【００５０】
図１１Ａに示すように、図３のＳ３０５に示した一次ｔｅｌｎｅｔ接続の要求パケットの送信元ＩＰアドレスにａｄ＿Ａが設定され、更に送信元ポート番号にｎｏ＿Ｎが設定されている。ａｄ＿Ａは、操作元装置１０１のＩＰアドレスである。ｎｏ＿Ｎは、操作元装置１０１の一次ｔｅｌｎｅｔクライアント２１３におけるポート番号である。同じく一次ｔｅｌｎｅｔ接続の要求パケットの宛先ＩＰアドレスにはａｄ＿Ｂが設定され、更に宛先ポート番号に２３が設定されている。ａｄ＿Ｂは、中継装置１０３の第１ＩＰアドレスである。２３は、中継装置１０３の一次ｔｅｌｎｅｔサーバ２３１におけるポート番号、つまりｔｅｌｎｅｔ用のポート番号である。尚、この例で、中継装置１０３には、ＩＰアドレスが２つ割り当てられているものとする。すなわち、中継装置１０３には、一次ｔｅｌｎｅｔ用としてＩＰアドレス：ａｄ＿Ｂ、ポート番号２３が、二次ｔｅｌｎｅｔ用としてＩＰアドレス：ａｄ＿Ｃ、ポート番号ｎｏ＿Ｍが割当てられているものとする。ここで、ポート番号：２３は、ｔｅｌｎｅｔサービスを提供するｔｅｌｎｅｔサーバのポート番号として一般的なもの（ウェルノウンポート番号）である。
【００５１】
図３のＳ３１３に示した一次ｔｅｌｎｅｔの転送パケットに設定されている送信元ＩＰアドレス、送信元ポート番号、宛先ＩＰアドレス及び宛先ポート番号は、図１１Ａに示すように上述した一次ｔｅｌｎｅｔ接続の要求パケットの場合と同様である。
【００５２】
尚、Ｓ４０１において受け付けられた二次ｔｅｌｎｅｔ接続のコマンド「ｔｅｌｎｅｔ」に付加されているＩＰアドレスは、二次ｔｅｌｎｅｔ接続の対象である操作先装置１０５のＩＰアドレス：ａｄ＿Ｄである。
【００５３】
図４のＳ４０５に示した二次ｔｅｌｎｅｔ接続の要求パケットの送信元ＩＰアドレスにａｄ＿Ｃが設定され、更に送信元ポート番号にｎｏ＿Ｍが設定されている。ａｄ＿Ｃは、中継装置１０３の第２ＩＰアドレスである。同じく二次ｔｅｌｎｅｔ接続の要求パケットの宛先ＩＰアドレスにａｄ＿Ｄが設定され、更に宛先ポート番号に２３が設定されている。
【００５４】
図１１Ｂの説明に移る。図５のＳ５１１に示した一次ｔｅｌｎｅｔの転送パケットは、図１１Ａで説明した一次ｔｅｌｎｅｔ接続の要求パケットの場合と同様である。
【００５５】
図４のＳ４１３に示した二次ｔｅｌｎｅｔの転送パケットの送信元ＩＰアドレスには、図１１Ｂに示すようにａｄ＿Ｃが設定され、更に送信元ポート番号にｎｏ＿Ｍが設定されている。同じく二次ｔｅｌｎｅｔの転送パケットの宛先ＩＰアドレスにａｄ＿Ｄが設定され、宛先ポート番号に２３が設定されている。
【００５６】
図６のＳ６０９に示した二次ｔｅｌｎｅｔの応答パケットの送信元ＩＰアドレスには、図１１Ｂに示すようにａｄ＿Ｄが設定され、更に送信元ポート番号に２３が設定されている。同じく二次ｔｅｌｎｅｔの応答パケットの宛先ＩＰアドレスにａｄ＿Ｃが設定され、更に宛先ポート番号にｎｏ＿Ｍが設定されている。
【００５７】
図７のＳ７０５に示した一次ｔｅｌｎｅｔの応答パケットの送信元ＩＰアドレスには、図１１Ｂに示すようにａｄ＿Ｂが設定され、更に送信元ポート番号に２３が設定されている。同じく一次ｔｅｌｎｅｔの応答パケットの宛先ＩＰアドレスにａｄ＿Ａが設定され、更に宛先ポート番号にｎｏ＿Ｎが設定されている。このようにパケットの送信元ＩＰアドレス、送信元ポート番号、宛先ＩＰアドレス、宛先ポート番号には、そのセッションを終端している装置のＩＰアドレス、ポート番号が設定されることとなる。ここで、セッションを終端している装置は、一次ｔｅｌｎｅｔセッションでは操作元装置１０１と中継装置１０３であり、二次ｔｅｌｎｅｔセッションでは中継装置１０３と操作先装置１０５である。以上で本実施の形態における概要の説明を終える。
【００５８】
以下、中継装置１０３の動作について説明する。図１２に、中継装置１０３における中継管理部２３９のモジュール構成例を示す。中継管理部２３９は、第１取得部１２０１、第１抽出部１２０３、第２抽出部１２０５、第２取得部１２０７、第３抽出部１２０９、判定部１２１１、切断部１２１３、中継テーブル記憶部１２２１及びバッファ１２２３を有する。
【００５９】
第１取得部１２０１は、インターフェース制御部２４１から順次受信パケットを１つ取得する。第１抽出部１２０３は、一次ｔｅｌｎｅｔ接続の要求パケットから送信元ＩＰアドレス及び送信元ポート番号を抽出する。
【００６０】
第２抽出部１２０５は、一次ｔｅｌｎｅｔの転送パケットから二次ｔｅｌｎｅｔ接続のコマンドに付加されているＩＰアドレスを抽出する。
【００６１】
第２取得部１２０７は、インターフェース制御部２４１から順次送信パケットを１つ取得する。第３抽出部１２０９は、二次ｔｅｌｎｅｔ接続の要求パケットから送信元ポート番号を抽出する。判定部１２１１は、二次ｔｅｌｎｅｔセッションが切断されたか否かを判定する。換言すると、判定部１２１１は二次ｔｅｌｎｅｔセッションの切断を検出する。切断部１２１３は、一次ｔｅｌｎｅｔセッションを切断する。
【００６２】
中継テーブル記憶部１２２１は、中継テーブルを記憶する。中継テーブルについては、図１３を用いて後述する。バッファ１２２３は、遠隔操作でコマンドラインに入力される文字列を記憶し、コマンドを特定するために用いられる。
【００６３】
上述した第１取得部１２０１、第１抽出部１２０３、第２抽出部１２０５、第２取得部１２０７、第３抽出部１２０９、判定部１２１１及び切断部１２１３、は、ハードウエア資源（例えば、図１９）と、以下で述べる処理をプロセッサに実行させるプログラムとを用いて実現される。
【００６４】
上述した中継テーブル記憶部１２２１及びバッファ１２２３は、ハードウエア資源（例えば、図１９）を用いて実現される。
【００６５】
図１３に、中継テーブルの例を示す。この例における中継テーブルは、二段セッションの中継イベントに対応するレコードを有している。中継テーブルのレコードは、操作元ＩＰアドレスが格納されるフィールドと、操作元ポート番号が格納されるフィールドと、転送ポート番号が格納されるフィールドと、操作先ＩＰアドレスが格納されるフィールドとを有している。
【００６６】
操作元ＩＰアドレスは、一次ｔｅｌｎｅｔ接続におけるクライアント装置のＩＰアドレスを示す。すなわち、操作元ＩＰアドレスは操作元装置１０１のＩＰアドレス（この例では、ａｄ＿Ａ）である。操作元ポート番号は、一次ｔｅｌｎｅｔ接続におけるクライアント装置のポート番号を示す。すなわち、操作元ポート番号は、操作元装置１０１における一次ｔｅｌｎｅｔクライアント２１３のポート番号（この例では、ｎｏ＿Ｎ）である。転送ポート番号は、二次ｔｅｌｎｅｔ接続におけるクライアント装置のポート番号を示す。すなわち、転送ポート番号は、中継装置１０３における二次ｔｅｌｎｅｔクライアント２３７のポート番号（この例では、ｎｏ＿Ｍ）である。操作先ＩＰアドレスは、二次ｔｅｌｎｅｔ接続におけるサーバ装置のＩＰアドレスを示す。すなわち、操作先ＩＰアドレスは、操作先装置１０５のＩＰアドレス（この例では、ａｄ＿Ｄ）である。
【００６７】
続いて、中継管理部２３９における処理について説明する。図１４に、受信パケット処理フローを示す。第１取得部１２０１は、インターフェース制御部２４１から受信パケットを１つ取得する（Ｓ１４０１）。第１抽出部１２０３は、取得した受信パケットを解析し、ｔｅｌｎｅｔ接続の要求であるか否かを判定する（Ｓ１４０３）。
【００６８】
取得した受信パケットがｔｅｌｎｅｔ接続の要求であると判定した場合には、第１抽出部１２０３は、取得した受信パケットから送信元ＩＰアドレス（この例では、ａｄ＿Ａ）及び送信元ポート番号（この例では、ｎｏ＿Ｎ）を抽出する（Ｓ１４０５）。
【００６９】
第１抽出部１２０３は、中継テーブルに新しいレコードを設ける（Ｓ１４０７）。第１抽出部１２０３は、送信元ＩＰアドレスを、当該レコードにおける操作元ＩＰアドレスのフィールドに格納する（Ｓ１４０９）。第１抽出部１２０３は、送信元ポート番号を、当該レコードにおける操作元ポート番号のフィールドに格納する（Ｓ１４１１）。この段階で、図１３の上段に示した状態になる。転送ポート番号のフィールド及び操作先ＩＰアドレスのフィールドには、未設定の旨を示すコードが格納されている。
【００７０】
その後、Ｓ１４０１に示した処理に戻る。
【００７１】
Ｓ１４０３において、取得した受信パケットがｔｅｌｎｅｔ接続の要求でないと判定した場合には、端子Ａを介して、図１５に示したＳ１５０１の処理に移る。
【００７２】
図１５の説明に移る。第２抽出部１２０５は、図１４のＳ１４０１において取得した受信パケットが、ｔｅｌｎｅｔの転送パケットであるか否かを判定する（Ｓ１５０１）。当該受信パケットがｔｅｌｎｅｔの転送パケットではないと判定した場合には、端子Ｂを介して、図１４に示したＳ１４０１の処理に戻る。
【００７３】
一方、当該受信パケットがｔｅｌｎｅｔの転送パケットであると判定した場合には、第２抽出部１２０５は、図１４のＳ１４０１において取得した受信パケットから送信元ＩＰアドレス及び送信元ポート番号を抽出する（Ｓ１５０３）。
【００７４】
第２抽出部１２０５は、抽出した送信元ＩＰアドレス及び送信元ポート番号が、中継テーブルにおけるいずれかのレコードの「操作元ＩＰアドレス」フィールドの値及び「操作元ポート番号」フィールドの値と一致するか否かを判定する（Ｓ１５０５）。抽出した送信元ＩＰアドレス及び送信元ポート番号と一致するレコードが中継テーブルにないと判定した場合には、端子Ｂを介して、図１４に示したＳ１４０１の処理に戻る。
【００７５】
一方、抽出した送信元ＩＰアドレス及び送信元ポート番号と一致するレコードが中継テーブルにあると判定した場合には、第２抽出部１２０５は、図１４のＳ１４０１において取得した受信パケットから、文字又は記号のコードを抽出する（Ｓ１５０７）。第２抽出部１２０５は、文字又は記号のコードをバッファ１２２３に加える（Ｓ１５０９）。
【００７６】
第２抽出部１２０５は、バッファ１２２３に蓄えた文字列がｔｅｌｎｅｔ接続のコマンド及びＩＰアドレスに該当するか否かを判定する（Ｓ１５１１）。バッファ１２２３に蓄えた文字列がｔｅｌｎｅｔ接続のコマンド及びＩＰアドレスに該当しないと判定した場合には、端子Ｂを介して、図１４に示したＳ１４０１の処理に戻る。一方、バッファ１２２３に蓄えた文字列がｔｅｌｎｅｔ接続のコマンド及びＩＰアドレスに該当すると判定した場合には、第２抽出部１２０５は、当該ＩＰアドレスを、図１４のＳ１４０７に設けたレコードにおける操作先ＩＰアドレスのフィールドに格納する（Ｓ１５１３）。このｔｅｌｎｅｔ接続のコマンドは、一次ｔｅｌｎｅｔセッションを通して操作元装置１０１から送信した、二次ｔｅｌｎｅｔ接続のコマンドである。そして、抽出されたＩＰアドレスは、二次ｔｅｌｎｅｔ接続先の装置、すなわち、操作先装置１０５のＩＰアドレスである。この段階で、図１３の中段に示した状態になる。そして、端子Ｂを介して、図１４に示したＳ１４０１の処理に戻る。以上で、受信パケット処理の説明を終える。
【００７７】
図１６に、送信パケット処理フローを示す。送信パケット処理は、上述した受信パケット処理と並行に実行されても良い。
【００７８】
第２取得部１２０７は、インターフェース制御部２４１から送信パケットを１つ取得する（Ｓ１６０１）。第３抽出部１２０９は、取得した送信パケットがｔｅｌｎｅｔ接続の要求であるか否かを判定する（Ｓ１６０３）。取得した送信パケットがｔｅｌｎｅｔ接続の要求でないと判定した場合には、Ｓ１６０１に示した処理に戻る。
【００７９】
一方、取得した送信パケットがｔｅｌｎｅｔ接続の要求であると判定した場合には、第３抽出部１２０９は、取得した送信パケットから宛先ＩＰアドレスを抽出する（Ｓ１６０５）。これは、取得した送信パケットが二次ｔｅｌｎｅｔ接続の要求パケットであることを意味する。第３抽出部１２０９は、抽出した宛先ＩＰアドレスが中継テーブルの操作先ＩＰアドレスに該当し、転送ポート番号が未設定であるレコードを特定する（Ｓ１６０７）。
【００８０】
第３抽出部１２０９は、Ｓ１６０１において取得した送信パケットから、送信元ポート番号を抽出する（Ｓ１６０９）。第３抽出部１２０９は、Ｓ１６０７において特定したレコードにおける転送ポート番号のフィールドに、抽出した送信元ポート番号を格納する（Ｓ１６１１）。この段階で、中継テーブルは図１３の下段に示した状態になる。
【００８１】
なお、この送信パケットは図１１Ａを参照して説明した、Ｓ４０５の二次接続の要求パケットであり、中継装置１０３から送信され、ネットワークを介して操作先装置１０５に受信される。
【００８２】
第３抽出部１２０９は、判定部１２１１による中継監視処理を起動する（Ｓ１６１３）。中継監視処理は、送信パケット処理と並行に実行される。従って、中継監視処理の終了を待たずに、Ｓ１６０１に示した処理に戻る。中継監視処理は、Ｓ１６０７において特定したレコードの中継イベントを監視する。よって、複数の中継が行われている場合、すなわち、特定されたレコードが複数となった場合には、複数の中継監視処理が並行に実行される。
【００８３】
図１７に、中継監視処理フローを示す。判定部１２１１は、経過時間の計測を開始する（Ｓ１７０１）。判定部１２１１は、インターフェース制御部２４１に受信パケットを１つ要求する（Ｓ１７０３）。判定部１２１１は、受信パケットを取得したか否かを判定する（Ｓ１７０５）。受信パケットを取得していない場合、つまり中継装置１０３がパケットを受信していない場合には、端子Ｃを介して図１８のＳ１８００に示した処理に移る。
【００８４】
受信パケットを取得した場合、つまり中継装置１０３がパケットを受信した場合には、判定部１２１１は、当該受信パケットが、ｔｅｌｎｅｔの応答パケットであるか否かを判定する（Ｓ１７０７）。当該受信パケットがｔｅｌｎｅｔの応答パケットでない場合には、Ｓ１７０３に示した処理に戻る。
【００８５】
当該受信パケットがｔｅｌｎｅｔの応答パケットである場合には、判定部１２１１は、当該受信パケットから送信元ＩＰアドレスと送信元ポート番号と宛先ポート番号とを抽出する（Ｓ１７０９）。
【００８６】
判定部１２１１は、抽出した送信元ＩＰアドレスが、図１６のＳ１６０７で特定したレコードの「操作先ＩＰアドレス」フィールドの値と一致するか否かを判定する（Ｓ１７１１）。抽出した送信元ＩＰアドレスが操作先ＩＰアドレスと一致しないと判定した場合には、端子Ｃを介して図１８のＳ１８００に示した処理に移る。
【００８７】
一方、抽出した送信元ＩＰアドレスが操作先ＩＰアドレスと一致すると判定した場合には、判定部１２１１は、抽出した送信元ポート番号が、操作先装置１０５のｔｅｌｎｅｔ用のポート番号（２３）であるか否かを判定する（Ｓ１７１３）。抽出した送信元ポート番号が操作先装置１０５のｔｅｌｎｅｔ用のポート番号（２３）でないと判定した場合には、端子Ｃを介して図１８のＳ１８００に示した処理に移る。
【００８８】
一方、抽出した送信元ポート番号が操作先装置１０５のｔｅｌｎｅｔ用のポート番号（２３）であると判定した場合には、判定部１２１１は、抽出した宛先ポート番号が、図１６のＳ１６０７で特定したレコードの「転送ポート番号」フィールドの値と一致するか否かを判定する（Ｓ１７１５）。これは、Ｓ１７０３で取得した受信パケットが、二次ｔｅｌｎｅｔセッションにおけるｔｅｌｎｅｔ応答パケットであり、送信元である、操作先装置１０５のＩＰアドレス、操作先装置のポート番号、および、送信先の中継装置１０３のポート番号が期待どおりであることを示している。抽出した宛先ポート番号が転送ポート番号と一致しないと判定した場合には、端子Ｃを介して図１８のＳ１８００に示した処理に移る。
【００８９】
一方、抽出した宛先ポート番号が転送ポート番号と一致すると判定した場合には、判定部１２１１は、一旦経過時間の計測を終える（Ｓ１７１７）。そして、Ｓ１７０１に示した処理に戻る。
【００９０】
図１８の説明に移る。Ｓ１８００において、判定部１２１１は、経過時間が閾値を超えたか否かを判定する。経過時間が閾値を超えていないと判定した場合には、端子Ｄを介してＳ１７０３に示した処理に戻る。
【００９１】
一方、経過時間が閾値を超えていると判定した場合には、判定部１２１１は、宛先ＩＰアドレスのフィールドに操作先ＩＰアドレスを設定し、更に宛先ポート番号のフィールドにｔｅｌｎｅｔ用のポート番号（２３）を設定した動作確認パケットを送信する（Ｓ１８０１）。
【００９２】
ここで、経過時間が閾値を超えていると判定した場合（Ｓ１８００でＹｅｓと判定）は、換言すると、二次ｔｅｌｎｅｔセッションにおけるｔｅｌｎｅｔサーバ、つまり操作先装置１０５からのｔｅｌｎｅｔコマンドに対する応答パケットが一定時間受信されていないことに相当する。また、Ｓ１８０１の動作確認パケットの送信は、二次ｔｅｌｎｅｔセッションにおけるｔｅｌｎｅｔクライアントである中継装置１０３から、ｔｅｌｎｅｔサーバである操作先装置１０５に対して動作確認パケットを送信することを示している。
【００９３】
そして、判定部１２１１は、動作確認パケットに対する応答パケットを受信したか否かを判定する（Ｓ１８０３）。動作確認パケットに対する応答パケットを受信していないと判定した場合には、判定部１２１１は、動作確認パケットを送信した時点から所定時間が過ぎたか否かを判定する（Ｓ１８０５）。所定時間が過ぎていないと判定した場合には、Ｓ１８０３に示した処理に戻る。
【００９４】
Ｓ１８０３において、応答パケットを受信したと判定した場合には、端子Ｅを介して、図１７に示したＳ１７０１の処理に戻る。
【００９５】
Ｓ１８０５において、所定時間が過ぎたと判定した場合には、切断部１２１３は、図１６のＳ１６０７で特定したレコードに格納されている操作元ＩＰアドレス及び操作元ポート番号で特定されるセッションを切断する（Ｓ１８０７）。そして、切断部１２１３は、当該レコードを削除して（Ｓ１８０９）、中継監視処理を終える。
【００９６】
ここで、所定時間が過ぎたと判定した場合（Ｓ１８０５でＹｅｓと判定）は、換言すると、二次ｔｅｌｎｅｔセッションにおけるｔｅｌｎｅｔサーバ、つまり操作先装置１０５から、動作確認パケットに対する応答パケットが所定時間内に受信されなかったことに相当する。これは二次ｔｅｌｎｅｔセッションの異常、または切断状態を検出したことに相当する。そしてＳ１８０７の処理は、この切断が検出された二次ｔｅｌｎｅｔセッションに対応する一次ｔｅｌｎｅｔセッションを切断することに相当する。
【００９７】
本実施の形態によれば、中継装置１０３と操作先装置１０５とのセッションが切断された場合に、中継装置１０３に対する誤操作を防ぐことができる。
【００９８】
また、操作先装置１０５の動作確認を、より効率的に行うことができる。
【００９９】
また、一次ｔｅｌｎｅｔクライアント２１３、一次ｔｅｌｎｅｔサーバ２３１、二次ｔｅｌｎｅｔクライアント２３７及び二次ｔｅｌｎｅｔサーバ２５１の改変を要しない。
【０１００】
以上本発明の一実施の形態を説明したが、本発明はこれに限定されるものではない。例えば、上述の機能ブロック構成はプログラムモジュール構成に一致しない場合もある。
【０１０１】
また、上で説明した各記憶領域の構成は一例であって、上記のような構成でなければならないわけではない。さらに、処理フローにおいても、処理結果が変わらなければ、処理の順番を入れ替えることや複数の処理を並列に実行させるようにしても良い。
【０１０２】
また、本実施例では、図１３で示したとおり、一次セッションの識別情報として操作元ＩＰアドレスを、二次セッションの識別情報として操作先ＩＰアドレスを用いた。これらは中継装置とそれぞれのセッションが確立される装置の装置識別子ということができる。
【０１０３】
また、本実施例では、図１３で示したとおり、一次セッションの識別情報として操作元ポート番号を、二次セッションの識別情報として転送ポート番号を用いた。これらはｔｅｌｎｅｔプロトコルにおいては、サーバ側ポート番号が基本的には２３と決まっているため、クライアント側のポート番号を用いたものである。そして、例えば同一操作元、操作先の複数ｔｅｌｎｅｔセッションがあった場合でも、クライアント側ポート番号を異なるように設定しておけば、別セッションとして識別可能となる。
【０１０４】
本実施例ではセッションの識別情報として、対向装置の識別子（実施例では一次セッション：操作元ＩＰアドレス、二次セッション：操作先ＩＰアドレス）と、ポート番号（実施例では一次セッション：操作元（クライアント）ポート番号、二次セッション：転送（クライアント）ポート番号）としていた。他の例として、セッション識別子として、対向装置識別子と、たとえばセッション識別子（セッションＩＤ）との組を用いてもよい。
【０１０５】
操作元ＩＰアドレスと一次セッションＩＤとによって一次セッションを特定する場合には、図３のＳ３０７に示した一次ｔｅｌｎｅｔセッションの確立の手順において中継装置１０３から操作元装置１０１へ送信されるセッション確立完了の通知パケットから、操作元ＩＰアドレスに相当する宛先ＩＰアドレスと一次セッションＩＤとを抽出するようにしてもよい。この場合には、図１３に示した中継テーブルにおいて、操作元ポート番号に代えて一次セッションＩＤを操作元ＩＰアドレスと共に保持するようにしてもよい。そして、図１８のＳ１８０７において操作元ＩＰアドレス及び一次セッションＩＤで特定される一次セッションを切断するようにしてもよい。
【０１０６】
また、操作先ＩＰアドレスと二次セッションＩＤとによって二次セッションを特定する場合には、図４のＳ４０７に示した二次ｔｅｌｎｅｔセッションの確立の手順において操作先装置１０５から中継装置１０３へ送信されるセッション確立完了の通知パケットから、二次セッションＩＤを抽出するようにしてもよい。この場合には、図１３に示した中継テーブルにおいて、転送ポート番号に代えて二次セッションＩＤを保持するようにしてもよい。そして、図１７のＳ１７１５に示したポート番号一致の判定処理に代えて、ｔｅｌｎｅｔの応答パケットに含まれる二次セッションＩＤが、中継テーブルに保持されている二次セッションＩＤと一致するか否かを判定する処理を行うようにしてもよい。尚、この場合でも、Ｙｅｓルート及びＮｏルートは上述の例と同様である。
【０１０７】
また、例えば中継装置１０３において一次ｔｅｌｎｅｔサーバ２３１を２つ有する場合には、一方の一次ｔｅｌｎｅｔサーバ２３１において、２３以外のポート番号を用いる。このような場合には、一次ｔｅｌｎｅｔ接続の要求パケットから宛先ポート番号を抽出し、これを中継テーブルにおいて一次セッションを特定する中継ポート番号として保持するようにしてもよい。そして、中継監視処理において、中継ポート番号に基づいて、切断対象となる一次セッションを特定するようにしてもよい。
【０１０８】
また、例えば操作先装置１０５において二次ｔｅｌｎｅｔサーバ２５１を２つ有する場合には、一方の二次ｔｅｌｎｅｔサーバ２５１において、２３以外のポート番号を用いる。このような場合には、二次ｔｅｌｎｅｔ接続の要求パケットから宛先ポート番号を抽出し、これを中継テーブルにおいて二次セッションを特定する操作先ポート番号として保持するようにしてもよい。そして、中継監視処理において、操作先ポート番号に基づいて、監視対象となるｔｅｌｎｅｔの応答パケットを特定するようにしてもよい。
【０１０９】
なお、上で述べた操作元装置１０１、中継装置１０３及び操作先装置１０５は、コンピュータ装置であって、図１９に示すように、メモリ２５０１とＣＰＵ（Central Processing Unit）２５０３とハードディスク・ドライブ（ＨＤＤ：Hard Disk Drive）２５０５と表示装置２５０９に接続される表示制御部２５０７とリムーバブル・ディスク２５１１用のドライブ装置２５１３と入力装置２５１５とネットワークに接続するための通信制御部２５１７とがバス２５１９で接続されている。オペレーティング・システム（ＯＳ：Operating System）及び本実施例における処理を実施するためのアプリケーション・プログラムは、ＨＤＤ２５０５に格納されており、ＣＰＵ２５０３により実行される際にはＨＤＤ２５０５からメモリ２５０１に読み出される。ＣＰＵ２５０３は、アプリケーション・プログラムの処理内容に応じて表示制御部２５０７、通信制御部２５１７、ドライブ装置２５１３を制御して、所定の動作を行わせる。また、処理途中のデータについては、主としてメモリ２５０１に格納されるが、ＨＤＤ２５０５に格納されるようにしてもよい。本発明の実施例では、上で述べた処理を実施するためのアプリケーション・プログラムはコンピュータ読み取り可能なリムーバブル・ディスク２５１１に格納されて頒布され、ドライブ装置２５１３からＨＤＤ２５０５にインストールされる。インターネットなどのネットワーク及び通信制御部２５１７を経由して、ＨＤＤ２５０５にインストールされる場合もある。このようなコンピュータ装置は、上で述べたＣＰＵ２５０３、メモリ２５０１などのハードウエアとＯＳ及びアプリケーション・プログラムなどのプログラムとが有機的に協働することにより、上で述べたような各種機能を実現する。
【０１１０】
以上述べた本発明の実施の形態をまとめると、以下のようになる。
【０１１１】
本実施の形態に係る中継装置は、複数段のセッションにより通信元装置と通信先装置との通信を中継する中継装置であって、（Ａ）通信先装置とのセッションが切断されたか否かを判定する判定部と、（Ｂ）通信先装置とのセッションが切断されたと判定した場合に、通信元装置とのセッションを切断する切断部とを有する。
【０１１２】
このようにすれば、中継装置と通信先装置とのセッションが切断された場合に、中継装置における無用な動作を減らすことができる。尚、上述した操作元装置１０１は、通信元装置の例である。また、上述した操作先装置１０５は、通信先装置の例である。
【０１１３】
更に、上記中継装置は、通信元装置との通信データから、通信元装置とのセッションに関する第１識別データを抽出する第１抽出部を有するようにしてもよい。また、上記切断部は、第１識別データに基づいて、通信元装置とのセッションを特定するようにしてもよい。
【０１１４】
このようにすれば、通信元装置とのセッションを特定し易くなる。
【０１１５】
更に、上記中継装置は、通信元装置から送られた接続要求のパケットから、送信元ＩＰ（Internet Protocol）アドレス及び第１の送信元ポート番号を抽出する第１抽出部を有するようにしてもよい。また、上記切断部は、送信元ＩＰアドレス及び第１の送信元ポート番号に基づいて、通信元装置とのセッションを特定するようにしてもよい。
【０１１６】
このようにすれば、例えば通信元装置で通信元となるモジュールが複数ある場合に、通信元装置とのセッションを特定し易くなる。
【０１１７】
上記判定部は、通信先装置から応答パケットを受信しない期間が基準を超えた場合に、通信先装置の動作確認を行うようにしてもよい。
【０１１８】
このようにすれば、通信先装置の動作確認を、より効率的に行うことができる。
【０１１９】
更に、上記中継装置は、通信先装置との通信データから、通信先装置とのセッションに関する第２識別データを抽出する第２抽出部を有するようにしてもよい。また、上記判定部は、第２識別データに基づいて、応答パケットを特定するようにしてもよい。
【０１２０】
このようにすれば、通信先装置からの応答パケットを特定し易くなる。
【０１２１】
更に、上記中継装置は、通信元装置で入力されたコードを転送するパケットから、通信先装置との接続を要求するコマンドに含まれる通信先装置のＩＰアドレスを抽出する第２抽出部と、通信先装置へ送られる接続要求のパケットから、第２の送信元ポート番号を抽出する第３抽出部とを有するようにしてもよい。また、上記判定部は、通信先装置のＩＰアドレス及び第２の送信元ポート番号に基づいて、応答パケットを特定するようにしてもよい。
【０１２２】
このようにすれば、例えば中継装置で転送を行うモジュールが複数ある場合に、通信先装置からの応答パケットを特定し易くなる。
【０１２３】
なお、上で述べた中継装置による処理をコンピュータに行わせるためのプログラムを作成することができ、当該プログラムは、例えばフレキシブルディスク、ＣＤ−ＲＯＭ、光磁気ディスク、半導体メモリ、ハードディスク等のコンピュータ読み取り可能な記憶媒体又は記憶装置に格納されるようにしてもよい。尚、中間的な処理結果は、一般的にメインメモリ等の記憶装置に一時保管される。
【０１２４】
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
【０１２５】
（付記１）
複数段のセッションにより通信元装置と通信先装置との通信を中継する中継装置であって、
前記通信先装置とのセッションが切断されたか否かを判定する判定部と、
前記通信先装置との前記セッションが切断されたと判定した場合に、前記通信元装置とのセッションを切断する切断部と
を有する中継装置。
【０１２６】
（付記２）
更に、
前記通信元装置との通信データから、前記通信元装置との前記セッションに関する第１識別データを抽出する第１抽出部
を有し、
前記切断部は、前記第１識別データに基づいて、前記通信元装置との前記セッションを特定する
付記１記載の中継装置。
【０１２７】
（付記３）
更に、
前記通信元装置から送られた接続要求のパケットから、送信元ＩＰ（Internet Protocol）アドレス及び第１の送信元ポート番号を抽出する第１抽出部
を有し、
前記切断部は、前記送信元ＩＰアドレス及び前記第１の送信元ポート番号に基づいて、前記通信元装置との前記セッションを特定する
付記１記載の中継装置。
【０１２８】
（付記４）
前記判定部は、前記通信先装置から応答パケットを受信しない期間が基準を超えた場合に、前記通信先装置の動作確認を行う
付記１乃至３のいずれか１つ記載の中継装置。
【０１２９】
（付記５）
更に、
前記通信先装置との通信データから、前記通信先装置との前記セッションに関する第２識別データを抽出する第２抽出部
を有し、
前記判定部は、前記第２識別データに基づいて、前記応答パケットを特定する
付記４記載の中継装置。
【０１３０】
（付記６）
更に、
前記通信元装置で入力されたコードを転送するパケットから、前記通信先装置との接続を要求するコマンドに含まれる前記通信先装置のＩＰアドレスを抽出する第２抽出部と、
前記通信先装置へ送られる接続要求のパケットから、第２の送信元ポート番号を抽出する第３抽出部と
を有し、
前記判定部は、前記通信先装置のＩＰアドレス及び前記第２の送信元ポート番号に基づいて、前記応答パケットを特定する
付記４記載の中継装置。
【０１３１】
（付記７）
複数段のセッションにより通信元装置と通信先装置との通信を中継するコンピュータにより実行される制御方法であって、
前記通信先装置とのセッションが切断されたか否かを判定し、
前記通信先装置との前記セッションが切断されたと判定した場合に、前記通信元装置とのセッションを切断する
処理を含む制御方法。
【０１３２】
（付記８）
複数段のセッションにより通信元装置と通信先装置との通信を中継するコンピュータに、
前記通信先装置とのセッションが切断されたか否かを判定し、
前記通信先装置との前記セッションが切断されたと判定した場合に、前記通信元装置とのセッションを切断する
処理を実行させるプログラム。
【０１３３】
（付記９）
通信元装置と、
通信先装置と、
前記通信元装置からの要求に応じて前記通信元装置との間に第１セッションを設け、更に前記通信元装置からの要求に応じて前記通信先装置との間に第２セッションを設ける中継装置とを含み、
前記中継装置は、
前記第２セッションが切断されたか否かを判定する判定部と、
前記第２セッションが切断されたと判定した場合に、前記第１セッションを切断する切断部と
を有するシステム。
【符号の説明】
【０１３４】
１０１  操作元装置
１０３  中継装置
１０５  操作先装置
２１１  コマンドプログラム
２１３  一次ｔｅｌｎｅｔクライアント
２１５  ツール
２２１  インターフェース制御部
２２３  通信インターフェース装置
２３１  一次ｔｅｌｎｅｔサーバ
２３３  ネットワーク仮想端末
２３５  コマンドプログラム
２３７  二次ｔｅｌｎｅｔクライアント
２３９  中継管理部
２４１  インターフェース制御部
２４３  通信インターフェース装置
２５１  二次ｔｅｌｎｅｔサーバ
２５３  ネットワーク仮想端末
２５５  コマンドプログラム
２６１  インターフェース制御部
２６３  通信インターフェース装置
１２０１  第１取得部
１２０３  第１抽出部
１２０５  第２抽出部
１２０７  第２取得部
１２０９  第３抽出部
１２１１  判定部
１２１３  切断部
１２２１  中継テーブル記憶部
１２２３  バッファ
【図１】
2019016995.tif 000003
【図２】
2019016995.tif 000004
【図３】
2019016995.tif 000005
【図４】
2019016995.tif 000006
【図５】
2019016995.tif 000007
【図６】
2019016995.tif 000008
【図７】
2019016995.tif 000009
【図８】
2019016995.tif 000010
【図９】
2019016995.tif 000011
【図１０】
2019016995.tif 000012
【図１１Ａ】
2019016995.tif 000013
【図１１Ｂ】
2019016995.tif 000014
【図１２】
2019016995.tif 000015
【図１３】
2019016995.tif 000016
【図１４】
2019016995.tif 000017
【図１５】
2019016995.tif 000018
【図１６】
2019016995.tif 000019
【図１７】
2019016995.tif 000020
【図１８】
2019016995.tif 000021
【図１９】
2019016995.tif 000022