(57)【要約】【課題】接続可能なセッションを有効活用できるセッション管理プログラム、セッション管理方法およびセッション管理装置を提供する。【解決手段】画像中継サーバ２１は、仮想ブラウザサーバ２２で実行するアプリケーションの処理結果を中継する。管理サーバ２０は、画像中継サーバ２１で中継するセッションを管理する。管理サーバ２０は、端末装置１１からセッションの割り当て要求を受け付け、端末装置１１にアクセスさせる画像中継サーバ２１の接続先情報を端末装置１１に返信する。画像中継サーバ２１は、端末装置１１のアクセスに基づいて、該端末装置１１と仮想ブラウザサーバ２２とを中継するセッションを接続する。管理サーバ２０は、画像中継サーバ２１が中継するセッションの切断に応じて、仮想ブラウザサーバ２２から通知されるセッションの切断を受信し、通知されたセッションの割り当てを解放する。【選択図】図６
2015028722.tif 000002
【特許請求の範囲】
【請求項１】
実行部で実行するアプリケーションの処理結果を中継する中継部と、
前記中継部で中継するセッションを管理する管理部とで実行されるセッション管理プログラムであって、
前記管理部は、
端末からセッションの割り当て要求を受け付け、
前記端末にアクセスさせる中継部の接続先情報を前記端末に返信し、
前記中継部は、
前記端末のアクセスに基づいて、該端末と前記実行部とを中継するセッションを接続し、
前記管理部は、
前記中継部が中継するセッションの切断に応じて、前記実行部から通知されるセッションの切断を受信し、
通知されたセッションの割り当てを解放する
処理を実行させることを特徴とするセッション管理プログラム。
【請求項２】
前記管理部は、
前記中継部に対してセッションの接続状況を問い合せ、問い合せに対する回答に基づいてセッション情報を更新し、
前記端末へ返信する中継部の接続先情報は、前記セッション情報に基づいて生成する
処理を実行させることを特徴とする請求項１に記載のセッション管理プログラム。
【請求項３】
前記セッションの割り当てを解放する処理は、
前記実行部から通知されるセッションに応じて、セッション情報の対応するセッションを開放中に更新し、
前記管理部は、
前記セッション情報に開放中に更新されたセッションが存在し、端末からセッションの割り当て要求を受け付けた場合に、
前記開放中に更新されたセッションで管理される中継部の接続先情報は、前記端末へ返信する中継部の接続先情報から除外し、
前記セッションの割り当て要求を受け付けた端末が、前記セッション情報に開放中に更新されたセッションで管理される端末であった場合には、前記接続先情報を返信する、
処理を実行させることを特徴とする請求項２に記載のセッション管理プログラム。
【請求項４】
端末のアクセスに基づいて、該端末とアプリケーションの処理を実行する実行部とを中継するセッションを接続し、前記実行部で実行するアプリケーションの処理結果を中継する中継部と、
前記中継部で中継するセッションを管理し、前記端末からセッションの割り当て要求を受け付けた場合、該端末にアクセスさせる中継部の接続先情報を前記端末に返信し、前記中継部が中継するセッションの切断に応じて、前記実行部から通知されるセッションの切断を受信した場合、通知されたセッションの割り当てを解放する管理部と、
を有することを特徴とするセッション管理装置。
【請求項５】
実行部で実行するアプリケーションの処理結果を中継する中継部と、
前記中継部で中継するセッションを管理する管理部とで実行されるセッション管理方法であって、
前記管理部は、
端末からセッションの割り当て要求を受け付け、
前記端末にアクセスさせる中継部の接続先情報を前記端末に返信し、
前記中継部は、
前記端末のアクセスに基づいて、該端末と前記実行部とを中継するセッションを接続し、
前記管理部は、
前記中継部が中継するセッションの切断に応じて、前記実行部から通知されるセッションの切断を受信し、
通知されたセッションの割り当てを解放する
処理を実行することを特徴とするセッション管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、セッション管理プログラム、セッション管理方法およびセッション管理装置に関する。
【背景技術】
【０００２】
従来より、スマートフォンやタブレット端末などの端末装置を用いて外部から社内のシステムを利用する場合、安全かつ快適にアクセスさせる技術がある。この技術では、端末装置から画像転送機能を有する仮想ブラウザサーバへアクセスさせ、仮想ブラウザサーバが端末装置へ社内Ｗｅｂシステムの画面を転送する。さらにこの技術では、仮想ブラウザサーバと接続するセッション数を管理する管理サーバを設けている。管理サーバは、仮想ブラウザサーバから通知される端末装置の接続状況を記録し、接続可能なセッション数を管理する。また、管理サーバは、端末装置から接続要求を受け付ける。管理サーバは、端末装置から接続要求を受け付けた際に、仮想ブラウザサーバのセッション数が上限ではない場合、仮想ブラウザサーバへのアクセスを許可する。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】“業界初！ゲートウェイを置くだけでPC向けWeb業務画面を簡単かつスムーズにスマート端末で利用可能に”、[online]、［平成２５年７月５日検索］、インターネット＜URL:http://pr.fujitsu.com/jp/news/2013/06/18-1.html＞
【非特許文献２】“FUJITSU  Thin  Client  Solution  モバらくだ  for  スマートデバイス”、[online]、［平成２５年７月５日検索］、インターネット＜URL:http://jp.fujitsu.com/group/fnets/services/ictinfra/m-smartdevice.html＞
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、画像転送機能を有する仮想ブラウザサーバを用いて社内Ｗｅｂシステムの画面を転送すると、ＯＳやアプリケーションの制限が高くなり、その制限により提供できるサービスが制限される。そこで、仮想ブラウザサーバに制限されない画面を転送する画像中継サーバを設けた場合に、管理サーバは、画像中継サーバと、仮想ブラウザサーバの双方を管理する場合がある。この場合に、画像中継サーバと、仮想ブラウザサーバのセッションを各々独立して管理すると、接続可能なセッションを有効活用できない場合がある。
【０００５】
一側面では、接続可能なセッションを有効活用できるセッション管理プログラム、セッション管理方法およびセッション管理装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の一側面によれば、セッション管理プログラムは、実行部で実行するアプリケーションの処理結果を中継する中継部と、前記中継部で中継するセッションを管理する管理部とで実行される。セッション管理プログラムは、管理部に、端末からセッションの割り当て要求を受け付け、記端末にアクセスさせる中継部の接続先情報を前記端末に返信する処理を実行させる。セッション管理プログラムは、前記中継部に、前記端末のアクセスに基づいて、該端末と前記実行部とを中継するセッションを接続する処理を実行させる。セッション管理プログラムは、前記管理部に、前記中継部が中継するセッションの切断に応じて、前記実行部から通知されるセッションの切断を受信し、通知されたセッションの割り当てを解放する処理を実行させる。
【発明の効果】
【０００７】
本発明の一側面によれば、リソースを有効活用できる。
【図面の簡単な説明】
【０００８】
【図１】図１は、システムの全体構成の一例を概略的に示した図である。
【図２】図２は、管理サーバの機能的な構成の一例を示す図である。
【図３】図３は、中継サーバ情報のデータ構成の一例を示す図である。
【図４】図４は、セッション情報のデータ構成の一例を示す図である。
【図５】図５は、システム管理画面の一例を示す図である。
【図６】図６は、セッションを確立して画像の転送を行う際の通信の流れの一例を模式的に示した図である。
【図７】図７は、セッション管理処理の手順の一例を示すフローチャートである。
【図８】図８は、セッション管理プログラムを実行するコンピュータを示す図である。
【発明を実施するための形態】
【０００９】
以下に、本発明にかかるセッション管理プログラム、セッション管理方法およびセッション管理装置の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。そして、各実施例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【実施例１】
【００１０】
［全体構成］
実施例１に係るシステム１０の全体構成について説明する。図１は、システムの全体構成の一例を概略的に示した図である。システム１０は、外部からセキュアなネットワークにアクセスを可能とするシステムである。本実施例では、外部から会社などの内部ネットワークに設けられた社内Ｗｅｂシステム１３にアクセスを行う場合を例にして説明する。
【００１１】
システム１０は、管理サーバ２０と、画像中継サーバ２１と、仮想ブラウザサーバ２２とを有する。管理サーバ２０、画像中継サーバ２１および仮想ブラウザサーバ２２は、例えば、データセンターや会社に設けられたサーバコンピュータである。画像中継サーバ２１および仮想ブラウザサーバ２２は、任意の数とすることができ、最大の同時アクセス数に応じた数だけ設置される。
【００１２】
システム１０は、外部ネットワーク１２に接続され、端末装置１１からアクセス可能とされている。かかる外部ネットワーク１２としては、有線または無線を問わず、インターネット、ＬＡＮ（Local  Area  Network）やＶＰＮ（Virtual  Private  Network）、移動体通信網などの任意の通信網が挙げられる。
【００１３】
端末装置１１は、利用者が内部ネットワークへのアクセスに用いる装置である。端末装置１１としては、スマートフォン、タブレット端末、ＰＤＡ（Personal  Digital  Assistant）などの携帯端末が挙げられる。なお、端末装置１１は、デスクトップ型ＰＣ（パーソナル・コンピュータ）、ノート型ＰＣなどの情報処理装置であってもよい。利用者は、外部から社内Ｗｅｂシステム１３を利用する場合、端末装置１１を用いてシステム１０へアクセスする。例えば、端末装置１１は、社内Ｗｅｂシステム１３にアクセスする場合、最初に管理サーバ２０へアクセスして画像中継サーバ２１へのセッションの割り当てを要求する。なお、図１の例では、端末装置１１を２台とした場合を例示したが、開示のシステムはこれに限定されず、端末装置１１を任意の数とすることができる。
【００１４】
管理サーバ２０は、端末装置１１とのセッションの管理を行う物理サーバである。ここで、画像中継サーバ２１は、後述するように、端末装置１１へ画面を転送するが、画像の転送などの処理に負荷がかかるため、端末装置と接続可能なセッション数に制限がある。そこで、管理サーバ２０は、各画像中継サーバ２１に接続可能なセッション数を管理する。例えば、管理サーバ２０は、各画像中継サーバ２１に対して定期的にセッションの接続状況を問い合せして接続中のセッションを管理する。管理サーバ２０は、端末装置１１から画像中継サーバ２１へのセッションの割り当てが要求され、セッションを割り当て可能な画像中継サーバ２１がある場合、セッションを割り当て可能な画像中継サーバ２１に関する情報を端末装置１１へ通知する。端末装置１１は、通知された画像中継サーバ２１にアクセスする。
【００１５】
画像中継サーバ２１は、内部ネットワークへのアクセスを中継する物理サーバである。例えば、画像中継サーバ２１は、端末装置１１からの社内Ｗｅｂシステム１３へのアクセスを中継する。画像中継サーバ２１は、端末装置１１からアクセスされると、仮想ブラウザサーバ２２へアクセスして仮想ブラウザを起動させ、端末装置１１および仮想ブラウザサーバ２２とセッションを確立する。なお、画像中継サーバ２１がアクセスする仮想ブラウザサーバ２２は、画像中継サーバ２１に対して予め対応付けておいてもよい。また、画像中継サーバ２１が各仮想ブラウザサーバ２２の負荷状態を示す情報を収集して、負荷の低い仮想ブラウザサーバ２２にアクセスするものとしてもよい。また、画像中継サーバ２１が各仮想ブラウザサーバ２２の画像中継サーバ２１との接続状況を示す情報を収集して、接続数が最も少ない仮想ブラウザサーバ２２にアクセスするものとしてもよい。
【００１６】
画像中継サーバ２１は、セッションが確立すると、仮想ブラウザサーバ２２で動作する仮想ブラウザの画面の情報を端末装置１１へ随時転送する。また、画像中継サーバ２１は、端末装置１１から仮想ブラウザに対する操作情報を受け付ける。画像中継サーバ２１は、操作情報を受け付けると、例えば、リモートデスクトップの機能を用いて、仮想ブラウザサーバ２２で動作する仮想ブラウザに対して操作情報に基づく操作を行う。また、画像中継サーバ２１は、管理サーバ２０からセッションの接続状況の問い合せを受けた場合、接続しているセッションの接続状況に関する情報を管理サーバ２０へ回答する。
【００１７】
仮想ブラウザサーバ２２は、仮想ブラウザを動作させる物理サーバである。例えば、仮想ブラウザサーバ２２は、リモートデスクトップの機能を用いて、画像中継サーバ２１からの要求によりブラウザを動作させる。そして、仮想ブラウザサーバ２２は、例えば、RemoteAppの機能を用いて、ブラウザ部分の画面を画像中継サーバ２１へ転送することにより、ブラウザを仮想ブラウザとして動作させる。また、仮想ブラウザサーバ２２は、画像中継サーバ２１とのセッションが切断されると、セッションの切断を管理サーバ２０へ通知する。例えば、仮想ブラウザサーバ２２では、端末装置１１からの社内Ｗｅｂシステム１３へのアクセスが完了して仮想ブラウザが終了する際、仮想ブラウザがセッションの切断を管理サーバ２０へ通知する。なお、仮想ブラウザが終了する際、仮想ブラウザとは異なり、仮想ブラウザの状態を監視するプログラムがセッションの切断を管理サーバ２０へ通知してもよい。
【００１８】
このように、本実施例に係るシステム１０は、端末装置１１から社内Ｗｅｂシステム１３へのアクセスが要求された場合、仮想ブラウザにより代理で社内Ｗｅｂシステム１３にアクセスさせ、当該仮想ブラウザの画面を端末装置１１へ転送する。すなわち、端末装置１１には、仮想ブラウザの画面が転送されるが、内部ネットワークのデータは転送されない。このため、内部ネットワークのセキュリティを保つことができる。また、端末装置１１には、内部ネットワークのデータが転送されないため、データの漏洩を抑制できる。
【００１９】
［管理サーバの構成］
次に、実施例１に係る管理サーバ２０の構成について説明する。図２は、管理サーバの機能的な構成の一例を示す図である。図２に示すように、管理サーバ２０は、通信Ｉ／Ｆ（インタフェース）部３０と、表示部３１と、入力部３２と、記憶部３３と、制御部３４とを有する。
【００２０】
通信Ｉ／Ｆ部３０は、他の装置との間で通信制御を行うインタフェースである。通信Ｉ／Ｆ部３０は、他の装置と各種情報を送受信する。例えば、通信Ｉ／Ｆ部３０は、外部ネットワーク１２を介して端末装置１１から画像中継サーバ２１へのセッションの割り当ての要求を受信する。また、通信Ｉ／Ｆ部３０は、仮想ブラウザサーバ２２からセッションの切断が通知される。かかる通信Ｉ／Ｆ部３０の一態様としては、ＬＡＮカードなどのネットワークインタフェースカードを採用できる。
【００２１】
表示部３１は、各種情報を表示する表示デバイスである。表示部３１としては、ＬＣＤ（Liquid  Crystal  Display）やＣＲＴ（Cathode  Ray  Tube）などの表示デバイスが挙げられる。表示部３１は、各種情報を表示する。
【００２２】
入力部３２は、各種の情報を入力する入力デバイスである。例えば、入力部３２としては、マウスやキーボードなどの入力デバイスが挙げられる。入力部３２は、管理者などからの操作入力を受け付け、受け付けた操作内容を示す操作情報を制御部３４に入力する。
【００２３】
記憶部３３は、ハードディスク、ＳＳＤ（Solid  State  Drive）、光ディスクなどの記憶装置である。なお、記憶部３３は、ＲＡＭ（Random  Access  Memory)、フラッシュメモリ、ＮＶＳＲＡＭ（Non  Volatile  Static  Random  Access  Memory)などのデータを書き換え可能な半導体メモリであってもよい。
【００２４】
記憶部３３は、制御部３４で実行されるＯＳ（Operating  System）やセッション管理に用いる各種プログラムを記憶する。さらに、記憶部３３は、制御部３４で実行されるプログラムで用いられる各種データを記憶する。例えば、記憶部３３は、中継サーバ情報４０と、セッション情報４１とを記憶する。
【００２５】
中継サーバ情報４０は、画像中継サーバ２１に関する情報を記憶したデータである。図３は、中継サーバ情報のデータ構成の一例を示す図である。図３に示すように、中継サーバ情報４０は、「サーバ名」、「ＩＰアドレス」、「セッション上限」の各項目を有する。サーバ名の項目は、画像中継サーバ２１を識別する識別情報として画像中継サーバ２１のコンピュータ名を記憶する領域である。ＩＰアドレスの項目は、画像中継サーバ２１のＩＰ（Internet  Protocol）アドレスを記憶する領域である。セッション上限の項目は、画像中継サーバ２１に接続可能なセッション数の上限値を記憶する領域である。
【００２６】
図３の例では、サーバ名が「ＲＶＥＣ＿Ａ」の画像中継サーバ２１は、ＩＰアドレスが「１９２．１６８．２０．１８５」であり、セッション上限が「１０」であることを示す。
【００２７】
セッション情報４１は、管理サーバ２０において管理するセッションに関する情報を記憶したデータである。図４は、セッション情報のデータ構成の一例を示す図である。図４に示すように、セッション情報４１は、「セッションＩＤ」、「接続日時」、「ログインＩＤ」、「状態」、「接続元ＩＰアドレス」、「画像中継ＳＶ」、「仮想ブラウザＳＶ」、「切断日時」の各項目を有する。セッションＩＤの項目は、セッションを識別する識別情報を記憶する領域である。セッションには、それぞれを識別する識別情報として、数字や文字を組み合わせてユニークなセッションＩＤが付与される。セッションＩＤの項目には、セッションに対して付与されたセッションＩＤが記憶される。接続日時の項目は、セッションの接続を開始した日時を記憶する領域である。本実施例では、接続日時の項目に、端末装置１１からセッションの割り当ての要求を受信した日時が記憶される。ログインＩＤの項目は、端末装置１１の利用者のユーザＩＤを記憶する領域である。本実施例では、セッションの割り当てを要求する際に、最初に、ユーザＩＤおよびパスワードを入力させてユーザ認証を行うものとしている。ログインＩＤの項目には、ユーザ認証で入力されたユーザＩＤが記憶される。状態の項目は、セッションの状態を記憶する領域である。本実施例では、セッションの状態として、接続中、接続、解放中、異常を用いる。接続中の状態は、セッションが割り当てられているが、セッションが確立されていない状態であることを示す。接続の状態は、セッションが確立されて画像の転送が可能な状態であることを示す。解放中の状態は、セッションを解放している途中であることを示す。異常の状態は、セッションを解放できず、異常が発生していることを示す。状態の項目は、セッションの状態に応じて随時更新される。接続元ＩＰアドレスの項目は、セッションの割り当てを要求した端末装置１１のＩＰアドレスを記憶する領域である。画像中継ＳＶは、セッションにより接続されている画像中継サーバ２１のＩＰアドレスを記憶する領域である。仮想ブラウザＳＶの項目は、セッションにより接続されている仮想ブラウザサーバ２２のＩＰアドレスを記憶する領域である。切断日時の項目は、セッションの切断を開始した日時を記憶する領域である。切断日時の項目は、セッションが接続中の間、空白とされ、セッションを切断する際に日時が設定される。
【００２８】
図４の例では、セッションＩＤが「０００１」のセッションは、接続日時が「２０１３／６／２５  ２０：３０：４０」であり、ログインＩＤが「Ａ」であり、状態が「接続中」であることを示す。また、セッションＩＤが「０００１」のセッションは、接続元ＩＰアドレスが「１０．５３．１４７．１３７」であり、画像中継ＳＶが「１９２．１６８．２０．１８５」であることを示す。また、セッションＩＤが「０００１」のセッションは、仮想ブラウザＳＶが「１９２．１６８．２０．１８１」であり、切断日時が空白であることから、セッションの切断が開始されておらず、セッションが接続中であることを示す。
【００２９】
図２に戻り、制御部３４は、管理サーバ２０を制御するデバイスである。制御部３４としては、Central  Processing  Unit（ＣＰＵ）、Micro  Processing  Unit（ＭＰＵ）等の電子回路や、Application  Specific  Integrated  Circuit（ＡＳＩＣ）、Field  Programmable  Gate  Array（ＦＰＧＡ）等の集積回路を採用できる。制御部３４は、各種の処理手順を規定したプログラムや制御データを格納するための内部メモリを有し、これらによって種々の処理を実行する。制御部３４は、各種のプログラムが動作することにより各種の処理部として機能する。例えば、制御部３４は、受付部５０と、割当部５１と、管理部５２と、解放部５３とを有する。
【００３０】
受付部５０は、各種の情報を受け付ける。例えば、受付部５０は、端末装置１１から画像中継サーバ２１へのセッションの割り当ての要求を受け付ける。
【００３１】
割当部５１は、画像中継サーバ２１へのセッションの割り当てを行う。例えば、割当部５１は、受付部５０によりセッションの割り当ての要求を受け付けると、新たなセッションＩＤを生成する。また、割当部５１は、画像中継サーバ２１毎に、使用中および使用予定のセッションのセッション数を求める。例えば、セッション情報４１に基づき、画像中継サーバ２１毎に、状態が解放中以外のセッション数を求める。本実施例では、割当部５１は、画像中継サーバ２１毎に、状態が接続中、接続、異常の何れかであるセッション数を求める。状態が接続中のセッションは、画像中継サーバ２１への割り当てが行われ、これから通信を確立させるセッションである。状態が接続のセッションは、通信が確立して使用中のセッションである。状態が異常のセッションは、何らかの理由で解放できずに残っているセッションである。このため、本実施例では、使用中および使用予定のセッションのセッション数として、状態が接続中、接続、異常の何れかであるセッション数を求める。
【００３２】
割当部５１は、セッション数が中継サーバ情報４０に記憶されたセッション上限に達していない画像中継サーバ２１を特定する。割当部５１は、セッション数がセッション上限に達していない画像中継サーバ２１が無い場合、セッション数に空きがなく接続できない旨を端末装置１１へ通知する。
【００３３】
割当部５１は、セッション数がセッション上限に達していない画像中継サーバ２１がある場合、当該画像中継サーバ２１のなかから、接続対象の画像中継サーバ２１を決定する。接続対象の画像中継サーバ２１の決定方法は、何れの方式であってもよい。例えば、割当部５１は、セッション数がセッション上限未満の画像中継サーバ２１からセッション数が最も少ない画像中継サーバ２１を接続対象の画像中継サーバ２１と決定してもよい。また、例えば、割当部５１は、セッション数がセッション上限未満の画像中継サーバ２１からセッション数が最も多い画像中継サーバ２１を接続対象の画像中継サーバ２１と決定してもよい。すなわち、割当部５１は、セッション数がセッション上限に達するまで、セッション数が多い画像中継サーバ２１を接続対象として、画像中継サーバ２１を集中的に動作させてもよい。
【００３４】
割当部５１は、セッションＩＤおよび接続対象の画像中継サーバ２１のＩＰアドレスを割り当ての要求元の端末装置１１へ通知する。
【００３５】
端末装置１１では、通知されたＩＰアドレスの画像中継サーバ２１へ通知されたセッションＩＤを通知してアクセスを行う。これにより、画像中継サーバ２１は、端末装置１１および仮想ブラウザサーバ２２とセッションを確立し、仮想ブラウザサーバ２２で動作する仮想ブラウザの画面の情報を端末装置１１へ随時転送する。
【００３６】
割当部５１は、セッション情報４１に割り当てたセッションに関する情報を格納したレコードを登録する。例えば、割当部５１は、セッションＩＤを新たなセッションＩＤとし、接続日時を現在日時とし、ログインＩＤを要求元の利用者のユーザＩＤとし、状態を接続中とし、接続元ＩＰアドレスを要求元の端末装置１１のＩＰアドレスとしたレコードを登録する。
【００３７】
管理部５２は、各画像中継サーバ２１に接続中のセッションの状態を管理する。例えば、管理部５２は、各画像中継サーバ２１に対して定期的にセッションの接続状況を問い合せる。この接続状況の問い合せを行う周期は、例えば、数秒から数分の範囲の値とするが、管理者等により外部から設定可能としてもよい。
【００３８】
画像中継サーバ２１は、管理サーバ２０からセッションの接続状況の問い合せを受けた場合、接続中のセッションに関する情報を管理サーバ２０へ回答する。例えば、画像中継サーバ２１は、接続中のセッションのセッションＩＤおよびセッションにおいて接続中の仮想ブラウザのＩＰアドレスを管理サーバ２０へ回答する。このように、画像中継サーバ２１は、セッションの接続状況の問い合せを受けた場合、接続中のセッションに関する情報を管理サーバ２０へ回答する。このため、例えば、端末装置１１からの接続が終了してセッション解放された場合、解放されたセッションに関する情報は、管理サーバ２０へ通知されなくなる。
【００３９】
管理部５２は、画像中継サーバ２１からの回答に応じてセッション情報４１を更新する。例えば、管理部５２は、セッションＩＤが通知されたセッションの仮想ブラウザのＩＰアドレスをセッション情報４１に登録する。また、管理部５２は、セッションＩＤが通知されたセッションのセッション情報４１の状態を接続に更新する。また、管理部５２は、セッションＩＤが通知されなくなったセッションのレコードをセッション情報４１から削除する。これにより、セッションは、端末装置１１からの接続が終了して解放されると、画像中継サーバ２１からセッションＩＤが通知されなくなるため、セッション情報４１から当該セッションのレコードが削除される。
【００４０】
また、管理部５２は、各画像中継サーバ２１に接続中のセッションの状態を画面に表示させて管理者により確認可能としている。例えば、管理部５２は、所定の操作が行われた場合、セッションの状態を確認するシステム管理画面を表示させる。なお、管理部５２は、管理サーバ２０に接続された他の管理用の端末装置から操作を受け付けて、当該端末装置にシステム管理画面を表示させてもよく、入力部３２から操作を受け付けて表示部３１にシステム管理画面を表示させるものとしてもよい。
【００４１】
図５は、システム管理画面の一例を示す図である。システム管理画面６０は、セッション毎に、セッションに関する各種情報を表示する表示領域６１を有する。図５の例では、表示領域６１に、セッションの接続日時、ログインＩＤ、状態、接続元ＩＰアドレス、画像中継ＳＶ、仮想ブラウザＳＶが表示されている。また、システム管理画面６０には、セッション毎に、セッションの切断を指示する切断ボタン６２が設けられている。
【００４２】
図２に戻り、解放部５３は、セッションの解放を行う。例えば、解放部５３は、システム管理画面６０において切断ボタン６２が選択された場合、切断が指示されたセッションにより接続される画像中継サーバ２１に対して、切断が指示されたセッションの切断を指示する。そして、解放部５３は、切断を指示したセッションのセッション情報４１の状態を解放中に更新し、切断日時に現在の日時を格納する。
【００４３】
一方、仮想ブラウザサーバ２２では、端末装置１１からの社内Ｗｅｂシステム１３へのアクセスが完了して仮想ブラウザが終了する際、仮想ブラウザがセッションの切断を管理サーバ２０へ通知する。例えば、切断されるセッションのセッションＩＤを管理サーバ２０へ通知する。
【００４４】
解放部５３は、セッションの切断が通知されると、切断が通知されたセッションのセッション情報４１の状態を解放中に更新し、切断日時に現在の日時を格納する。
【００４５】
［通信の流れ］
次に、本実施例に係るシステム１０がセッションを確立して画像の転送を行う際の通信の流れの一例を説明する。図６は、セッションを確立して画像の転送を行う際の通信の流れの一例を模式的に示した図である。
【００４６】
端末装置１１は、社内Ｗｅｂシステム１３にアクセスする場合、管理サーバ２０へアクセスして画像中継サーバ２１へのセッションの割り当てを要求する（図６（１））。
【００４７】
管理サーバ２０は、画像中継サーバ２１に対して定期的にセッションの接続状況を問い合せし、問い合せに対する回答に基づき、セッション情報４１により接続中のセッションを管理する（図６（２）（３））。
【００４８】
管理サーバ２０は、端末装置１１から画像中継サーバ２１へのセッションの割り当てが要求されると、セッションＩＤおよび割り当てた画像中継サーバ２１のＩＰアドレスを割り当ての要求元の端末装置１１へ通知する（図６（４））。
【００４９】
端末装置１１では、通知されたＩＰアドレスの画像中継サーバ２１へ通知されたセッションＩＤを通知してアクセスを行う（図６（５））。画像中継サーバ２１は、仮想ブラウザサーバ２２にアクセスを行い、セッションを確立する（図６（６））。仮想ブラウザサーバ２２は、画像中継サーバ２１からのアクセスにより、仮想ブラウザを起動して社内Ｗｅｂシステム１３にアクセスする（図６（７）（８））。
【００５０】
画像中継サーバ２１は、仮想ブラウザサーバ２２上で動作する仮想ブラウザの画面の情報を取得し（図６（９））、仮想ブラウザの画面の情報を端末装置１１へ随時転送する（図６（１０））。
【００５１】
仮想ブラウザサーバ２２では、端末装置１１からの社内Ｗｅｂシステム１３へのアクセスが完了して仮想ブラウザが終了する際、仮想ブラウザがセッションの切断を管理サーバ２０へ通知する（図６（１１））。
【００５２】
管理サーバ２０は、このように仮想ブラウザサーバ２２からセッションの切断が通知された場合、セッションの割り当てを解放する（図６（１２））。例えば、管理サーバ２０は、切断が通知されたセッションのセッション情報４１の状態を解放中に更新する。そして、管理サーバ２０は、切断が通知されたセッションにより接続された画像中継サーバ２１に対して、切断が通知されたセッションの解放を指示する（図６（１３））。
【００５３】
このように、本実施例に係る管理サーバ２０は、セッションの切断が通知された場合、セッションの割り当てを解放する。これにより、管理サーバ２０は、切断が通知されたセッションが早く解放されるため、接続可能なセッションを有効活用できる。
【００５４】
［処理の流れ］
次に、本実施例に係る管理サーバ２０が、セッションを管理するセッション管理処理の流れについて説明する。図７は、セッション管理処理の手順の一例を示すフローチャートである。このセッション管理処理は、例えば、端末装置１１から画像中継サーバ２１へのセッションの割り当ての要求を受け付けたタイミングで実行される。
【００５５】
図７に示すように、割当部５１は、新たなセッションＩＤを生成する（Ｓ１０）。また、割当部５１は、セッション情報４１および中継サーバ情報４０に基づいて、接続対象の画像中継サーバ２１を決定する（Ｓ１１）。割当部５１は、セッションＩＤおよび接続対象の画像中継サーバ２１のＩＰアドレスを接続先情報として、割り当ての要求元の端末装置１１へ返信する（Ｓ１２）。割当部５１は、セッションＩＤで割り当てたセッションに関する情報を格納したレコードをセッション情報４１に登録する（Ｓ１３）。
【００５６】
管理部５２は、各画像中継サーバ２１に対して定期的にセッションの接続状況を問い合せ、所定時間以内にセッションが確立したか否かを判定する（Ｓ１４）。所定時間以内にセッションが確立しない場合（Ｓ１４否定）、セッションの確立が失敗したものとして処理を終了する。
【００５７】
一方、所定時間以内にセッションが確立した場合（Ｓ１４肯定）、管理部５２は、セッションが確立したセッションのセッション情報４１の状態を接続に更新する（Ｓ１５）。
【００５８】
解放部５３は、仮想ブラウザからセッションの切断が通知されたか否かを判定する（Ｓ１６）。セッションの切断が通知された場合（Ｓ１６肯定）、解放部５３は、切断が通知されたセッションのセッション情報４１の状態を解放中に更新し（Ｓ１７）、後述のＳ２１へ移行する。
【００５９】
一方、セッションの切断が通知されていない場合（Ｓ１６否定）、解放部５３は、システム管理画面６０において何れかのセッションの切断が指示されたか否かを判定する（Ｓ１８）。セッションの切断が指示されていない場合（Ｓ１８否定）、上述のＳ１６へ移行する。セッションの切断が指示された場合（Ｓ１８肯定）、解放部５３は、切断が指示されたセッションにより接続される画像中継サーバ２１に対して、切断が指示されたセッションの切断を指示する（Ｓ１９）。解放部５３は、切断を指示したセッションのセッション情報４１の状態を解放中に更新する（Ｓ２０）。
【００６０】
管理部５２は、各画像中継サーバ２１に対して定期的にセッションの接続状況を問い合せし（Ｓ２１）、状態を解放中に更新したセッションが解放されたか否かを判定する（Ｓ２２）。セッションが解放された場合（Ｓ２２肯定）、解放されたセッションのセッション情報４１のレコードを削除して、処理を終了する。
【００６１】
一方、セッションが解放されていない場合（Ｓ２２否定）、管理部５２は、状態を解放中に更新してからセッションの解放にかかる一定時間を経過したか否かを判定する（Ｓ２３）。一定時間を経過していない場合（Ｓ２３否定）、上述のＳ２１へ移行する。
【００６２】
一方、一定時間を経過した場合（Ｓ２３肯定）、管理部５２は、解放されないセッションのセッション情報４１の状態を異常に更新する（Ｓ２４）。解放部５３は、状態が異常のセッションを有する画像中継サーバ２１に対して、状態が異常のセッションの解放を指示する（Ｓ２５）。管理部５２は、状態が異常のセッションのセッション情報４１のレコードを削除し（Ｓ２６）、処理を終了する。
【００６３】
［効果］
上述してきたように、画像中継サーバ２１は、仮想ブラウザサーバ２２で実行するアプリケーションの処理結果を中継する。管理サーバ２０は、画像中継サーバ２１で中継するセッションを管理する。管理サーバ２０は、端末装置１１からセッションの割り当て要求を受け付け、端末装置１１にアクセスさせる画像中継サーバ２１の接続先情報を端末装置１１に返信する。画像中継サーバ２１は、端末装置１１のアクセスに基づいて、該端末装置１１と仮想ブラウザサーバ２２とを中継するセッションを接続する。管理サーバ２０は、画像中継サーバ２１が中継するセッションの切断に応じて、仮想ブラウザサーバ２２から通知されるセッションの切断を受信し、通知されたセッションの割り当てを解放する。これにより、管理サーバ２０は、切断が通知されたセッションを直ぐに次に割り当てることができるため、接続可能なセッションを有効活用できる。
【００６４】
すなわち、管理サーバ２０は、セッションを管理する画像中継サーバ２１へのセッションの割り当てが要求された場合、画像中継サーバ２１へのセッションを割り当てる。また、管理サーバ２０は、画像中継サーバ２１に対して定期的にセッションの接続状況を問い合せして接続中のセッションを管理する。そして、管理サーバ２０は、接続中のセッションにおいて動作する仮想ブラウザからセッションが切断されたことを示す情報が通知された場合、当該セッションの割り当てを解放する。これにより、管理サーバ２０は、切断が通知されたセッションを直ぐに次に割り当てることができるため、接続可能なセッションを有効活用できる。
【００６５】
また、管理サーバ２０は、セッションを管理するシステム管理画面６０からセッションの解放が指示された場合、解放するセッションの状態を解放中として管理する。この解放中のセッションは、解放されるセッションである。管理サーバ２０は、まだ解放されていないが解放中のセッションを解放中として管理することにより、次にセッションの割り当て要求に割り当てることができるため、接続可能なセッションを有効活用できる。
【００６６】
また、管理サーバ２０は、解放されたセッションが画像中継サーバ２１に残っている場合、当該セッションの解放を画像中継サーバ２１に指示する。これにより、管理サーバ２０は、解放したセッションが画像中継サーバ２１に残っている場合、解放させることができるため、接続可能なセッションを有効活用できる。
【実施例２】
【００６７】
さて、これまで開示の装置に関する実施例について説明したが、開示の技術は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下では、本発明に含まれる他の実施例を説明する。
【００６８】
例えば、上記の実施例では、仮想ブラウザにより社内Ｗｅｂシステム１３の画面を転送する場合について説明したが、開示のシステムはこれに限定されない。例えば、利用者が社内で使用するＰＣの画面を転送してもよい。
【００６９】
また、上記の実施例では、仮想ブラウザサーバ２２がアプリケーションとして、例えば、Internet  Explorerなどのブラウザを仮想ブラウザとして動作させる場合について説明したが、開示のシステムはこれに限定されない。例えば、仮想ブラウザサーバが実行するアプリケーションは、ブラウザに限定されず、端末装置１１へ転送する情報を生成するものであれば何れのプログラムあってもよい。
【００７０】
また、上記の実施例では、管理サーバ２０と画像中継サーバ２１と仮想ブラウザサーバ２２とを別な物理サーバとした場合について説明したが、開示の装置はこれに限定されない。例えば、画像中継サーバ２１と仮想ブラウザサーバ２２を同じ物理サーバが兼ねてもよい。また、管理サーバ２０と画像中継サーバ２１と仮想ブラウザサーバ２２は何れかが仮想マシンであってもよい。例えば、物理サーバ上で１または複数のＶＭ（Virtual  Machine：仮想マシン）を動作させ、ＶＭが管理サーバ２０と画像中継サーバ２１と仮想ブラウザサーバ２２として機能してもよい。すなわち、１つまたは複数のサーバによって、管理サーバ２０を機能的に管理部として動作させ、画像中継サーバ２１を中継部として動作させ、仮想ブラウザサーバ２２を実行部と動作させてもよい。
【００７１】
また、上記の実施例では、システム管理画面６０から解放が指示されたセッションおよび仮想ブラウザサーバ２２から切断が通知されたセッションの状態を解放中として管理する場合について説明したが、開示の装置はこれに限定されない。例えば、システム管理画面６０から解放が指示されたセッションおよび仮想ブラウザサーバ２２から切断が通知されたセッションのレコードをセッション情報４１から削除してもよい。
【００７２】
また、上記の実施例では、切断が通知された解放中のセッションを直ぐに次に割り当てる場合について説明したが、開示の装置はこれに限定されない。例えば、管理サーバ２０は、セッション情報４１に開放中に更新されたセッションが存在し、端末装置１１からセッションの割り当て要求を受け付けた場合に、次のように処理を行ってもよい。管理サーバ２０は、開放中に更新されたセッションで管理される中継サーバ２１の接続先情報を、端末装置１１へ返信する中継サーバ２１の接続先情報から除外してもよい。すなわち、管理サーバ２０は、セッションの割り当て要求を受け付けた端末装置１１が、セッション情報４１に開放中に更新されたセッションで管理される端末装置１１ではない場合、該開放中のセッションで接続された中継サーバ２１を端末装置１１へ返信する中継サーバ２１から除外してもよい。また、管理サーバ２０は、セッションの割り当て要求を受け付けた端末装置１１が、セッション情報４１に開放中に更新されたセッションで管理される端末装置１１であった場合には、接続先情報を返信してもよい。すなわち、管理サーバ２０は、セッションの割り当て要求を受け付けた端末装置１１が、セッション情報４１に開放中に更新されたセッションで管理される端末装置１１である場合、該開放中のセッションで接続された中継サーバ２１を端末装置１１へ返信する中継サーバ２１としてもよい。これにより、端末装置１１に対して解放中のセッションと同じ中継サーバ２１を通知することで、セッションを有効活用できる。例えば、端末装置１１に対して、開放中のセッションを再度利用して通信を行わせることで、セッションを有効活用できる。
【００７３】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的状態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、管理サーバ２０の受付部５０、割当部５１、管理部５２および解放部５３の各処理部が適宜統合されてもよい。また、各処理部の処理が適宜複数の処理部の処理に分離されてもよい。さらに、各処理部にて行なわれる各処理機能は、その全部または任意の一部が、ＣＰＵおよび当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【００７４】
［セッション管理プログラム］
また、上記の実施例で説明した各種の処理は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータシステムで実行することによって実現することもできる。そこで、以下では、上記の実施例と同様の機能を有するプログラムを実行するコンピュータシステムの一例を説明する。図８は、セッション管理プログラムを実行するコンピュータを示す図である。
【００７５】
図８に示すように、コンピュータ３００は、ＣＰＵ（Central  Processing  Unit）３１０、ＨＤＤ（Hard  Disk  Drive）３２０、ＲＡＭ（Random  Access  Memory）３４０を有する。これら３１０〜３４０の各部は、バス４００を介して接続される。
【００７６】
ＨＤＤ３２０には上記の管理サーバ２０の受付部５０、割当部５１、管理部５２および解放部５３と同様の機能を発揮するセッション管理プログラム３２０ａが予め記憶される。なお、セッション管理プログラム３２０ａについては、適宜分離しても良い。
【００７７】
また、ＨＤＤ３２０は、各種情報を記憶する。例えば、ＨＤＤ３２０は、ＯＳやセッション管理を含む各種の制御に用いる各種データを記憶する。
【００７８】
そして、ＣＰＵ３１０が、セッション管理プログラム３２０ａをＨＤＤ３２０から読み出して実行することで、実施例の各処理部と同様の動作を実行する。すなわち、セッション管理プログラム３２０ａは、受付部５０、割当部５１、管理部５２および解放部５３と同様の動作を実行する。
【００７９】
なお、上記したセッション管理プログラム３２０ａについては、必ずしも最初からＨＤＤ３２０に記憶させることを要しない。
【００８０】
例えば、コンピュータ３００に挿入されるフレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの「可搬用の物理媒体」にプログラムを記憶させておく。そして、コンピュータ３００がこれらからプログラムを読み出して実行するようにしてもよい。
【００８１】
さらには、公衆回線、インターネット、ＬＡＮ、ＷＡＮなどを介してコンピュータ３００に接続される「他のコンピュータ（またはサーバ）」などにプログラムを記憶させておく。そして、コンピュータ３００がこれらからプログラムを読み出して実行するようにしてもよい。
【符号の説明】
【００８２】
１０  システム
１１  端末装置
１２  外部ネットワーク
１３  社内Ｗｅｂシステム
２０  管理サーバ
２１  画像中継サーバ
２２  仮想ブラウザサーバ
３０  通信Ｉ／Ｆ部
３１  表示部
３２  入力部
３３  記憶部
３４  制御部
４０  中継サーバ情報
４１  セッション情報
５０  受付部
５１  割当部
５２  管理部
５３  解放部
６０  システム管理画面
【図１】
2015028722.tif 000003
【図２】
2015028722.tif 000004
【図３】
2015028722.tif 000005
【図４】
2015028722.tif 000006
【図５】
2015028722.tif 000007
【図６】
2015028722.tif 000008
【図７】
2015028722.tif 000009
【図８】
2015028722.tif 000010