(57)【要約】【課題】ＬＡＮの内外に接続されたそれぞれのクライアントの間で遠隔会議を適切に実行するための制御プログラム、及び制御方法を提供する。【解決手段】通信システムは、第１ネットワークに接続する内部クライアント、外部の第２ネットワークに接続する外部クライアントの間で実行される遠隔会議を制御するプロセスを実行可能な会議サーバを制御する制御装置を有する。制御装置は、クライアント情報を取得する（Ｓ１１）。制御装置は、取得されたクライアント情報に基づき、複数のクライアントに外部クライアントが含まれるか判定する（Ｓ１３）。制御装置は、外部クライアントが含まれていると判定された場合（Ｓ１３：ＹＥＳ）、第２ネットワークに接続された外部サーバを決定する（Ｓ１７）。制御装置は、決定された外部サーバにプロセスを実行させ、複数のクライアントとプロセスとを接続させる（Ｓ２１）。【選択図】図３
2019066970.tif 000002
【特許請求の範囲】
【請求項１】
特定の第１ネットワークに接続する内部クライアント、及び、前記第１ネットワークに対して外部の第２ネットワークに接続する外部クライアントの少なくとも何れかを含む複数のクライアントの間で実行される遠隔会議を制御するプロセスを実行可能な会議サーバを制御する制御装置のコンピュータに、
前記複数のクライアントに関するクライアント情報を取得する取得ステップと、
前記取得ステップによって取得された前記クライアント情報に基づき、前記複数のクライアントに前記外部クライアントが含まれるか判定する第１判定ステップと、
前記第１判定ステップによって、前記外部クライアントが含まれていると判定された場合、前記第２ネットワークに接続された前記会議サーバである外部サーバを決定する決定ステップと、
前記決定ステップによって決定された前記外部サーバに前記プロセスを実行させ、前記複数のクライアントと前記プロセスとを接続させる第１実行ステップと
を実行させるための制御プログラム。
【請求項２】
前記複数のクライアントに前記内部クライアントが含まれるか判定する第２判定ステップと、
前記第２判定ステップによって、前記内部クライアントが含まれていると判定された場合、前記内部クライアントが接続する前記第１ネットワークに接続された前記会議サーバである内部サーバに前記プロセスを実行させる第２実行ステップと、
前記第１実行ステップによって前記外部サーバに実行させた前記プロセスである外部プロセスと、前記第２実行ステップによって前記内部サーバに実行させた前記プロセスである内部プロセスとを接続させ、前記遠隔会議の制御を連携させる連携ステップと、
前記第１実行ステップによって前記外部プロセスと接続された前記内部クライアントを、前記第２実行ステップによって実行された前記内部プロセスに接続させる第３実行ステップと
を、前記コンピュータに更に実行させることを特徴とする請求項１に記載の制御プログラム。
【請求項３】
前記連携ステップは、
前記第１実行ステップによって前記外部サーバに実行させた前記外部プロセスと、前記第２実行ステップによって前記内部サーバに実行させた前記内部プロセスとを接続させ、前記内部サーバから前記外部サーバへ連携要求を送信して前記遠隔会議の制御を連携させることを特徴とする請求項２に記載の制御プログラム。
【請求項４】
前記第２実行ステップは、
複数の前記内部サーバの何れかを選択して前記内部プロセスを実行させ、
前記連携ステップにおいて、選択された前記内部サーバに実行させた前記内部プロセスと前記外部プロセスとが接続して連携が成功したか判定する第３判定ステップを更に実行し、
前記第２実行ステップは、
前記第３判定ステップによって連携に失敗したと判定された場合、複数の前記内部サーバのうち接続に失敗した前記内部サーバを除く前記内部サーバの何れかを選択して前記内部プロセスを実行させることを特徴とする請求項２又は３に記載の制御プログラム。
【請求項５】
前記第３実行ステップは、
前記連携ステップによって、前記外部プロセスと前記内部プロセスとを接続させて前記遠隔会議の制御が連携された後、前記内部クライアントを前記内部プロセスに接続させることを特徴とする請求項２から４の何れかに記載の制御プログラム。
【請求項６】
前記第２実行ステップは、
前記外部サーバの処理負荷、及び、前記外部サーバと前記複数のクライアントとの通信状態の少なくとも一方が所定の条件を満たす場合、前記内部サーバに前記プロセスを実行させることを特徴とする請求項２から５の何れかに記載の制御プログラム。
【請求項７】
特定の第１ネットワーク接続する内部クライアント、及び、前記第１ネットワークに対して外部の第２ネットワークに接続する外部クライアントの少なくとも何れかを含む複数のクライアントの間で実行される遠隔会議を制御するプロセスを実行可能な会議サーバを制御する制御方法であって、
制御装置が、前記複数のクライアントに関するクライアント情報を取得する取得ステップと、
前記制御装置が、前記取得ステップによって取得された前記クライアント情報に基づき、前記複数のクライアントに前記外部クライアントが含まれるか判定する第１判定ステップと、
前記第１判定ステップによって、前記外部クライアントが含まれていると判定された場合、前記制御装置が、前記第２ネットワークに接続された前記会議サーバである外部サーバを決定する決定ステップと、
前記制御装置が、前記決定ステップによって決定された前記外部サーバを前記複数のクライアントに通知する通知ステップと、
前記複数のクライアントが、それぞれ、前記通知ステップによって通知された前記外部サーバに接続要求を送信する送信ステップと、
前記外部サーバがプロセスを実行し、前記複数のクライアントから前記接続要求を受信し、前記複数のクライアントと前記プロセスとを接続させる第１実行ステップと
を備えたことを特徴とする制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを介して通信を行うことによって遠隔会議を実現するための制御プログラム及び制御方法に関する。
【背景技術】
【０００２】
特許文献１は、マスタ・サーバ、外部クライアント、クラスタ・ノード・サーバ、及びローカル・クライアントを含むテレビ会議システムを開示する。クラスタ・ノード・サーバ及びローカル・クライアントは、ＬＡＮの内部に配置され、マスタ・サーバ及び外部クライアントは、ＬＡＮの外部に配置される。ローカル・クライアント間での音声及びビデオの情報の通信は、クラスタ・ノード・サーバを介して実行される。又、外部クライアントとローカル・クライアントとの間での音声及びビデオの情報の通信は、マスタ・サーバ及びローカル・ノード・サーバを介して実行される。これによって、ＬＡＮの外部のクライアント（外部クライアント）と、ＬＡＮの内部のクライアント（ローカル・クライアント）との間でテレビ会議が実行される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−３２９９１７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ＬＡＮのセキュリティを維持するために、ＬＡＮにファイヤーウォールが設けられる場合がある。ファイヤーウォールは、通常、ＬＡＮの内部から外部に向けて送信された情報を通過させ、ＬＡＮの外部から内部に向けて送信された情報を遮断する。このため、例えば上記のテレビ会議システムの場合、ＬＡＮの外部に設けられたマスタ・サーバから、ＬＡＮの内部に設けられたクラスタ・ノード・サーバに対して、接続を要求する情報が送信された場合、この情報がファイヤーウォールによって遮断される可能性がある。この場合、マスタ・サーバとローカル・ノード・クライアント間での通信ができず、外部クライアントとローカル・クライアントとの間でテレビ会議を実行することができない場合があるという問題点がある。
【０００５】
本発明の目的は、ＬＡＮの内外に接続されたそれぞれのクライアントの間で遠隔会議を適切に実行するための制御プログラム、及び制御方法を提供することである。
【課題を解決するための手段】
【０００６】
本発明の第１態様に係る制御プログラムは、特定の第１ネットワークに接続する内部クライアント、及び、前記第１ネットワークに対して外部の第２ネットワークに接続する外部クライアントの少なくとも何れかを含む複数のクライアントの間で実行される遠隔会議を制御するプロセスを実行可能な会議サーバを制御する制御装置のコンピュータに、前記複数のクライアントに関するクライアント情報を取得する取得ステップと、前記取得ステップによって取得された前記クライアント情報に基づき、前記複数のクライアントに前記外部クライアントが含まれるか判定する第１判定ステップと、前記第１判定ステップによって、前記外部クライアントが含まれていると判定された場合、前記第２ネットワークに接続された前記会議サーバである外部サーバを決定する決定ステップと、前記決定ステップによって決定された前記外部サーバに前記プロセスを実行させ、前記複数のクライアントと前記プロセスとを接続させる第１実行ステップとを実行させる。
【０００７】
制御装置は、クライアントに外部クライアントが含まれている場合、外部サーバを決定してプロセスを実行させる。外部サーバによって実行されたプロセス（外部プロセス）は、複数のクライアントの間で実行される遠隔会議を制御する。この場合、例えば複数のクライアントに内部クライアントと外部クライアントとが含まれている場合でも、第１ネットワークに接続された内部クライアントから第２ネットワークに接続された外部プロセスに向けて送信される接続要求は、第１ネットワークに設けられたファイヤーウォールによって遮断されない。従って、内部クライアントは外部プロセスと接続し、外部クライアントとの間で遠隔会議を実行できる。つまり、外部サーバに外部プロセスを実行させることによって、外部クライアント及び内部クライアントの何れも、外部プロセスと接続して通信を行うことができることになる。このように、制御装置は、第１ネットワークの内外に接続されたクライアント（内部クライアント及び外部クライアント）の間で遠隔会議を円滑に実行させることができる。
【０００８】
第１態様において、前記複数のクライアントに前記内部クライアントが含まれるか判定する第２判定ステップと、前記第２判定ステップによって、前記内部クライアントが含まれていると判定された場合、前記内部クライアントが接続する前記第１ネットワークに接続された前記会議サーバである内部サーバに前記プロセスを実行させる第２実行ステップと、前記第１実行ステップによって前記外部サーバに実行させた前記プロセスである外部プロセスと、前記第２実行ステップによって前記内部サーバに実行させた前記プロセスである内部プロセスとを接続させ、前記遠隔会議の制御を連携させる連携ステップと、前記第１実行ステップによって前記外部プロセスと接続された前記内部クライアントを、前記第２実行ステップによって実行された前記内部プロセスに接続させる第３実行ステップとを、前記コンピュータに更に実行させてもよい。制御装置は、複数のクライアントに内部クライアントが含まれている場合、内部サーバに内部プロセスを実行させる。この場合、更に、制御装置は、内部プロセスと外部プロセスとを接続させることによって、内部プロセスと外部プロセスとを連携させる。この場合、内部クライアントと外部クライアントとの間の通信は、内部プロセスと外部プロセスとの間の接続を介して実行されることになる。従って、制御装置は、内部クライアントと外部プロセスとの間で通信が直接実行される場合と比べて、通信のトラフィックを軽減できる。
【０００９】
第１態様において、前記連携ステップは、前記第１実行ステップによって前記外部サーバに実行させた前記外部プロセスと、前記第２実行ステップによって前記内部サーバに実行させた前記内部プロセスとを接続させ、前記内部サーバから前記外部サーバへ連携要求を送信して前記遠隔会議の制御を連携させてもよい。この場合、制御装置は、内部サーバと外部サーバとの連携を適切に実行できる。
【００１０】
第１態様において、前記第２実行ステップは、複数の前記内部サーバの何れかを選択して前記内部プロセスを実行させ、前記連携ステップにおいて、選択された前記内部サーバに実行させた前記内部プロセスと前記外部プロセスとが接続して連携が成功したか判定する第３判定ステップを更に実行し、前記第２実行ステップは、前記第３判定ステップによって連携に失敗したと判定された場合、前記複数の内部サーバのうち接続に失敗した前記内部サーバを除く前記内部サーバの何れかを選択して前記内部プロセスを実行させてもよい。この場合、制御装置は、複数の内部サーバの何れかに実行させた内部プロセスと外部プロセスとの連携に失敗しても、他の内部サーバに内部プロセスを実行させ、外部プロセスと接続させることができる。
【００１１】
第１態様において、前記第３実行ステップは、前記連携ステップによって、前記外部プロセスと前記内部プロセスとを接続させて前記遠隔会議の制御が連携された後、前記内部クライアントを前記内部プロセスに接続させてもよい。つまり、制御装置は、内部プロセスと外部プロセスとの連携が完了した後、内部クライアントを内部プロセスに接続させる。このため、制御装置は、遠隔会議を中断させることなく、内部クライアントの接続先を、外部プロセスから内部プロセスに移行できる。
【００１２】
第１態様において、前記第２実行ステップは、前記外部サーバの処理負荷、及び、前記外部サーバと前記複数のクライアントとの通信状態の少なくとも一方が所定の条件を満たす場合、前記内部サーバに前記プロセスを実行させてもよい。例えば制御装置は、外部サーバの処理負荷が所定基準以上の場合や、外部サーバと複数のクライアントとの間の通信状態が所定基準以下の場合、内部サーバに内部プロセスを実行させて内部クライアントと接続させることができる。この場合、外部サーバの処理負荷を軽減することができるので、外部プロセスによる遠隔会議の制御を円滑に実行できる。又、外部サーバと複数のクライアントとの間の通信状態を改善させることができる。
【００１３】
本発明の第２態様に係る制御方法は、特定の第１ネットワーク接続する内部クライアント、及び、前記第１ネットワークに対して外部の第２ネットワークに接続する外部クライアントの少なくとも何れかを含む複数のクライアントの間で実行される遠隔会議を制御するプロセスを実行可能な会議サーバを制御する制御方法であって、制御装置が、前記複数のクライアントに関するクライアント情報を取得する取得ステップと、前記制御装置が、前記取得ステップによって取得された前記クライアント情報に基づき、前記複数のクライアントに前記外部クライアントが含まれるか判定する第１判定ステップと、前記第１判定ステップによって、前記外部クライアントが含まれていると判定された場合、前記制御装置が、前記第２ネットワークに接続された前記会議サーバである外部サーバを決定する決定ステップと、前記制御装置が、前記決定ステップによって決定された前記外部サーバを前記複数のクライアントに通知する通知ステップと、前記複数のクライアントが、それぞれ、前記通知ステップによって通知された前記外部サーバに接続要求を送信する送信ステップと、前記外部サーバがプロセスを実行し、前記複数のクライアントから前記接続要求を受信し、前記複数のクライアントと前記プロセスとを接続させる第１実行ステップとを備えたことを特徴とする。第２態様によれば、第１態様と同様の効果を奏することができる。
【図面の簡単な説明】
【００１４】
【図１】通信システム１の概要を示す図である。
【図２】各種情報９０を示す図である。
【図３】メイン処理のフローチャートである。
【図４】通信手順の第１具体例を示す図である。
【図５】通信手順の第２具体例を示す図である。
【図６】周期処理のフローチャートである。
【図７】通信手順の第３具体例を示す図である。
【図８】連携処理のフローチャートである。
【図９】通信手順の第４具体例を示す図である。
【図１０】通信手順の第５具体例を示す図である。
【発明を実施するための形態】
【００１５】
＜通信システム１の概要＞
図１を参照し、通信システム１について説明する。通信システム１には、会議サーバ２Ａ、２Ｂ、２Ｃ（総称して「会議サーバ２」という。）、クライアント３Ａ、３Ｂ、３Ｃ（総称して「クライアント３」という。）、制御装置５、ファイヤーウォール（ＦＷ）８Ａ、ウェブサーバ（ＷＳ）８Ｂ、及び、データベースサーバ（ＤＢ）７が含まれる。会議サーバ２Ａ、２Ｂ、クライアント３Ａ、３Ｂ、ＦＷ８Ａ、ＷＳ８Ｂは、Local Area Network（ＬＡＮ）１Ａに接続される。会議サーバ２Ｃ、クライアント３Ｃ、制御装置５、及び、ＤＢ７は、Wide Area Network（ＷＡＮ）１Ｂに接続される。会議サーバ２、クライアント３、ＦＷ８Ａ、ＷＳ８Ｂ、制御装置５、及びＤＢ７は、ＬＡＮ１Ａ及びＷＡＮ１Ｂを介してそれぞれ相互に通信可能である。
【００１６】
クライアント３は、会議サーバ２と通信を行うことによって、仮想会議室（単に「会議室」という。）に参加して遠隔会議を実行することが可能である。クライアント３は、周知のPersonal Computer（ＰＣ）、スマートフォン、タブレット端末等に対して遠隔会議アプリケーションのプログラムをインストールすることで構成される。クライアント３は、制御部３１、記憶部３２、及びユーザインタフェース（Ｉ／Ｆ）３３を有する。制御部３１は、クライアント３による制御全体を司る。記憶部３２は、制御部３１によって実行される各種プログラムを記憶する。ユーザＩ／Ｆ３３は、ディスプレイ、スピーカ、マイク、カメラ等を含む。
【００１７】
会議サーバ２は、会議室７を開催してクライアント３に参加させることによって、クライアント３間で遠隔会議を実行させる。会議サーバ２は、Multi-point Control Unit（ＭＣＵ）又は公知のサーバに対して専用アプリケーションのプログラムをインストールすることで構成される。会議サーバ２は、制御部２１、及び記憶部２２を有する。制御部２１は、会議サーバ２による制御全体を司る。会議サーバ２Ａ、２Ｂ、２Ｃのそれぞれの制御部２１を、制御部２１Ａ、２１Ｂ、２１Ｃという。記憶部２２は、制御部２１によって実行される各種プログラムを記憶する。
【００１８】
以下、ＬＡＮ１Ａに接続する会議サーバ２Ａ、２Ｂを、「内部サーバ」という。ＬＡＮ１Ａに接続するクライアント３Ａ、３Ｂを、「内部クライアント」という。ＷＡＮ１Ｂに接続する会議サーバ２Ｃを、「外部サーバ」という。ＷＡＮ１Ｂに接続するクライアント３Ｃを、「外部クライアント」という。
【００１９】
ＦＷ８Ａは、ＬＡＮ１ＡからＷＡＮ１Ｂに向かう方向のデータを通過させ、ＷＡＮ１ＢからＬＡＮ１Ａに向かう方向のデータをフィルタリングする。なお、ＦＷ８によるデータのフィルタリングは、ＬＡＮ１ＡからＷＡＮ１Ｂに向かう方向のデータが一旦送信された場合、この送信先からのデータに対して一定期間無効となる。ＷＳ８Ｂは、周知のウェブサーバである。ＷＳ８Ｂは、ＬＡＮ１ＡからＷＡＮ１Ｂに向かう方向のデータ、及び、ＷＡＮ１ＢからＬＡＮ１Ａに向かう方向のデータの何れも通過させる。
【００２０】
制御装置５は、会議サーバ２Ａ〜２Ｃと通信を行い、会議サーバ２Ａ〜２Ｃのそれぞれにプロセス（後述）を実行させる。制御装置５は、ＤＢ７と通信を行い、ＤＢ７に記憶された各種情報９０（図２参照）を取得する。制御装置５は、周知のＰＣに対して専用プログラムをインストールすることで構成される。制御装置５は、制御部５１、記憶部５２、及び読取部５３を有する。制御部５１は、制御装置５による制御全体を司る。記憶部５２は、制御部５１によって実行される各種プログラムを記憶する。読取部５３は、半導体メモリや光ディスク等の記憶媒体５３Ａに記憶された情報を読み出すことができる。制御部５１は、記憶媒体５３Ａに記憶されたプログラムを読取部５３によって読み出し、記憶部５２に記憶できる。プログラムは、例えば、非図示のネットワークに接続された別のサーバからダウンロードされて、記憶部５２に記憶されてもよい。
【００２１】
ＤＢ７は、会議サーバテーブル９１、クライアントテーブル９２、第１会議室テーブル９３、第２会議室テーブル９４、及び許可設定情報９５（図２参照、以下、総称して「各種情報９０」という。）を記憶する。ＤＢ７は、制御装置５からの要求に応じ、各種情報９０を制御装置５に送信する。ＤＢ７は、会議サーバ２及びクライアント３と通信を行い、各種情報９０を生成する。各種情報９０の詳細は後述する。
【００２２】
＜会議サーバ２によって実行される実行ファイル（プロセス６）＞
会議サーバ２の制御部２１は、クライアント３間で遠隔会議を実行させるためにプロセス６を起動する。プロセス６とは、会議サーバ２にインストールされるプログラムの実行単位を示す。プロセス６は、記憶部２２に記憶された実行ファイルが実行されることによって起動され、遠隔会議を制御する会議サーバとして機能する。プロセス６は、会議室７を開催してクライアント３を参加させ、クライアント３に遠隔会議を実行させることができる。複数の会議室が開催される場合、各会議室を開催するプロセス６が起動される。
【００２３】
例えば図１では、会議サーバ２Ａの制御部２１Ａによってプロセス６Ａが実行されている。プロセス６Ａは、クライアント３Ａが参加する会議室７Ａを開催する。会議サーバ２Ｂの制御部２１Ｂによってプロセス６Ｂが実行されている。プロセス６Ｂは、クライアント３Ｂが参加する会議室７Ｂを開催する。会議サーバ２Ｃの制御部２１Ｃによってプロセス６Ｃが実行されている。プロセス６Ｃは、クライアント３Ｃが参加する会議室７Ｃを開催する。
【００２４】
なお、図１では、内部クライアントが参加する会議室７のプロセス６は、内部サーバによって実行され、外部クライアントが参加する会議室７のプロセス６は、外部サーバによって実行されている。しかし実際には、例えば、内部クライアントが参加する会議室７のプロセス６が外部サーバによって実行される場合や、外部クライアントが参加する会議室７のプロセス６が内部サーバによって実行される場合がある。又、共通の会議室７を開催する為のプロセス６が、複数のサーバ（例えば、内部サーバと外部サーバ）によって実行される場合もある。
【００２５】
制御装置５の制御部５１は、後述するメイン処理（図３参照）、周期処理（図６参照）、及び連携処理（図８参照）を実行することにより、各会議室７を開催するプロセス６の実行対象となる会議サーバ２を決定し、プロセス６を実行させる。会議サーバ２は、制御装置５からの指示に応じてプロセス６を実行して会議室７を開催し、クライアント３を参加させる。
【００２６】
以下、内部サーバ（図１における会議サーバ２Ａ、２Ｂ）によって実行されるプロセス６を、「内部プロセス」という。外部サーバ（図１における会議サーバ２Ｃ）によって実行されるプロセス６を、「外部プロセス」という。
【００２７】
＜各種情報９０＞
図２を参照し、ＤＢ７に記憶される各種情報９０について説明する。会議サーバテーブル９１には、サーバＩＤ、位置情報、利用率、及び、会議室数が対応付けて記憶される。サーバＩＤは、会議サーバ２を識別する識別情報である。位置情報は、対応するサーバＩＤの会議サーバ２に設定されたＩＰアドレスである。なお、ＩＰアドレスには、会議サーバ２が接続されるネットワーク（ＬＡＮ１Ａ又はＷＡＮ１Ｂ）毎に設定されるネットワークアドレスが含まれる。このため、ＩＰアドレスのネットワークアドレスに基づいて、対応する会議サーバ２がＬＡＮ１Ａ及びＷＡＮ１Ｂの何れに接続されているかを特定可能である。利用率は、対応するサーバＩＤの会議サーバ２の制御を司る制御部２１の利用率である。会議室数は、対応するサーバＩＤの会議サーバ２が開催する会議室７の数である。
【００２８】
なお、会議サーバテーブル９１において、会議サーバ２に設定されたＩＰアドレスがサーバＩＤとして使用されてもよい。この場合、会議サーバテーブル９１の位置情報がサーバＩＤも示すこととなる為、会議サーバテーブル９１にサーバＩＤは含まれていなくてもよい。
【００２９】
クライアントテーブル９２には、クライアントＩＤ、位置情報、遅延、及びロス率が対応付けて記憶される。クライアントＩＤは、クライアント３を識別する識別情報である。位置情報は、対応するクライアントＩＤのクライアント３に設定されたＩＰアドレスである。なお、ＩＰアドレスのネットワークアドレスに基づいて、対応するクライアント３がＬＡＮ１Ａ及びＷＡＮ１Ｂの何れに接続されているかを特定可能である。遅延は、各会議サーバ２との通信時における遅延時間を示す。ロス率は、各会議サーバ２との通信時におけるパケットロスの比率を示す。
【００３０】
なお、クライアントテーブル９２において、クライアント３に設定されたＩＰアドレスがクライアントＩＤとして使用されてもよい。この場合、クライアントテーブル９２の位置情報がクライアントＩＤも示すこととなる為、クライアントテーブル９２にクライアントＩＤは含まれていなくてもよい。
【００３１】
第１会議室テーブル９３には、会議室ＩＤ、クライアントＩＤ、及びサーバＩＤが対応づけて記憶される。会議室ＩＤは、開催中の会議室７を識別する識別情報である、クライアントＩＤは、対応する会議室ＩＤの会議室７に参加するクライアント３を識別する識別情報である。サーバＩＤは、対応する会議室ＩＤの会議室７のプロセス６を実行する会議サーバ２を識別する識別情報である。
【００３２】
第２会議室テーブル９４には、会議室ＩＤとクライアントＩＤとが対応付けて記憶される。会議室ＩＤは、開催予定の会議室７を識別する識別情報である、クライアントＩＤは、対応する会議室ＩＤの会議室７が開催されたときに参加予定のクライアント３を識別する識別情報である。
【００３３】
許可設定情報９５として、会議室７に外部クライアントが参加することを許可するか否かを示す情報が記憶される。例えば、ＬＡＮ１Ａのセキュリティの関係上、通信システム１の管理者が会議室７に外部クライアントを参加させたくない場合、外部クライアントが参加することを拒否する情報が許可設定情報９５として記憶される。
【００３４】
会議サーバテーブル９１のサーバＩＤ及び位置情報、及び、クライアントテーブル９２のクライアントＩＤ及び位置情報は、管理者による設定操作に応じて直接記憶される。ＤＢ７は、会議サーバテーブル９１のサーバＩＤ及び位置情報に基づいて特定される会議サーバ２と定期的に通信を行い、利用率及び会議室数を取得して会議サーバテーブル９１に記憶する。ＤＢ７は、クライアントテーブル９２のクライアントＩＤ及び位置情報に基づいて特定されるクライアント３と定期的に通信を行い、遅延及びロス率を取得してクライアントテーブル９２に記憶する。ＤＢ７は、会議室７を開催中の会議サーバ２から送信される情報に基づき、第１会議室テーブル９３の情報を取得して記憶する。ＤＢ７は、会議室７の開催を予約する操作がされたクライアント３から送信される情報に基づき、第２会議室テーブル９４の情報を取得して記憶する。許可設定情報９５は、管理者等による設定操作に応じて直接記憶される。
【００３５】
＜メイン処理＞
図３を参照し、制御装置５の制御部５１によって実行されるメイン処理について説明する。メイン処理は、開催予定の会議室７に関する情報が、ＤＢ７の第２会議室テーブル９４（図２参照）に新たに記憶された場合、記憶部５２に記憶されたプログラムを制御部５１が実行することによって開始される。
【００３６】
制御部５１は、ＤＢ７と通信を行うことによって、会議サーバテーブル９１、クライアントテーブル９２、第２会議室テーブル９４、及び許可設定情報９５（図２参照）をＤＢ７から取得する（Ｓ１１）。制御部５１は、ＤＢ７から取得した第２会議室テーブル９４に基づき、開催予定の会議室７に参加予定のクライアント３を特定する。制御部５１は、ＤＢ７から取得したクライアントテーブル９２に基づき、参加予定のクライアント３の位置情報を特定する。制御部５１は、特定した位置情報に基づき、参加予定のクライアント３の中に、ＷＡＮ１Ｂ（図１参照）に接続された外部クライアントが含まれているか判定する（Ｓ１３）。制御部５１は、外部クライアントが含まれていると判定された場合（Ｓ１３：ＹＥＳ）、処理をＳ１５に進める。一方、制御部５１は、外部クライアントが含まれていないと判定された場合（Ｓ１３：ＮＯ）、処理をＳ１９に進める。
【００３７】
なお、制御部５１は、Ｓ１３の処理を実行する場合において、クライアントテーブル９２の位置情報を用いた方法とは別の方法で、参加予定のクライアント３の中に外部クライアントが含まれているか判定してもよい。例えばクライアントテーブル９２には、過去にクライアント３が接続した会議サーバ２のサーバＩＤの履歴情報が更に記憶されていてもよい。制御部５１は、クライアントテーブル９２におけるクライアント３が接続したサーバＩＤの履歴情報に基づいて、クライアント３が内部クライアントか外部クライアントかを判定してもよい。具体的には、制御部５１は、クライアントテーブル９２の履歴情報に基づき、外部サーバとの接続回数が内部サーバとの接続回数よりも大きいクライアント３を外部クライアントとして判定し、内部サーバとの接続回数が外部サーバとの接続回数よりも大きいクライアント３を内部クライアントとして判定してもよい。また、制御部５１は、クライアントテーブル９２の履歴情報に基づき、内部サーバとの接続履歴があるクライアントを内部クライアントと判断し、内部サーバと接続履歴が無いクライアントを外部クライアントと判定してもよい。その他、制御部５１は、クライアントテーブル９２におけるクライアント３が接続したサーバＩＤの履歴情報だけではなく、上述したクライアント３の位置情報も考慮して、クライアント３が内部クライアントか外部クライアントであるかを判定してもよい。その他、クライアント３が内部クライアントか外部クライアントであるかの判定方法は特に限定されず、適宜の手法が用いられてもよい。
【００３８】
又、例えば第２会議室テーブル９４には、開催予定の会議室７の会議モードが、会議室ＩＤに対応付けて記憶されていてもよい。会議モードとして、内部クライアント及び外部クライアントの参加が可能な会議室７であることを示すパブリックモード、又は、内部クライアントのみ参加可能な会議室７であることを示すオンプレミスモードが記憶されてもよい。制御部５１は、開催予定の会議室７の会議モードがパブリックモードである場合、参加予定のクライアント３の中に、ＷＡＮ１Ｂ（図１参照）に接続された外部クライアントが含まれていると判定してもよい（Ｓ１３：ＹＥＳ）。一方、制御部５１は、開催予定の会議室７の会議モードがオンプレミスモードである場合、参加予定のクライアント３の中に、ＷＡＮ１Ｂ（図１参照）に接続された外部クライアントが含まれていないと判定してもよい（Ｓ１３：ＮＯ）。
【００３９】
例えば図４（Ａ）に示すように、開催予定の会議室７１に、内部クライアント３Ｄと外部クライアント３Ｅが参加予定である場合、参加予定のクライアント３に外部クライアント３Ｅが含まれていると判定される（Ｓ１３：ＹＥＳ）。一方、例えば図５（Ａ）に示すように、開催予定の会議室７２に、内部クライアント３Ｄ、３Ｆが参加予定である場合、参加予定のクライアント３に外部クライアントが含まれていないと判定される（Ｓ１３：ＮＯ）。
【００４０】
図３に示すように、制御部５１は、参加予定のクライアント３の中に外部クライアントが含まれていると判定された場合（Ｓ１３：ＹＥＳ）、ＤＢ７から取得した許可設定情報９５に基づき、外部クライアントの会議室７への参加が許可されているか判定する（Ｓ１５）。制御部５１は、外部クライアントの会議室７への参加が許可されていると判定された場合（Ｓ１５：ＹＥＳ）、処理をＳ１７に進める。一方、制御部５１は、許可設定情報９５によって外部クライアントの会議室７への参加が禁止されていると判定された場合（Ｓ１５：ＮＯ）、処理をＳ１９に進める。
【００４１】
制御部５１は、Ｓ１７の処理を実行する場合、ＤＢ７から取得した会議サーバテーブル９１の位置情報に基づき、ＷＡＮ１Ｂ（図１参照）に接続された外部サーバを決定する（Ｓ１７）。なお、外部サーバが複数ある場合、制御部５１は、複数の外部サーバのうち何れか１つを決定する（Ｓ１７）。制御部５１は、処理をＳ２１に進める。
一方、制御部５１は、Ｓ１９の処理を実行する場合、ＤＢ７から取得した会議サーバテーブル９１の位置情報に基づき、ＬＡＮ１Ａ（図１参照）に接続された内部サーバを決定する（Ｓ１９）。なお、内部サーバが複数ある場合、制御部５１は、複数の内部サーバのうち何れか１つを決定する（Ｓ１９）。制御部５１は、処理をＳ２１に進める。
【００４２】
制御部５１は、ＤＢ７から取得した第２会議室テーブル９４に基づき、開催予定の会議室７の会議室ＩＤを特定する。制御部５１は、特定された会議室ＩＤの会議室７を開催するプロセス６を実行させるためのプロセス実行指示を、Ｓ１７の処理によって決定された外部サーバ又はＳ１９の処理によって決定された内部サーバに送信する（Ｓ２１）。プロセス実行指示には、ＤＢ７から取得した第２会議室テーブル９４に基づき、開催予定の会議室７の会議室ＩＤ、及び、開催予定の会議室７に参加予定のクライアント３のクライアントＩＤが含められる。なお、制御部５１は、内部サーバにプロセス実行指示を送信する場合、ＦＷ８Ａ（図１参照）によってフィルタリングされることを防止する為、ＷＳ８Ｂを介して内部サーバにプロセス実行指示を送信する。
【００４３】
プロセス実行指示を受信した会議サーバ２の制御部２１は、プロセス実行指示に含まれる会議室ＩＤ、及びクライアントＩＤを取得する。制御部２１は、取得した会議室ＩＤの会議室７を開催するプロセス６を実行する。更に、制御部２１は、取得したクライアントＩＤのクライアント３と通信を行い、実行したプロセス６とのセッションの接続を要求する。プロセス６とクライアント３との間でセッションが接続された場合、クライアント３は、プロセス６が開催する会議室７に参加し、他のクライアント３との間で遠隔会議を実行する。
【００４４】
例えば図４（Ａ）に示すように、開催予定の会議室７１に参加予定のクライアント３に外部クライアント３Ｅが含まれている場合（Ｓ１３：ＹＥＳ）、ＷＡＮ１Ｂに接続された外部サーバ２Ｅが決定される（Ｓ１７）。開催予定の会議室７１の会議室ＩＤ、及び、開催予定の会議室７１に参加予定の内部クライアント３Ｄ及び外部クライアント３ＥのクライアントＩＤを含むプロセス実行指示が、外部サーバ２Ｅに送信される（Ｓ２１）。図４（Ｂ）に示すように、プロセス実行指示を受信した外部サーバ２Ｅの制御部２１Ｅによって、会議室７１を開催する外部プロセス６Ｅが実行される。
【００４５】
更に、図４（Ｃ）に示すように、外部サーバ２Ｅから内部クライアント３Ｄ及び外部クライアント３Ｅに対して、外部プロセス６Ｅとの接続指示が送信される（Ｓ１０１）。接続指示には、外部サーバ２ＥのサーバＩＤが含められる。なお、外部サーバ２Ｅは、内部クライアント３Ｄに対して接続指示を送信する場合、ＦＷ８Ａ（図１参照）によってフィルタリングされることを防止する為、ＷＳ８Ｂを介して内部サーバに接続指示を送信する。図４（Ｄ）に示すように、接続指示を受信した内部クライアント３Ｄ及び外部クライアント３Ｅは、外部サーバ２Ｅに対して接続要求を送信する（Ｓ１０３）。これによって、図４（Ｅ）に示すように、内部クライアント３Ｄ及び外部クライアント３Ｅと外部プロセス６Ｅとの間のセッションが接続される（Ｓ１０５）。なお、このとき内部クライアント３Ｄから外部サーバ２Ｅに対して送信される接続要求は、ＬＡＮ１ＡのＦＷ８Ａ（図１参照）によってフィルタリングされない。これによって、内部クライアント３Ｄ及び外部クライアント３Ｅは、外部プロセス６Ｅが開催する会議室７１に参加し、遠隔会議を実行可能となる。
【００４６】
一方、例えば図５（Ａ）に示すように、開催予定の会議室７２に参加予定のクライアント３に外部クライアントが含まれていない場合（Ｓ１３：ＮＯ）、ＬＡＮ１Ａに接続された内部サーバ２Ｄが決定される（Ｓ１９）。開催予定の会議室７２の会議室ＩＤ、及び、開催予定の会議室７１に参加予定の内部クライアント３Ｄ、３ＦのクライアントＩＤを含むプロセス実行指示が、内部サーバ２Ｄに送信される（Ｓ２１）。図５（Ｂ）に示すように、プロセス実行指示を受信した内部サーバ２Ｄの制御部２１Ｄによって、会議室７２を開催する内部プロセス６Ｄが実行される。更に、図５（Ｃ）に示すように、内部クライアント３Ｄ、３Ｆと内部プロセス６Ｄとのセッションが接続される。内部クライアント３Ｄ、３Ｆは、内部プロセス６Ｄが開催する会議室７２に参加し、遠隔会議を実行可能となる。
【００４７】
図３に示すように、制御装置５の制御部５１は、Ｓ２１の処理によってプロセス実行指示を送信した後、開催中の会議室７の情報として、会議室ＩＤ、クライアントＩＤ、及び会議サーバＩＤをＤＢ７に送信する。制御部５１は、メイン処理を終了させる。なお、ＤＢ７は、受信した会議室ＩＤ、クライアントＩＤ、及び会議サーバＩＤを対応付けて、第１会議室テーブル９３（図２参照）に記憶する。
【００４８】
＜周期処理＞
図６を参照し、周期処理について説明する。周期処理は、制御装置５の制御部５１によって一定周期で起動され、実行される。制御部５１は、ＤＢ７と通信を行うことによって、会議サーバテーブル９１、クライアントテーブル９２、第１会議室テーブル９３、及び許可設定情報９５（図２参照）をＤＢ７から取得する（Ｓ３１）。
【００４９】
制御部５１は、ＤＢ７から取得した第１会議室テーブル９３に基づき、開催中の会議室７のプロセス６を実行する会議サーバ２を特定する。なお、第１会議室テーブル９３において共通する会議室ＩＤに複数のサーバＩＤが対応づけられている場合、この会議室ＩＤの会議室７は、複数の会議サーバ２のそれぞれが実行する複数のプロセス６によって開催されていることになる。この場合、開催中の会議室７のプロセス６を実行する会議サーバ２として、複数の会議サーバ２が特定される。
【００５０】
制御部５１は、開催中の会議室７のプロセス６を実行する会議サーバ２が１台のみであるか判定する（Ｓ３３）。制御部５１は、開催中の会議室７のプロセス６を実行する会議サーバ２が複数あると判定された場合（Ｓ３３：ＮＯ）、処理をＳ３９に進める。制御部５１は、開催中の会議室７のプロセス６を実行する会議サーバ２を、外部サーバから内部サーバに変更する為に、連携処理（図８参照）を実行する（Ｓ３９）。連携処理の詳細は後述する。連携処理の終了後、制御部５１は周期処理を終了させる。一方、制御部５１は、会議室７のプロセス６を実行する会議サーバ２が１台のみであると判定された場合（Ｓ３３：ＹＥＳ）、処理をＳ３５に進める。
【００５１】
例えば、図７（Ａ）に示すように、内部サーバ２Ｄによって実行される内部プロセス６Ｄと、外部サーバ２Ｅによって実行される外部プロセス６Ｅとの両方によって、会議室７２が開催されている場合（Ｓ３３：ＮＯ）、後述する連携処理（図８参照）が実行される（Ｓ３９）。
【００５２】
図６に示すように、制御部５１は、ＤＢ７から取得した会議サーバテーブル９１に基づき、開催中の会議室７のプロセス６を実行する会議サーバ２の利用率及び会議室数を特定する。制御部５１は、特定した利用率及び会議室数に基づき、開催中の会議室７のプロセス６を実行する会議サーバ２の負荷が第１所定レベルよりも低いか判定する（Ｓ３５）。制御部５１は、特定した利用率が第１閾値以上か、又は、特定した会議室数が第２閾値以上の場合、会議サーバ２の負荷が第１所定レベル以上と判定する（Ｓ３５：ＮＯ）。この場合、制御部５１は、開催中の会議室７のプロセス６を実行する会議サーバ２を、外部サーバから内部サーバに変更する為に、連携処理（図８参照）を実行する（Ｓ３９）。連携処理の詳細は後述する。周期処理の終了後、制御部５１は周期処理を終了させる。一方、制御部５１は、特定した利用率が第１閾値よりも小さく、且つ、特定した会議室数が第２閾値よりも小さい場合、会議サーバ２の負荷が第１所定レベルよりも低いと判定する（Ｓ３５：ＹＥＳ）。この場合、制御部５１は処理をＳ３７に進める。
【００５３】
例えば、図７（Ｂ）に示すように、外部サーバ２Ｅによって実行される外部プロセス６Ｅのみによって会議室７１が開催されている場合（Ｓ３３：ＹＥＳ）、外部サーバ２Ｅの制御部２１Ｅの利用率、及び、外部プロセス６Ｅが開催する会議室数に基づき、外部サーバ２Ｅの負荷が第１所定レベル以上か判定される（Ｓ３５）。例えば、外部サーバ２Ｅの利用率が第１閾値以上の場合、外部サーバ２Ｅの負荷が第１所定レベル以上と判定され（Ｓ３５：ＮＯ）、後述する連携処理（図８参照）が実行される（Ｓ３９）。
【００５４】
図６に示すように、制御部５１は、ＤＢ７から取得した第１会議室テーブル９３に基づき、開催中の会議室７に参加するクライアント３を特定する。制御部５１は、ＤＢ７から取得したクライアントテーブル９２に基づき、開催中の会議室７のプロセス６を実行する会議サーバ２と、会議室７に参加するクライアント３との間の遅延及びロス率を特定する。制御部５１は、特定した遅延及びロス率に基づき、開催中の会議室７のプロセス６を実行する会議サーバ２と、会議室７に参加するクライアント３との間の通信品質が第２所定レベルよりも高いか判定する（Ｓ３７）。制御部５１は、特定した遅延が第３閾値以上、又は、特定したロス率が第４閾値以上の場合、会議サーバ２とクライアント３との間の通信品質が第２所定レベル以下と判定する（Ｓ３７：ＮＯ）。この場合、制御部５１は、開催中の会議室７のプロセス６を実行する会議サーバ２を、外部サーバから内部サーバに変更する為に、連携処理（図８参照）を実行する（Ｓ３９）。連携処理の詳細は後述する。周期処理の終了後、制御部５１は周期処理を終了させる。一方、制御部５１は、特定した遅延が第３閾値よりも小さく、且つ、特定したロス率が第４閾値よりも小さい場合、外部サーバとクライアント３との間の通信品質が第２所定レベルよりも高いと判定する（Ｓ３７：ＹＥＳ）。この場合、制御部５１は周期処理を終了させる。
【００５５】
例えば、図７（Ｃ）に示すように、内部サーバ２Ｄによって実行される内部プロセス６Ｄのみによって会議室７２が開催されている場合（Ｓ３３：ＹＥＳ）、内部サーバ２Ｄと内部クライアント３Ｄ、３Ｆとの間のそれぞれの遅延及びロス率に基づいて、内部サーバ２Ｄと内部クライアント３Ｄ、３Ｆとの間のそれぞれの通信品質が第２所定レベルよりも高いか判定される（Ｓ３７）。内部サーバ２Ｄと内部クライアント３Ｄ、３Ｆとの間のそれぞれの通信品質がいずれも第２所定レベル以下と判定された場合（Ｓ３７：ＮＯ）、後述する連携処理（図８参照）が実行される（Ｓ３９）。
【００５６】
＜連携処理＞
図８を参照し、連携処理について説明する。制御部５１は、ＤＢ７から取得した第１会議室テーブル９３に基づき、開催中の会議室７のプロセス６を実行する会議サーバ２を特定する。制御部５１は、ＤＢ７から取得した会議サーバテーブル９１に基づき、開催中の会議室７のプロセス６を実行する会議サーバ２の位置情報を特定する。制御部５１は、開催中の会議室７のプロセス６を実行する会議サーバ２が外部サーバであるか判定する（Ｓ５１）。制御部５１は、開催中の会議室７のプロセス６を実行する会議サーバ２が内部サーバであると判定した場合（Ｓ５１：ＮＯ）、連携処理を終了させ、処理を周期処理（図６参照）に戻す。制御部５１は、開催中の会議室７のプロセス６を実行する会議サーバ２が外部サーバであると判定した場合（Ｓ５１：ＹＥＳ）処理をＳ５３に進める。
【００５７】
制御部５１は、ＤＢ７から取得したクライアントテーブル９２に基づき、開催中の会議室７に参加するクライアント３の位置情報を特定する。制御部５１は、開催中の会議室７に参加するクライアント３に内部クライアントが含まれているかを、特定した位置情報に基づいて判定する（Ｓ５３）。制御部５１は、開催中の会議室７に参加するクライアント３が全て外部クライアントであると判定した場合（Ｓ５３：ＮＯ）、連携処理を終了させ、処理を周期処理（図６参照）に戻す。制御部５１は、開催中の会議室７に参加するクライアント３に内部クライアントが含まれていると判定した場合（Ｓ５３：ＹＥＳ）、処理をＳ５５に進める。
【００５８】
例えば、図９（Ａ）に示すように、会議室７１を開催する外部プロセス６Ｅが外部サーバ２Ｅによって実行され（Ｓ５１：ＹＥＳ）、且つ、開催中の会議室７１に内部クライアント３Ｄが含まれている場合（Ｓ５３：ＹＥＳ）、連携処理は継続される。一方、例えば図１０（Ａ）に示すように、会議室７２を開催中である内部プロセス６Ｄが内部サーバ２Ｄによって実行されている場合（Ｓ５１：ＮＯ）、又は、例えば図１０（Ｂ）に示すように、開催中の会議室７３に外部クライアント３Ｅ、３Ｇのみ参加している（Ｓ５３：ＮＯ）、連携処理は終了される。
【００５９】
図８に示すように、制御部５１は、ＤＢ７から取得したクライアントテーブル９２に基づき、開催中の会議室７に参加する内部クライアントが接続するＬＡＮ１Ａを特定する。制御部５１は、ＤＢ７から取得した会議サーバテーブル９１に基づき、特定されたＬＡＮ１Ａに接続する内部サーバのうち、後述するＳ６１の処理に応じた連携処理に失敗した内部サーバを除く別の内部サーバ、即ち、特定されたＬＡＮ１Ａに接続する内部クライアントとの接続が可能な内部サーバがあるか判定する（Ｓ５５）。制御部５１は、内部サーバがないと判定された場合（Ｓ５５：ＮＯ）、連携処理を終了させ、処理を周期処理（図６参照）に戻す。制御部５１は、内部サーバがあると判定した場合（Ｓ５５：ＹＥＳ）、処理をＳ５７に進める。
【００６０】
例えば、図９（Ａ）に示すように、開催中の会議室７１に参加する内部クライアント３Ｄが接続するＬＡＮ１Ａが特定され、且つ、ＬＡＮ１Ａに接続する内部サーバ２Ｄと、ＬＡＮ１Ａに接続する内部クライアントとの接続が可能であると判定された場合（Ｓ５５：ＹＥＳ）、連携処理は継続される。
【００６１】
図８に示すように、制御部５１は、後述するＳ６１の処理に応じた連携処理に失敗した内部サーバを除く別の内部サーバを選択する（Ｓ５７）。なお、制御部５１は、開催中の会議室７に参加する内部クライアントと同じＬＡＮ１Ａに接続する内部サーバであって後述するＳ６１の処理に応じた連携処理に失敗した内部サーバを除く別の内部サーバが複数ある場合、複数の内部サーバの何れかを選択する（Ｓ５７）。制御部５１は、ＤＢ７から取得した第１会議室テーブル９３に基づき、開催中の会議室７の会議室ＩＤを特定する。制御部５１は、特定された会議室ＩＤの会議室７を開催するプロセス６を実行させるためのプロセス実行指示を、Ｓ５７の処理によって選択した内部サーバに送信する（Ｓ５９）。プロセス実行指示には、ＤＢ７から取得した第１会議室テーブル９３に基づき、外部サーバにより実行中のプロセス６によって開催されている会議室７の会議室ＩＤが含められる。プロセス実行指示を受信した内部サーバの制御部２１は、プロセス実行指示に含まれる会議室ＩＤを取得する。制御部２１は、取得した会議室ＩＤの会議室７を開催するプロセス６を実行する。
【００６２】
例えば図９（Ａ）に示す構成の場合、内部サーバ２Ｄが選択される（Ｓ５７）。制御装置５は、開催中の会議室７１の会議室ＩＤを含むプロセス実行指示を、内部サーバ２Ｄに送信する（Ｓ５９）。なお、制御装置５は、内部サーバ２Ｄにプロセス実行指示を送信する場合、ＦＷ８Ａ（図１参照）によってフィルタリングされることを防止する為、ＷＳ８Ｂを介して内部サーバ２Ｄにプロセス実行指示を送信する。図９（Ｂ）に示すように、プロセス実行指示を受信した内部サーバ２Ｄの制御部２１Ｄによって、会議室７１を開催する内部プロセス６Ｄが実行される。
【００６３】
図８に示すように、制御部５１は、Ｓ２１（図３参照）の処理で外部サーバにプロセス実行指示を送信することによって実行させたプロセス６と、Ｓ５９の処理で内部サーバにプロセス実行指示を送信することによって実行させたプロセス６の間でセッションを接続させるために、内部サーバ及び外部サーバに対して接続指示を送信する（Ｓ６１）。接続指示には、内部サーバ及び外部サーバのサーバＩＤが含められる。なお、接続指示を受信した内部サーバの制御部２１は、接続指示に含まれるサーバＩＤを取得し、接続先の外部サーバを特定する。接続指示を受信した外部サーバの制御部２１は、接続指示に含まれるサーバＩＤを取得し、接続先の内部サーバを特定する。各制御部２１は、内部プロセスと外部プロセスとの間でセッションを接続させる。
【００６４】
例えば図９（Ｂ）において、制御装置５は、内部サーバ２Ｄ及び外部サーバ２Ｅに対して接続指示を送信する。なお、制御装置５は、内部サーバ２Ｄに接続指示を送信する場合、ＦＷ８Ａ（図１参照）によってフィルタリングされることを防止する為、ＷＳ８Ｂを介して内部サーバ２Ｄに接続指示を送信する。接続指示を受信した内部サーバ２Ｄによって外部サーバ２Ｅが特定され、接続指示を受信した外部サーバ２Ｅによって内部サーバ２Ｄが特定される。接続指示を受信した内部サーバ２Ｄは、外部サーバ２Ｅに対して接続要求を送信する。これによって、図９（Ｃ）に示すように、内部プロセス６Ｄと外部プロセス６Ｅとの間でセッションが接続される（Ｓ６１）。なお、このとき内部サーバ２Ｄから外部サーバ２Ｅに対して送信される接続要求は、ＬＡＮ１Ａのファイヤーウォール８Ａ（図１参照）によってフィルタリングされない。
【００６５】
図８に示すように、次に制御装置５の制御部５１は、外部サーバと内部サーバとの間で会議室７による遠隔会議の制御を連携させる為に、外部サーバ及び内部サーバに連携指示を送信する（Ｓ６１）。なお、連携指示を受信した内部サーバの制御部２１は、外部サーバに対して連携要求を送信する。連携指示を受信した外部サーバは、内部サーバから連携要求を受信した場合、外部プロセスによって開催されている会議室７に参加するクライアント３のクライアントＩＤを、内部サーバに送信する。内部サーバはクライアントＩＤを受信する。内部サーバは、受信したクライアントＩＤの内部クライアントとの接続が可能か判定し、接続可能と判定された場合、クライアントＩＤを送信した外部サーバに対してＡＣＫを送信する。これによって、外部サーバの外部プロセスによって開催される会議室７と、内部サーバの内部プロセスによって開催される会議室７とのそれぞれの遠隔会議の制御が連携される。連携後、内部サーバ及び外部サーバは、連携が完了したことを示す完了通知を、制御装置５に送信する。
【００６６】
例えば、図９（Ｃ）に示すように内部プロセス６Ｄと外部プロセス６Ｅとの間でセッションが接続された後、制御装置５から内部サーバ２Ｄ及び外部サーバ２Ｅに連携指示が送信される（Ｓ６１）。なお、制御装置５は、内部サーバ２Ｄに連携指示を送信する場合、ＦＷ８Ａ（図１参照）によってフィルタリングされることを防止する為、ＷＳ８Ｂを介して内部サーバ２Ｄに連携指示を送信する。連携指示を受信した内部サーバ２Ｄは、外部サーバ２Ｅに連携要求を送信する。なお、このとき内部サーバ２Ｄから外部サーバ２Ｅに対して送信される連携要求は、ＬＡＮ１Ａのファイヤーウォール８Ａ（図１参照）によってフィルタリングされない。連携要求を受信した外部サーバ２Ｅは、外部プロセス６Ｅによって開催されている会議室７１に参加する内部クライアント３Ｄ及び外部クライアント３ＥのクライアントＩＤを、内部サーバ２Ｄに送信する。なお、このとき外部サーバ２Ｅから内部サーバ２Ｄに対して送信されるクライアントＩＤは、ＬＡＮ１Ａのファイヤーウォール８Ａ（図１参照）によってフィルタリングされない。内部サーバ２ＤはクライアントＩＤを受信し、会議室７１に参加する内部クライアント３Ｄ及び外部クライアント３Ｅを特定する。内部サーバ２Ｄは、特定した内部クライアント３Ｄとの接続が可能と判定した場合、外部サーバ２ＥにＡＣＫを送信する。これによって、外部サーバ２Ｅの外部プロセス６Ｅによって開催される会議室７１と、内部サーバ２Ｄの内部プロセス６Ｄによって開催される会議室７１とのそれぞれの遠隔会議の制御が連携される。内部サーバ２Ｄ及び外部サーバ２Ｅは、制御装置５に完了通知を送信する。
【００６７】
図８に示すように、制御部５１は、内部サーバ及び外部サーバから送信された完了通知を受信したか否かによって、内部プロセスと外部プロセスとの間のセッションが接続し且つ連携が成功したか判定する（Ｓ６３）。制御部５１は、内部サーバ及び外部サーバから完了通知を受信した場合、内部プロセスと外部プロセスとの間のセッションが接続し且つ連携が成功したと判定する（Ｓ６５：ＹＥＳ）。この場合、制御部５１は、会議サーバテーブル９１及び第１会議室テーブル９３に基づき、内部プロセスを実行する内部サーバが接続するＬＡＮ１Ａを特定する。制御部５１は、クライアントテーブル９２に基づき、特定されたＬＡＮ１Ａに接続する内部クライアントを特定する。制御部５１は、内部クライアントの接続先を外部プロセスから内部プロセスに移行させる為の移行指示を、内部サーバに送信する（Ｓ６７）。移行指示には、特定された内部クライアントのクライアントＩＤが含められる。
【００６８】
なお、移動指示を受信した内部サーバの制御部２１は、移動指示に含まれるクライアントＩＤを取得する。制御部２１は、取得したクライアントＩＤと、外部サーバとの連携時において外部サーバから受信したクライアントＩＤとで一致するクライアントＩＤを特定する。特定されたクライアントＩＤは、プロセス実行指示に応じて実行された内部プロセスによって開催される会議室７に参加する内部クライアントを示す。制御部２１は、特定したクライアントＩＤの内部クライアントと通信を行い、内部プロセスとのセッションの接続を要求する。これによって、内部クライアントは、内部プロセスとの間でセッションを接続し、外部プロセスとのセッションを切断する。
【００６９】
例えば、図９（Ｃ）に示すように、内部プロセス６Ｄと外部プロセス６Ｅとの間のセッションが接続し且つ連携が成功した場合、制御装置５から内部サーバ２Ｄに対して移行指示が送信される（Ｓ６７）。移動指示を受信した内部サーバ２Ｄは、移動指示に含まれるクライアントＩＤ、即ち、ＬＡＮ１Ａに接続する内部クライアント３ＤのクライアントＩＤを取得する。内部サーバ２Ｄは、外部サーバ２Ｅとの連携時において外部サーバから受信したクライアントＩＤ、即ち、会議室７１に参加する内部クライアント３Ｄ及び外部クライアント３ＥのクライアントＩＤとの関係から、プロセス実行指示に応じて実行された内部プロセス６Ｄによって開催される会議室７１に参加する内部クライアントとして内部クライアント３Ｄを特定する。制御部２１は、内部クライアント３Ｄと通信を行い、内部プロセス６Ｄとのセッションの接続を要求する。これによって、図９（Ｄ）に示すように、内部クライアント３Ｄと内部プロセス６Ｄとの間でセッションが接続され、内部クライアント３Ｄと外部プロセス６Ｅとの間でセッションが切断される。
【００７０】
一方、図８に示すように、制御装置５の制御部５１は、内部サーバ及び外部サーバの少なくとも一方から完了通知を受信しなかった場合、内部プロセスと外部プロセスとの間のセッションが接続しないか、又は、内部サーバと内部クライアントとの間の接続が不可能であるかの何れかにより連携に失敗したと判定する（Ｓ６５：ＮＯ）。この場合、制御部５１は、処理をＳ５５に戻す。制御部５１は、ＤＢ７から取得したクライアントテーブル９２に基づき、開催中の会議室７に参加する内部クライアントが接続するＬＡＮ１Ａに、Ｓ５７で選択された内部サーバ、即ち、連携に失敗した内部サーバを除く別の内部サーバが接続されているか判定する（Ｓ５５）。制御部５１は、ＬＡＮ１Ａに接続する別の内部サーバがないと判定された場合（Ｓ５５：ＮＯ）、連携処理を終了させ、処理を周期処理（図６参照）に戻す。制御部５１は、ＬＡＮ１Ａに接続する別の内部サーバがあると判定した場合（Ｓ５５：ＹＥＳ）、処理をＳ５７に進める。制御部５１は、連携に失敗した内部サーバとは別の内部サーバの何れかを選択し（Ｓ５７）、Ｓ５９〜Ｓ６７の処理を繰り返す。
【００７１】
＜本実施形態の作用、効果＞
制御装置５は、開催予定の会議室７に参加予定のクライアント３に外部クライアントが含まれている場合（Ｓ１３：ＹＥＳ）、外部サーバを決定して外部プロセスを実行させる（Ｓ１７、Ｓ２１）。外部サーバによって実行される外部プロセスは、クライアント間で実行される遠隔会議を制御する。このため、例えば図４（Ａ）に示すように、会議室７１に参加予定のクライアント３として内部クライアント３Ｄと外部クライアント３Ｅとが含まれている場合、ＬＡＮ１Ａ内の内部クライアント３ＤからＬＡＮ１Ａ外の外部サーバ２Ｅに向けて最初に送信されるデータ（例えば、接続要求等）は、ＬＡＮ１Ａに設けられたＦＷ８Ａによってフィルタリングされない。従って、図４（Ｅ）に示すように、内部クライアント３Ｄは外部プロセス６Ｅと接続し、外部プロセス６Ｅを介して外部クライアント３Ｅとの間で遠隔会議を実行できる。このように、制御装置５は、ＬＡＮ１Ａの内に接続された内部クライアント３Ｄと、ＬＡＮ１Ａ外に接続された外部クライアント３Ｅとの間で遠隔会議を円滑に実行できる。
【００７２】
制御装置５は、会議室７に参加するクライアント３に内部クライアントが含まれている場合（Ｓ５３：ＹＥＳ）、内部サーバに内部プロセスを実行させる（Ｓ５９）。更に、制御装置５は、内部プロセスと外部プロセスとを接続させ、内部プロセスと外部プロセスとを連携させる（Ｓ６１）。この場合、例えば図９（Ｄ）に示すように、内部クライアント３Ｄと外部クライアント３Ｅとの間の通信は、内部プロセス６Ｄと外部プロセス６Ｅとの間の接続を介して実行される。従って、制御装置５は、内部クライアント３Ｄと外部プロセス６Ｅとの間で通信が直接実行される場合と比べて、通信のトラフィックを軽減できる。
【００７３】
制御装置５は、外部サーバに実行させた外部プロセス（Ｓ２１）と、内部サーバに実行させた内部プロセス（Ｓ５９）とを接続させ（Ｓ６１）、内部サーバから外部サーバへ連携要求を送信して遠隔会議の制御を連携させる（Ｓ６１）。例えば図９（Ｂ）において、制御装置５は、内部サーバ２Ｄ及び外部サーバ２Ｅに対して接続指示を送信する。接続指示を受信した内部サーバ２Ｄは、外部サーバ２Ｅに対して接続要求を送信する。これによって、図９（Ｃ）に示すように、内部プロセス６Ｄと外部プロセス６Ｅとの間でセッションが接続される（Ｓ６１）。その後、制御装置５から内部サーバ２Ｄ及び外部サーバ２Ｅに連携指示が送信される（Ｓ６１）。連携指示を受信した内部サーバ２Ｄは、外部サーバ２Ｅに連携要求を送信する。連携要求を受信した外部サーバ２Ｅは、会議室７１に参加する内部クライアント３Ｄ及び外部クライアント３ＥのクライアントＩＤを内部サーバ２Ｄに送信する。内部サーバ２ＤはクライアントＩＤを受信する。これによって、外部サーバ２Ｅの外部プロセス６Ｅによって開催される会議室７１と、内部サーバ２Ｄの内部プロセス６Ｄによって開催される会議室７１とのそれぞれの遠隔会議の制御が連携される。このように、制御装置５は、内部サーバ２Ｄと外部サーバ２Ｅとの間のセッションが接続された後、内部サーバ２Ｄと外部サーバ２Ｅとを連携させる。これによって、制御装置５は、内部サーバ２Ｄと外部サーバ２Ｅとを適切に連携させることができる。
【００７４】
制御装置５は、内部サーバ及び外部サーバの少なくとも一方から連携の完了通知を受信せず、連携に失敗した場合（Ｓ６５：ＮＯ）、開催中の会議室７に参加する内部クライアントが接続するＬＡＮ１Ａに、連携に失敗した内部サーバを除く別の内部サーバが接続されているか判定する（Ｓ５５）。制御装置５は、別の内部サーバがあると判定した場合（Ｓ５５：ＹＥＳ）、連携に失敗した内部サーバとは別の内部サーバの何れかを選択し（Ｓ５７）、Ｓ５９〜Ｓ６７の処理を実行し、別の内部サーバに実行させた外部プロセスと外部プロセスとの連携を試みる。この場合、制御装置５は、複数の内部サーバの何れかが実行する内部プロセスと外部プロセスとの連携に失敗しても、別の内部サーバに内部プロセスを実行させ、外部プロセスと接続させることができる。
【００７５】
制御装置５は、外部プロセスと内部プロセスとを接続させて遠隔会議の制御が連携された（Ｓ６１）後、内部クライアントを内部プロセスに接続させる（Ｓ６７）。例えば図９（Ｃ）に示すように、内部プロセス６Ｄと外部プロセス６Ｅとの間のセッションが接続し且つ連携が成功した場合、制御装置５から内部サーバ２Ｄに対して移行指示が送信される（Ｓ６７）。移動指示を受信した内部サーバ２Ｄは、内部プロセス６Ｄによって開催される会議室７１に参加する内部クライアントとして内部クライアント３Ｄを特定する。内部サーバ２Ｄは、内部クライアント３Ｄと通信を行い、図９（Ｄ）に示すように、内部クライアント３Ｄと内部プロセス６Ｄとの間でセッションが接続され、内部クライアント３Ｄと外部プロセス６Ｅとの間でセッションが切断される。つまり、制御装置５は、内部プロセス６Ｄと外部プロセス６Ｅとの連携が完了した後、内部クライアント３Ｄを内部プロセス６Ｄに接続させ、外部プロセス６Ｅから切断させる。このため、制御装置５は、会議室７１の遠隔会議を中断させることなく、内部クライアント３Ｄの接続先を、外部プロセス６Ｅから内部プロセス６Ｄに移行できる。
【００７６】
制御装置５は、外部サーバの処理負荷が第１所定レベル以上の場合（Ｓ３５：ＮＯ）、又は、外部サーバとクライアントとの間の通信品質（通信状態）が第２所定レベル以下の場合（Ｓ３７：ＮＯ）、連携処理（図８参照）を実行し、内部サーバに内部プロセスを実行させて内部クライアントと接続させることができる。この場合、外部サーバの処理負荷を軽減することができるので、外部プロセスによる遠隔会議の制御を円滑に実行できる。又、外部サーバと外部クライアントとの間の通信状態を改善できる。
【００７７】
＜変形例＞
本発明は上記実施形態に限定されず、種々の変更が可能である。図１において、会議サーバ２Ａ、２Ｂ、及びクライアント３Ａ、３Ｂは、ＬＡＮ以外のネットワーク（例えば、Personal Area Network（ＰＡＮ）、Campus Area Network（ＣＡＮ）、Metropolitan Area Network（ＭＡＮ）等）に接続してもよい。会議サーバ２Ｃ、クライアント３Ｃ、制御装置５、及びＤＢ７は、ＷＡＮ以外のネットワーク（例えば、Global Area Network（ＧＡＮ））に接続してもよい。制御装置５とＤＢ７は、一体となった構成を有していてもよい。即ち、制御装置５の記憶部５２に各種情報９０が記憶されてもよい。
【００７８】
例えば図４（Ｂ）に示すように、プロセス実行指示を受信した外部サーバ２Ｅの制御部２１Ｅによって、会議室７１を開催する外部プロセス６Ｅが実行された場合、制御装置５は、内部クライアント３Ｄ及び外部クライアント３Ｅに対して、外部プロセス６Ｅとの接続指示を直接送信してもよい。なお制御装置５は、内部クライアント３Ｄに対して接続指示を送信する場合、ＦＷ８Ａ（図１参照）によってフィルタリングされることを防止する為、ＷＳ８Ｂを介して内部クライアント３Ｄに接続指示を送信してもよい。図４（Ｄ）に示すように、接続指示を受信した内部クライアント３Ｄ及び外部クライアント３Ｅは、外部サーバ２Ｅに対して接続要求を送信し（Ｓ１０３）、内部クライアント３Ｄ及び外部クライアント３Ｅと外部プロセス６Ｅとの間のセッションが接続されてもよい（Ｓ１０５、図４（Ｅ）参照）。又、例えば図４（Ｂ）に示すように、外部サーバ２Ｅの制御部２１Ｅによって外部プロセス６Ｅが実行された場合、制御装置５は、内部サーバ２Ｄを介して内部クライアント３Ｄに対して、外部プロセス６Ｅとの接続指示を送信してもよい。なお制御装置５は、内部サーバ２Ｄに対して接続指示を送信する場合、ＦＷ８Ａ（図１参照）によってフィルタリングされることを防止する為、ＷＳ８Ｂを介して内部サーバに接続指示を送信してもよい。
【００７９】
制御装置５は、外部サーバの処理負荷が第１所定レベル以上の場合（Ｓ３５：ＮＯ）、又は、外部サーバとクライアントとの間の通信品質（通信状態）が第２所定レベル以下の場合（Ｓ３７：ＮＯ）、連携処理（図８参照）を実行し、内部サーバに内部プロセスを実行させて内部クライアントと接続させる。ここで、処理負荷は、会議サーバテーブル９１に記憶された利用率及び会議室数以外の情報に基づいて特定されてもよい。例えば処理負荷は、会議サーバ２の制御部２１の処理速度、記憶部２２へのアクセス頻度等に基づいて特定されてもよい。通信品質は、クライアントテーブル９２に記憶された遅延及びロス率以外の情報に基づいて特定されてもよい。例えば、通信品質は、会議サーバ２とクライアント３との間の通信のエラー率、クライアント３が接続するＬＡＮ１Ａ又はＷＡＮ１Ｂの回線容量等に基づいて特定されてもよい。又、クライアント３が参加する遠隔会議における通信データの容量、通信頻度等（通信状態）に基づいて特定されてもよい。制御装置５の制御部５１は、開催中の会議室７のプロセス６を実行する会議サーバ２が外部サーバ１台のみの場合（Ｓ５１：ＹＥＳ）、処理負荷又は通信品質に関わらず、連携処理を実行しなくてもよい。
【００８０】
例えば図９（Ａ）に示す状態で、制御装置５がプロセス実行指示を内部サーバ２Ｄに送信する（Ｓ５９）場合、制御装置５は、外部プロセス６Ｅとのセッションが接続された状態の内部クライアント３Ｄを介して、内部サーバ２Ｄにプロセス実行指示を送信してもよい。この場合、制御装置５は、内部クライアント３Ｄに対してプロセス実行指示を直接送信してもよい。又は、制御装置５は、外部サーバ２Ｅに対してプロセス実行指示を送信してもよい。この場合、外部サーバ２Ｅは、受信したプロセス実行指示を内部クライアント３Ｄに転送してもよい。同様に、例えば図９（Ｂ）において、制御装置５が内部サーバ２Ｄに対して接続指示を送信する場合、外部プロセス６Ｅとのセッションが接続された状態の内部クライアント３Ｄを介して、内部サーバ２Ｄに接続指示を送信してもよい。
【００８１】
図９（Ｂ）において、接続指示を受信した外部サーバ２Ｅが、内部サーバ２Ｄに対して接続要求を送信してもよい。これによって、図９（Ｃ）に示すように、内部プロセス６Ｄと外部プロセス６Ｅとの間でセッションが接続されてもよい。なお、このとき外部サーバ２Ｅから内部サーバ２Ｄに対して送信される接続要求は、ＦＷ８Ａ（図１参照）によってフィルタリングされることを防止する為、ＷＳ８Ｂを介して送信されてもよい。
【００８２】
例えば、図９（Ｃ）に示すように内部プロセス６Ｄと外部プロセス６Ｅとの間でセッションが接続された後、外部サーバ２Ｅは、連携指示を受信したことに応じて、内部サーバ２Ｄに連携要求を送信してもよい。連携要求には、外部プロセス６Ｅによって開催されている会議室７１に参加する内部クライアント３Ｄ及び外部クライアント３ＥのクライアントＩＤが含まれてもよい。なお、このとき、ＦＷ８Ａ（図１参照）によってフィルタリングされることを防止する為、ＷＳ８Ｂを介して連携要求が送信されてもよい。連携要求を受信した内部サーバ２Ｄは、連携要求に含まれるクライアントＩＤを取得し、会議室７１に参加する内部クライアント３Ｄ及び外部クライアント３Ｅを特定してもよい。これによって、外部サーバ２Ｅの外部プロセス６Ｅによって開催される会議室７１と、内部サーバ２Ｄの内部プロセス６Ｄによって開催される会議室７１とのそれぞれの遠隔会議の制御が連携されてもよい。
【００８３】
制御装置５の制御部５１は、内部サーバ及び外部サーバの少なくとも一方から完了通知を受信しなかった場合（Ｓ６５：ＮＯ）連携に失敗した内部サーバ及び外部サーバに対して、連携指示を繰り返し送信してもよい。
【００８４】
図９（Ｃ）に示す状態で、制御装置５から内部サーバ２Ｄ及び外部サーバ２Ｅに連携指示が送信された場合、連携指示を受信した内部サーバ２Ｄと外部サーバ２Ｅとが連携された後、内部クライアント３Ｄと内部プロセス６Ｄとの間でセッションが接続され、内部クライアント３Ｄと外部プロセス６Ｅとの間でセッションが切断されてもよい。つまり、内部プロセス６Ｄと外部プロセス６Ｅとの連携のタイミグと、内部クライアント３Ｄを内部プロセス６Ｄに接続させ且つ外部プロセス６Ｅから切断させるタイミングとは、同一であってもよい。
【００８５】
第２会議室テーブル９４には、開催予定の会議室７に関する情報だけでなく、クライアント３が参加しようとしている会議室７に関する情報が記憶されていてもよい。
【００８６】
＜その他＞
ＬＡＮ１Ａは、本発明の「第１ネットワーク」の一例である。ＷＡＮ１Ｂは、本発明の「第２ネットワーク」の一例である。クライアントテーブル９２に記憶された情報は、本発明の「クライアント情報」の一例である。Ｓ１１の処理は、本発明の「取得ステップ」の一例である。Ｓ１３の処理は、本発明の「第１判定ステップ」の一例である。Ｓ１７の処理は、本発明の「決定ステップ」の一例である。Ｓ２１、Ｓ１０３の処理は、本発明の「第１実行ステップ」の一例である。Ｓ５３の処理は、本発明の「第２判定ステップ」の一例である。Ｓ５９の処理は、本発明の「第２実行ステップ」の一例である。Ｓ６１の処理は、本発明の「連携ステップ」の一例である。Ｓ６７の処理は、本発明の「第３実行ステップ」の一例である。Ｓ１０１の処理は、本発明の「通知ステップ」の一例である。Ｓ１０３の処理は、本発明の「送信ステップ」の一例である。
【符号の説明】
【００８７】
１        ：通信システム
２        ：会議サーバ
３        ：クライアント
５        ：制御装置
６        ：プロセス
７        ：会議室
９１      ：会議サーバテーブル
９２      ：クライアントテーブル
９３      ：第１会議室テーブル
９４      ：第２会議室テーブル
９５      ：許可設定情報
【図１】
2019066970.tif 000003
【図２】
2019066970.tif 000004
【図３】
2019066970.tif 000005
【図４】
2019066970.tif 000006
【図５】
2019066970.tif 000007
【図６】
2019066970.tif 000008
【図７】
2019066970.tif 000009
【図８】
2019066970.tif 000010
【図９】
2019066970.tif 000011
【図１０】
2019066970.tif 000012