(57)【要約】  各ユーザが，各ユーザの情報処理サービスを利用できる状態を提供する。ルータ装置2は，端末装置から，クラウドサービスのユーザを認証する認証情報を受信し，認証サーバ装置3にユーザの認証要求を行い，認証サーバ装置3が，ユーザの認証が成功した場合に送信する，クラウドサービスのユーザ毎に定められた第1の情報および第2の情報を受信し，受信した第1の情報に基づき，ソフトウェアの起動を指示する第1のコマンドをデータセンターDC_1に送信し，受信した第2の情報に基づき，通信回線網Ntにトンネルを開設する。
2013190688.tif 000002
【特許請求の範囲】
【請求項１】
ソフトウェアを実行して情報処理サービスを行う第1の装置と，
前記情報処理サービスの利用者を認証し，前記情報処理サービスの利用者毎に定められた，前記ソフトウェアを起動するための第1の情報および前記ソフトウェアとネットワークを介して通信する仮想通信経路を開設するための第2の情報を記憶する第2の装置と，
前記第1の装置と利用者の端末装置との間における前記ネットワークを介する通信を制御する通信装置とを有し，
前記通信装置は，前記端末装置から，前記情報処理サービスの利用者を認証する認証情報を受信し，前記第2の装置に前記利用者の認証要求を行い，
前記第2の装置は，前記利用者の認証を行い，前記利用者の認証が成功した場合，前記情報処理サービスの利用者毎に定められた，前記第1の情報および前記第2の情報を，前記通信装置に送信し，
前記通信装置は，前記第1の情報および前記第2の情報を受信し，受信した前記第1の情報に基づき，前記ソフトウェアの起動を指示する第1のコマンドを前記第1の装置に送信し，
前記第1の装置は，前記第1のコマンドを受信し，前記ソフトウェアを起動，実行し，
前記通信装置は，受信した前記第2の情報に基づき，前記ネットワークに前記仮想通信経路を開設する
ことを特徴とする情報処理システム。
【請求項２】
請求項1において，
さらに，前記第2の装置に接続するための第3の情報を記憶する第3の装置を有し，
前記通信装置は，前記第3の装置に前記第3の情報の送信要求を行い，
前記第3の装置は，前記送信要求に応答して，前記第3の情報を前記通信装置に送信し，
前記通信装置は，前記第3の装置から前記第3の情報を受信し，受信した前記第3の情報に基づき，前記第2の装置に接続し，前記第1の情報および前記第2の情報を前記第2の装置から受信する
ことを特徴とする情報処理システム。
【請求項３】
請求項1において，
前記第2の装置は，前記情報処理サービスの利用者数を記憶し，
前記通信装置は，前記端末装置から，前記情報処理サービスの利用者を認証する認証情報を受信し，前記第2の装置から，前記認証情報に対応する前記情報処理サービスの利用者数を受信し，
前記通信装置は，受信した前記利用者数に基づき，前記情報処理サービスの利用者がいるか判定し，前記情報処理サービスの利用者がいないと判定した場合，前記第1のコマンドを送信し，前記ソフトウェアと通信する前記仮想通信経路を開設し，前記情報処理サービスの利用者がいると判定した場合，開設された前記仮想通信経路を介する前記ソフトウェアとの通信を前記端末装置に許可し，
さらに，前記通信装置は，前記第2の装置に前記情報処理サービスの利用者数の更新要求を行い，
前記第2の装置は，前記更新要求に応答して，前記情報処理サービスの利用者数を更新する，
ことを特徴とする情報処理システム。
【請求項４】
請求項3において，
前記通信装置は，前記端末装置から，前記情報処理サービスの利用者を認証する認証情報と前記情報処理サービスの停止を指示する第2のコマンドを受信し，前記第2の装置から，前記認証情報に対応する前記情報処理サービスの利用者数を受信し，受信した前記利用者数に基づき，前記情報処理サービスの他の利用者がいるか判定し，前記他の利用者がいないと判定した場合，前記情報処理サービスの停止を指示する第3のコマンドを前記第1の装置に送信する
ことを特徴とする情報処理システム。
【請求項５】
請求項1において，
前記ソフトウェアは，仮想マシンと前記仮想マシンの通信処理を制御する仮想ルータであり，
前記通信装置は，前記仮想ルータと通信する前記仮想通信経路を開設する
ことを特徴とする情報処理システム。
【請求項６】
請求項1において，
前記第1の装置は，ソフトウェアを実行して情報処理サービスを行うサービス実行装置と，前記サービス実行装置を管理する管理装置とを有し，
前記通信装置は，前記第1のコマンドを前記管理装置に送信し，
前記管理装置は，前記第1のコマンドを受信し，前記サービス実行装置に前記ソフトウェアの起動を指示する第4のコマンドを送信し，
前記サービス実行装置は，前記第4のコマンドを受信し，前記ソフトウェアを起動，実行する
ことを特徴とする情報処理システム。
【請求項７】
ソフトウェアを実行して情報処理サービスを行う第1の装置と，
前記情報処理サービスの利用者を認証し，前記情報処理サービスの利用者毎に定められた，前記ソフトウェアを起動するための第1の情報および前記ソフトウェアとネットワークを介して通信する仮想通信経路を開設するための第2の情報を記憶する第2の装置と，
前記第1の装置と利用者の端末装置との間における前記ネットワークを介する通信を制御する通信装置とを有する情報処理システムにおいて実行される情報処理方法であって，
前記通信装置は，前記端末装置から，前記情報処理サービスの利用者を認証する認証情報を受信し，前記第2の装置に前記利用者の認証要求を行い，
前記第2の装置は，前記利用者の認証を行い，前記利用者の認証が成功した場合，前記情報処理サービスの利用者毎に定められた，前記第1の情報および前記第2の情報を，前記通信装置に送信し，
前記通信装置は，前記第1の情報および前記第2の情報を受信し，受信した前記第1の情報に基づき，前記ソフトウェアの起動を指示する第1のコマンドを前記第1の装置に送信し，
前記第1の装置は，前記第1のコマンドを受信し，前記ソフトウェアを起動，実行し，
前記通信装置は，受信した前記第2の情報に基づき，前記ネットワークに前記仮想通信経路を開設する
ことを特徴とする情報処理方法。
【請求項８】
請求項7において，
前記通信装置は，前記第2の装置に接続するための第3の情報を記憶する第3の装置に前記第3の情報の送信要求を行い，
前記第3の装置は，前記送信要求に応答して，前記第3の情報を前記通信装置に送信し，
前記通信装置は，前記第3の装置から前記第3の情報を受信し，受信した前記第3の情報に基づき，前記第2の装置に接続し，前記第1の情報および前記第2の情報を前記第2の装置から受信する
ことを特徴とする情報処理方法。
【請求項９】
請求項7において，
前記第2の装置は，前記情報処理サービスの利用者数を記憶し，
前記通信装置は，前記端末装置から，前記情報処理サービスの利用者を認証する認証情報を受信し，前記第2の装置から，前記認証情報に対応する前記情報処理サービスの利用者数を受信し， 
前記通信装置は，受信した前記利用者数に基づき，前記情報処理サービスの利用者がいるか判定し，前記情報処理サービスの利用者がいないと判定した場合，前記第1のコマンドを送信し，前記ソフトウェアと通信する前記仮想通信経路を開設し，前記情報処理サービスの利用者がいると判定した場合，開設された前記仮想通信経路を介する前記ソフトウェアとの通信を前記端末装置に許可し，
さらに，前記通信装置は，前記第2の装置に前記情報処理サービスの利用者数の更新要求を行い，
前記第2の装置は，前記更新要求に応答して，前記情報処理サービスの利用者数を更新する，
ことを特徴とする情報処理方法。
【請求項１０】
請求項9において，
前記通信装置は，前記端末装置から，前記情報処理サービスの利用者を認証する認証情報と前記情報処理サービスの停止を指示する第2のコマンドを受信し，前記第2の装置から，前記認証情報に対応する前記情報処理サービスの利用者数を受信し，受信した前記利用者数に基づき，前記情報処理サービスの他の利用者がいるか判定し，前記他の利用者がいないと判定した場合，前記情報処理サービスの停止を指示する第3のコマンドを前記第1の装置に送信する
ことを特徴とする情報処理方法。
【請求項１１】
請求項7において，
前記ソフトウェアは，仮想マシンと前記仮想マシンの通信処理を制御する仮想ルータであり，
前記通信装置は，前記仮想ルータと通信する前記仮想通信経路を開設する
ことを特徴とする情報処理方法。
【請求項１２】
請求項7において，
前記第1の装置は，ソフトウェアを実行して情報処理サービスを行うサービス実行装置と，前記サービス実行装置を管理する管理装置とを有し，
前記通信装置は，前記第1のコマンドを前記管理装置に送信し，
前記管理装置は，前記第1のコマンドを受信し，前記サービス実行装置に前記ソフトウェアの起動を指示する第4のコマンドを送信し，
前記サービス実行装置は，前記第4のコマンドを受信し，前記ソフトウェアを実行する
ことを特徴とする情報処理方法。
【請求項１３】
ソフトウェアを実行して情報処理サービスを行う第1の装置と，
前記第1の装置と利用者の端末装置との間におけるネットワークを介する通信を制御する通信装置とを有する情報処理システムにおいて実行される情報処理方法であって，
前記通信装置は，前記端末装置から，前記情報処理サービスの利用者を識別する識別情報を受信し，
前記通信装置に記憶されている，前記情報処理サービスの利用者毎に定められた，前記ソフトウェアを起動するための第1の情報および前記ソフトウェアとネットワークを介して通信する仮想通信経路を開設するための第2の情報を，前記識別情報に応じて取得し，
取得した前記第1の情報に基づき，前記ソフトウェアの起動を指示する第1のコマンドを前記第1の装置に送信し，
前記第1の装置は，前記第1のコマンドを受信し，前記ソフトウェアを起動，実行し，
前記通信装置は，取得した前記第2の情報に基づき，前記ネットワークに前記仮想通信経路を開設する
ことを特徴とする情報処理方法。
【請求項１４】
ソフトウェアを実行して情報処理サービスを行う第1の装置と，前記第1の装置と利用者の端末装置との間におけるネットワークを介する通信を制御する通信装置であって，
前記通信装置は，前記端末装置から，前記情報処理サービスの利用者を認証する認証情報を受信し，前記情報処理サービスの利用者を認証し，前記情報処理サービスの利用者毎に定められた，前記ソフトウェアを起動するための第1の情報および前記ソフトウェアと前記ネットワークを介して通信する仮想通信経路を開設するための第2の情報を記憶する第2の装置に前記利用者の認証要求を行い，前記第2の装置が，前記利用者の認証が成功した場合に送信する，前記情報処理サービスの利用者毎に定められた前記第1の情報および前記第2の情報を受信し，受信した前記第1の情報に基づき，前記ソフトウェアの起動を指示する第1のコマンドを前記第1の装置に送信し，受信した前記第2の情報に基づき，前記ネットワークに前記仮想通信経路を開設する制御部を有する
ことを特徴とする通信装置。
【請求項１５】
請求項14において，
前記制御部は，前記第2の装置に接続するための第3の情報を記憶する第3の装置に前記第3の情報の送信要求を行い，前記送信要求に応答して送信された前記第3の情報を第3の装置から受信し，受信した前記第3の情報に基づき，前記第2の装置に接続し，前記第1の情報および前記第2の情報を前記第2の装置から受信する
ことを特徴とする通信装置。
【請求項１６】
請求項14において，
前記制御部は，前記端末装置から，前記情報処理サービスの利用者を認証する認証情報を受信し，前記情報処理サービスの利用者数を記憶する第2の装置から，前記認証情報に対応する前記情報処理サービスの利用者数を受信し，受信した前記利用者数に基づき，前記情報処理サービスの利用者がいるか判定し，前記情報処理サービスの利用者がいないと判定した場合，前記第1のコマンドを送信し，前記ソフトウェアと通信する前記仮想通信経路を開設し，前記情報処理サービスの利用者がいると判定した場合，開設された前記仮想通信経路を介する前記ソフトウェアとの通信を前記端末装置に許可し，
さらに，前記制御部は，前記第2の装置に前記情報処理サービスの利用者数の更新要求を行う
ことを特徴とする通信装置。
【請求項１７】
請求項16において，
前記制御部は，前記端末装置から，前記情報処理サービスの利用者を認証する認証情報と前記情報処理サービスの停止を指示する第2のコマンドを受信し，前記第2の装置から，前記認証情報に対応する前記情報処理サービスの利用者数を受信し，受信した前記利用者数に基づき，前記情報処理サービスの他の利用者がいるか判定し，前記他の利用者がいないと判定した場合，前記情報処理サービスの停止を指示する第3のコマンドを前記第1の装置に送信する
ことを特徴とする通信装置。
【請求項１８】
請求項14において，
前記ソフトウェアは，仮想マシンと前記仮想マシンの通信処理を制御する仮想ルータであり，
前記制御部は，前記仮想ルータと通信する前記仮想通信経路を開設する
ことを特徴とする通信装置。
【請求項１９】
請求項14において，
前記第1の装置は，ソフトウェアを起動，実行して情報処理サービスを行うサービス実行装置と，前記サービス実行装置を管理する管理装置とを有し，
前記制御部は，前記第1のコマンドを前記管理装置に送信する
ことを特徴とする通信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，情報処理システム，情報処理方法，通信装置に関する。
【背景技術】
【０００２】
情報処理装置により実行される各種情報処理サービスをネットワークを介し利用者(以下，ユーザと記す)に提供することが行われている。この情報処理サービスの一例として，いわゆるクラウドサービスがある。【０００３】
このクラウドサービスとして，サービス提供業者が，例えばデータセンターに設けられた情報処理装置上に仮想マシンを起動し，仮想マシンが実行するソフトウェアをユーザに提供するサービスがある。なお，ソフトウェアとしては，例えば，OS(Operating
System)，アプリケーション，ミドルウェアがある。サービス提供業者は，他にも，データセンターに設けられたハードウェアとして例えば，ルータ装置などの通信装置や，回線網を提供することもある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００２−１１７２３０号公報
【特許文献２】特開２００１−３２６６９６号公報
【特許文献３】特開２０１１−２５０２０９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ユーザは，データセンターにおいて提供されている情報処理サービスを，端末装置を介して利用する。端末装置は，アクセスルータを経由して情報処理サービスに接続される。アクセスルータは，端末装置がクラウドサービスを利用するために必要な処理を行うルータである。アクセスルータは，ユーザからの接続要求に応じてあらかじめ登録された情報処理サービスへの接続を行う。しかしながら，アクセスルータに登録される情報処理サービスは1つに限定されているため，複数のユーザが同じアクセスルータに接続してクラウドサービスを利用しようとすると，同じ情報処理サービスにしか接続できない。【０００６】
1つの側面では，本発明の目的は，複数のユーザが，1つの通信装置（例えば，アクセスルータ）を経由してそれぞれの情報処理サービスを利用できる状態を提供することである。
【課題を解決するための手段】
【０００７】
情報処理システムの第1の側面は，ソフトウェアを実行して情報処理サービスを行う第1の装置と，前記情報処理サービスの利用者を認証し，前記情報処理サービスの利用者毎に定められた，前記ソフトウェアを起動するための第1の情報および前記ソフトウェアとネットワークを介して通信する仮想通信経路を開設するための第2の情報を記憶する第2の装置と，前記第1の装置と利用者の端末装置との間における前記ネットワークを介する通信を制御する通信装置とを有し，前記通信装置は，前記端末装置から，前記情報処理サービスの利用者を認証する認証情報を受信し，前記第2の装置に前記利用者の認証要求を行い，前記第2の装置は，前記利用者の認証を行い，前記利用者の認証が成功した場合，前記情報処理サービスの利用者毎に定められた，前記第1の情報および前記第2の情報を，前記通信装置に送信し，前記通信装置は，前記第1の情報および前記第2の情報を受信し，受信した前記第1の情報に基づき，前記ソフトウェアの起動を指示する第1のコマンドを前記第1の装置に送信し，前記第1の装置は，前記第1のコマンドを受信し，前記ソフトウェアを起動，実行し，前記通信装置は，受信した前記第2の情報に基づき，前記ネットワークに前記仮想通信経路を開設する。
【発明の効果】
【０００８】
一実施形態によれば，通信装置が，情報処理サービスを提供する装置に対して，ユーザ毎の情報処理サービスの実行を指示するので，複数のユーザが，1つの通信装置を経由してそれぞれの情報処理サービスを利用できる。
【図面の簡単な説明】
【０００９】
【図１】第1の実施の形態における情報処理システムの一例を説明するハードウェアブロック図である。
【図２】図1の端末装置のハードウェアブロック図である。
【図３】図1のルータ装置のハードウェアブロック図である。
【図４】図3のルータ装置が実行するソフトウェアモジュールのブロック図である。
【図５】図1の認証サーバ装置のハードウェアブロック図である。
【図６】クラウドアクセス管理テーブルの一例を示す図である。
【図７】クラウドサービス管理テーブルの一例を示す図である。
【図８】図1の管理サーバ装置のハードウェアブロック図である。
【図９】仮想ルータHWテーブルの一例を示す図である。
【図１０】仮想マシンHWテーブルの一例を示す図である。
【図１１】図1のサーバ装置のハードウェアブロック図である。
【図１２】図4のルータ装置における処理の流れを説明するフロー図である。
【図１３】第1の実施の形態における，仮想ルータ，仮想マシンの起動，トンネル開設処理の流れを説明する図である。
【図１４】第2の実施の形態における情報処理システムの一例を説明するハードウェアブロック図である。
【図１５】図14の端末装置のハードウェアブロック図である。
【図１６】図14のルータ装置が実行するソフトウェアモジュールのブロック図である。
【図１７】図14のクラウドディレクトリサービス装置のハードウェアブロック図である。
【図１８】認証サーバアクセス情報管理テーブルの一例を示す図である。
【図１９】図14の認証サーバ装置のハードウェアブロック図である。
【図２０】データセンターに設けられた認証サーバ装置からクラウドアクセス情報を取得する処理の流れを説明する図である。
【図２１】第3の実施の形態におけるルータ装置が実行するソフトウェアモジュールのブロック図である。
【図２２】第3の実施の形態における認証サーバ装置のハードウェアブロック図である。
【図２３】クラウドサービス管理テーブルの一例を示す図である。
【図２４】第3の実施の形態における，仮想ルータ，仮想マシンの起動，トンネル開設処理の流れを説明する図である。
【図２５】第3の実施の形態における，仮想ルータ，仮想マシンの停止，トンネル停止処理の流れを説明する図である。
【発明を実施するための形態】
【００１０】
[第1の実施の形態]
(情報処理システム)
図1は，第1の実施の形態における情報処理システムSYSの一例を説明するハードウェアブロック図である。
【００１１】
情報処理システムSYSは，第1のデータセンターDC_1〜第Na(Naは2以上の整数)のデータセンターDC_Naと，ユーザ側システムUSと，通信回線網Ntに接続する認証サーバ装置3とを有する。第1のデータセンターDC_1〜第NaのデータセンターDC_Naは，ソフトウェアを実行して情報処理サービスを行い，ユーザに，情報処理サービスを提供する第1の装置の一例である。情報処理サービスは，例えばクラウドサービスであり，このクラウドサービスは，SaaS(Software as
a Service)とも呼ばれる。
【００１２】
ユーザ側システムUSは，このクラウドサービスを利用するシステムである。第1のデータセンターDC_1〜第NaのデータセンターDC_Naとユーザ側システムUSとの間には，データ通信などの各種通信サービスを提供する通信事業者が設置した通信回線網Ntが設けられている。
【００１３】
ユーザ側システムUSは，ユーザが使用する情報処理装置(以下，端末装置と記す)である，第1の端末装置1_1〜第Nb(Nbは2以上の整数)の端末装置1_Nbと，第Nc(NcはNbを超える整数)の端末装置1_Nc〜第Nd(NdはNcを超える整数)の端末装置1_Ndとを有する。これら端末装置は，例えばデスクトップ型，ラップトップ型，タブレット型のパーソナルコンピュータである。他にも，これら端末装置は，スマートフォン等の携帯用小型通信端末装置であってもよい。さらに，ユーザ側システムUSは，これら端末装置が接続するルータ装置2を有する。
【００１４】
第1の端末装置1_1〜第Nbの端末装置1_Nbは，無線通信機能を有し，いわゆる無線LAN(Local Area Network )を介してルータ装置2に接続し，無線によるデータ通信を行う。この無線によるデータ通信の規格としては，例えばIEEE 802.11がある。
【００１５】
第1の端末装置1_Nc〜第Ndの端末装置1_Ndは，有線通信機能を有し，いわゆる有線LANである内部ネットワークNuを介してルータ装置2に接続する。
【００１６】
ルータ装置2は，第1の端末装置1_Ncなどの端末装置がクラウドサービスを利用するために必要な処理を行うルータ装置であり，アクセスルータとも呼ばれる。ルータ装置2は，パケットのルーティングを行い，ネットワーク間を相互接続する通信装置である。ルータ装置2は，通常，OSI(Open
Systems Interconnection)基本参照モデルにおいて，第1層(物理層）〜第3層(ネットワーク層）までの接続処理を実行し，有線通信機能の他に，例えば無線通信機能を有する。ルータ装置2は，無線通信機能を利用して，第1の端末装置1_1〜第Nbの端末装置1_Nbに接続し，有線通信機能を利用して，第Ncの端末装置1_Nc〜第Ndの端末装置1_Ndに接続する。さらに，ルータ装置2は，有線通信機能や，無線通信機能を利用して，通信回線網Ntに接続する。通信回線網Ntは，例えば，広域IP(Internet Protocol)通信網である。
【００１７】
ルータ装置2は，例えばデータセンターDC_1とユーザの端末装置1_1などとの間におけるネットワーク(通信回線網Nt)を介する通信を制御する通信装置の一例である。
【００１８】
認証サーバ装置3は，クラウドサービスのユーザを認証し，クラウドサービスのユーザ毎に定められた，前記したソフトウェアを起動するための第1の情報およびソフトウェアとネットワークを介して通信する仮想通信経路を開設するための第2の情報を記憶する。なお，第1の情報，第2の情報については，後述する。
【００１９】
第1のデータセンターDC_1は，例えば有線LANである内部ネットワークNdcを介して相互に接続される，第1のサーバ装置4_1〜第Ne(Neは2以上の整数)のサーバ装置4_Neと，ゲートウェイ装置5と，ルータ装置6と，管理サーバ装置7とを有する。
【００２０】
第Neのサーバ装置4_ Neは，ソフトウェアである仮想マシン4vmや仮想ルータ4vrを起動し，実行する。なお，他の第1のサーバ装置4_1なども第Neのサーバ装置4_ Neと同様の構成である。仮想マシン4vmは，ユーザ側システムUSにおけるユーザに対して各種情報処理サービスを提供するソフトウェアを実行する。仮想ルータ4vrは，仮想マシン4vmからのデータ出力，仮想マシン4vmへのデータ入力を制御する。すなわち，仮想ルータ4vrは，仮想マシン4vmに対する通信パケットのルーティング処理を実行して，仮想マシン4vmの通信処理を制御する。ここで，仮想ルータと仮想マシンとは，1対1に対応する必要はない。第1のサーバ装置4_1は，仮想ルータを，例えば，仮想マシン群が属する仮想ネットワークに対応して起動，実行してもよい。なお，仮想ルータは，ルータVM(Virtual
Machine)とも呼ばれる。
【００２１】
第Neのサーバ装置4_ Neは，ソフトウェア(例えば，仮想マシン4vm，仮想ルータ4vr)を実行してクラウドサービスを行うサービス実行装置の一例である。
【００２２】
ゲートウェイ装置5は，第1のデータセンターDC_1と通信回線網Ntとの相互接続を実行する。例えば，ゲートウェイ装置5は，インピーダンス整合機能やプロトコル変換機能を有し，第1のデータセンターDC_1と通信回線網Ntとの間における通信媒体や伝送方式の違いを吸収して，第1のデータセンターDC_1と通信回線網Ntとの相互接続を実行する。
【００２３】
ルータ装置6は，第1のデータセンターDC1_1における，パケットのルーティングを行い各装置間の相互接続を実行する。
【００２４】
管理サーバ装置7は，第1のサーバ装置4_1〜第Neのサーバ装置4_Neと，ゲートウェイ装置5と，ルータ装置6とを管理するサーバ装置である。
【００２５】
第2のデータセンターDC_2〜第NaのデータセンターDC_Naも，第1のデータセンターDC_1と同様の装置構成を有する。
【００２６】
ユーザ側システムUSのルータ装置2は，第1の接続点(接続ノードとも言う)と，第2の接続点との間を接続する閉じられた仮想的な直結通信経路として機能する仮想通信経路(以下，トンネルと適宜記す)を開設する。図1において，第1の接続点が，ルータ装置2であり，第2の接続点がデータセンターDC_1の仮想ルータ4vrである。図1において，この第1，第2の接続点間のトンネルを符号L2_1で模式的に示す。なお，符号L2_Naは，ルータ装置2が，第NaのデータセンターDC_Naの仮想ルータ(図示しない)との間で開設したトンネルを示す。このトンネルは，OSI基本参照モデルの第2層(レイヤ2とも呼ぶ)におけるイーサネットフレーム(イーサネットは登録商標)をカプセル化するトンネルであり，いわゆるL(Layer)2トンネルとも呼ばれる。ルータ装置2と仮想ルータ4vrとの間で，L2トンネルを開設(構築，形成，確立とも呼ぶ)するためのプロトコルとしては，例えば，GRE(Generic
Routing Encapsulation)，OpenVPN(Virtual Private Network)，L2TP(Layer 2 Tunneling Protocol)などがある。
【００２７】
(ユーザシステム)
図2は，図1の端末装置のハードウェアブロック図である。端末装置1は，図1における，例えば，無線通信機能を有する第1の端末装置1_1〜第Nbの端末装置1_Nbの何れか1つの端末装置である。端末装置1には，液晶ディスプレイなどの表示装置121と，キーボードやマウスなどの操作装置131と，各ユーザがそれぞれ有するユーザ識別カードに記憶されたユーザ認証情報を読み取るカードリーダ141とが接続されている。このユーザ識別カードは，スマートカードとも呼ばれる。
【００２８】
端末装置1は，例えばバスBを介して相互に接続された，CPU(Central Processing
Unit)11と，表示制御部12と，操作制御部13と，カードリーダ制御部14と，通信装置15と，メモリ16と，記憶装置17とを有する。
【００２９】
CPU11は，端末装置1の全体を制御する演算処理装置(制御部，コンピュータとも呼ぶ)である。表示制御部12は，表示装置121に各種画像を表示する処理を実行する。ここで各種画像とは，後述するユーザ認証用画面や，トンネル開設通知画面である。操作制御部13は，操作装置131から入力される操作指示に対して，操作指示に応じた各種処理を実行する。カードリーダ制御部14は，カードリーダ141に挿入されたユーザ識別カードからユーザ認証情報を読み取る処理を制御する。
【００３０】
通信装置15は，ルータ装置2と無線通信を実行する無線LAN子機である。なお，端末装置1が，例えば有線通信機能を有する場合には，この通信装置15は，いわゆるネットワークインターフェイスカード(NIC:Network
Interface Card)である。
【００３１】
メモリ16は，CPU11が実行する各種情報処理において処理されたデータや各種プログラムを一時的に記憶する。
【００３２】
メモリ16の全体管理部161は，端末装置1が実行する各種処理を管理する。全体管理部161は，例えば，認証情報取得部162，認証情報送信部163，アクセス部164を管理すると共に，通信装置15に接続する装置と通信パケットの送受信処理を実行する。
【００３３】
認証情報取得部162は，クラウドサービスのユーザを識別するユーザの識別子(ID)とこのユーザがこのクラウドサービスの正当なユーザであるかを確認する情報とを有する認証情報を操作制御部13やカードリーダ制御部14から取得する。なお，認証情報については，図13で詳細に説明する。認証情報送信部163は，認証情報取得部162が取得した認証情報をルータ装置2を介して認証サーバ装置3に送信する，アクセス部164は，データセンターDC_1で動作する仮想マシンにアクセスする処理を実行する。
【００３４】
全体管理部161，認証情報取得部162，認証情報送信部163，アクセス部164は，いわゆるプログラムであり，このプログラムは，例えば，記憶装置17に記憶されている。CPU11は，起動時に，これらのプログラムを記憶装置17から読み出して，メモリ16に展開することにより，これらのプログラムをソフトウェアモジュールとして機能させる。
【００３５】
記憶装置17は，例えば，ハードディスクドライブ(HDD:Hard Disk Drive)などの磁気記憶装置や，不揮発性のメモリ(Non-volatile
memory)であり，前記したプログラムや，各種データを記憶する。
【００３６】
図3は，図1のルータ装置(アクセスルータ装置)のハードウェアブロック図である。ルータ装置2は，例えばバスBを介して相互に接続された，CPU21と，通信装置22と，メモリ23と，記憶装置24とを有する。
【００３７】
CPU21は，ルータ装置2の全体を制御する演算処理装置である。通信装置22は，有線通信を実行する有線通信装置221と，無線通信を実行する無線通信装置222とを有する。有線通信装置221は，例えば複数のNICを有し，通信回線網Ntに有線接続し，この通信回線網Ntに接続している各種装置との通信を行う。また，有線通信装置221は，有線通信機能を有する端末装置1_Ncなどに有線接続し，通信を行う。例えば，有線通信装置221の第1のNIC(図示しない)が，通信回線網Ntに有線接続し，第2のNIC(図示しない)が，有線通信機能を有する端末装置1_Ncに有線接続する。なお，データセンターDC1_1に接続する回線は，有線回線だけではなく，公衆無線回線，モバイル回線でもよい。
【００３８】
無線通信装置222は，無線通信機能を有する端末装置1_1などに無線接続し，通信を実行する無線LAN親機である。
【００３９】
メモリ23は，CPU21が実行する各種情報処理において処理されたデータや各種プログラムを一時的に記憶する。
【００４０】
記憶装置24は，例えば，磁気記憶装置や不揮発性のメモリである。記憶装置24は，図4で説明するプログラムや，各種データを記憶する。
【００４１】
図4は，図3のルータ装置(アクセスルータ装置)が実行するソフトウェアモジュールのブロック図である。
【００４２】
全体管理部231は，ルータ装置2が実行する各種処理を管理する。全体管理部231は，例えば，接続部232，ルーティング部233，認証管理部234，仮想ルータ起動停止部235，仮想マシン起動停止部236，トンネル開設部(L2接続部)237を管理する。全体管理部231は，通信装置22(図3参照)に接続する装置と通信パケットの送受信処理を実行する。
【００４３】
接続部232は，端末装置1_1などとの接続を確立し，双方向通信を実行する。ルーティング部233は，ルータ装置2と，他の装置との間におけるデータ通信処理(ルーティング)を実行する。なお，他の装置としては，例えば，端末装置1_1や，認証サーバ装置3や，図1のデータセンターDC1_1内のゲートウェイ装置5がある。他にも，ルータ装置2は，ルータ装置2と仮想ルータとの間におけるデータ通信処理を実行する。
【００４４】
認証管理部234は，認証サーバ装置3に対するユーザ認証処理を管理する。仮想ルータ起動停止部235は，仮想ルータの起動処理や停止処理を実行するように管理サーバ装置7(図1参照)に指示する。仮想マシン起動停止部236は，仮想マシンの起動処理や停止処理を実行するように管理サーバ装置7に指示する。トンネル開設部237は，認証されたユーザのIDに対応するL2プロトコルに基づき，起動している仮想ルータとの間におけるトンネルを開設する。
【００４５】
全体管理部231，接続部232，認証管理部234，ルーティング部233，仮想ルータ起動停止部235，仮想マシン起動停止部236，トンネル開設部237は，いわゆるプログラムであり，このプログラムは，例えば，図3の記憶装置24に記憶されている。図3のCPU21は，起動時に，これらのプログラムを記憶装置24から読み出して，メモリ23に展開することにより，これらのプログラムをソフトウェアモジュールとして機能させる。
【００４６】
(認証サーバ装置)
図5は，図1の認証サーバ装置のハードウェアブロック図である。
【００４７】
認証サーバ装置3は，例えばバスBを介して相互に接続された，CPU31と，通信装置32と，メモリ33と，記憶装置34とを有する。
【００４８】
CPU31は，認証サーバ装置3の全体を制御する演算処理装置である。通信装置32は，例えばNICであり，図1の通信回線網Ntに有線接続し，この通信回線網Ntに接続している各種装置との通信を行う。
【００４９】
メモリ33は，CPU31が実行する各種情報処理において処理されたデータや各種プログラムを一時的に記憶する。
【００５０】
メモリ33の全体管理部331は，認証サーバ装置3が実行する各種処理を管理する。全体管理部331は，例えば，認証実行部332，アクセス情報取得部333を管理し，通信装置32に接続する装置と通信パケットの送受信処理を実行する。
【００５１】
認証実行部332は，図1のユーザ側システムUSにおけるユーザの認証処理を実行する。アクセス情報取得部333は，図1のデータセンターDC1_1が提供するクラウドサービスにアクセスするためのクラウドアクセス情報を取得し，取得したクラウドアクセス情報をルータ装置2に送信する。このクラウドアクセス情報は，クラウドサービスのユーザ毎に定められた，ソフトウェアを起動するための第1の情報およびこのソフトウェアとネットワーク(例えば，通信回線網Nt)を介して通信するトンネルを開設するための第2の情報を有する。
【００５２】
全体管理部331，認証実行部332，アクセス情報取得部333は，いわゆるプログラムであり，このプログラムは，例えば，記憶装置34に記憶されている。CPU31は，起動時に，これらのプログラムを記憶装置34から読み出して，メモリ33に展開することにより，これらのプログラムをソフトウェアモジュールとして機能させる。
【００５３】
記憶装置34は，例えば，磁気記憶装置や不揮発性のメモリである。記憶装置34は，前記したプログラムや，各種データや，クラウドサービスにアクセスするために必要な情報を有するクラウドアクセス管理テーブルT1と，このクラウドサービスを管理するクラウドサービス管理テーブルT2とを記憶する。
【００５４】
図6，図7に基づき，図5に示した，クラウドアクセス管理テーブルT1，クラウドサービス管理テーブルT2について説明する。
【００５５】
図6は，クラウドアクセス管理テーブルT1の一例を示す図である。図6のクラウドアクセス管理テーブルT1は，ユーザID欄と，仮想ルータの起動停止情報欄と，仮想ルータのIPアドレス欄と，L2プロトコル欄と，SaaSID欄とを有する。
【００５６】
ユーザID欄は，クラウドサービスのユーザを識別するユーザIDを記憶する。仮想ルータの起動停止情報欄は，ユーザIDに対応する仮想ルータの起動停止情報を記憶する。仮想ルータのIPアドレス欄は，この仮想ルータのIPアドレスを記憶する。L2プロトコル欄は，この仮想ルータとルータ装置2との間でトンネルを開設するためのプロトコルの種別を記憶する。SaaSID欄は，ユーザID欄に記憶されているユーザIDを有するユーザが使用するクラウドサービスを識別するSaaSIDを記憶する。
【００５７】
図6において，ユーザID欄は，"User-A"，"User-B"，"User-C"を記憶する。仮想ルータの起動停止情報欄は，前記した各ユーザIDに対応する仮想ルータの起動停止情報として"API_VR-A"，"API_VR-B"，"API_VR-C"を記憶する。
【００５８】
図6において，仮想ルータのIPアドレス欄は，ユーザIDに対応する仮想ルータのIPアドレスとして，"x1.x2.x3.x4","y1.y2.y3.y4","z1.z2.z3.z4"を記憶する。L2プロトコル欄は，前記した各ユーザIDに対応するプロトコルの種別として，"GRE"
(Generic Routing Encapsulation)，"OpenVPN"
(Virtual Private Network)，"L2TP" (Layer 2
Tunneling Protocol)を記憶する。SaaSID欄は，前記した各ユーザIDに対応するSaaSIDとして，"SaaS-0"，"SaaS-1"，"SaaS-0"を記憶する。
【００５９】
図6で説明した，仮想ルータの起動停止情報のAPI(Application Program Interface)は，クラウドサービスの提供業者から提供されたものである。図4のルータ装置2の仮想ルータ起動停止部235が，例えば，起動する仮想ルータのIPアドレスと，ユーザIDと，起動指示オプションとをこのAPIに引数として設定し，このAPIを実行する。仮想ルータ起動停止部235は，このAPIに基づき，仮想ルータの起動コマンドを図8の管理サーバ装置7に送信する。この起動コマンドは，引数として設定された，仮想ルータのIPアドレス，ユーザID，起動指示オプションを有する。なお，このAPIとは，例えば，ｈｔｔｐ：／／ｗｗｗ．ｈｏｇｅｈｏｇｅ．ｃｏｍ／ｃｌｏｕｄ／ｖｒ／ｘ１．ｘ２．ｘ３．ｘ４／Ｕｓｅｒ−Ａ／Ｏｎである。このAPIの意味は，ユーザID" User-A "，IPアドレス" x1.x2.x3.x4"の仮想ルータ("Vr")を起動("On")するように，"
www.hogehoge.com"で指定される図8の管理サーバ装置7に指示するものである。
【００６０】
図8の管理サーバ装置7は，この起動コマンドに基づき，引数として設定されたIPアドレスを有する仮想ルータを，例えば，図1のサーバ装置4_Neに起動する。
【００６１】
図7は，クラウドサービス管理テーブルT2の一例を示す図である。図7のクラウドサービス管理テーブルT2は，SaaSID欄と，仮想マシンの起動停止情報欄と，仮想マシンのIPアドレス欄と，利用プロトコル欄とを有する。SaaSID欄は，図6に示したSaaSIDを記憶する。仮想マシンの起動停止情報欄は，仮想マシンの起動停止情報を記憶する。仮想マシンのIPアドレス欄は，この仮想マシンのIPアドレスを記憶する。利用プロトコル欄は，この仮想マシンにアクセスする際に利用するプロトコルを記憶する。
【００６２】
図7において，SaaSID欄は，SaaSIDとして，"SaaS-0"，"SaaS-1"を記憶し，クラウドの起動停止情報欄は,前記した各SaaSIDに対応する仮想マシンの起動停止情報として，"API_VM-A"，"API_VM-B"を記憶する。
【００６３】
図7において，仮想マシンのIPアドレス欄は，前記した各SaaSIDに対応する仮想マシンのIPアドレスとして，"xx1.xx2.xx3.xx4","yy1.yy2.yy3.yy4"を記憶する。利用プロトコル欄は，前記した各SaaSIDに対応するプロトコルとして，HTTP(Hypertext
Transfer Protocol)，SMB(Server Message Block)を記憶する。
【００６４】
図7で説明した，仮想マシンの起動停止情報のAPIは，クラウドサービスの提供業者から提供されたものである。図4のルータ装置2の仮想マシン起動停止部236が，例えば，起動する仮想マシンのIPアドレスと，SaaSIDと，起動指示オプションとをこのAPIに引数として設定し，このAPIを実行する。仮想マシン起動停止部236は，このAPIに基づき，仮想マシンの起動コマンドを図8の管理サーバ装置7に送信する。この起動コマンドは，引数として設定された，仮想マシンのIPアドレス，SaaSID，起動指示オプションを有する。なお，このAPIとは，例えば，ｈｔｔｐ：／／ｗｗｗ．ｈｏｇｅｈｏｇｅ．ｃｏｍ／ｃｌｏｕｄ／ｖｍ／ｘｘ１．ｘｘ２．ｘｘ３．ｘｘ４／ＳａａＳ−０／Ｏｎである。このAPIの意味は，SaaSID" SaaS-0 "，IPアドレス" xx1.xx2.xx3.xx4"の仮想マシン("Vm")を起動("On")するように，"
www.hogehoge.com"で指定される図8の管理サーバ装置7に指示するものである。
【００６５】
図8の管理サーバ装置7は，この起動コマンドに基づき，引数として設定されたIPアドレスを有する仮想マシンを，例えば，図1のサーバ装置4_Neに起動する。
【００６６】
クラウドサービスのユーザ毎に定められた，仮想ルータ，仮想マシン(ソフトウェア)を起動するための第1の情報は，例えば，図6に示した，仮想ルータの起動停止情報，仮想ルータのIPアドレス，図7に示した，仮想マシンの起動停止情報，仮想マシンのIPアドレスである。そして，このソフトウェアとネットワーク(例えば，通信回線網Nt)を介して通信するトンネルを開設するための第2の情報は，図6に示した，l2プロトコルである。
【００６７】
例えば，ユーザIDで識別される，クラウドサービスのユーザ"Use-A"に対して，第1の情報として，図6に示すように，仮想ルータの起動停止情報"API_VR-A"，仮想ルータのIPアドレス"x1.x2.x3.x4"が定められている。さらに，前記した第1の情報として，ユーザ"Use-A"のクラウドサービスを識別するSaaSID"SaaS-0"に対応して(図6参照)，図7に示すように，仮想マシンの起動停止情報"API_VM-A"，仮想マシンのIPアドレス"xx1. xx2. xx3. xx4"が定められている。そして，ユーザ"Use-A"に対して，第2の情報として，図6に示すように，L2プロトコル"GRE"が定められている。
【００６８】
(管理サーバ装置)
図8は，図1の管理サーバ装置7のハードウェアブロック図である。管理サーバ装置7は，例えばバスBを介して相互に接続された，CPU71と，通信装置72と，メモリ73と，記憶装置74とを有する。
【００６９】
CPU71は，管理サーバ装置7の全体を制御する演算処理装置である。通信装置72は，例えばNICであり，内部ネットワークNdcに有線接続し，この内部ネットワークNdcに接続している各種装置との通信を行う。
【００７０】
メモリ73は，CPU71が実行する各種情報処理において処理されたデータや各種プログラムを一時的に記憶する。
【００７１】
メモリ73の全体管理部731は，管理サーバ装置7が実行する各種処理を管理する。全体管理部731は，例えば，仮想ルータ管理部732，仮想マシン管理部733を管理する共に，通信装置72に接続する装置と通信パケットの送受信処理を実行する。仮想ルータ管理部732は，サーバ装置において実行される仮想マシンからのデータ出力，仮想マシンへのデータ入力を制御する仮想ルータを管理する。仮想マシン管理部733は，この仮想マシンを管理する。
【００７２】
全体管理部731，仮想ルータ管理部732，仮想マシン管理部733は，いわゆるプログラムであり，このプログラムは，例えば，記憶装置74に記憶されている。CPU71は，起動時に，これらのプログラムを記憶装置74から読み出して，メモリ73に展開することにより，これらのプログラムをソフトウェアモジュールとして機能させる。
【００７３】
記憶装置74は，例えば，磁気記憶装置や不揮発性のメモリである。記憶装置74は，前記したプログラムや，各種データを記憶する。さらに，記憶装置74は，仮想ルータに割り当てるハードウェア(HW:Hard Ware)の資源量を記憶する仮想ルータHWテーブルT11と，仮想マシンに割り当てるハードウェアを記憶する仮想マシンHWテーブルT12とを記憶する。なお，1つの仮想マシンだけではなく，複数の仮想マシンが協調動作して各種情報処理を実行してもよい。
【００７４】
図9，図10に基づき，図8に示した，仮想ルータHWテーブルT11，仮想マシンHWテーブルT12について説明する。
【００７５】
図9は，仮想ルータHWテーブルT11の一例を示す図である。
【００７６】
図9の仮想ルータHWテーブルT11は，ユーザID欄と，CPU欄と，メモリ欄と，記憶装置欄と，通信帯域欄とを有する。ユーザID欄は，クラウドサービスのユーザを識別するユーザIDを記憶する。CPU欄は，このユーザIDに対応する仮想ルータに割り当てる，CPUのクロック数(GHz)を記憶する。メモリ欄は，この仮想ルータに割り当てるメモリ容量(Gbyte)を記憶する。記憶装置欄は，この仮想ルータに割り当てる記憶装置の容量(Gbyte)を記憶する。通信帯域欄は，この仮想ルータに割り当てるデータ通信の通信帯域(Gbps)を記憶する。
【００７７】
図9において，ユーザID欄は，"User-A"，"User-B"，"User-C"を記憶する。CPU欄は，前記した各ユーザIDに対応する仮想ルータに割り当てるCPUのクロック数として"1.0"，"1.5"，"1.0"(GHz)を記憶する。なお，仮想ルータに割り当てるCPUのクロック数が"1.0"GHzとは，このCPUの最大クロック数が3.0GHzの場合，時分割された(1/3)GHz分，この仮想ルータがこのCPUを占有できることを意味している。
【００７８】
メモリ欄は，前記した各ユーザIDに対応する仮想ルータに割り当てるメモリ容量として"1.0"，"1.5"，"1.2"(Gbyte)を記憶する。なお，仮想ルータに割り当てるメモリ容量が"1.0"Gbyteとは，このメモリにおいて，"1.0"Gbyteに相当するメモリ領域を，この仮想ルータに割り当てることを意味している。
【００７９】
記憶装置欄は，前記した各ユーザIDに対応する仮想ルータに割り当てる記憶装置の容量として"100.0"，"200.0"，"250.0"(Gbyte)を記憶する。通信帯域欄は，前記した各ユーザIDに対応する仮想ルータが通信を実行する際に割り当てる通信帯域として"1.2"，"1.5"，"1.2"(Gbps)を記憶する。なお，仮想ルータに割り当てる記憶装置の容量が"100.0"Gbyteとは，このメモリにおいて，"100.0"Gbyteに相当する記憶領域を，この仮想ルータに割り当てることを意味している。仮想ルータに割り当てる通信帯域が"1.2"Gbpsとは，通信装置(例えばNIC)の最大通信帯域が4.0Gbpsの場合，時分割された(1.2/4.0)Gbps分，この仮想ルータがこの通信装置を占有できることを意味している。
【００８０】
図10は，仮想マシンHWテーブルT12の一例を示す図である。
【００８１】
図10の仮想マシンHWテーブルT12は，SaaS
ID欄と，CPU欄と，メモリ欄と，記憶装置欄と，通信帯域欄と，ソフトウェア欄とを有する。SaaS
ID欄は，クラウドサービスを識別するSaaS IDを記憶する。CPU欄は，このSaaS IDに対応する仮想マシンに割り当てる，CPUのクロック数(GHz)を記憶する。メモリ欄は，この仮想マシンに割り当てるメモリ容量(Gbyte)を記憶する。記憶装置欄は，この仮想マシンに割り当てる記憶装置の容量(Gbyte)を記憶する。通信帯域欄は，この仮想マシンに割り当てるデータ通信の通信帯域(Gbps)を記憶する。ソフトウェア欄は，この仮想マシンが実行する，OSやアプリケーションの名前を記憶する。
【００８２】
図10において，SaaS ID欄は，"SaaS-0"，"SaaS-1"を記憶する。CPU欄は，前記した各SaaS
IDに対応する仮想マシンに割り当てるCPUのクロック数として"2.0"，"3.5"(GHz)を記憶し，メモリ欄は，前記した各SaaS
IDに対応する仮想マシンに割り当てるメモリ容量として"2.0"，"2.5"(Gbyte)を記憶する。記憶装置欄は，前記した各SaaS IDに対応する仮想マシンに割り当てる記憶装置の容量として"100.0"，"200.0"(Gbyte)を記憶し，通信帯域欄は，前記した各SaaS
IDに対応する仮想マシンが通信を実行する際に割り当てる通信帯域として"1.0"，"1.2"(Gbps)を記憶する。さらに，前記した各SaaS
IDに対応する仮想マシンが実行するOS，アプリケーションの名前"OS0,App0a,App0b"，"OS1,App1b,App1b"を記憶する。ここで，"OS0"とは，"SaaS-0"の仮想マシンが実行するOSの名前であり，"App0a"，"App0b"とは，この仮想マシンが実行するアプリケーションの名前である。同じく，"OS1"とは，"SaaS-1"の仮想マシンが実行するOSの名前であり，"App1a"，"App1b"とは，この仮想マシンが実行するアプリケーションの名前である。
【００８３】
(サーバ装置)
図11は，図1のデータセンターDC_1内のサーバ装置のハードウェアブロック図である。図11では，図1における第Neのサーバ装置4_Neを例示して説明するが，他のサーバ装置4_1なども同様の構成を有する。
【００８４】
サーバ装置4_Neは，ハードウェア40と，ハードウェア40上で動作するハイパーバイザ(Hypervisor)45とを有する。なお，ハイパーバイザは，仮想化ソフトウェアとも呼ばれる。
【００８５】
さらに，サーバ装置4_Neは，ハイパーバイザ45が起動し管理する第1の仮想ルータ4vr_1〜第Nf(Nfは2以上の整数)の仮想ルータ4vr_Nfと，ハイパーバイザ45が起動し管理する第1の仮想マシン4vm_1〜第Nfの仮想マシン4vm_Nfとを有する。ここで，第1の仮想ルータ4vr_1〜第Nfの仮想ルータ4vr_Nfは，それぞれ，第1の仮想マシン4vm_1〜第Nfの仮想マシン4vm_Nfからのデータ出力，第1の仮想マシン4vm_1〜第Nfの仮想マシン4vm_Nfへのデータ入力を制御する。なお，同一のサーバ装置が，仮想マシンと仮想ルータとを起動せず，あるサーバ装置が，仮想マシンを起動し，他のサーバ装置が，仮想ルータを起動してもよい。
【００８６】
ハイパーバイザ45は，ハードウェア40を仮想化して仮想ルータを起動し，さらに，ハードウェア40を仮想化して仮想マシンを起動するための制御ブログラムである。
【００８７】
サーバ装置4_Neのハードウェア40は，例えばバスBを介して相互に接続された，CPU41と，通信装置42と，メモリ43と，記憶装置44とを有する。
【００８８】
CPU41は，サーバ装置4の全体を制御する演算処理装置である。CPU41は，例えば，複数のコアを集積するマルチコアプロセッサであってもよい。通信装置42は，例えばNICであり，内部ネットワークNdcに有線接続し，この内部ネットワークNdcに接続している各種装置との通信を行う。
【００８９】
メモリ43は，CPU41が実行する各種情報処理において処理されたデータや各種プログラムを一時的に記憶する。
【００９０】
記憶装置44は，例えば，磁気記憶装置や不揮発性のメモリである。記憶装置44は，ハイパーバイザ45として機能する制御プログラムや，仮想ルータが実行するルーティング処理などの通信処理に必要な各種プログラムを記憶する。さらに，記憶装置44は，仮想マシンが実行する各種OSや各種アプリケーションのプログラムを記憶する。
【００９１】
CPU41は，起動時に，ハイパーバイザ45の制御プログラムを記憶装置44から読み出して，メモリ43に展開することにより，この制御プログラムをハイパーバイザ45として機能させる。
【００９２】
また，CPU41は，ハイパーバイザ45の制御に基づき，仮想ルータで実行する通信処理，すなわち通信パケットのルーティング処理に必要な各種プログラムを記憶装置44から適宜読み出し，この仮想ルータに割り当てられたメモリ43のメモリ領域に展開し，この仮想ルータを実行する。さらに，CPU41は，ハイパーバイザ45の制御に基づき，仮想マシンで実行するOSのプログラムやアプリケーションのプログラムを記憶装置44から適宜読み出し，この仮想マシンに割り当てられたメモリ43のメモリ領域に展開し，この仮想マシンを実行する。
【００９３】
(ルータ装置における処理の流れ)
図12は，図4のルータ装置2における処理の流れを説明するフロー図である。
【００９４】
ステップS1:ルータ装置2の接続部232は，端末装置1(図2参照)からの接続要求に応答して，端末装置1との接続を確立し，接続完了通知を端末装置1に送信する。なお，ステップS1の処理の詳細については，図13のステップS23で説明する。
【００９５】
ステップS2:ルータ装置2の認証管理部234は，端末装置1から送信されたクラウドサービスのユーザを認証する認証情報を受信し，認証サーバ装置3に認証要求を行う。なお，ステップS2の処理の詳細については，図13のステップS25で説明する。
【００９６】
ステップS3:ルータ装置2の仮想ルータ起動停止部235は，認証サーバ装置3がユーザの認証が成功した場合に送信する，クラウドサービスのユーザ毎に定められた第1の情報および第2の情報を有するクラウドアクセス情報を受信し，このクラウドアクセス情報の第1の情報に基づき，仮想ルータの起動要求をデータセンターDC1_1に行う。なお，ステップS3の処理の詳細については，図13のステップS27で説明する。
【００９７】
ステップS4:ルータ装置2の仮想マシン起動停止部236は，認証サーバ装置3から受信したクラウドアクセス情報の第1の情報に基づき，仮想マシンの起動要求をデータセンターDC1_1に行う。なお，ステップS2の処理の詳細については，図13のステップS29で説明する。
【００９８】
ルータ装置2は，このステップS3，S4で説明した，仮想ルータの起動要求，仮想マシンの起動要求として，ソフトウェアの起動を指示する第1のコマンドをデータセンターDC1_1に送信する。
【００９９】
ステップS5:ルータ装置2のトンネル開設部237は，認証されたユーザのIDに対応するL2プロトコルに基づき，起動している仮想ルータとの間におけるトンネルを開設する。換言すれば，トンネル開設部237は，受信したクラウドアクセス情報の第2の情報に基づき，ネットワーク(通信回線網Nt)にトンネルを開設する。なお，ステップS2の処理の詳細については，図13のステップS31で説明する。
【０１００】
(仮想ルータ，仮想マシンの起動，トンネル開設処理の流れ)
第1の実施の形態における，仮想ルータ，仮想マシンの起動，トンネル開設処理の流れについて，図1〜図11を参照し，図13に基づき説明する。
【０１０１】
図13は，第1の実施の形態における，仮想ルータ，仮想マシンの起動，トンネル開設処理の流れを説明する図である。
【０１０２】
ステップS21：図2のユーザ側システムUSにおけるユーザは，端末装置1にユーザ認証用の認証情報を入力する。ユーザ認証の種類としては，例えば，ユーザを識別するユーザIDと，このユーザIDに対応するパスワードによるパスワード認証がある。パスワード認証の場合，認証情報はユーザIDと，このユーザIDに対応するパスワードである。他にも，ユーザ認証の種類としては，ユーザを識別するユーザIDと，このユーザIDに対応する公開鍵などの鍵情報が記憶されているIDカードによるカード認証情報がある。カード認証の場合，認証情報は，ユーザIDと，ユーザIDに対応する鍵情報である。以下の説明では，カード認証の認証情報として，ユーザIDとユーザIDに対応する公開鍵を例示して説明する。
【０１０３】
パスワード認証の場合，図2の全体管理部161は，認証用画面として，例えばユーザID，パスワード入力画面を表示装置121に表示するように表示制御部12に指示する。表示制御部12は，この表示指示に応答して，ユーザIDとパスワードとの入力画面を表示装置121に表示する。ユーザは，操作装置131を操作して，ユーザIDとパスワードとを入力する。認証情報取得部162は，入力されたユーザIDとパスワード，すなわち入力された認証情報を，操作制御部13を介して取得する。
【０１０４】
カード認証の場合，全体管理部161は，認証用画面として，例えばIDカードをカードリーダ141に挿入するようにユーザに指示する画面を表示装置121に表示するように表示制御部12に指示する。表示装置121は，この表示指示に応答して，指示画面を表示装置121に表示する。ユーザは，この指示画面の表示に応答して，カードリーダ141にIDカードを挿入する。カードリーダ141は，挿入されたIDカードから，ユーザIDとこのユーザIDに対応する公開鍵を読み取り，カードリーダ制御部14に出力する。認証情報取得部162は，入力されたユーザIDとこのユーザIDに対応する公開鍵，すなわち入力された認証情報を，カードリーダ制御部14を介して取得する。
【０１０５】
ステップS22：端末装置1の全体管理部161は，ルータ装置2に接続要求を行う。
【０１０６】
ステップS23：ルータ装置2は，この接続要求を受信し，端末装置1との接続を確立し，接続完了通知を端末装置1に送信する。具体的には，図4のルータ装置2の全体管理部231は，接続リスクエストを受信すると，接続部232に端末装置1との双方向通信を実行するための接続を確立するように指示する。接続部232は，この確立指示に応答して，端末装置1との双方向通信を実行するための接続を確立する。この接続確立により，端末装置1とルータ装置2との間で双方向通信処理が可能になる。
【０１０７】
ステップS24：図2の端末装置1の認証情報送信部163は，認証情報取得部162が取得した認証情報をルータ装置2に送信する。
【０１０８】
ステップS25：図4のルータ装置2の認証管理部234は，この認証情報を受信し，ユーザの認証要求を認証サーバ装置3に行う。具体的には，全体管理部231は，端末装置1から送信された認証情報を受信し，認証管理部234に送信する。認証管理部234は，認証要求と共に，受信した認証情報を認証サーバ装置3に送信する。
【０１０９】
ステップS26：図5の認証サーバ装置3は，認証要求に応答して，受信した認証情報に基づき，ユーザの認証を実行し，この認証情報に対応するクラウドアクセス情報をルータ装置2に送信する。具体的には，認証サーバ装置3の全体管理部331は，ルータ装置2から送信された認証要求と認証情報とを受信し，認証処理を実行するように認証実行部332に指示する。認証実行部332は，この指示に応答して，この認証情報に基づき，ユーザ認証処理を実行する。
【０１１０】
前記したパスワード認証の場合には，認証実行部332は，記憶装置34が予め記憶しているユーザIDと，このユーザIDに対応するパスワードとを記憶するテーブル(図示しない)に基づき認証を行う。ここでは，認証実行部332は，受信した認証情報が有するユーザIDとパスワードが，このテーブルに記憶されている場合には，このユーザIDで識別されるユーザが正当なユーザであると認証する。以下，認証実行部332が，正当なユーザと認証したことを，認証成功と適宜記す。認証実行部332は，このユーザIDとパスワードが，このテーブルに記憶されていない場合には，このユーザが正当なユーザでないと判定する。以下，認証実行部332が，正当なユーザでないと判定することを，認証失敗と適宜記す。
【０１１１】
前記したカード認証の場合には，認証実行部332は，記憶装置34が予め記憶しているユーザIDと，このユーザIDに対応する公開鍵とを記憶するテーブル(図示しない)に基づき認証を行う。ここでは，認証実行部332は，受信した認証情報が有するユーザIDと公開鍵がこのテーブルに記憶されている場合には，このユーザIDで識別されるユーザが正当なユーザであると認証する。認証実行部332は，このユーザIDと公開鍵が，このテーブルに記憶されていない場合には，このユーザが正当なユーザでないと判定する。
【０１１２】
なお，認証プロトコルとしては，例えば，RADIUS(Remote
Authentication Dial In User Service)認証プロトコルなどの様々なプロトコルを利用することができる。
【０１１３】
全体管理部331は，認証実行部332が認証処理を実行し，受信した認証情報が有するユーザIDで識別されるユーザが正当なユーザであると認証できた場合には，換言すれば，ユーザの認証が成功した場合には，以下の処理を実行する。すなわち，全体管理部331は，このユーザIDに対応するクラウドアクセス情報を取得し，取得したクラウドアクセス情報をルータ装置2に送信するようにアクセス情報取得部333に指示する。一方，全体管理部331は，認証実行部332がこのユーザが正当なユーザでないと判定した場合，認証失敗した旨をルータ装置2に送信する。この場合，ルータ装置2は，認証が失敗したことを端末装置1に通知する。
【０１１４】
アクセス情報取得部333は，クラウドアクセス情報の取得指示に応答して，図6のクラウドアクセス管理テーブルT1，図7のクラウドサービス管理テーブルT2から，前記ユーザIDに対応するクラウドアクセス情報を取得する。
【０１１５】
例えば，ユーザIDが"User-A"の場合，アクセス情報取得部333は，図6のクラウドアクセス管理テーブルT1から，このユーザIDに対応する仮想ルータの起動停止情報"API_VR-A"，仮想ルータのIPアドレス"x1.x2.x3.x4"，L2プロトコルの種別"GRE"，SaaSID"SaaS-0"を取得する。さらに，アクセス情報取得部333は，図7のクラウドサービス管理テーブルT2を参照して，この取得したSaaSID"SaaS-0"に対応する仮想マシン起動停止情報"API_VM-A"，仮想マシンのIPアドレス"xx1.xx2.xx3.xx4"，接続用のプロトコル"HTTP"を取得する。アクセス情報取得部333は，取得したクラウドアクセス情報を，ルータ装置2に送信する。
【０１１６】
このように，アクセス情報取得部333は，ユーザの認証が成功した場合，クラウドサービスのユーザ毎に定められた，クラウドアクセス情報をルータ装置2に送信する。
【０１１７】
ステップS27：ルータ装置2は，受信したクラウドアクセス情報に基づき，仮想ルータの起動要求をデータセンターDC1_1に行う。
【０１１８】
具体的には，図4のルータ装置2の全体管理部231は，受信したクラウドアクセス情報を記憶装置24(図3参照)に記憶する。次いで，仮想ルータ起動停止部235は，記憶装置24に記憶されているユーザID"User-A"，仮想ルータのIPアドレス"x1.x2.x3.x4"，さらに起動指示オプションを引数として設定して，この仮想ルータの起動停止情報であるAPI_VR-Aを実行する。全体管理部231は，API_VR-Aに基づき，ユーザID"User-A"，仮想ルータのIPアドレス"x1.x2.x3.x4"，起動指示オプションを有する仮想ルータの起動指示コマンドを図8の管理サーバ装置7に送信する。なお，このAPIは，図6で説明したAPIである。
【０１１９】
管理サーバ装置7の全体管理部731は，この起動指示コマンドを受信すると，この起動指示コマンドが有するユーザIDに基づき，このユーザIDに対応する仮想ルータに割り当てるハードウェア資源量を，図9の仮想ルータHWテーブルT11から取得する。前記の例では，ユーザIDは"User-A"である。したがって，全体管理部731は，仮想ルータHWテーブルT11から，"User-A"に対応する仮想ルータに割り当てるハードウェア資源量として，CPUのクロック数1.0GHz，メモリのメモリ容量1.0Gbyte，記憶装置の記憶容量100.0Gbyte，通信帯域1.2Gbpsを取得する。
【０１２０】
そして，全体管理部731は，取得した仮想ルータのハードウェア資源量と，この起動指示コマンドが有する仮想ルータのIPアドレスとを仮想ルータ管理部732に送信する。
【０１２１】
仮想ルータ管理部732は，前記仮想ルータのハードウェア資源量と仮想ルータのIPアドレスとを受信すると，複数のサーバ装置4_1〜サーバ装置4_Neの中から仮想ルータの起動対象となるサーバ装置を選択する。このサーバ装置の選択基準としては，例えば，起動している仮想ルータの数が最も少ないサーバ装置を選択する基準がある。
【０１２２】
そして，仮想ルータ管理部732は，仮想ルータ起動指示コマンドと共に，受信した前記仮想ルータのハードウェア資源量と仮想ルータのIPアドレスとを選択したサーバ装置に送信する。ここでは，仮想ルータ管理部732は，第Neのサーバ装置4_Neを選択したとする。この仮想ルータ起動指示コマンドが，サーバ装置にソフトウェアの起動を指示する第4のコマンドの一例である。
【０１２３】
ステップS28：仮想ルータの起動指示コマンドを受信したサーバ装置は，受信した前記仮想ルータのハードウェア資源量と仮想ルータのIPアドレスに基づき，仮想ルータを起動し，実行する。そして，管理サーバ装置7は，起動が完了したことをルータ装置2に通知する。
【０１２４】
具体的には，仮想ルータの起動指示コマンドを受信したサーバ装置4_Neのハイパーバイザ45(図11参照)は，CPU41のクロック数1.0GHz，メモリ43のメモリ容量1.0Gbyte，記憶装置44の記憶容量100.0Gbyte，通信装置42の通信帯域1.2Gbpsを有する仮想ルータを起動する。そして，ハイパーバイザ45は，この起動した仮想ルータに受信した前記IPアドレス"x1.x2.x3.x4"を割り当てる。
【０１２５】
そして，ハイパーバイザ45は，起動した仮想ルータにパケットの転送処理(ルーティング処理)を実行するプログラムを実行させる。ここでは，ハイパーバイザ45は，仮想ルータ4vr_1を起動したとする。この仮想ルータ4vr_1は，図1の仮想ルータ4vrである。起動完了後，ハイパーバイザ45は，仮想ルータの起動が完了したことを，管理サーバ装置7に通知する。図8の管理サーバ装置7の全体管理部731は，この仮想ルータの起動完了をルータ装置2に通知する。
【０１２６】
ステップS29：ルータ装置2は，受信したクラウドアクセス情報に基づき，仮想マシンの起動要求をデータセンターDC1_1に行う。
【０１２７】
具体的には，図4のルータ装置2の全体管理部231は，仮想ルータの起動完了通知を受信すると，仮想マシン起動停止部236に仮想マシンの起動指示を実行するように指示する。仮想マシン起動停止部236は，記憶装置24に記憶されている，ユーザID"User-A"に対応するSaaSID"SaaS-0"，仮想マシンのIPアドレス"xx1.xx2.xx3.xx4"，さらに起動指示オプションを引数として設定して，この仮想マシンの起動停止情報であるAPI_VM-Aを実行する。全体管理部231は，API_VM-Aに基づき，SaaSID"SaaS-0"，仮想マシンのIPアドレス"xx1.xx2.xx3.xx4"，起動指示オプションを有する仮想マシンの起動指示コマンドを図8のデータセンターDC1_1の管理サーバ装置7に送信する。なお，このAPIは，図7で説明したAPIである。
【０１２８】
管理サーバ装置7の全体管理部731は，この起動指示コマンドを受信すると，この起動指示コマンドが有するSaaSIDに基づき，このSaaSIDに対応する仮想マシンに割り当てるハードウェア資源量を，図10の仮想マシンHWテーブルT12から取得する。さらに，全体管理部731は，この仮想マシンが実行するソフトウェア資源の名前を，図10の仮想マシンHWテーブルT12から取得する。
【０１２９】
前記の例では，SaaSIDは"SaaS-0"である。したがって，図8の全体管理部731は，仮想マシンHWテーブルT12から，"SaaS-0"に対応する仮想マシンに割り当てるハードウェア資源量として，CPUのクロック数2.0GHz，メモリのメモリ容量2.0Gbyte，記憶装置の記憶容量100.0Gbyte，通信帯域1.0Gbpsを取得する。さらに，全体管理部731は，この仮想マシンが実行するソフトウェア資源の名前としてOS(Operating
System)"OS0"，アプリケーション"App0a","App0b"を取得する。
【０１３０】
そして，全体管理部731は，取得した仮想マシンのハードウェア資源量，ソフトウェア資源の名前，さらに，この起動指示コマンドが有する仮想マシンのIPアドレスを仮想マシン管理部733に送信する。
【０１３１】
仮想マシン管理部733は，前記仮想マシンのハードウェア資源量などを受信すると，複数のサーバ装置4_1〜サーバ装置4_Neの中から仮想マシンの起動対象となるサーバ装置を選択する。このサーバ装置の選択基準としては，例えば，起動している仮想マシンの数が最も少ないサーバ装置を選択する基準がある。
【０１３２】
そして，仮想マシン管理部733は，仮想マシン起動指示コマンドと共に，受信した前記仮想マシンのハードウェア資源量，アプリケーションの名前，さらに，受信した仮想マシンのIPアドレスとを選択したサーバ装置に送信する。ここでは，仮想マシン管理部733は，第Neのサーバ装置4_Neを選択したとする。この仮想マシン起動指示コマンドが，サーバ装置にソフトウェアの起動を指示する第4のコマンドの一例である。
【０１３３】
ステップS30：仮想マシンの起動指示コマンドを受信したサーバ装置は，受信した前記仮想マシンのハードウェア資源量と仮想マシンのIPアドレスに基づき，仮想マシンを起動し，実行する。そして，管理サーバ装置7は，起動が完了したことをルータ装置2に通知する。
【０１３４】
具体的には，仮想マシンの起動指示コマンドを受信したサーバ装置4_Neのハイパーバイザ45(図11参照)は，受信した前記仮想マシンのハードウェア資源量に基づき，CPU41のクロック数2.0GHz，メモリ43のメモリ容量2.0Gbyte，記憶装置44の記憶容量100.0Gbyte，通信装置42の通信帯域1.0Gbpsを有する仮想マシンを起動する。
【０１３５】
そして，ハイパーバイザ45は，この起動した仮想マシンに受信した前記IPアドレス"x1.x2.x3.x4"を割り当てる。さらに，ハイパーバイザ45は，仮想マシンのアプリケーションの名前に対応するアプリケーションプログラムを記憶装置44から読み出し，メモリ43に展開して，このアプリケーションを実行する。ここでは，ハイパーバイザ45は，仮想マシン4vm_1を起動したとする。この仮想マシン4vm_1は，図1の仮想マシン4vmである。起動完了後，ハイパーバイザ45は，仮想マシンの起動が完了したことを，管理サーバ装置7に通知する。図8の管理サーバ装置7の全体管理部731は，この仮想マシンの起動完了を図4のルータ装置2に通知する。
【０１３６】
ステップS31：ルータ装置2のトンネル開設部237は，認証されたユーザのIDに対応するL2プロトコルに基づき，起動している仮想ルータとの間におけるトンネルを開設する。
【０１３７】
例えば，認証されたユーザのIDが，"User-A"の場合，このユーザIDに対応するL2プロトコルは，図6のクラウドアクセス管理テーブルT1によれば，GREである。この場合，ルータ装置2のトンネル開設部237は，自装置のIPアドレスと，起動している仮想ルータ4vr_1(図11参照)のIPアドレス(x1.x2.x3.x4)を自装置のメモリ23(図3参照)に設定する。さらに，ルータ装置2のトンネル開設部237は，自装置のIPアドレスとL2プロトコルの種別"GRE"をこの仮想ルータ4vr_1に送信する。この仮想ルータ4vr_1は，受信したルータ装置2のIPアドレスを，仮想ルータ4vr_1に割り当てられているメモリ領域に設定する。これらのIPアドレスの設定処理が終了すると，ルータ装置2のトンネル開設部237と，この仮想ルータ4vr_1は，GREプロトコルに基づき，IPパケットのカプセル化を実行することにより，データ通信を実行する。すなわち，認証されたユーザのIDに対応するL2プロトコルに基づき，ルータ装置2と起動している仮想ルータとの間におけるトンネルが開設される。そして，ルータ装置2のルーティング部233が，ルータ装置2と仮想ルータ4vr_1との間におけるデータ通信処理を実行する。
【０１３８】
ステップS32：ルータ装置2の全体管理部231は，トンネル開設が完了したことを端末装置1に通知する。このとき，全体管理部231は，起動した仮想マシンのIPアドレスも通知する。図2の端末装置1の全体管理部161は，トンネル開設通知を受信すると，表示制御部12にトンネル開設通知画面を表示するように指示する。表示制御部12は，この指示に応答して，トンネル開設通知画面を表示装置121に表示する。以後，端末装置1のアクセス部164は，通知された仮想マシンのIPアドレスを宛先とするパケットをルータ装置2に送信することにより，ルータ装置2，通信回線網Nt，ゲートウェイ装置5，ルータ装置6，仮想ルータ4vr_1を経由して仮想マシン4vm_1にアクセスする。その結果，ユーザは，この仮想マシン4vm_1が提供するクラウドサービスを利用することができる。このとき，ルータ装置2のルーティング部233は，端末装置から送信されるパケットを受信すると，このパケットのヘッダ部分に格納されている端末装置のMAC
(Media Access Control)アドレスを参照する。そしてルーティング部233は，このMACアドレスが，前記したユーザが使用する端末装置1のMACアドレスの場合には，このパケットを外部のネットワークである通信回線網Ntに送信する，すなわち，MACフィルタリングを解除する。図13の処理終了後，他のユーザ(例えば，ユーザID"User-B")が，図13で説明した端末装置1以外の端末装置(例えば，端末装置1_Nb)に，他のユーザの認証情報を入力した場合にも，図13の各ステップが実行される。その結果，他のユーザは，他のユーザのクラウドサービスを利用することができる。
【０１３９】
ユーザが，クラウドサービスの利用を停止する場合には，以下の処理が実行される。例えば，ユーザが，図2の端末装置1の操作装置131を操作して，クラウドサービスの停止指示操作を行う。このとき，ユーザは，ユーザのIDを有する認証情報の入力もあわせて行う。操作制御部13は，この停止指示操作に応答して，全体管理部161に停止指示操作が実行されたことを示すコマンドを送信する。全体管理部161は，このコマンドを受信すると，このユーザのIDをルータ装置2に送信すると共に，クラウドサービスの停止を指示する第2のコマンドをルータ装置2に送信する。前記例の場合，このユーザIDは，"User-A"である。
【０１４０】
図4のルータ装置2の全体管理部231は，このユーザID"User-A"と，第2のコマンドを受信すると，仮想マシン起動停止部236に，このユーザIDに対応するSaaSIDの仮想マシンを停止するように指示する。仮想マシン起動停止部236は，この停止指示に応答して，このユーザID"User-A"に対応するSaaSID"
SaaS-0"，停止指示オプションを引数として設定して，記憶装置24(図3)が記憶している，このユーザID"User-A"に対応するSaaSID"
SaaS-0"の仮想マシンの起動停止情報であるAPI_VM-Aを実行する。仮想マシン起動停止部236は，API_VM-Aに基づき，SaaSID" SaaS-0"，停止指示オプションを有する仮想マシンの停止指示コマンドを図8の管理サーバ装置7に送信する。なお，このAPIとは，例えば，ｈｔｔｐ：／／ｗｗｗ．ｈｏｇｅｈｏｇｅ．ｃｏｍ／ｃｌｏｕｄ／ｖｍ／  ＳａａＳ−０／Ｏｆｆである。このAPIの意味は，SaaSID" SaaS-0 "の仮想マシン("vm")の起動を停止するように" www.hogehoge.com"で指定される図8の管理サーバ装置7に指示するものである。
【０１４１】
管理サーバ装置7の全体管理部731は，この停止指示コマンドを受信すると，この停止指示コマンドが有するSaaSID"
SaaS-0"の仮想マシン4vm_1の実行停止をサーバ装置4e(図11参照)に指示する。サーバ装置4eのハイパーバイザ45は，この指示に応答して，仮想マシン4vm_1の実行を停止する。
【０１４２】
次いで，図4のマシン装置2の全体管理部231は，仮想ルータ起動停止部235に，このユーザIDに対応する仮想ルータを停止するように指示する。仮想ルータ起動停止部235は，この停止指示に応答して，このユーザID"User-A"，停止指示オプションを引数として設定して，記憶装置24(図3)が記憶している，このユーザID"User-A"に対応する仮想ルータの起動停止情報であるAPI_VR-Aを実行する。仮想ルータ起動停止部235は，API_VR-Aに基づき，ユーザID"User-A"，停止指示オプションを有する仮想ルータの停止指示コマンドを図8の管理サーバ装置7に送信する。なお，このAPIとは，例えば，ｈｔｔｐ：／／ｗｗｗ．ｈｏｇｅｈｏｇｅ．ｃｏｍ／ｃｌｏｕｄ／ｖｒ／Ｕｓｅｒ−Ａ／Ｏｆｆである。このAPIの意味は，ユーザID" User-A "の仮想ルータ("vr")の起動を停止するように" www.hogehoge.com"で指定される図8の管理サーバ装置7に指示するものである。
【０１４３】
管理サーバ装置7の全体管理部731は，この停止指示コマンドを受信すると，この停止指示コマンドが有するユーザIDに対応する仮想ルータ4vr_1の実行停止をサーバ装置4e(図11参照)に指示する。サーバ装置4eのハイパーバイザ45は，この指示に応答して，仮想ルータ4vr_1の実行を停止する。
【０１４４】
以上説明した，仮想マシン起動停止部236が管理サーバ装置7に送信する仮想マシンの停止指示コマンドおよび仮想ルータ起動停止部235が管理サーバ装置7に送信する仮想ルータの停止指示コマンドが，クラウドサービスの停止を指示する第3のコマンドである。
【０１４５】
第1の実施の形態のルータ装置によれば，複数のユーザが，同時に，それぞれのクラウドサービス(情報処理サービス)を利用できる。図6のクラウドアクセス管理テーブルT1，図7のクラウドサービス管理テーブルT2の例の場合，ユーザID"User-A"で識別されるユーザは，このユーザの認証情報を端末装置に入力するだけで，SaaSID"SaaS-0"で識別されるクラウドサービスを利用することができる。同じく，ユーザID"User-B"で識別されるユーザは，このユーザの認証情報を他の端末装置に入力するだけで，SaaSID"SaaS-1"で識別されるクラウドサービスを利用することができる。
【０１４６】
複数のユーザは，ユーザ毎のクラウドサービスを利用する場合，認証情報を端末装置に入力するだけでよいので，複雑な操作を行うことなく，簡単な操作で，ユーザ自らのクラウドサービスを利用することができる。その結果，ユーザの利便性が向上する。
【０１４７】
また，認証処理を実行する認証サーバ装置が，クラウドサービスに対するアクセス情報を管理しているので，認証処理と共に，ルータ装置は，クラウドサービスに対するアクセス情報を取得することができる。そのため，認証処理，アクセス情報の取得処理を異なる装置で実行する必要がない。また，クラウドサービスを利用するユーザを新たに追加する場合には，認証サーバ装置が管理する，図6のクラウドアクセス管理テーブルT1，図7のクラウドサービス管理テーブルT2に，このユーザのアクセス情報を新たに追加するだけでよい。そのため，ユーザの追加処理を簡略化することができる。
【０１４８】
他にも，ルータ装置2が，第1の情報と第2の情報を記憶装置24に記憶してもよい。具体的には，ルータ装置2の記憶装置24は，図6のクラウドアクセス管理テーブルT1，クラウドサービス管理テーブルT2を記憶する。この場合，ルータ装置2の全体管理部231は，端末装置1から，情報処理サービスの利用者を識別する識別情報を受信し，第1の情報および第2の情報を，識別情報に応じて取得(抽出)する。この識別情報は，例えば，ユーザIDである。
【０１４９】
具体的には，ルータ装置2の全体管理部231は，認証情報に含まれるユーザIDを受信すると，図6のクラウドアクセス管理テーブルT1，図7のクラウドサービス管理テーブルT2から，前記ユーザIDに対応するクラウドアクセス情報を取得する。
【０１５０】
例えば，ユーザIDが"User-A"の場合，全体管理部231は，図6のクラウドアクセス管理テーブルT1から，このユーザIDに対応する仮想ルータの起動停止情報"API_VR-A"，仮想ルータのIPアドレス"x1.x2.x3.x4"，L2プロトコルの種別"GRE"，SaaSID"SaaS-0"を取得する。さらに，全体管理部231は，図7のクラウドサービス管理テーブルT2を参照して，この取得したSaaSID"SaaS-0"に対応する仮想マシン起動停止情報"API_VM-A"，仮想マシンのIPアドレス"xx1.xx2.xx3.xx4"，接続用のプロトコル"HTTP"を取得する。
【０１５１】
そして，ルータ装置2は，取得したクラウドアクセス情報に基づき，仮想ルータの起動要求をデータセンターDC1_1に行う。この仮想ルータの起動要求の説明については，図13のステップS27で詳細に説明したので省略する。さらに，ルータ装置2は，取得したクラウドアクセス情報に基づき，仮想マシンの起動要求をデータセンターDC1_1に行う。この仮想マシンの起動要求の説明については，図13のステップS29で詳細に説明したので省略する。
【０１５２】
このように，ルータ装置2が，第1の情報と第2の情報を記憶し，ユーザのクラウドアクセス情報を取得することで，認証サーバ装置が不要になる。その結果，ハードウェア資源を節約できる。また，ルータ装置2と認証サーバ装置3との通信処理が実行されないので，クラウドアクセス情報の取得時間を短縮できる。
【０１５３】
[第2の実施の形態]
第1の実施の形態では，図1で説明したように，1台の認証サーバ装置を第1のデータセンターDC1_1〜第nのデータセンターDC1_nの外に設置していた。しかし，データセンター毎に認証サーバ装置を設けることもできる。このように，認証サーバ装置をデータセンターに設けることで，クラウドサービス提供業者は，認証サーバ装置の管理が容易になる。
【０１５４】
(情報処理システム)
図14は，第2の実施の形態における情報処理システムSYSの一例を説明するハードウェアブロック図である。図14においては，図1と異なり，データセンターDC1_1に認証サーバ装置3を設け，さらに，図1における認証サーバ装置3に替えて，クラウドディレクトリサービス(Cloud
Directory Service)装置8を設けている。クラウドディレクトリサービス装置8は，ルータ装置2が，認証サーバ装置3に接続するための第3の情報を記憶する第3の装置の一例である。図14において，符号L2_1'に示す点線は，ユーザ側システムUSのルータ装置2と，データセンターDC1_1の認証サーバ装置3との間に開設されたL2トンネルを示している。なお，このL2トンネルについては，図20で説明する。
【０１５５】
図15は，図14の端末装置のハードウェアブロック図である。図15の端末装置1は，図1の端末装置1に，例えば光学式の指紋読み取り機能を有する指紋認証装置181と，指紋認証装置181を制御する指紋認証装置制御部18とを追加したものである。さらに，メモリ１6において，クラウドサービス名を取得するサービス名取得部165を追加したものである。
16の全体管理部1611は，図1の全体管理部161の機能に加えて，サービス名取得部165を管理する。
【０１５６】
図16は，図14のルータ装置2が実行するソフトウェアモジュールのブロック図である。図16のルータ装置2は，図4のルータ装置2に，図14の認証サーバ装置3にアクセスするために必要な認証サーバ情報を取得する認証サーバ情報取得部238を追加したものである。トンネル開設部2371は，図4のトンネル開設機能に加えて，ルータ装置2と認証サーバ装置3との間でトンネルを開設する機能を有する。全体管理部2311は，図4の全体管理部231の機能に加えて，認証サーバ情報取得部238を管理する機能を有する。
【０１５７】
図17は，図14のクラウドディレクトリサービス装置8のハードウェアブロック図である。
【０１５８】
クラウドディレクトリサービス装置8は，例えばバスBを介して相互に接続された，CPU81と，通信装置82と，メモリ83と，記憶装置84とを有する。
【０１５９】
CPU81は，クラウドディレクトリサービス装置8の全体を制御する演算処理装置である。通信装置82は，例えばNICであり，図14の通信回線網Ntに有線接続し，この通信回線網Ntに接続している各種装置との通信を行う。
【０１６０】
メモリ83は，CPU81が実行する各種情報処理において処理されたデータや各種プログラムを一時的に記憶する。
【０１６１】
メモリ83の全体管理部831は，クラウドディレクトリサービス装置8が実行する各種処理を管理する。全体管理部831は，例えば，認証サーバアクセス情報取得部832を管理すると共に，通信装置82に接続する装置と通信パケットの送受信処理を実行する。認証サーバアクセス情報取得部832は，認証サーバ装置3にアクセスする際に必要な情報を記憶装置84の認証サーバアクセス情報管理テーブルT21から取得する。この認証サーバ装置3にアクセスする際に必要な情報(以下，認証サーバアクセス情報と適宜記す)が，ルータ装置2が認証サーバ装置3に接続するための第3の情報の一例である。
【０１６２】
全体管理部831，認証サーバアクセス情報取得部832は，いわゆるプログラムであり，このプログラムは，例えば，記憶装置84に記憶されている。CPU81は，起動時に，これらのプログラムを記憶装置84から読み出して，メモリ83に展開することにより，これらのプログラムをソフトウェアモジュールとして機能させる。
【０１６３】
記憶装置84は，例えば，磁気記憶装置や不揮発性のメモリである。記憶装置84は，前記したプログラムや，各種データを記憶する。さらに，記憶装置84は，認証サーバ装置3にアクセスするために必要な情報を有する認証サーバアクセス情報管理テーブルT21を記憶する。
【０１６４】
図18は，図17で示した認証サーバアクセス情報管理テーブルT21の一例を示す図である。図18の認証サーバアクセス情報管理テーブルT21は，クラウドサービス名欄と，認証サーバのIPアドレス欄と，L2プロトコル欄と，認証プロトコル欄とを有する。
【０１６５】
クラウドサービス名欄は，ユーザがアクセスするクラウドサービスを提供するデータセンターを識別するためのクラウドサービス名を記憶する。認証サーバのIPアドレス欄は，このデータセンターに設置されている認証サーバ装置のIPアドレスを記憶する。L2プロトコル欄は，ルータ装置2と認証サーバ装置3との間でトンネルを開設するためのプロトコルの種別を記憶する。認証プロトコル欄は，認証サーバ装置3においてユーザ認証を行う際の認証プロトコルの種別を記憶する。
【０１６６】
図18において，クラウドサービス名欄は，"Cloud-A"，"Cloud-B"，"Cloud-C"を記憶し，認証サーバのIPアドレス欄は，前記した各クラウドサービス名に対応する認証サーバ装置のIPアドレスとして，"xxx.xxx.xxx.xxx"，"yyy.yyy.yyy.yyy"，"zzz.zzz.zzz.zzz"を記憶する。L2プロトコル欄は，前記した各クラウドサービス名に対応するプロトコルの種別として，"GRE"，"OpenVPN"，"L2TP"を記憶し，認証プロトコル欄は，前記した各クラウドサービス名に対応する認証プロトコルの種別として"パスフレーズ"，"スマートカード"，"指紋認証"を記憶する。
【０１６７】
この"パスフレーズ"は，図13で説明したように，ユーザIDとこのユーザIDに対応するパスワードに基づきユーザ認証を行うものである。"スマートカード"は，図13で説明したように，ユーザ識別カードに基づきユーザ認証を行うものである。指紋認証は，ユーザの指紋を読み取り，この読み取った指紋に基づきユーザ認証を行うものである。
【０１６８】
図19は，図14の認証サーバ装置3のハードウェアブロック図である。図19の認証サーバ装置3は，図5の認証サーバ装置3に，トンネル開設部334を追加したものである。
【０１６９】
(クラウドアクセス情報を有する情報の取得処理の流れ)
第2の実施の形態における，データセンターに設けられた認証サーバ装置3からクラウドアクセス情報を取得する処理の流れについて，図14〜図19を参照しながら，図20に基づき説明する。
【０１７０】
図20は，データセンターに設けられた認証サーバ装置3からクラウドアクセス情報を取得する処理の流れを説明する図である。
【０１７１】
ステップS51:図14のユーザ側システムUSにおけるユーザは，ユーザがアクセスしたいクラウドサービスの名前を端末装置1に入力する。具体的には，ユーザは，図15の端末装置1の操作装置131を介して，このクラウドサービス名を入力する。サービス名取得部165は，操作制御部13を介して，このクラウドサービス名を取得する。
【０１７２】
ステップS52：端末装置1の全体管理部1611は，図16のルータ装置2に接続要求を行う。
【０１７３】
ステップS53：ルータ装置2は，この接続要求を受信し，端末装置1との接続を確立し，接続完了通知を端末装置1に送信する。具体的には，図16のルータ装置2の全体管理部2311は，接続リスクエストを受信すると，接続部232に端末装置1との双方向通信を実行するための接続を確立するように指示する。接続部232は，この確立に応答して，端末装置1との双方向通信を実行するための接続を確立する。この接続確立により，端末装置1とルータ装置2との間で双方向通信処理が可能になる。
【０１７４】
ステップS54：図15の端末装置1のサービス名取得部165は，取得したクラウドサービス名を図16のルータ装置2に送信する。
【０１７５】
ステップS55:ルータ装置2の認証サーバ情報取得部238は，端末装置1から送信されたクラウドサービス名を受信し，認証サーバアクセス情報送信要求をクラウドディレクトリサービス装置8に行う。具体的には，全体管理部2311は，ルータ装置2から送信されたクラウドサービス名を受信し，図16の認証サーバ情報取得部238に送信する。認証サーバ情報取得部238は，認証サーバアクセス情報送信要求と受信したクラウドサービス名を，クラウドディレクトリサービス装置8に送信する。
この認証サーバアクセス情報送信要求が，第3の情報の送信要求である。
【０１７６】
ステップS56：図17のクラウドディレクトリサービス装置8は，この送信要求に応答して，受信したクラウドサービス名に対応する認証サーバアクセス情報をルータ装置2に送信する。具体的には，クラウドディレクトリサービス装置8の全体管理部831は，クラウドサービス名を受信すると，このクラウドサービス名に対応する認証サーバアクセス情報を取得するように認証サーバアクセス情報取得部832に指示する。認証サーバアクセス情報取得部832は，この指示に応答して，図18の認証サーバアクセス情報管理テーブルT21から，このクラウドサービス名に対応する認証サーバアクセス情報を取得する。
【０１７７】
例えば，ステップS51において入力されたクラウドサービス名が"Cloul-A"の場合，認証サーバアクセス情報取得部832は，図18の認証サーバアクセス情報管理テーブルT21から，このクラウドサービス名に対応する認証サーバ装置のIPアドレス"xxx.xxx.xxx.xxx"，L2プロトコルの種別"GRE"，認証プロトコルの種別"パスフレーズ"を取得する。そして，認証サーバアクセス情報取得部832は，取得した認証サーバアクセス情報をルータ装置2に送信する。
【０１７８】
ステップS57：ルータ装置2は，受信した認証サーバアクセス情報のL2プロトコルの種別に応じた認証用L2トンネルを認証サーバ装置との間で開設する。具体的には，図16のルータ装置2の全体管理部2311は，認証サーバアクセス情報を受信すると，このアクセス情報が有する認証サーバ装置のIPアドレスとL2プロトコルの種別をトンネル開設部2371に送信する。そして，トンネル開設部2371は，この認証サーバ装置のIPアドレスに基づき，この認証サーバ装置にアクセスし，受信したL2プロトコルに基づき，この認証サーバ装置との間で認証用L2トンネルを開設する。
【０１７９】
前記の例では，認証サーバ装置のIPアドレスは"xxx.xxx.xxx.xxx"であり，L2プロトコルの種別"GRE"であった。ここで，このIPアドレスの認証サーバ装置は，図19の認証サーバ装置3であるとする。この場合，図16のルータ装置2のトンネル開設部2371は，自装置のIPアドレスおよびL2プロトコルの種別"GRE"を認証サーバ装置3に送信する。この認証サーバ装置3の全体管理部3311は，ルータ装置2のIPアドレス，L2プロトコルの種別を受信し，トンネル開設部334に送信する。トンネル開設部334は，このルータ装置2のIPアドレスを受信すると，メモリ33に設定する。これらのIPアドレスの設定処理が終了すると，ルータ装置2のトンネル開設部2371と，認証サーバ装置3のトンネル開設部334は，GREプロトコルに基づき，IPパケットのカプセル化を実行することにより，データ通信を実行する。すなわち，クラウドサービス名に対応するL2プロトコルに基づき，ルータ装置2と認証サーバ装置3との間におけるトンネルが開設される。そして，ルータ装置2のルーティング部233が，ルータ装置2と認証サーバ装置3との間におけるデータ通信処理を実行する。このように，トンネル開設部2371は，受信した認証サーバアクセス情報に基づき，認証サーバ装置3に接続する。
【０１８０】
ステップS58：図6のルータ装置2の全体管理部2311は，受信した認証サーバアクセス情報が有する認証プロトコルを端末装置1に送信する。前記の例では，この認証プロトコルは，"パスフレーズ"である。
【０１８１】
ステップS59：図15の端末装置1は，通知された認証プロトコルに対応する認証情報の入力画面を表示する。具体的には，図15の全体管理部1611は，通知された認証プロトコルがパスフレーズの場合には，ユーザID，パスワード入力画面を表示装置121に表示するように表示制御部12に指示する。表示制御部12は，この表示指示に応答して，ユーザIDとパスワードとの入力画面を表示装置121に表示する。
【０１８２】
また，全体管理部1611は，認証プロトコルが"スマートカード"の場合には，IDカードをカードリーダ141に挿入するようにユーザに指示する指示画面を表示装置121に表示するように表示制御部12に指示する。表示制御部12は，この表示指示に応答して，指示画面を表示装置121に表示する。他にも，全体管理部1611は，認証プロトコルが"指紋認証"の場合には，ユーザIDを入力するように指示する画面と，ユーザの指(指紋部分)を指紋認証装置181の指紋読み取り部分に触れるように指示する画面を表示するように表示制御部12に指示する。表示制御部12は，この指示に応答して，この指示画面を表示装置121に表示する。
【０１８３】
ステップS60：ユーザは，この指示画面に応じて，認証情報を端末装置1に入力する。具体的には，表示装置121が，ユーザIDとパスワードとの入力画面を表示した場合には，ユーザは，操作装置131を操作して，ユーザIDとパスワードとを入力する。認証情報取得部162は，入力されたユーザID，パスワードを，操作制御部13を介して取得する。表示装置121が，IDカードをカードリーダ141に挿入するようにユーザに指示する指示画面を表示した場合には，ユーザは，カードリーダ141にIDカードを挿入する。カードリーダ141は，挿入されたIDカードから，ユーザIDとこのユーザIDに対応する公開鍵を読み取り，カードリーダ制御部14に出力する。認証情報取得部162は，入力されたユーザIDとこのユーザIDに対応する公開鍵，すなわち入力された認証情報を，カードリーダ制御部14を介して取得する。
【０１８４】
表示装置121が，ユーザIDの入力画面，ユーザの指を指紋認証装置181の指紋読み取り部分に触れるように指示する画面を表示した場合には，ユーザは，操作装置131を操作してユーザIDを入力し，さらに，指紋認証装置181の指紋読み取り部分を指で触る。指紋認証装置181は，このユーザの指紋を読み取り，所定の画像処理を実行し，指紋画像として指紋認証装置制御部18に出力する。認証情報取得部162は，指紋認証装置制御部18を介してこの指紋画像を取得する。さらに，認証情報取得部162は，入力されたユーザID，操作制御部13を介して取得する。すなわち，認証情報取得部162は，指紋画像とユーザIDを認証情報として取得する。
【０１８５】
ステップS61：図2の認証情報送信部163は，認証情報取得部162が取得した認証情報をルータ装置2に送信する。
【０１８６】
ステップS62：図16の認証管理部234は，この認証情報を受信し，認証要求を認証サーバ装置3に行う。具体的には，全体管理部2311は，端末装置1から送信された認証情報を受信し，認証管理部234に送信する。認証管理部234は，認証要求と共に，受信した認証情報を認証サーバ装置3に送信する。なお，この送信は，既に開設されているL2認証トンネルを経由して行われる。
【０１８７】
ステップS63：図19の認証サーバ装置3は，認証要求に応答して，受信した認証情報に基づき，認証処理を実行し，この認証情報に対応するクラウドアクセス情報をルータ装置2に送信する。具体的には，認証サーバ装置3の全体管理部3311は，ルータ装置2から送信された認証要求と認証情報とを受信し，認証処理を実行するように認証実行部332に指示する。認証実行部332は，この指示に応答して，この認証情報に基づき，ユーザ認証処理を実行する。
【０１８８】
前記したパスワード認証，前記したカード認証の場合の処理については，図13のステップS26で説明したので省略する。指紋認証の場合には，認証サーバ装置3は，記憶装置34が予め記憶しているユーザIDと，ユーザIDに対応する指紋画像とを記憶するテーブル(図示しない)に基づき，認証を行う。ここでは，認証実行部332は，受信した認証情報が有するユーザIDと指紋画像が，このテーブルに記憶されている場合には，このユーザIDで識別されるユーザが正当なユーザであると認証する(ユーザ認証成功)。
【０１８９】
全体管理部3311は，認証実行部332が認証処理を実行し，受信した認証情報が有するユーザIDで識別されるユーザが正当なユーザであると認証できた場合には，以下の処理を実行する。すなわち，全体管理部3311は，このユーザIDに対応するクラウドアクセス情報を取得し，取得したクラウドアクセス情報をルータ装置2に送信するようにアクセス情報取得部333に指示する。一方，全体管理部3311は，認証実行部332がこのユーザが正当なユーザでないと判定した場合，認証失敗した旨をルータ装置2に送信する。この場合，ルータ装置2は，認証が失敗したことを端末装置1に通知する。
【０１９０】
アクセス情報取得部333は，クラウドアクセス情報の取得指示に応答して，図6のクラウドアクセス管理テーブルT1，図7のクラウドサービス管理テーブルT2から，前記ユーザIDに対応するクラウドアクセス情報を取得する。
【０１９１】
アクセス情報取得部333は，取得したクラウドアクセス情報を，ルータ装置2に送信する。なお，クラウドアクセス情報の取得処理の詳細については，図13のステップS26で説明したので省略する。
【０１９２】
ルータ装置2は，図13のステップS27で説明した仮想ルータの起動要求，ステップS29で説明した仮想マシンの起動要求，ステップS31で説明したL2トンネル開設処理を実行する。
【０１９３】
本実施の形態によれば，クラウドアクセス情報を管理する認証サーバ装置をデータセンター内に設置することができる。そのため，情報処理システムにおける各装置の配置構成を柔軟に変更することができるので，サービス提供業者は，装置の管理が容易になる。
【０１９４】
なお，図19で説明した認証サーバ装置3が実行する機能を，サーバ装置4_Neで起動する仮想マシンが実行するようにしてもよい。この場合，サーバ装置4_Neの記憶装置内に，クラウドアクセス管理テーブルT1，クラウドサービス管理テーブルT2を記憶する。また，サーバ装置4_Neは，この仮想マシンからのデータ出力，この仮想マシンへのデータ入力を制御する仮想ルータを起動する。この場合，図16のルータ装置2は，この仮想ルータとの間で，認証用L2トンネルを開設する。このように，認証サーバ装置3が実行する機能を，仮想マシンで実現することで，新たな装置を設置する必要が無いので新たな装置費用が発生することがなく，経済的である。
【０１９５】
[第3の実施の形態]
第1，第2の実施の形態では，1人のユーザが1つのクラウドサービスを利用する場合を例示して説明した。第3の実施の形態では，第1のユーザが，第1のクラウドサービスを利用している場合において，第2のユーザが，第1のユーザが利用しているクラウドサービスと同じクラウドサービスを利用する場合のルータ装置の処理について説明する。さらに，第1，第2のユーザが，このクラウドサービスの利用を停止した場合のルータ装置の処理について説明する。すなわち，第3の実施の形態では，複数のユーザが，同時に1つのクラウドサービスを利用する場合について説明する。
【０１９６】
以下，図1の情報処理システムSYSを例示し，図6，図7，図9を適宜参照しながら，第3の実施の形態の概略について説明する。ここで，ユーザID"User-A"(図6参照)で識別されるユーザAが端末装置1_1を介して，データセンターDC1_1が提供するクラウドサービスを利用する。このクラウドサービスは，SaaSID"SaaS-0"(図7参照)で識別されるクラウドサービスである。この場合，図13で説明したように，ルータ装置2は，管理サーバ装置7に対して"SaaS-0"に対応する仮想マシン(クラウドサービス)を起動するように指示していた。なお，この指示後，"SaaS-0"に対応する仮想マシンが起動している。
【０１９７】
この後，ユーザID"User-C"(図6参照)で識別されるユーザCが端末装置1_Nbを介して，データセンターDC1_1が提供する仮想マシンを利用する。この仮想マシンは，SaaSID"SaaS-0"(図7参照)で識別される仮想マシンである。すなわち，この仮想マシンは，ユーザAが利用している仮想マシンと同じ仮想マシンである。
【０１９８】
この場合，ルータ装置2は，管理サーバ装置7に対して"SaaS-0"に対応する仮想マシンを起動するように指示しない。その代わりに，ルータ装置2は，ユーザCが利用している端末装置1_Nbが送信するこの仮想マシン宛のパケットをフィルタリングせず，そのまま，この仮想マシンに送信する。すなわち，ルータ装置2は，開設されたトンネルを介する仮想マシン(ソフトウェア)との通信を，ユーザCの端末装置1_Nbに許可する。
【０１９９】
そして，ユーザA，ユーザCが，この仮想マシンを利用している状態において，ユーザA，ユーザCが，このSaaSの利用を停止すると，ルータ装置2は，この仮想マシンの停止を管理サーバ装置7に指示する。
【０２００】
図21は，第3の実施の形態におけるルータ装置が実行するソフトウェアモジュールのブロック図である。図21のルータ装置2は，図4のルータ装置2に，クラウドサービスを利用しているユーザ数を認証サーバ装置3から受信するユーザ数受信部239を追加したものである。
【０２０１】
全体管理部2312は，図4で説明した全体管理部231の機能に加えて，ユーザ数受信部239を管理する。さらに，全体管理部2312は，ユーザ数受信部239が受信したユーザ数に基づき，仮想ルータおよび仮想マシンの起動，L2トンネルの開設を実行するか否かを判定する。また，全体管理部2312は，起動している仮想ルータ，仮想マシン，L2トンネルの停止処理を実行するか否かを判定する。
【０２０２】
図22は，第3の実施の形態における認証サーバ装置のハードウェアブロック図である。
【０２０３】
図22の認証サーバ装置3は，図5の認証サーバ装置3に，クラウドサービスを利用しているユーザに関する情報を管理するユーザ情報管理部335を追加したものである。このユーザに関する情報とは，クラウドサービスを実際に利用しているユーザの数，クラウドサービスを最初に利用した初回ユーザのID，クラウドサービスの状態などである。この認証サーバ装置3は，クラウドサービスを実際に利用しているユーザの数(以下，ユーザ数と適宜記す)を記憶する第2の装置の一例である。
【０２０４】
全体管理部3312は，図5の全体管理部331の機能に加えて，ユーザ情報管理部335を管理する。また，記憶装置34は，クラウドサービス管理テーブルT31を記憶する。
【０２０５】
図23は，クラウドサービス管理テーブルT31の一例を示す図である。クラウドサービス管理テーブルT31は，図7のクラウドサービス管理テーブルT2に新たに，SaaS状態欄と，ユーザ数欄と，初回ユーザID欄とを追加したものである。
【０２０６】
SaaS状態欄は，SaaSID欄に記憶されたSaaSIDで識別されるクラウドサービス(仮想マシン)の状態を記憶する。ユーザ数欄は，このクラウドサービスを実際に利用しているユーザ数を記憶する。ユーザID欄は，このクラウドサービスを最初に利用しているユーザを識別する初回ユーザIDを記憶する。この初回ユーザIDは，図25で説明する仮想マシン，仮想ルータの停止処理に必要な情報である。
【０２０７】
図23においてSaaS状態欄は，前記した各SaaSIDに対応するクラウドサービスの状態として，"起動"，"停止"を記憶し，ユーザ数欄は，前記した各SaaSIDに対応するクラウドサービスとして，"Count-0"，"Count-1"を記憶する。この"Count-0"，"Count-1"は，整数を意味する。なお，初期値としては，"Count-0"，"Count-1"の数値は"0"である。さらに，初回ユーザID欄は，前記した各SaaSIDに対応するクラウドサービスを利用するユーザのIDとして"User-A"を記憶する。なお，初期状態は，この欄は空白である。
【０２０８】
(仮想ルータ，仮想マシンの起動，トンネル開設処理の流れ)
第3の実施の形態における，仮想ルータ，仮想マシンの起動，トンネル開設処理の流れについて，図6，図21〜図23を参照し，図24に基づき説明する。
【０２０９】
図24は，第3の実施の形態における，仮想ルータ，仮想マシンの起動，トンネル開設処理の流れを説明する図である。このフロー図の説明にあたり，図13のステップS21〜ステップS24の処理が実行されているとする。
【０２１０】
ステップS101：図21の認証管理部234は，端末装置1から送信された認証情報を受信し，認証要求を認証サーバ装置3に行う。さらに，ユーザ数受信部239は，この認証情報が有するユーザIDに対応するクラウドサービスのユーザ数の送信要求を図22の認証サーバ装置3に行う。
【０２１１】
ステップS102:認証サーバ装置3は，認証要求に応答して，受信した認証情報に基づき，認証処理を実行し，この認証情報に対応するクラウドアクセス情報をルータ装置2に送信する。さらに，サーバ装置3のユーザ情報管理部335は，ユーザ数の送信要求に応答して，この認証情報が有するユーザIDに対応するクラウドサービスのユーザ数を，図23のクラウドサービス管理テーブルT31から取得し，ルータ装置2に送信する。クラウドアクセス情報をルータ装置2に送信する処理については，図13のステップS26で説明したので省略する。ユーザ情報管理部335は，以下に説明する処理により，ユーザ数を取得し，ルータ装置2に送信する。まず，全体管理部3312が，ルータ装置2から送信されたユーザ数の送信要求を受信すると，ユーザ情報管理部335にユーザ数の取得処理および送信処理を実行するようにユーザ情報管理部335に指示する。ユーザ情報管理部335は，この指示に応答して，全体管理部3312が受信した認証情報が有するユーザIDに対応するユーザ数を，図23のクラウドサービス管理テーブルT31から取得する。
【０２１２】
ユーザ情報管理部335は，SaaS状態が"停止"の場合，このユーザIDに対応するクラウドサービスを識別するSaaSIDのSaaS状態を"起動"に変更し，さらに，このユーザIDに対応するクラウドサービスを識別するSaaSIDの初回ユーザID欄に，このユーザIDを記憶する。
【０２１３】
図13で説明した例の場合，ユーザIDは，"User-A"であった。この場合，図6のクラウドアクセス管理テーブルT1によれば，ユーザID"User-A"に対応するクラウドサービスを識別するSaaSIDは"SaaS-0"である。そして，図23のクラウドサービス管理テーブルT31によれば，このSaaSID"SaaS-0"に対応するユーザ数は，"Count-0"(初期値は0)である。このように，ユーザ情報管理部335は，図6のクラウドアクセス管理テーブルT1，図23のクラウドサービス管理テーブルT31に基づき，ユーザIDに対応するユーザ数を取得する。ユーザ情報管理部335は，この取得したユーザ数をルータ装置2に送信する。そして，ユーザ情報管理部335は，SaaSID"SaaS-0"のSaaS状態欄を"停止"から"起動"に変更し，SaaSID"SaaS-0"のユーザID欄に"User-A"を記憶する。
【０２１４】
ステップS103：図21のルータ装置2の全体管理部2312は，クラウドアクセス情報，認証情報に対応するクラウドサービスのユーザ数を受信し，さらに，受信した利用者数に基づき，このクラウドサービスのユーザがいるかを判定する。全体管理部2312は，クラウドサービスのユーザがいないと判定した場合(ステップS103/いない)，ステップS104に移る。全体管理部2312は，クラウドサービスのユーザがいると判定した場合(ステップS103/いる)，ステップS104の処理を省略し，ステップS105に移る。
【０２１５】
具体的には，全体管理部2312は，クラウドサービスのユーザ数が0か判定する。ユーザ数が0の場合，クラウドサービスのユーザがいないと判定し(ステップS103/いない)，ステップS104に移る。ユーザ数が0でない場合，クラウドサービスのユーザがいると判定し(ステップS103/いる)，ステップS104の処理を省略し，ステップS105に移る。
【０２１６】
ステップS104：ルータ装置2は，図13のステップS27で説明した仮想ルータの起動要求，ステップS29で説明した仮想マシンの起動要求，ステップS31で説明したL2トンネル開設処理を実行する。なお，前記した各ステップS27，S29，S31については，図13で既に説明したので省略する。ステップS104の終了後，ステップS105に移る。
【０２１７】
ステップS105：図21のルータ装置2の全体管理部2312は，受信した認証情報が有するユーザIDに対応するクラウドサービスのユーザ数の更新要求，ここではカウントアップ要求を，図22の認証サーバ装置3に行う。
【０２１８】
ステップS106：認証サーバ装置3は，このカウントアップ要求を受信すると，このカウントアップ要求に応答して，このユーザIDに対応するクラウドサービスのユーザ数を更新，例えば1つ増加(カウントアップ)する。具体的には，認証サーバ装置3の全体管理部3312は，このカウントアップ要求を受信するとこのユーザIDに対応するクラウドサービスのユーザ数をカウントアップするように，ユーザ情報管理部335に指示する。ユーザ情報管理部335は，この指示に応答して，このユーザIDに対応するクラウドサービスのユーザ数をカウントアップし，図23のクラウドサービス管理テーブルT31のユーザ数欄に記憶する。
【０２１９】
前記の例では，ユーザ情報管理部335は，図23のクラウドサービス管理テーブルT31において，ユーザID"User-A"に対応するクラウドサービス"SaaS-0"の"Count-0"("0")を"Count-0"("1")にカウントアップする。
【０２２０】
さて，このステップS106の処理が終了した後に，ユーザID"User-C"で識別されるユーザCが，例えば，端末装置1_NbにユーザCの認証情報を入力する。この場合，図13のステップS21〜ステップS24の処理が実行され，次いで，図24のステップS101の処理に移り，ステップS102の処理が実行される。
【０２２１】
この場合，図6のクラウドアクセス管理テーブルT1によれば，ユーザID"User-C"に対応するSaaSIDは"SaaS-0"である。そして，図23のクラウドサービス管理テーブルT31によれば，このSaaSID"SaaS-0"に対応するユーザ数は，"Count-0"("1")である(前記したステップS106参照)。従って，認証サーバ装置3のユーザ情報管理部335は，この取得したユーザ数("1")をルータ装置2に送信する(ステップS102)。図21のルータ装置2の全体管理部2312は，ユーザ数を受信し，さらに，ユーザ数が0か判定する。全体管理部2312は，ユーザ数が"1"であるので(ステップS103/いる)，ステップS104の処理を省略する。次いで，ステップS105に移る。なお，ステップS105において，"Count-0"("1")が"Count-0"("2")にカウントアップされる。
【０２２２】
また，図21のルータ装置2の全体管理部2312は，ステップS105の処理と共に，ユーザCのクラウドサービスの仮想マシンのIPアドレスをユーザCが利用している端末装置1_Nbに通知する。以後，全体管理部2312は，ユーザCが利用している端末装置1_Nbが送信する，既に起動している仮想マシン宛のパケットをフィルタリングせず，そのまま，この仮想マシンに送信する。すなわち，ルータ装置2は，ステップS104において開設されたトンネルを介する仮想マシン(ソフトウェア)との通信を，ユーザCの端末装置1_Nbに許可する。
【０２２３】
第3の実施の形態における，仮想ルータ，仮想マシンの停止，トンネル停止処理の流れについて，図6，図21〜図23を参照し，図25に基づき説明する。
【０２２４】
図25は，第3の実施の形態における，仮想ルータ，仮想マシンの停止，トンネル停止処理の流れを説明する図である。図25の説明にあたり，図24の各ステップの処理が実行されているとする。図24の例では，ユーザID"User-A"，"User-C"に対応するクラウドサービスが起動している。
【０２２５】
ここで，第1の実施の形態で説明したように，ユーザID"User-A"で識別されるユーザが，図2の端末装置1の操作装置131を操作して，クラウドサービスの停止指示操作を行う。このとき，ユーザは，このクラウドサービスのユーザを認証する認証情報をあわせて入力する。この認証情報は，第1の実施の形態で説明したように，このユーザのユーザIDを有するものである。
【０２２６】
操作制御部13は，この停止指示操作に応答して，全体管理部1611に停止指示操作が実行されたことを示すコマンドを送信する。全体管理部1611は，このコマンドを受信すると，このユーザのID("User-A")を図21のルータ装置2に送信すると共に，クラウドサービスの停止を指示する第2のコマンドを図21のルータ装置2に送信する。
【０２２７】
ステップS111:ルータ装置2の全体管理部2312は，このユーザIDとクラウドサービスの停止要求を受信すると，このユーザIDに対応するクラウドサービスのユーザ数のカウントダウン，および，カウントダウン後のユーザ数の送信要求を図22の認証サーバ装置3に行う。さらに，全体管理部2312は，このユーザIDに対応するSaaSIDの初回ユーザIDの送信要求を認証サーバ装置3に行う。
【０２２８】
ステップS112:認証サーバ装置3は，受信したユーザIDに対応するクラウドサービスのユーザ数のカウントダウンを行う。具体的には，全体管理部3312が，前記カウントダウン要求，送信要求を受信すると，ユーザ情報管理部335に以下の指示を行う。この指示とは，ユーザIDに対応するクラウドサービスを識別するSaaSIDに対応するユーザ数のカウントダウン，および，カウントダウン後のユーザ数の送信処理，このSaaSIDに対応する初回ユーザIDの送信処理である。
【０２２９】
ユーザ情報管理部335は，この指示に応答して，全体管理部3312が受信したユーザIDに対応するユーザ数を，図23のクラウドサービス管理テーブルT31から取得し，このユーザ数を1つ減少(カウントダウン)する。
【０２３０】
前記例の場合，ユーザIDは，"User-A"であった。この場合，図6のクラウドアクセス管理テーブルT1によれば，ユーザID"User-A"に対応するクラウドサービスを識別するSaaSIDは"SaaS-0"である。そして，図23のクラウドサービス管理テーブルT31によれば，このSaaSID"SaaS-0"に対応するユーザ数は，"Count-0"("2")である。ユーザ情報管理部335は，このユーザ数をカウントダウンし"Count-0"("1")とする。また，このSaaSID"SaaS-0"に対応する初回ユーザIDは，"User-A"である。
【０２３１】
ステップS113:ユーザ情報管理部335は，カウントダウン後のユーザ数，初回ユーザIDをルータ装置2に送信する。前記の例の場合，ユーザ情報管理部335は，この"Count-0"("1")，"User-A"をルータ装置2に送信する。
【０２３２】
ステップS114：図21のルータ装置2の全体管理部2312は，前記したクラウドサービスのユーザ数，初回ユーザIDを受信し，さらに，このユーザ数に基づき，このクラウドサービスの他のユーザがいるか判定する。全体管理部2312は，他のユーザがいると判定した場合(ステップS114/いる)，処理を終了する。全体管理部2312は，他のユーザがいないと判定した場合(ステップS114/いない)，ステップS115に移る。具体的には，全体管理部2312は，クラウドサービスのユーザ数が0か判定する。ユーザ数が0でない場合，全体管理部2312は，クラウドサービスの他のユーザがいると判定し(ステップS114/いる)，処理を終了する。ユーザ数が0の場合，全体管理部2312は，クラウドサービスの他のユーザがいないと判定し(ステップS114/いない)，処理を終了する。
【０２３３】
前記例の場合，全体管理部2312は，ユーザ数として"Count-0"("1")を受信しているので，ユーザ数は0でなく(ステップS114/いる)，処理を終了する。
【０２３４】
この処理の終了後，ユーザID"User-C"で識別されるユーザが，図1の端末装置1_Nbの操作装置131を操作して，クラウドサービスの停止指示操作を行う。すると，前記したように，操作制御部13は，この停止指示操作に応答して，全体管理部161に停止指示操作が実行されたことを示すコマンドを送信する。全体管理部161は，このコマンドを受信すると，このユーザのID("User-C")を図21のルータ装置2に送信と共に，クラウドサービスの停止を指示する第2のコマンドを図21のルータ装置2に送信する。
【０２３５】
そして，図25のステップS111，S112が実行される。このステップS112において，ユーザ情報管理部335は，ユーザID"User-C"に対応するユーザID"User-C"のユーザ数をカウントダウンし"Count-0"("0")とする。
【０２３６】
その後，ステップS113，ステップS114の処理が実行される。このステップS114において，図21のルータ装置2の全体管理部2312は，ユーザ数("0")，ユーザID"User-A"を受信し，さらに，ユーザ数が0か判定する。前記例の場合，ユーザ数が0なので(ステップS114/いない)，ステップS115に移る。
【０２３７】
ステップS115:図4のルータ装置2は，受信した初回ユーザIDに対応する仮想ルータ，仮想マシンの停止指示を実行する。
【０２３８】
具体的には，全体管理部231は，初回ユーザIDに対応する仮想マシンの停止処理を実行するように，仮想マシン起動停止部236に指示する。仮想マシン起動停止部236は，この指示に応答して，記憶装置24(図3)の中から，この初回ユーザIDに対応する仮想マシンの起動停止情報であるAPIを検索する。なお，記憶装置24には，図13のステップS27で説明したように，ユーザIDに対応する仮想ルータの起動停止情報(API)，このユーザIDに対応するSaaSIDに対応する仮想マシンの起動停止情報(API)が記憶されている。
【０２３９】
そして，仮想マシン起動停止部236は，初回ユーザIDと，停止指示オプションを引数として設定して，この仮想マシンの起動停止情報であるAPIを実行する。
【０２４０】
前記の例では，仮想マシン起動停止部236は，この初回ユーザID"User-A"，停止指示オプションを引数として設定して，仮想マシンの起動停止情報であるAPI_VM-Aを実行する。なお，仮想マシンの停止処理の詳細については，第1の実施の形態で説明したので省略する。
【０２４１】
次いで，全体管理部231は，初回ユーザIDに対応する仮想ルータの停止処理を実行するように，仮想ルータ起動停止部235に指示する。仮想ルータ起動停止部235は，この指示に応答して，記憶装置24(図3)の中から，この初回ユーザIDに対応する仮想ルータの起動停止情報であるAPIを検索する。
【０２４２】
そして，仮想ルータ起動停止部235は，初回ユーザIDと，停止指示オプションを引数として設定して，この仮想ルータの起動停止情報であるAPIを実行する。
【０２４３】
前記の例では，仮想ルータ起動停止部235は，この初回ユーザID"User-A"，停止指示オプションを引数として設定して，仮想ルータの起動停止情報であるAPI_VR-Aを実行する。なお，仮想ルータの停止処理の詳細については，第1の実施の形態で説明したので省略する。
【０２４４】
この仮想ルータの停止処理が終了すると，ルータ装置2のトンネル開設部237は，開設したトンネルにおけるカプセル化処理を停止，すなわちトンネルの停止処理を実行する。
【０２４５】
本実施の形態によれば，複数のユーザが，同時に1つのクラウドサービス(仮想マシン)を利用する場合には，既に，クラウドサービスが起動していると，ルータ装置は，仮想マシンの起動処理は実行しない。そのため，不要な仮想マシンの起動処理を省略することができ，ルータ装置2や管理サーバ装置7の処理負荷の増大を抑制できる。また，あるクラウドサービスを停止する場合に，このクラウドアクセスを他のユーザが利用していても，このクラウドサービスを停止することがない。
【符号の説明】
【０２４６】
SYS…情報処理システム，DC_1〜DC_Na…データセンター，US…ユーザ側システム，Nt…通信回線網，1，1_1，1_Nb，1_Nc，1_Nd…端末装置， 121…表示装置，131…操作装置，141…カードリーダ，181…指紋認証装置，11…CPU，12…表示制御部，13…操作制御部，14…カードリーダ制御部，15…通信装置，16…メモリ，161，1611…全体管理部，162…認証情報取得部，163…認証情報送信部，164…アクセス部，165…サービス名取得部，17…記憶装置，18…指紋認証装置制御部，ルータ装置…2，21…CPU，22…通信装置，221…有線通信装置，222…無線通信装置，23…メモリ，231，2312…全体管理部，232…接続部，233…ルーティング部，234…認証管理部，235…仮想ルータ起動停止部，236…仮想マシン起動停止部，237，2371…トンネル開設部，238…認証サーバ情報取得部，239…ユーザ数受信部，24…記憶装置，3…認証サーバ装置，31…CPU，
32…通信装置，33…メモリ，331，3311，3312…全体管理部，332…認証実行部，333…アクセス情報取得部，334…トンネル開設部，335…ユーザ数管理部，34…記憶装置，4_1，4_Ne…サーバ装置，40…ハードウェア，41…CPU，42…通信装置，43…メモリ，44…記憶装置，45…ハイパーバイザ，4vr…仮想ルータ，4vm…仮想マシン，5…ゲートウェイ装置，6…ルータ装置，7…管理サーバ装置，71…CPU，72…通信装置，73…メモリ，731…全体管理部，732…仮想ルータ管理部，733…仮想マシン管理部，74…記憶装置，8…クラウドディレクトリサービス装置，81…CPU，82…通信装置，83…メモリ，831…全体管理部，832…認証サーバアクセス情報取得部，84…記憶装置，T1，…クラウドアクセス管理テーブル，T2，T31…クラウドサービス管理テーブル，
T11…仮想ルータHWテーブル，T12…仮想マシンHWテーブル。
【図１】
2013190688.tif 000003
【図２】
2013190688.tif 000004
【図３】
2013190688.tif 000005
【図４】
2013190688.tif 000006
【図５】
2013190688.tif 000007
【図６】
2013190688.tif 000008
【図７】
2013190688.tif 000009
【図８】
2013190688.tif 000010
【図９】
2013190688.tif 000011
【図１０】
2013190688.tif 000012
【図１１】
2013190688.tif 000013
【図１２】
2013190688.tif 000014
【図１３】
2013190688.tif 000015
【図１４】
2013190688.tif 000016
【図１５】
2013190688.tif 000017
【図１６】
2013190688.tif 000018
【図１７】
2013190688.tif 000019
【図１８】
2013190688.tif 000020
【図１９】
2013190688.tif 000021
【図２０】
2013190688.tif 000022
【図２１】
2013190688.tif 000023
【図２２】
2013190688.tif 000024
【図２３】
2013190688.tif 000025
【図２４】
2013190688.tif 000026
【図２５】
2013190688.tif 000027
【手続補正書】
【提出日】平成27年1月19日(2015.1.19)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ソフトウェアを実行して情報処理サービスを行う第1の装置と，
前記情報処理サービスの利用者を認証し，前記情報処理サービスの利用者毎に定められた，前記ソフトウェアを起動するための第1の情報および前記ソフトウェアとネットワークを介して通信する仮想通信経路を開設するための第2の情報を記憶する第2の装置と，
前記第1の装置と利用者の端末装置との間における前記ネットワークを介する通信を制御する通信装置とを有し，
前記通信装置は，前記端末装置から，前記情報処理サービスの利用者を認証する認証情報を受信し，前記第2の装置に前記利用者の認証要求を行い，
前記第2の装置は，前記利用者の認証を行い，前記利用者の認証が成功した場合，前記情報処理サービスの利用者毎に定められた，前記第1の情報および前記第2の情報を，前記通信装置に送信し，
前記通信装置は，前記第1の情報および前記第2の情報を受信し，受信した前記第1の情報に基づき，前記ソフトウェアの起動を指示する第1のコマンドを前記第1の装置に送信し，
前記第1の装置は，前記第1のコマンドを受信し，前記ソフトウェアを起動，実行し，
前記通信装置は，受信した前記第2の情報に基づき，前記ネットワークに前記仮想通信経路を開設する
ことを特徴とする情報処理システム。
【請求項２】
請求項1において，
さらに，前記第2の装置に接続するための第3の情報を記憶する第3の装置を有し，
前記通信装置は，前記第3の装置に前記第3の情報の送信要求を行い，
前記第3の装置は，前記送信要求に応答して，前記第3の情報を前記通信装置に送信し，
前記通信装置は，前記第3の装置から前記第3の情報を受信し，受信した前記第3の情報に基づき，前記第2の装置に接続し，前記第1の情報および前記第2の情報を前記第2の装置から受信する
ことを特徴とする情報処理システム。
【請求項３】
請求項1において，
前記第2の装置は，前記情報処理サービスの利用者数を記憶し，
前記通信装置は，前記端末装置から，前記情報処理サービスの利用者を認証する認証情報を受信し，前記第2の装置から，前記認証情報に対応する前記情報処理サービスの利用者数を受信し，
前記通信装置は，受信した前記利用者数に基づき，前記情報処理サービスの利用者がいるか判定し，前記情報処理サービスの利用者がいないと判定した場合，前記第1のコマンドを送信し，前記ソフトウェアと通信する前記仮想通信経路を開設し，前記情報処理サービスの利用者がいると判定した場合，開設された前記仮想通信経路を介する前記ソフトウェアとの通信を前記端末装置に許可し，
さらに，前記通信装置は，前記第2の装置に前記情報処理サービスの利用者数の更新要求を行い，
前記第2の装置は，前記更新要求に応答して，前記情報処理サービスの利用者数を更新する，
ことを特徴とする情報処理システム。
【請求項４】
請求項3において，
前記通信装置は，前記端末装置から，前記情報処理サービスの利用者を認証する認証情報と前記情報処理サービスの停止を指示する第2のコマンドを受信し，前記第2の装置から，前記認証情報に対応する前記情報処理サービスの利用者数を受信し，受信した前記利用者数に基づき，前記情報処理サービスの他の利用者がいるか判定し，前記他の利用者がいないと判定した場合，前記情報処理サービスの停止を指示する第3のコマンドを前記第1の装置に送信する
ことを特徴とする情報処理システム。
【請求項５】
ソフトウェアを実行して情報処理サービスを行う第1の装置と，
前記情報処理サービスの利用者を認証し，前記情報処理サービスの利用者毎に定められた，前記ソフトウェアを起動するための第1の情報および前記ソフトウェアとネットワークを介して通信する仮想通信経路を開設するための第2の情報を記憶する第2の装置と，
前記第1の装置と利用者の端末装置との間における前記ネットワークを介する通信を制御する通信装置とを有する情報処理システムにおいて実行される情報処理方法であって，
前記通信装置は，前記端末装置から，前記情報処理サービスの利用者を認証する認証情報を受信し，前記第2の装置に前記利用者の認証要求を行い，
前記第2の装置は，前記利用者の認証を行い，前記利用者の認証が成功した場合，前記情報処理サービスの利用者毎に定められた，前記第1の情報および前記第2の情報を，前記通信装置に送信し，
前記通信装置は，前記第1の情報および前記第2の情報を受信し，受信した前記第1の情報に基づき，前記ソフトウェアの起動を指示する第1のコマンドを前記第1の装置に送信し，
前記第1の装置は，前記第1のコマンドを受信し，前記ソフトウェアを起動，実行し，
前記通信装置は，受信した前記第2の情報に基づき，前記ネットワークに前記仮想通信経路を開設する
ことを特徴とする情報処理方法。
【請求項６】
ソフトウェアを実行して情報処理サービスを行う第1の装置と，
前記第1の装置と利用者の端末装置との間におけるネットワークを介する通信を制御する通信装置とを有する情報処理システムにおいて実行される情報処理方法であって，
前記通信装置は，前記端末装置から，前記情報処理サービスの利用者を識別する識別情報を受信し，
前記通信装置に記憶されている，前記情報処理サービスの利用者毎に定められた，前記ソフトウェアを起動するための第1の情報および前記ソフトウェアとネットワークを介して通信する仮想通信経路を開設するための第2の情報を，前記識別情報に応じて取得し，
取得した前記第1の情報に基づき，前記ソフトウェアの起動を指示する第1のコマンドを前記第1の装置に送信し，
前記第1の装置は，前記第1のコマンドを受信し，前記ソフトウェアを起動，実行し，
前記通信装置は，取得した前記第2の情報に基づき，前記ネットワークに前記仮想通信経路を開設する
ことを特徴とする情報処理方法。
【請求項７】
ソフトウェアを実行して情報処理サービスを行う第1の装置と，前記第1の装置と利用者の端末装置との間におけるネットワークを介する通信を制御する通信装置であって，
前記通信装置は，前記端末装置から，前記情報処理サービスの利用者を認証する認証情報を受信し，前記情報処理サービスの利用者を認証し，前記情報処理サービスの利用者毎に定められた，前記ソフトウェアを起動するための第1の情報および前記ソフトウェアと前記ネットワークを介して通信する仮想通信経路を開設するための第2の情報を記憶する第2の装置に前記利用者の認証要求を行い，前記第2の装置が，前記利用者の認証が成功した場合に送信する，前記情報処理サービスの利用者毎に定められた前記第1の情報および前記第2の情報を受信し，受信した前記第1の情報に基づき，前記ソフトウェアの起動を指示する第1のコマンドを前記第1の装置に送信し，受信した前記第2の情報に基づき，前記ネットワークに前記仮想通信経路を開設する制御部を有する
ことを特徴とする通信装置。
【国際調査報告】
2013190688.tif 000028
2013190688.tif 000029
2013190688.tif 000030
2013190688.tif 000031