以下、図面を参照し、本発明の実施の形態を詳細に説明する。図1は、本発明の第1実施形態の通信システムの構成を示している。通信システム100は、ネットワーク接続された複数の端末装置10とサーバ装置20とを備える。図1では、サーバ装置20を1台としているが、サーバ装置20を複数台備える構成とすることもできる。各端末装置10は、データ処理装置11、及び、記憶装置12を有する。サーバ装置20は、データ処理装置21、記憶装置22、及び、通信補助装置23を備える。端末装置10及びサーバ装置20は、それぞれ、例えば、パーソナルコンピュータやワークステーション等のコンピュータシステムで構成される。
データ処理装置11は、セッション管理手段111、通信ツールクライアント手段112、サーバ決定手段113、装置状態管理手段114、及び、通信ツールサーバ手段115を備える。記憶装置12は、通信情報管理部121、サーバ決定ルール保存部122、装置情報保存部123、及び、アドレス管理部124を備える。サーバ装置20内のデータ処理装置21は、セッション管理手段211、通信ツールサーバ手段212、及び、装置状態管理手段213を備える。記憶装置22は、通信情報管理部221と、装置情報保存部222とを備える。
セッション管理手段111は、装置間の接続状態を管理する。通信ツールクライアント手段112は、ユーザが操作するためのUI(ユーザインタフェース)を持ち、ユーザに、コミュニケーションツールの端末機能を提供する。通信ツールクライアント手段112は、ユーザにマルチメディア通信機能を提供し、一つの通信において、様々なコミュニケーションツール、例えば、音声通話、ビデオ、ホワイトボード共有、資料共有、チャットなどを同時に利用可能とする。端末装置10内の通信ツールサーバ手段115、及び、サーバ装置20内の通信ツールサーバ手段212は、通信ツールクライアント手段112に対して、コミュニケーションツールのサーバ機能を提供する。
通信ツールクライアント手段112が、他の端末装置10の通信ツールクライアント手段112と通信する形態としては、2つの形態がある。図2に、通信ツールクライアント手段112の第1の通信形態を示す。なお、同図では、図1に示す端末装置10の要素の一部を省略して図示している。第1の通信形態は、通信に参加する複数の端末装置10のうちの何れかの通信ツールサーバ手段115を稼動させ、その通信ツールサーバ手段115に、通信に参加する端末装置10の通信ツールクライアント手段112を接続する形態である。図2では、端末装置Aの通信ツールサーバ手段115を稼動させ、端末装置A、B、Cの通信ツールクライアント手段112を、端末装置Aの通信ツールサーバ手段115に接続している。この例では、端末装置Aの通信ツールサーバ手段115が提供するサーバ機能により、端末装置A、B、C内の通信ツールクライアント手段112の間で通信が実現される。
図3に、通信ツールクライアント手段112の第2の通信形態を示す。第2の通信形態は、サーバ装置20の通信ツールサーバ手段212を稼動させ、その通信ツールサーバ手段212に、通信に参加する端末装置10の通信ツールクライアント手段112を接続する形態である。図3では、端末装置A、B、C内の通信ツールクライアント手段112を、サーバ装置20の通信ツールサーバ手段212に接続している。この例では、サーバ装置20の通信ツールサーバ手段212が提供するサーバ機能により、端末装置A、B、C内の通信ツールクライアント手段112の間で通信が実現される。
ここで、端末装置10及びサーバ装置20は、共にコンピュータシステムとして構成されるが、端末装置10は、汎用性を有しており、ユーザにより、通信以外にも様々な業務で用いられることを前提としているのに対し、サーバ装置20は、サーバ機能の提供を主目的とし、同時に多くの通信を実行する能力を有している。このため、一般に、サーバ装置20のデータ処理装置21は、端末装置10のデータ処理装置11よりも性能が高く、サーバ装置20の通信ツールサーバ手段212は、端末装置10の通信ツールサーバ手段115では処理能力の点から提供することが難しい機能、例えば、複数端末からの音声を一つにまとめる音声ミキシングや、ビデオの圧縮などの機能の提供が可能である。また、そのような機能を特別のハードウェア(図1の通信補助装置23)によって実現することも可能である。ただし、その場合には、装置として高価となる。
通信システム100では、通信ツールクライアント手段112間の通信は、全て、サーバ手段を経由するため、通信を、全てサーバ装置20の通信ツールサーバ手段212を用いて実現する場合には、サーバ装置20にアクセスが集中して、サーバ装置20の増強を余儀なくされる場合がある。また、通信を、全て端末装置10の通信ツールサーバ手段115を用いて実現すると、端末装置10の処理能力の問題等から、通信ツールサーバ手段115での処理が滞り、通信遅延や通信品質の劣化などの品質問題が発生することがある。そこで、本実施形態では、サーバ決定ルール保存部122に、端末装置10の通信ツールサーバ手段115、又は、サーバ装置20の通信ツールサーバ手段212の何れを稼動させるかを決定するためのルールを記憶しておき、このルールに基づいて、通信ツールサーバ手段115又は212の何れを用いるかを決定し、通信ツールサーバ手段を、通信に対して相応の処理能力を有する装置で稼動させる。
サーバ決定手段113は、サーバ決定ルール保存部122を参照して、端末装置10の通信ツールサーバ手段115を用いるか、又は、サーバ装置20の通信ツールサーバ手段212を用いるか、つまり、第1の通信形態で通信を行うか、或いは、第2の通信形態で通信を行うかを決定する。その際、サーバ決定手段113は、端末装置10の状態情報や、サーバ装置20の状態情報、通信における通信条件、通信目的などを参照して、何れの通信ツールサーバ手段を用いるかを決定する。サーバ決定手段113は、通信に、端末装置10の通信ツールサーバ手段115を用いると決定すると、通信ツールサーバ手段115を稼動させ、通信ツールクライアント手段112を通信ツールサーバ手段115に接続させて、通信を開始させる。また、サーバ装置の通信ツール212を用いると決定すると、通信ツールクライアント手段112を通信ツールサーバ手段212に接続させて、通信を開始させる。
通信ツールサーバ手段115は、稼働中(通信中)に、実行中の通信に関する情報を、通信情報管理部121に保存する。同様に、サーバ装置20の通信ツールサーバ手段212は、実行中の通信に関する情報を、通信情報管理部221に保存する。装置情報保存部123及び222は、装置個々の能力・機能に関する情報を保持する。装置状態管理手段114及び213は、動的に変化する各装置の負荷状況を管理すると共に、装置情報保存部123、222に保存された、装置個々の能力・機能に関する情報の提供を行う。アドレス管理部124は、端末装置10及びサーバ装置20のアドレス情報を保持する。
以下、通信システム100の動作手順について詳細に説明する。通信システム100の動作は、大きく分けて、状態情報取得の動作、通信開始時のサーバ手段選択の動作、及び、サーバ手段再選択の動作の3つから成る。まず、状態情報の取得について説明する。状態情報の取得では、端末装置10の装置状態管理手段114は、定期的に、サーバ装置20の装置状態管理手段213より、サーバ装置20の状態情報を取得する。このサーバ装置20の状態情報の取得は、サーバ装置20による通信実行の有無とは無関係に、定期的に行う。装置状態管理手段114は、取得したサーバ装置20の状態情報を、装置情報保存部123に保存する。
図4に、状態情報取得の様子を示す。この例では、端末装置Aは、サーバ装置Aに対して状態情報の取得を要求し、サーバ装置Aは、その要求に従って、端末装置Aに状態情報を提供する。また、端末装置Bは、サーバ装置A及びサーバ装置Bに対してそれぞれ状態情報の取得を要求し、サーバ装置A及びサーバ装置Bは、それぞれ端末装置Bに状態情報を提供する。端末装置10が取得する状態情報は、情報取得時点でのサーバ装置20の負荷情報、例えばCPUの利用率情報やメモリの使用量情報である。端末装置10は、サーバ装置20の通信ツールサーバ手段212が、音声ミキシングやビデオ圧縮などの高度な機能を実行可能であれば、その情報も取得する。また、サーバ装置20が、通信補助装置23を備える場合には、その通信補助装置23が実行可能な機能の情報を取得する。
次いで、通信開始時のサーバ手段選択の動作について説明する。図5は、サーバ決定手段113が、通信開始時に、稼動する通信ツールサーバ手段を決定する際の動作手順を示している。ユーザは、通信開始に際して、端末装置10の通信ツールクライアント手段112を操作し、通信パラメータ等を入力して、通信準備を開始する(ステップA1)。通信パラメータの設定では、通信相手の指定を行う。また、音声通話、ビデオ、ホワイトボード共有、資料共有、チャットなどの通信ツールの中から、同時に利用する通信ツールを1以上選択する。通信パラメータの設定では、通話、プレゼンテーションなど通信目的の指定を行ってもよい。
通信パラメータの設定が完了すると、通信ツールクライアント手段112は、入力内容をサーバ決定手段113に送信し、これから開始する通信において、通信ツールサーバ手段として、サーバ装置20の通信ツールサーバ手段212を利用するか、或いは、自端末装置10の通信ツールサーバ手段115を利用するのかの決定を依頼する(ステップA2)。サーバ決定手段113は、装置状態管理手段114から、自端末装置10及びサーバ装置20の状態情報を取得し(ステップA3)、取得した状態情報と、入力された通信パラメータと、サーバ決定ルール保存部122に保存されたルールとに基づいて、利用する通信ツールサーバ手段を決定する(ステップA4)。
ステップA4での通信ツールサーバ手段の決定に用いられるルールとしては、例えば、通信パラメータにおける通信相手の指定情報を用いた「通信参加人数が所定の人数以上であればサーバ装置20を利用し、未満であれば端末装置10を利用する」といったルールや、負荷状態情報を用いた「端末装置10(サーバ装置20)のCPU使用率が、所定の値以下であれば端末装置(サーバ装置)を利用する」といったルールが考えられる。また、利用する通信ツールの種類や通信目的の指定に対して、「利用する通信ツールの数が所定の数以上ならサーバ装置20を利用し、未満なら端末装置10を利用する」、「負荷の高い資料共有ツールを利用する場合はサーバ装置20を利用する」、「ビデオを利用する場合であって、サーバ装置20に動画圧縮機能や専用ハードウェアがある場合にはサーバ装置20を利用する」といったルールを適用することもできる。これらルールは、単独で、或いは、複数のルールを組み合わせて適用することができる。
通信ツールクライアント手段112は、ステップA4で決定された通信ツールサーバ手段が、サーバ装置20の通信ツールサーバ手段212であるか、或いは、端末装置10(自装置)の通信ツールサーバ手段115であるかを判断する(ステップA5)。通信ツールクライアント手段112は、ステップA4で、自装置の通信ツールサーバ手段115を利用すると決定された場合には、ステップA1で入力された通信パラメータ情報を、通信ツールサーバ手段115に入力し、通信準備を依頼する(ステップA6)。
通信ツールクライアント手段112は、ステップA4で、サーバ装置20の通信ツールサーバ手段212を利用すると決定された場合には、セッション管理手段111に、サーバ装置20への接続を依頼する。セッション管理手段111は、アドレス管理部124に保持されたサーバ装置20のアドレス情報に基づいて、サーバ装置20のセッション管理手段211に接続する(ステップA7)。これにより、通信ツールクライアント手段112と通信ツールサーバ手段212とが通信可能な状態となる。その後、通信ツールクライアント手段112は、アドレス管理部124から、ステップA1で入力された通信パラメータ情報に含まれる通信相手のアドレス情報を取得し、このアドレス情報と、通信パラメータ情報とを通信ツールサーバ手段212に送信し、通信準備を依頼する(ステップA8)。
通信ツールクライアント手段115又は212は、セッション管理手段111又は211を介して、通信に参加する端末装置10を呼び出し、通信ツールクライアント手段112と通信可能にするように依頼する(ステップA9)。このとき、端末装置10内の通信ツールサーバ手段115を用いる場合には、通信ツールサーバ手段115は、アドレス管理部124から、通信相手のアドレス情報を取得し、通信相手の端末装置10を呼び出す。また、サーバ装置20の通信ツールサーバ手段212を用いる場合には、ステップA8で受信した通信相手のアドレス情報に基づいて、通信相手の端末装置10を呼び出す。セッション管理手段111又は211は、通信相手の端末装置10のセッション管理手段111に接続し、通信相手の端末装置10の通信ツールクライアント手段112と、通信ツールサーバ手段115又は212との通信を開始させる(ステップA10)。その後、通信ツールクライアント手段112と、通信相手の端末装置10の通信ツールクライアント手段112とが、通信ツールサーバ手段115又は212が提供するサーバ機能を用いて、通信を行う。
最後に、サーバ手段再選択時の動作について説明する。図5に示す手順に従って、端末装置10が、自装置の通信ツールサーバ手段115を用いて通信を開始した場合、その後、端末装置10の負荷が上昇すること等により、自装置の通信ツールサーバ手段115を用いて通信を継続するには不適当な状態となることがある。そのような状態が検出されたときには、サーバ決定手段113により、通信に用いる通信ツールサーバ手段を、他の端末装置10の通信ツールサーバ手段115、又は、サーバ装置20の通信ツールサーバ手段212に動的に変更し、通信品質の維持を図る。通信ツールサーバ手段の再選択では、あらかじめ定めておいた回数までは、通信に用いる通信ツールサーバ手段を、他の端末装置10の通信ツールサーバ手段115に変更し、既定値を超えた場合、及び、通信ツールサーバ手段を稼動させるのに適当な端末装置10が存在しないときには、通信に用いる通信ツールサーバ手段を、サーバ装置20の通信ツールサーバ手段212に変更する。
図6は、サーバ手段再選択の動作手順を示している。通信ツールサーバ手段115が動作する端末装置10上のサーバ決定手段113は、問題状態を検出する(ステップB1)。この問題状態の検知としては、通信ツールサーバ手段115が動作する端末装置10自身が問題状態を検知する場合と、通信に参加する他の端末装置10からの通知に基づいて問題状態を検知する場合との2つのケースが考えられる。前者のケースでは、例えば、負荷状況を管理する装置状態管理手段114が、端末装置10の負荷が所定のしきい値を超えた状態を検出し、或いは、負荷がしきい値を超える状態が所定時間以上継続する状態を検出し、サーバ決定手段113が、その状態の検出の通知を受けることで、問題状態を検知する。また、後者のケースでは、他の端末装置10の通信ツールクライアント手段112が、通信の遅延や欠落を検知し、その旨を稼働中の通信ツールサーバ手段115に通知して、サーバ決定手段113が、その通知の転送を受けることで、問題状態を検知する。また、端末装置10の負荷上昇は、参加者の増加や利用ツールの追加に伴って発生することが多いので、新たな参加者の追加や、利用するツールの追加があった場合に、通信ツールサーバ手段115からサーバ決定手段113にその旨を通知し、サーバ決定手段113が、参加者/ツール数が所定の数を超えたことを検出した場合に、負荷上昇に先んじて問題状態を検知してもよい。
サーバ決定手段113は、問題状態を検知すると、通信ツールサーバ手段115に対して、通信開始から現在まで、既に行った、サーバ手段の再選択に伴う通信ツールサーバ手段の移動回数を問い合わせる。通信ツールサーバ手段115は、通信情報管理部121を参照して、通信ツールサーバ手段の移動回数を取得し、これをサーバ決定手段113に報告する。サーバ決定手段113は、移動回数の報告を受けると、移動回数が既定値以下であるか否かを判断する(ステップB2)。サーバ決定手段113は、移動回数が既定値を超えると判断すると、端末装置10間の通信ツールサーバ手段の移動では対応できないと判断し、サーバ装置20の通信ツールサーバ手段212を利用すると決定する(ステップB6)。ステップB6では、サーバ決定手段113は、利用可能なサーバ装置20が複数ある場合には、装置状態管理手段114から各サーバ装置20の状態情報を取得し、利用可能なサーバ装置20のうちで、どのサーバ装置20の通信ツールサーバ手段212を稼動させるかを決定する。
サーバ決定手段113は、ステップB2で、移動回数が既定値以下であると判断すると、通信に用いる通信ツールサーバ手段を、自装置の通信ツールサーバ手段115から、通信に参加する他の端末装置10の通信ツールサーバ手段115に変更すると決定する。この場合、サーバ決定手段113は、通信ツールサーバ手段115を介して、各端末装置10の状態情報を取得する(ステップB3)。状態情報の取得では、サーバ決定手段113は、通信ツールサーバ手段115に対して、通信中の他の各端末装置10の通信ツールクライアント手段112から、各端末装置10の状態情報を取得するように依頼する。通信ツールサーバ手段115は、各端末装置10の通信ツールクライアント手段112に対して状態情報の送信を依頼する。この依頼を受けた通信ツールクライアント手段112は、装置状態管理手段114によって状態情報を取得し、所得した状態情報を、通信ツールサーバ手段115に送信し、通信ツールサーバ手段115は、受信した状態情報を、サーバ決定手段113に受け渡す。
サーバ決定手段113は、各端末装置10の状態情報を取得すると、取得した状態情報と、サーバ決定ルール保存部122が保持するルールとに基づいて、通信ツールサーバ手段115を稼動させる端末装置10を決定する(ステップB4)。ここでのルールとしては、例えば「最も負荷の低い端末装置10を利用する」といったものが考えられる。また、「最も負荷の低い端末装置10で、かつ、負荷がある一定値以下」といったものであってもよい。アドレス管理部124が、端末装置10間のトポロジ情報を保持する場合は、サーバ決定手段113がそれを参照して、通信ツールサーバ手段115を稼動させる端末装置10の決定に用いてもよい。この場合には、例えば、「他の端末とのネットワーク的な距離の平均が最も小さく、かつ、ある一定値以下の負荷の端末装置を利用」というルールも考えられる。これらルールは、単独で、或いは、複数を組み合わせて用いることができる。
サーバ決定手段113は、ステップB4で、通信ツールサーバ手段115を稼動させる端末装置10を決定できたか否かを判断する(ステップB5)。ステップB4で、ルールに合致する端末装置10がない場合には、ステップB5では、通信ツールサーバ手段115を稼動させる端末装置がなかったと判断される。この場合には、ステップB6へ移行し、サーバ装置20の通信ツールサーバ手段212を利用すると決定する。
サーバ決定手段113は、稼動する通信ツールサーバ手段の決定後、稼動すべき通信ツールサーバ手段115又は212(以下、新たに稼動させる通信ツールサーバ手段を、新サーバ手段とも呼ぶ)を有する端末装置10又はサーバ装置20に対して、装置内の通信ツールサーバ手段が、稼働中の通信のサーバ手段として選択された旨を通知し、通信情報管理部121が保持する通信パラメータ等を送信する(ステップB7)。新サーバ手段は、受信した情報を通信情報管理部121、221に保存し、その情報に基づいて、通信の準備を行う。その際、新サーバ手段は、サーバ手段の移動回数をインクリメントして、通信情報管理部121、221に保存する。
新サーバ手段は、通信情報管理部121、221に保存した情報を参照して、通信に参加している端末装置10を特定し、セッション管理手段111、211により、通信参加中の端末装置10を呼び出す(ステップB8)。セッション管理手段111、211は、アドレス管理部124に保持された通信参加中の端末装置10のアドレス情報に基づいて、端末装置10のセッション管理手段111に接続し、通信参加中の端末装置10の通信ツールクライアント手段112と、新サーバ手段との間の通信を開始させる(ステップB9)。
通信参加中の全ての端末装置10の通信ツールクライアント手段112と、新たに稼動する新サーバ手段との間の通信が開始されると、新サーバ手段は、これまでサーバ手段として用いられてきた通信ツールサーバ手段115(以下、旧サーバ手段とも呼ぶ)に対して、サーバ手段の切替えの完了を通知する(ステップB10)。旧サーバ手段は、この通知を受けると、通信ツールクライアント手段112との間の通信を終了し(ステップB11)、新サーバ手段を用いた通信を開始する。その後、このような手順に従って新たに稼動した新サーバ手段が、何れかの端末装置10の通信ツールサーバ手段115であった場合には、図6のステップB1の問題状態の検知を契機としてサーバ手段の再選択処理を実行し、利用するサーバ手段の変更を繰り返し実施する。
本実施形態では、端末装置10とサーバ装置20との双方に通信ツールサーバ手段を用意しておき、通信開始時に、所定のルールや通信パラメータ等に従って、端末装置10の通信ツールサーバ手段115を用いるか、或いは、サーバ装置20の通信ツールサーバ手段212を用いるかを決定する。この通信開始時の通信ツールサーバ手段の選択において、端末装置10の通信ツールサーバ手段115を優先して選択させることにより、高価なサーバ装置20の利用を最小限にすることができ、サーバ装置20の通信ツールサーバ手段212を、要求される通信品質がより高度な通信に専念させることで、サーバ装置20の利用効率を向上して、システム全体として、通信品質を向上させることができる。
また、本実施形態では、サーバ手段として、端末装置10の通信ツールサーバ手段115が選択された場合であって、通信中に、通信に参加者が増加し、或いは、端末装置10の負荷が増大するなどして、通信品質の維持が困難になるときには、利用する通信ツールサーバ手段を、他の端末装置10の通信ツールサーバ手段115、又は、サーバ装置20の通信ツールサーバ手段212に、動的に変更する。このようにすることで、通信品質の劣化を防止することができ、ユーザに提供する通信品質を、一定の水準に保つことができる。また、通信開始時又はサーバ手段の再選択時におけるサーバ手段の選択の際に、通信参加人数や、装置負荷、利用アプリケーション、ネットワーク状態など、様々な情報を利用することにより、通信ツールサーバ手段を稼動すべき装置を、多面的に決定することが可能になる。
以下、具体例を用いて説明する。図7は、通信システム100の具体的な構成例を示している。この例では、端末装置10は、端末装置x、y、zの3つがある。また、サーバ装置20は、サーバ装置a、bの2つがある。各端末装置10及びサーバ装置20は、それぞれの設置拠点のLANに接続される。図7の例では、端末装置x、y及びサーバ装置aは、LAN(A)151に接続させ、端末装置zは、LAN(B)152に接続され、サーバ装置bは、LAN(C)153に接続される。各LAN151〜153は、WAN154によって相互に接続され、全体としてイントラネットが構成されている。各LAN及びWANでのネットワークプロトコルは、インターネットプロトコルとする。
各端末装置10及び各サーバ装置20のデータ処理装置11、21(図1)は、中央演算装置とメモリとを有する計算機として構成される。記憶装置12、22は、ハードディスクとして構成される。データ処理装置11、21では、メモリ上のコンピュータプログラムを中央演算装置で実行することにより、図1に示す各種手段の機能が実現する。端末装置x及びyが使用可能なサーバ装置は、サーバ装置aであり、通信開始前の状態情報の取得では、端末装置x及びyは、サーバ装置aから情報を取得する。また、端末装置zが使用可能なサーバ装置はサーバ装置bであり、端末装置zは、サーバ装置bから情報を取得する。情報取得間隔については1分とする。収集される情報は、サーバ装置20の負荷情報と、サーバ装置20が有する通信補助装置23(図1)の情報である。サーバ装置a及びbは、それぞれ、通信補助装置23として、ビデオ圧縮ボードを有しており、端末装置x、y、zは、情報を収集することで、サーバ装置20がビデオ圧縮ボードを有することを認識する。
ユーザAが、端末装置xから通信を開始する場合を考える。ユーザAは、図5のステップA1で、端末装置x上のユーザインタフェースを操作して、通信パラメータを入力する。このとき、ユーザAは、通信パラメータとして、通信相手が「ユーザB、ユーザC」の2名であり、通信ツールとして、「音声通話、ビデオ、資料共有」の3つを利用する旨を指定する。通信パラメータの入力が完了すると、端末装置xでは、ステップA2で、サーバ決定手段113に対して、サーバ手段の決定処理が依頼される。
サーバ決定ルール保存部122には、サーバ手段決定のルールとして、下記条件が満たされるときには、サーバ装置20の通信ツールサーバ手段212を用いる旨のルールを記憶している。
1.通信相手が5人以上
2.通信ツールとしてビデオを利用し、かつ、自端末のCPU使用率が50%以上
ステップA3で、サーバ装置aの状態情報として、「CPU使用率:30%、ビデオ圧縮ボード所有」が取得され、自端末の状態情報として「CPU使用率:40%」が取得されていた場合には、上記条件には当てはまらないため、ステップA4では、利用するサーバ手段を、端末装置xの通信ツールサーバ手段115と決定する。
端末装置xは、ステップA6で、通信ツールサーバ手段115(サーバ手段を構築するためのプログラム)を起動し、ステップA1で入力された通信パラメータを、通信ツールサーバ手段115に引き渡して、通信準備を開始する。通信準備が完了すると、端末装置xは、ステップA9で、通信に参加するユーザB、及び、ユーザCの端末装置10を呼び出す。図8は、アドレス管理部124が保持する情報の具体例を示しており、セッション管理手段111は、同図に示すアドレステーブルを参照して、ユーザBの端末装置yのアドレス「192.168.1.2」と、ユーザCの端末装置zのアドレス「192.168.10.27」とを取得して、それぞれに対して、呼び出しを行う。端末装置y及びzが、この呼び出しに応答することで、ステップA10で、三者間の通信が開始される。
三者での通信の継続中に、ユーザAが、必要な動画資料を端末装置x上で展開し、端末装置xのCPU負荷が50%を超えた状態が一分間継続したとする。この場合、図6のステップB1で、問題状態が検知され、サーバ手段の再選択が実行される。これまでのサーバ手段の移動回数が“0”であるとすると、ステップB2からステップB3へ移行して、サーバ決定手段113は、他のユーザが使用する端末装置y及びzの状態情報として、CPU使用率情報を収集する。サーバ決定ルール保存部122に記憶された、サーバ再選択時のルールが「最もCPU使用率の低い端末装置が、使用率40%未満の場合には、その端末装置を利用する」であり、かつ、端末装置y、端末装置zのCPU使用率がそれぞれ45%、47%であった場合には、条件に合致する端末装置10が存在しないので、ステップB5からステップB6へ進み、利用するサーバ手段を、端末装置xが状態情報を取得しているサーバ装置aの通信ツールサーバ手段212と決定する。
端末装置xのサーバ決定手段113は、ステップB7で、サーバ装置aに対し、実行中の通信受入れ要求と、現在実行中の通信に関する情報を送信する。実行中の通信に関する情報は、具体的には、
・[ユーザ名、端末装置名、端末装置のアドレス]の組合わせ
[ユーザA、端末装置x、192.168.1.1]
[ユーザB、端末装置y、192.168.1.2]
[ユーザC、端末装置z、192.168.10.27]
・利用中の通信ツール:音声通話、ビデオ、資料共有
・サーバ手段の移動回数:0
を含む。この情報を受信したサーバ装置aでは、サーバ手段の移動回数をカウントアップし、受信した情報に従って、通信の準備を行う。準備が完了すると、ステップB8で、アドレス192.168.1.1の端末装置x、アドレス192.168.1.2の端末装置y、及び、アドレス192.168.10.27の端末装置zのそれぞれに対し、通信ツールクライアント手段112を呼び出す。各端末装置10の通信ツールクライアント手段112が、この呼出しに応じると、ステップB9で、サーバ装置aと各端末装置10との間の通信が開始される。
サーバ装置aの通信ツールサーバ手段212(新サーバ手段)は、各端末装置10との間の通信を開始すると、ステップB10で、端末装置xの通信ツールサーバ手段115(旧サーバ手段)に対して、切替え完了を通知する。この通知を受けた端末装置xの通信ツールサーバ手段115は、ステップB11で、他の端末装置10との間の通信を終了する。以上で、サーバ手段の再選択の処理が終了し、端末装置x、y、zは、その後、サーバ装置aの通信ツールサーバ手段212を利用して、通信を行う。利用するサーバ手段がサーバ装置20の通信ツールサーバ手段212であるので、その後サーバの再選択は発生せず、通信終了まで、通信ツールサーバ手段212を利用して通信が行われる。
図9は、本発明の第2実施形態の通信システムの構成を示している。本実施形態では、通信システム100aは、図1に示す構成に加えて、各端末装置の状態情報の管理、及び、ユーザの属するグループの管理を行う呼制御サーバ40を備える。また、端末装置30のデータ処理装置31が、図1に示す構成に加えて、グループ管理手段311を備え、記憶装置32が、アドレス管理部124(図1)を有していない。呼制御サーバ40は、コンピュータシステムとして構成され、データ処理装置41、及び、記憶装置42を備える。データ処理装置41は、呼制御手段411と、状態情報管理手段412とを有する。記憶装置42は、ユーザ情報管理部421と、グループ情報管理部422とを有する。
呼制御手段411は、端末装置30のアドレス情報を収集する。状態情報管理手段412は、各ユーザの状態情報を管理する。管理する状態情報としては、例えば、現在通信可能か否かを示す情報や、特定の通信ツールで通信可能である旨を示す情報等が考えられる。ユーザ情報管理部421は、呼制御手段411が扱うアドレス情報、及び、状態情報管理手段412が扱うユーザの状態情報を保存する。グループ情報管理部422は、各ユーザのグループ情報を保持する。端末装置30のグループ管理手段311は、状態情報管理手段412から、ユーザが所属するグループメンバの「状態」を取得し、これを管理・表示する。このグループ管理手段311を用いることにより、ユーザは、他のユーザの状態を確認した後に通信を開始できるようになる。
本実施形態における通信システム100aの動作は、状態情報取得の動作、通信開始時サーバ手段選択の動作、及び、サーバ手段再選択の動作に加えて、クライアント起動時の動作を有する。状態情報の取得、及び、サーバ手段の再選択時の動作については、第1実施形態と同様である。まず、クライアント起動時の動作手順について説明する。図10は、本実施形態の通信システム100aにおけるクライアント起動時の処理手順を示している。この処理は、通信ツールクライアント手段112が、状態情報を取得する処理を開始する前に実行される。具体的には、通信ツールクライアント手段112の起動時に実行される。
グループ管理手段311は、通信ツールクライアント手段112が起動すると、呼制御手段411に対して、ユーザIDと端末装置30のネットワークアドレスとを通知する(ステップC1)。ユーザIDは、通信ツールクライアント手段112の起動時に、通信ツールクライアント手段112側から送信される。アドレスは、起動時に、通信ツールクライアント手段112側から送信される。または、グループ管理手段311が、端末装置30からアドレス情報を取得してもよい。通知を受けた呼制御手段411は、ユーザIDとアドレスとを対応付けて、ユーザ情報管理部421に保存する(ステップC2)。その後、グループ管理手段311は、状態情報管理手段412から、グループ情報と、ユーザ状態情報とを取得する(ステップC3)。
ステップC3では、グループ管理手段311は、状態情報管理手段412に、ユーザIDを通知し、そのユーザのグループ情報及びそのグループに属するユーザの状態情報の送信を要求する。状態情報管理手段412は、ユーザのグループと構成ユーザ情報とを記憶するグループ情報管理部422を参照して、要求されたユーザIDのユーザに関するグループと、その構成ユーザ情報とを取得し、グループ管理手段311に送信する。また、ユーザ情報管理部421を参照して、グループを構成するユーザの個々の状態情報を取得し、グループ管理手段311に送信する。
グループ管理手段311は、状態情報管理手段412に対して、自ユーザの状態情報を通知する(ステップC4)。状態情報管理手段412は、通知された情報を、ユーザ情報管理部421に保存する(ステップC5)。その後、状態が変わったか否かを判断し(ステップC6)、ユーザの状態が変更されたときには、変更のたびに、状態情報管理手段412に対して通知を行い、ユーザ情報管理部421に保存された状態情報を更新する。更新された状態情報は、更新が行われるたびに、同じグループに所属するユーザのグループ管理手段311に通知される。或いは、定期的に、グループ管理手段311と状態情報管理手段412とが情報交換することにより、他ユーザのグループ管理手段311へ通知される。
次いで、本実施形態における通信開始時のサーバ手段選択の動作手順を説明する。図11は、本実施形態の通信システム100aにおける通信開始時のサーバ手段の選択の処理手順を示している。ステップA1の通信パラメータ設定、及び、ステップA2のサーバ決定の依頼は、第1実施形態の動作(図5)と同様である。サーバ決定手段113は、サーバ決定の依頼を受けると、グループ管理手段311により、通信相手の端末装置30の状態情報を取得する。また、装置状態管理手段114により、自端末の状態情報を取得する(ステップD1)。
サーバ決定手段113は、取得した情報、ステップA1で入力された通信パラメータ、及び、サーバ決定ルール保存部122に保存されたルールに従って、自端末を含む通信に参加する端末装置30の中から、通信ツールサーバ手段115を稼動させる端末装置30を決定する(ステップD2)。ステップD2で用いるルールには、第1実施形態におけるサーバ再選択時のルールと同様に、例えば「最も負荷の低い端末装置を利用する」などが考えられる。また「最も負荷の低い端末装置で、かつ負荷がある一定値以下」や「通信参加人数がある人数以上であればサーバ装置利用」、「負荷の高い資料共有ツールを利用する場合はサーバ装置利用」といったルールや、サーバ装置20の存在を前提にしたルールでもよい。これらルールは、単独で、或いは、複数を組み合わせて用いることもできる。
サーバ決定手段113は、ステップD2で、通信ツールサーバ手段115を稼動させる端末装置30を決定できたか否かを判断する(ステップD3)。ステップD2で、ルールに合致する端末装置30がない場合には、ステップD3では、通信ツールサーバ手段115を稼動させる端末装置30がなかったと判断される。この場合には、サーバ決定手段113は、装置状態管理手段114よりサーバ装置20の状態情報を取得し(ステップD4)、サーバ決定ルール保存部122に保存されたルールに従って、通信ツールサーバ手段212を利用するサーバ装置20を決定する(ステップD5)。
サーバ決定手段113は、通信ツールサーバ手段を稼動すべき装置の決定での判断結果、つまり、端末装置30の通信ツールサーバ手段115を用いるか、或いは、サーバ装置20に通信ツールサーバ手段212を用いるかの判断結果を、通信ツールクライアント手段112に返信する(ステップD6)。通信ツールクライアント手段112は、通信ツールサーバ手段を稼動させる装置(以下、サーバ手段稼動装置とも呼ぶ)が、自端末装置30であるか否かを判断する(ステップD7)。通信ツールクライアント手段112は、サーバ手段稼動装置が自端末装置30以外、つまり、他の端末装置30又はサーバ装置20であれば、セッション管理手段111に、サーバ手段稼動装置への接続を依頼する。セッション管理手段111は、呼制御手段411の仲介により、サーバ手段稼働装置のセッション管理手段111、211に接続し、通信ツールクライアント手段112と、通信ツールサーバ手段115又は212との通信を開始する(ステップD8)。
通信ツールクライアント手段112は、サーバ手段稼動装置が自端末装置30であれば、自端末装置30内の通信ツールサーバ手段115に、サーバ手段稼動装置が他の端末装置30又はサーバ装置20であれば、その端末装置30又はサーバ装置20の通信ツールサーバ手段115、212(以下、サーバ手段稼動装置の通信ツールサーバ手段を、初期通信ツールサーバ手段とも呼ぶ)に対して通信設定情報を送信し、通信準備を依頼する(ステップD9)。初期通信ツールサーバ手段は、準備完了後、サーバ手段稼動装置のセッション管理手段111、211(以下、ルートセッション管理手段とも呼ぶ)に対し、通信に参加する端末装置30を呼び出し、各端末装置30の通信ツールクライアント手段112との通信を可能にするように依頼する(ステップD10)。この依頼を受けたルートセッション管理手段は、呼制御手段411の仲介で、通信に参加する端末装置30のセッション管理手段111を呼び出す。その後、図5におけるステップA10と同様に、呼び出された端末装置30の通信ツールクライアント手段112と、初期通信ツールサーバ手段との間の通信を開始する。
本実施形態では、通信ツールクライアント手段112の起動時にアドレス情報をユーザ情報管理部421に保存し、ユーザ情報管理部421に保存されたアドレス情報を利用して通信を行う。このようにすることで、端末装置30がモバイル機器として構成され、端末装置30が移動して、ネットワークアドレスが変化する場合でも、通信が可能となる。また、通信開始時の通信ツールサーバ手段の選択に際して、通信に参加する端末装置30の中から、通信ツールサーバ手段を稼動させる端末装置30を選択するルールを適用することで、通信ツールサーバ手段を稼動させるのに適した端末装置30を選択することができる。
図12は、本発明の第3実施形態の通信システムの構成を示している。本実施形態の通信システム100bは、図1に示す第1実施形態の構成に加えて、サーバ装置情報ポータル50を有する。サーバ装置情報ポータル50は、データ処理装置51、及び、記憶装置52を備える。データ処理装置51は、サーバ装置情報管理手段511と、サーバ選択手段512とを有する。記憶装置52は、サーバ装置情報保存部521と、サーバ選択ルール保存部522とを有する。サーバ装置情報ポータル50は、複数存在するサーバ装置20のそれぞれから状態情報を収集し、端末装置10からの要求に応じて、サーバ装置20を選択する機能を提供する。
サーバ装置情報管理手段511は、サーバ装置20の装置状態管理手段213から状態情報を取得し、サーバ装置情報保存部521に保存する。サーバ選択ルール保存部522は、複数のサーバ装置20の中から、通信ツールサーバ手段212を稼動すべきサーバを選択する際のルールを保存する。サーバ選択手段512は、サーバ装置情報保存部521が保存するサーバ装置状態情報と、サーバ選択ルール保存部522が保存する選択ルールと基づき、サーバ装置情報管理手段511から与えられた条件に従って、サーバ装置20を選択する。
本実施形態の通信システム100bの動作は、通信開始時サーバ手段選択、及び、サーバ手段再選択の動作での、通信ツールサーバ手段212を稼動させるサーバ装置20を決定する際の動作が、第1実施形態と相違する。また、本実施形態では、端末装置10が事前にサーバ装置20の状態情報を取得する動作は不要である。通信開始時のサーバ手段選択の動作手順について説明する。図13は、本実施形態の通信システム100bにおける通信開始時のサーバ手段の選択の処理手順を示している。ステップA1の通信パラメータ設定、及び、ステップA2のサーバ決定の依頼は、第1実施形態の動作(図5)と同様である。サーバ決定手段113は、サーバ決定の依頼を受けると、装置状態管理手段114により、自端末の状態情報を取得する(ステップE1)。
サーバ決定手段113は、取得した自端末の状態情報、及び、通信ツールクライアント手段112から入力される通信パラメータ等の情報、及び、サーバ決定ルール保存部122に保存されたルールに従って、これから開始する通信で、自端末の通信ツールサーバ手段115を利用するか否かを判断する(ステップE2、E3)。ステップE2で用いるルールとしては、例えば、通信相手の指定情報より「通信参加人数がある人数以下であれば自端末を利用する」といったルールが考えられる。また、負荷状態情報より「CPU使用率がある数値以下であれば自端末を利用する」といったルールが考えられる。これらルールは、単独で、或いは、複数を組み合わせて用いることができる。ステップE3で、自端末の通信ツールサーバ手段115を利用すると判断した後の動作は、図5に示すステップA6以降の動作と同様である。
サーバ決定手段113は、ステップE3で、自端末の通信ツールサーバ手段115を利用しないと判断すると、装置状態管理手段114を介して、サーバ装置情報ポータル50のサーバ装置情報管理手段511に対して、ステップA1で入力された通信パラメータ等を送信し、通信に利用するのに適したサーバ装置20の選択を依頼する(ステップE4)。サーバ選択手段512は、サーバ装置情報管理手段511を介して通信パラメータ等の入力情報を受け取り、この入力情報と、サーバ装置情報保存部521に保存された状態情報と、サーバ選択ルール保存部522に保存されたサーバ手段選択のルールとに基づいて、サーバ装置情報保存部521に状態情報が保存された複数のサーバ装置20の中から、通信ツールサーバ手段212を稼動させるのに適したサーバ装置を選び出し、サーバ装置情報管理手段511に回答する(ステップE5)。
ステップE5でのサーバ手段選択のルールとしては、例えば「最もCPU負荷の低いサーバ装置を利用する」や、通信ツールが指定されている場合であれば「ビデオを利用する場合、動画圧縮機能や専用ハードウェアがあるサーバ装置を利用する」といったものが考えられる。サーバ装置情報管理手段511は、回答を受け取ると、装置状態管理手段114を介して、サーバ決定手段113に対し、選択結果を通知する。その後、図5のステップA7以降の動作と同様な動作により、ステップE5で選択されたサーバ装置20の通信ツールサーバ手段212を用いて、通信を実施する。
図14は、本実施形態の通信システム100bにおけるサーバ手段の再選択時の動作手順を示している。ステップB1の問題状態の検知から、ステップB5の通信参加中の端末装置10の中に通信ツールサーバ手段115を稼動すべき端末装置10が存在するか否かの判断までの動作は、図6に示す第1実施形態と同様である。また、通信参加中の端末装置10の中に、通信ツールサーバ手段115を稼動するべき端末装置10が存在すると判断された後の動作は、図6のステップB7以降の動作と同様である。
ステップB2でサーバ手段の移動回数が既定値を超えると判断されると、或いは、ステップB5で、利用可能な端末装置10が存在しないと判断されると、サーバ決定手段113は、図13のステップE4と同様な動作で、サーバ装置情報ポータル50に対して、サーバ装置20の選択を依頼する(ステップF1)。依頼を受けたサーバ装置情報ポータル50は、図13のステップE5と同様な動作で、通信ツールサーバ手段212を稼動させるべきサーバ装置20を決定し、これをサーバ決定手段113に回答する(ステップF2)。その後、図6のステップB7以降と同様な動作に手順で、通信ツールサーバ手段212を稼動させると決定されたサーバ装置20の通信ツールサーバ手段212と、各端末装置10の通信ツールクライアント手段112との間の通信を開始し、利用するサーバ手段を変更して、通信を継続する。
本実施形態では、サーバ装置20の状態情報を、サーバ装置情報ポータル50にて一括で管理し、通信ツールサーバ手段212を稼動させるサーバ装置20の決定を、サーバ装置情報ポータル50で行う。このようにすることで、各端末装置10は、サーバ装置情報ポータル50に対してアクセスするだけで、複数のサーバ装置20の中から、サーバ手段を稼動させるのに適したサーバ装置20を選択することができ、第1実施形態で、各端末装置10と各サーバ装置20との間で、状態情報の収集・提供を行った場合と同様の効果を得ることができる。また、サーバ装置情報ポータル50が、その時々の条件において、通信ツールサーバ手段212を稼動するのに適したサーバ装置20を選定することで、高価なサーバ装置20のリソースを利用する場合でも、複数のサーバ装置20のリソースを有効に活用しながら、個々の通信で、サーバ手段を稼動させるのに適したサーバ装置20を利用することが可能になる。
図15は、本発明の第4実施形態の通信システムの構成を示している。本実施形態の通信システム100cは、図9に示す第2実施形態の通信システム100aと、図12に示す第3実施形態の通信システム100bとを組み合わせた構成に相当する。本実施形態の通信システム100cにおけるクライアント起動時の処理は、図10に示す動作手順と同様な動作手順で実行される。また、通信開始時のサーバ手段の選択、及び、サーバ手段再選択時の動作については、それぞれ、図13、図14に示す動作手順と同様な手順で実行される。本実施形態のように、第2実施形態と第3実施形態とを組み合わせることで、双方の実施形態における利点を享受することができる。
以上、本発明をその好適な実施形態に基づいて説明したが、本発明の通信システム、その制御方法、端末装置、及び、プログラムは、上記実施形態にのみ限定されるものではなく、上記実施形態の構成から種々の修正及び変更を施したものも、本発明の範囲に含まれる。
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下に限らない。
(付記1)
それぞれが、クライアント・サーバ方式の通信でユーザにクライアント機能を提供するクライアント手段、及び、該クライアント手段に対してサーバ機能を提供できるサーバ手段を有する複数の端末装置と、
前記クライアント手段に対してサーバ機能を提供できるサーバ手段を有する1以上のサーバ装置と、
通信の開始に際して、記憶装置に記憶されたサーバ手段決定のルールに基づいて、前記クライアント手段にサーバ機能を提供すべきサーバ手段として、前記端末装置のサーバ手段、又は、前記サーバ装置のサーバ手段の何れを用いるかを決定するサーバ決定手段とを有することを特徴とする通信システム。
(付記2)
前記クライアント手段は、前記サーバ決定手段が決定したサーバ手段に接続して通信を開始することを特徴とする、付記1に記載の通信システム。
(付記3)
前記サーバ決定手段は、開始される通信の通信条件を参照して、前記サーバ機能を提供すべきサーバ手段を決定することを特徴とする、付記1に記載の通信システム。
(付記4)
前記通信条件が、通信相手に関する情報、利用ツールの種別、及び、通信の目的のうちの少なくとも1つを含むことを特徴とする、付記3に記載の通信システム。
(付記5)
前記端末装置が、該端末装置の状態を管理する装置状態管理手段を備えており、前記サーバ決定手段は、前記装置状態管理手段が提供する端末装置の状態情報を参照して、前記サーバ機能を提供すべきサーバ手段を決定することを特徴とする、付記1に記載の通信システム。
(付記6)
前記装置状態管理手段が、前記サーバ装置から、状態情報及び装置情報を収集して管理しており、前記サーバ決定手段は、前記装置状態管理手段が提供するサーバ装置の状態情報及び装置情報を参照して、前記サーバ機能を提供すべきサーバ手段を決定することを特徴とする、付記5に記載の通信システム。
(付記7)
前記サーバ決定手段は、端末装置のサーバ手段を用いた通信の継続中に、サーバ手段変更のための所定の条件が成立したと判断すると、記憶装置に記憶されたサーバ手段再選択時のルールに基づいて、前記クライアント手段にサーバ機能を提供するサーバ手段を、通信に参加する他の端末装置のサーバ手段、又は、サーバ装置のサーバ手段に変更することを特徴とする、付記1に記載の通信システム。
(付記8)
前記サーバ決定手段は、前記端末装置の負荷が所定の負荷よりも高いと判断すると、サーバ手段変更のための所定の条件が成立したと判断することを特徴とする、付記7に記載の通信システム。
(付記9)
前記複数の端末装置のそれぞれにおける状態情報を管理する呼制御サーバを更に備え、前記サーバ決定手段は、前記呼制御サーバが提供する装置状態情報を参照して、前記サーバ機能を提供すべきサーバ手段を決定することを特徴とする、付記1に記載の通信システム。
(付記10)
前記サーバ装置を複数備え、該複数のサーバ装置のそれぞれにおける状態情報を管理するサーバ装置情報ポータルを更に備えており、前記サーバ決定手段は、前記サーバ装置のサーバ手段を用いて通信を行うと決定すると、前記サーバ装置情報ポータルが提供するサーバ装置の状態情報を参照して、サーバ機能を提供すべきサーバ装置を決定することを特徴とする、付記1に記載の通信システム。
(付記11)
クライアント・サーバ方式の通信でユーザにクライアント機能を提供するクライアント手段と、
前記クライアント手段に対してサーバ機能を提供できる第1のサーバ手段と、
通信の開始に際して、記憶装置に記憶されたサーバ手段決定のルールに基づいて、前記クライアント手段にサーバ機能を提供すべきサーバ手段として、前記第1のサーバ手段、又は、外部のサーバ装置が有する第2のサーバ手段の何れを用いるかを決定するサーバ決定手段とを備えることを特徴とする端末装置。
(付記12)
前記クライアント手段は、前記サーバ決定手段が決定したサーバ手段に接続し、他の端末装置のクライアント手段との間で通信を開始することを特徴とする、付記11に記載の端末装置。
(付記13)
端末装置の状態を管理する装置状態管理手段を更に備え、前記サーバ決定手段は、前記装置状態管理手段が提供する端末装置の状態を参照して、サーバ機能を提供すべきサーバ手段を決定することを特徴とする、付記11に記載の端末装置。
(付記14)
前記装置状態管理手段が、前記サーバ装置から、状態情報及び装置情報を収集して管理しており、前記サーバ決定手段は、前記装置状態管理手段が提供するサーバ装置の状態情報及び装置情報を参照して、前記サーバ機能を提供すべきサーバ手段を決定することを特徴とする、付記13に記載の通信システム。
(付記15)
前記サーバ決定手段は、自装置の前記第1のサーバ手段を用いた通信の継続中に、サーバ手段変更のための所定の条件が成立したと判断すると、記憶装置に記憶されたサーバ手段再選択時のルールに基づいて、サーバ機能を提供するサーバ手段を、自装置の第1のサーバ手段から、通信に参加する他の端末装置が有する第1のサーバ手段、又は、前記第2のサーバ手段に変更することを特徴とする、付記11に記載の端末装置。
(付記16)
それぞれが、クライアント・サーバ方式の通信でユーザにクライアント機能を提供するクライアント手段、及び、該クライアント手段に対してサーバ機能を提供できるサーバ手段を有する複数の端末装置と、前記クライアント手段に対してサーバ機能を提供できるサーバ手段を有する1以上のサーバ装置とを有する通信システムを、コンピュータを用いて制御する制御方法であって、
前記コンピュータが、通信開始に際して、記憶装置に記憶されたサーバ手段決定のルールに基づいて、前記クライアント手段に対してサーバ機能を提供すべきサーバ手段として、前記端末装置のサーバ手段、又は、前記サーバ装置のサーバ手段の何れを用いるかを決定するステップを有することを特徴とする制御方法。
(付記17)
前記サーバ手段の決定ステップでは、前記コンピュータは、ネットワークに接続された端末装置の状態情報を管理する呼制御サーバから、前記端末装置の状態情報を取得し、該取得した状態情報を参照して、前記サーバ機能を提供すべきサーバ手段を決定することを特徴とする、付記16に記載の制御方法。
(付記18)
前記通信システムが複数のサーバ装置を有しており、
前記コンピュータが、前記サーバ手段の決定ステップで前記サーバ装置のサーバ手段を用いると決定すると、複数のサーバ装置の状態情報を管理するサーバ装置情報ポータルに、複数のサーバ装置のうちの何れのサーバ装置のサーバ手段を用いるかの決定を依頼するステップと、
前記サーバ装置情報ポータルが、複数のサーバ装置のうちの何れのサーバ装置のサーバ手段を用いるかを決定するステップとを更に有することを特徴とすることを特徴とする、付記16に記載の制御方法。
(付記19)
前記コンピュータが、前記端末装置のサーバ手段を用いた通信の継続中に、前記端末装置の状態情報を参照して、サーバ手段を変更するための条件が成立したか否かを判断するステップと、
前記コンピュータが、前記条件が成立したと判断すると、記憶装置に記憶されたサーバ手段再選択時のルールに基づいて、通信サーバ機能を提供しているサーバ手段を、通信中の他の端末装置のサーバ手段、又は、前記サーバ装置のサーバ手段に変更するステップとを更に有することを特徴とする、付記16に記載の制御方法。
(付記20)
前記サーバ手段の変更ステップでは、前記コンピュータは、前記通信中の他の端末装置の状態情報を取得し、該取得した状態情報を参照して、サーバ手段の変更先を決定することを特徴とする、付記19に記載の制御方法。
(付記21)
前記サーバ手段の変更ステップでは、前記コンピュータは、ネットワークに接続された端末装置の状態情報を管理する呼制御サーバから、通信中の端末装置の状態情報を取得し、該取得した状態情報を参照して、サーバ手段の変更先を決定することを特徴とする、付記19に記載の制御方法。
(付記22)
前記サーバ手段の変更ステップで、前記サーバ装置のサーバ手段を変更先のサーバ手段として決定すると、前記コンピュータから、複数のサーバ装置の状態情報を管理するサーバ装置情報ポータルに、複数のサーバ装置のうちの何れのサーバ装置のサーバ手段を用いるかの決定を依頼し、前記サーバ装置情報ポータルが、複数のサーバ装置のうちの何れのサーバ装置のサーバ手段を変更先のサーバ手段とするかを決定することを特徴とする、付記19に記載の制御方法。
(付記23)
それぞれが、クライアント・サーバ方式の通信でユーザにクライアント機能を提供するクライアント手段、及び、該クライアント手段に対してサーバ機能を提供できるサーバ手段を有する複数の端末装置と、前記クライアント手段に対してサーバ機能を提供できるサーバ手段を有する1以上のサーバ装置とを有する通信システムを制御する処理を、コンピュータに実行させるプログラムであって、
前記コンピュータに、記憶装置に記憶されたサーバ手段決定のルールに基づいて、前記クライアント手段に対してサーバ機能を提供すべきサーバ手段として、前記端末装置のサーバ手段、又は、前記サーバ装置のサーバ手段の何れを用いるかを決定するステップを実行させることを特徴とするプログラム。
(付記24)
前記コンピュータに、
前記端末装置のサーバ手段を用いた通信の継続中に、前記端末装置の状態情報を参照して、サーバ手段を変更するための条件が成立したか否かを判断するステップと、
前記条件が成立したと判断すると、記憶装置に記憶されたサーバ手段再選択時のルールに基づいて、通信サーバ機能を提供しているサーバ手段を、通信中の他の端末装置のサーバ手段、又は、前記サーバ装置のサーバ手段に変更するステップとを更に実行させることを特徴とする、付記23に記載のプログラム。
付記の通信システムは、それぞれが、クライアント・サーバ方式の通信でユーザにクライアント機能を提供するクライアント手段、及び、該クライアント手段に対してサーバ機能を提供できるサーバ手段を有する複数の端末装置と、前記クライアント手段に対してサーバ機能を提供できるサーバ手段を有する1以上のサーバ装置と、通信の開始に際して、記憶装置に記憶されたサーバ手段決定のルールに基づいて、前記クライアント手段にサーバ機能を提供すべきサーバ手段として、前記端末装置のサーバ手段、又は、前記サーバ装置のサーバ手段の何れを用いるかを決定するサーバ決定手段とを有することを特徴とする。
付記の通信システムでは、端末装置は、クライアント手段にサーバ機能を提供するサーバ手段を有しており、クライアント手段は、端末装置のサーバ手段、又は、サーバ装置のサーバ手段が提供するサーバ機能を用いた通信が可能である。サーバ決定手段は、通信開始に際して、所定のサーバ手段決定ルールを参照して、端末装置のサーバ手段を用いて通信を行うか、或いは、サーバ装置のサーバ手段を用いて通信を行うかを決定する。付記では、所定のルールとして、例えば、通信負荷が軽い通信については、端末装置のサーバ手段を用い、高度なサーバ機能が要求される通信については、サーバ装置のサーバ手段を用いるといったルールを用意することで、開始する通信に適した装置でサーバ機能を提供することができ、個々の通信に応じたサーバの選択が可能となる。
付記の通信システムでは、前記クライアント手段は、前記サーバ決定手段が決定したサーバ手段に接続して通信を開始する構成を採用できる。この場合、通信相手のクライアント手段を、サーバ決定手段が決定したサーバ手段に接続することで、クライアント手段間での通信を実現できる。
付記の通信システムでは、前記サーバ決定手段は、開始される通信の通信条件を参照して、前記サーバ機能を提供すべきサーバ手段を決定する構成を採用できる。この場合、前記通信条件は、通信相手に関する情報、利用ツールの種別、及び、通信の目的のうちの少なくとも1つを含む構成を採用できる。例えば、サーバ手段決定のルールとして、通信相手の数が所定の数を超えればサーバ装置のサーバ手段を利用するといったルールや、負荷の高いツールを利用する場合にはサーバ装置のサーバ手段を利用するといったルールを用意しておき、サーバ決定手段が、通信条件がそれらのルールに合致するか否かを判断してサーバ手段を決定することで、通信条件に応じたサーバの選択が可能となる。
付記の通信システムでは、前記端末装置が、該端末装置の状態を管理する装置状態管理手段を備えており、前記サーバ決定手段は、前記装置状態管理手段が提供する端末装置の状態を参照して、前記サーバ機能を提供すべきサーバ手段を決定する構成を採用できる。例えば、サーバ手段決定のルールとして、端末装置の負荷が所定負荷以上であればサーバ装置のサーバ手段を利用するといったルールを用意しておき、サーバ決定手段が、装置状態管理手段から端末装置の状態を取得し、端末装置の状態がそのルールに合致するか否かを判断してサーバ手段を決定することで、端末装置の負荷に応じたサーバの選択が可能となる。
付記の通信システムでは、前記装置状態管理手段が、前記サーバ装置から、状態情報及び装置情報を収集して管理しており、前記サーバ決定手段は、前記装置状態管理手段が提供するサーバ装置の状態情報及び装置情報を参照して、前記サーバ機能を提供すべきサーバ手段を決定する構成を採用できる。例えば、サーバ手段決定のルールとして、サーバ装置の負荷が所定負荷以下であればサーバ装置のサーバ手段を利用するといったルールを用意しておき、サーバ決定手段が、装置状態管理手段からサーバ装置の状態情報を取得して、サーバ装置の状態がそのルールに合致するか否かを判断してサーバ手段を決定する。この場合、サーバ装置に負荷が集中する事態を避けることができる。また、サーバ手段決定時のルールとして、サーバ装置が通信に使用される専用ハードウェアを有していれば、そのサーバ装置のサーバ手段を利用するといったルールを用意しておき、サーバ決定手段が、装置状態管理手段からサーバ装置の装置情報を取得して、サーバ装置がそのような専用ハードウェアを有しているか否かを判断してサーバ手段を決定する。このようにすることで、通信に合わせたサーバ手段の選択が可能となる。
付記の通信システムでは、前記サーバ決定手段は、端末装置のサーバ手段を用いた通信の継続中に、サーバ手段変更のための所定の条件が成立したと判断すると、記憶装置に記憶されたサーバ手段再選択時のルールに基づいて、前記クライアント手段にサーバ機能を提供するサーバ手段を、通信に参加する他の端末装置のサーバ手段、又は、サーバ装置のサーバ手段に変更する構成を採用できる。端末装置のサーバ手段を用いると決定して通信を開始した後に、例えば、通信相手が増加し、或いは、端末装置の負荷が増大して、端末装置のサーバ手段を用いて通信を継続することが不適当になることがある。このような場合には、サーバ手段変更のための条件として、通信相手の増加や端末装置の負荷増大の検出を設定しておき、その条件が成立したときに、サーバ決定手段により、サーバ再選択時のルールに従って、クライアント手段にサーバ機能を提供するサーバを、通信参加中の他の端末装置のサーバ手段、又は、サーバ装置のサーバ手段に変更する。これにより、状況の変化に合わせて、通信に適したサーバ利用が可能となる。
付記の通信システムでは、前記サーバ決定手段は、前記端末装置の負荷が所定の負荷よりも高いと判断すると、サーバ手段変更のための所定の条件が成立したと判断する構成を採用できる。この場合、他の端末装置の負荷が低いときには、その端末装置のサーバ手段を用い、負荷が低い端末装置がないときにはサーバ装置のサーバ手段を用いることで、サーバ機能の提供が滞る事態を回避できる。
付記の通信システムは、前記複数の端末装置のそれぞれにおける状態情報を管理する呼制御サーバを更に備え、前記サーバ決定手段は、前記呼制御サーバが提供する装置状態情報を参照して、前記サーバ機能を提供すべきサーバ手段を決定する構成を採用できる。この場合、サーバ決定手段は、個々の端末装置にアクセスしなくても、各端末装置の状態情報を取得することができる。取得した端末装置の状態情報は、通信開始時のサーバ手段の決定、及び、サーバ手段再選択時のサーバ手段の変更先の決定に利用できる。
付記の通信システムは、前記サーバ装置を複数備え、該複数のサーバ装置のそれぞれにおける状態情報を管理するサーバ装置情報ポータルを更に備えており、前記サーバ決定手段は、前記サーバ装置のサーバ手段を用いて通信を行うと決定すると、前記サーバ装置情報ポータルが提供するサーバ装置の状態情報を参照して、サーバ機能を提供すべきサーバ装置を決定する構成を採用できる。この場合、サーバ決定手段は、複数のサーバ装置のそれぞれから個別に状態情報を取得しなくても、各サーバ装置の状態情報を取得できる。取得したサーバ手段の状態情報は、通信開始時のサーバ手段の決定、及び、サーバ手段再選択時のサーバ手段の変更先の決定で、どのサーバ装置のサーバ手段を用いるかを決定する際に利用できる。
付記の端末装置は、クライアント・サーバ方式の通信でユーザにクライアント機能を提供するクライアント手段と、前記クライアント手段に対してサーバ機能を提供できる第1のサーバ手段と、通信の開始に際して、記憶装置に記憶されたサーバ手段決定のルールに基づいて、前記クライアント手段にサーバ機能を提供すべきサーバ手段として、前記第1のサーバ手段、又は、外部のサーバ装置が有する第2のサーバ手段の何れを用いるかを決定するサーバ決定手段とを備えることを特徴とする。
付記の端末装置は、クライアント手段にサーバ機能を提供するサーバ手段(第1のサーバ手段)を有しており、クライアント手段は、第1のサーバ手段、又は、サーバ装置のサーバ手段(第2のサーバ手段)が提供するサーバ機能を用いた通信が可能である。サーバ決定手段は、通信開始に際して、所定のサーバ手段決定ルールを参照して、第1のサーバ手段を用いて通信を行うか、或いは、第2のサーバ手段を用いて通信を行うかを決定する。付記では、所定のルールとして、例えば、通信負荷が軽い通信については、第1のサーバ手段を用い、高度なサーバ機能が要求される通信については、第2のサーバ手段を用いるといったルールを用意することで、開始する通信に適した装置でサーバ機能を提供することができ、個々の通信に応じたサーバの選択が可能となる。
付記の端末装置では、前記クライアント手段は、前記サーバ決定手段が決定したサーバ手段に接続し、他の端末装置のクライアント手段との間で通信を開始する構成を採用できる。この場合、通信相手の端末装置のクライアント手段を、サーバ決定手段が決定したサーバ手段に接続することで、クライアント手段間での通信を実現できる。
付記の端末装置は、端末装置の状態を管理する装置状態管理手段を更に備え、前記サーバ決定手段は、前記装置状態管理手段が提供する端末装置の状態を参照して、サーバ機能を提供すべきサーバ手段を決定する構成を採用できる。例えば、サーバ手段決定のルールとして、端末装置の負荷が所定負荷以上であれば第2のサーバ手段を利用するといったルールを用意しておき、サーバ決定手段が、装置状態管理手段から端末装置の状態を取得し、端末装置の状態がそのルールに合致するか否かを判断してサーバ手段を決定することで、端末装置の負荷に応じたサーバの選択が可能となる。
付記の端末装置では、前記装置状態管理手段が、前記サーバ装置から、状態情報及び装置情報を収集して管理しており、前記サーバ決定手段は、前記装置状態管理手段が提供するサーバ装置の状態情報及び装置情報を参照して、前記サーバ機能を提供すべきサーバ手段を決定する構成を採用できる。例えば、サーバ手段決定のルールとして、サーバ装置の負荷が所定負荷以下であれば第2のサーバ手段を利用するといったルールを用意しておき、サーバ決定手段が、装置状態管理手段からサーバ装置の状態情報を取得して、サーバ装置の状態がそのルールに合致するか否かを判断してサーバ手段を決定する。この場合、サーバ装置に負荷が集中する事態を避けることができる。また、サーバ手段決定時のルールとして、サーバ装置が通信に使用される専用ハードウェアを有していれば、そのサーバ装置のサーバ手段を利用するといったルールを用意しておき、サーバ決定手段が、装置状態管理手段からサーバ装置の装置情報を取得して、サーバ装置がそのような専用ハードウェアを有しているか否かを判断してサーバ手段を決定する。このようにすることで、通信に合わせたサーバ手段の選択が可能となる。
付記の端末装置では、前記サーバ決定手段は、自装置の前記第1のサーバ手段を用いた通信の継続中に、サーバ手段変更のための所定の条件が成立したと判断すると、記憶装置に記憶されたサーバ手段再選択時のルールに基づいて、サーバ機能を提供するサーバ手段を、自装置の第1のサーバ手段から、通信に参加する他の端末装置が有する第1のサーバ手段、又は、前記第2のサーバ手段に変更する構成を採用することができる。自装置の第1のサーバ手段を用いると決定して通信を開始した後に、例えば、通信相手が増加し、或いは、自装置の負荷が増大して、自装置の第1のサーバ手段を用いて通信を継続することが不適当になることがある。このような場合には、サーバ手段変更のための条件として、通信相手の増加や端末装置の負荷増大の検出を設定しておき、その条件が成立したときに、サーバ決定手段により、サーバ再選択時のルールに従って、クライアント手段にサーバ機能を提供するサーバを、通信参加中の他の端末装置のサーバ手段、又は、サーバ装置のサーバ手段に変更する。これにより、状況の変化に合わせて、通信に適したサーバ利用が可能となる。
付記の通信システムの制御方法は、それぞれが、クライアント・サーバ方式の通信でユーザにクライアント機能を提供するクライアント手段、及び、該クライアント手段に対してサーバ機能を提供できるサーバ手段を有する複数の端末装置と、前記クライアント手段に対してサーバ機能を提供できるサーバ手段を有する1以上のサーバ装置とを有する通信システムを、コンピュータを用いて制御する制御方法であって、前記コンピュータが、通信開始に際して、記憶装置に記憶されたサーバ手段決定のルールに基づいて、前記クライアント手段に対してサーバ機能を提供すべきサーバ手段として、前記端末装置のサーバ手段、又は、前記サーバ装置のサーバ手段の何れを用いるかを決定するステップを有することを特徴とする。
付記の制御方法が制御対象とする通信システムでは、端末装置は、クライアント手段にサーバ機能を提供するサーバ手段を有しており、クライアント手段は、端末装置のサーバ手段、又は、サーバ装置のサーバ手段が提供するサーバ機能を用いた通信が可能である。付記では、通信開始に際して、所定のルールを参照して、端末装置のサーバ手段を用いて通信を行うか、或いは、サーバ装置のサーバ手段を用いて通信を行うかを決定する。付記では、所定のルールとして、例えば、通信負荷が軽い通信については、端末装置のサーバ手段を用い、高度なサーバ機能が要求される通信については、サーバ装置のサーバ手段を用いるといったルールを用意することで、通信に適した装置でサーバ機能を提供することができ、個々の通信に応じたサーバの選択が可能となる。
付記の通信システムの制御方法は、前記サーバ手段の決定ステップでは、前記コンピュータは、ネットワークに接続された端末装置の状態情報を管理する呼制御サーバから、前記端末装置の状態情報を取得し、該取得した状態情報を参照して、前記サーバ機能を提供すべきサーバ手段を決定する構成を採用できる。この場合、コンピュータは、取得した状態情報と、サーバ手段決定のルールとに基づいて、通信に用いるサーバ手段を決定する構成とすることができる。また、呼制御サーバを用いることで、コンピュータは、個々の端末装置に個別にアクセスしなくても、各端末装置の状態情報を取得することができる。
付記の通信システムの制御方法は、前記通信システムが複数のサーバ装置を有しており、前記コンピュータが、前記サーバの決定ステップで前記サーバ装置のサーバ手段を用いると決定すると、複数のサーバ装置の状態情報を管理するサーバ装置情報ポータルに、複数のサーバ装置のうちの何れのサーバ装置のサーバ手段を用いるかの決定を依頼するステップと、前記サーバ装置情報ポータルが、複数のサーバ装置のうちの何れのサーバ装置のサーバ手段を用いるかを決定するステップとを更に有する構成を採用することができる。この場合、コンピュータは、取得した状態情報と、サーバ手段決定のルールとに基づいて、複数のサーバのうちのどのサーバ装置のサーバ手段を用いるかを決定する構成とすることができる。また、サーバ装置情報ポータルを用いることで、コンピュータは、サーバ決定手段は、複数のサーバ装置のそれぞれから個別に状態情報を取得しなくても、各サーバ装置の状態情報を取得できる。
付記の通信システムの制御方法は、前記コンピュータが、前記端末装置のサーバ手段を用いた通信の継続中に、前記端末装置の状態情報を参照して、サーバ手段を変更するための条件が成立したか否かを判断するステップと、前記コンピュータが、前記条件が成立したと判断すると、記憶装置に記憶されたサーバ手段再選択時のルールに基づいて、通信サーバ機能を提供しているサーバ手段を、通信中の他の端末装置のサーバ手段、又は、前記サーバ装置のサーバ手段に変更するステップとを更に有する構成を採用できる。この場合、サーバ手段変更のための条件として、通信相手の増加や端末装置の負荷増大の検出を設定しておき、その条件が満たされたときに、サーバ再選択時のルールに従って、クライアント手段にサーバ機能を提供するサーバを、通信参加中の他の端末装置のサーバ手段、又は、サーバ装置のサーバ手段に変更することで、状況の変化に合わせて、通信に適したサーバ利用が可能となる。
付記の通信システムの制御方法では、前記サーバ手段の変更ステップでは、前記コンピュータは、前記通信中の他の端末装置の状態情報を取得し、該取得した状態情報を参照して、サーバ手段の変更先を決定する構成を採用できる。
付記の通信システムの制御方法は、前記サーバ手段の変更ステップでは、前記コンピュータは、ネットワークに接続された端末装置の状態情報を管理する呼制御サーバから、通信中の端末装置の状態情報を取得し、該取得した状態情報を参照して、サーバ手段の変更先を決定する構成を採用できる。
付記の通信システムの制御方法は、前記サーバ手段の変更ステップで、前記サーバ装置のサーバ手段を変更先のサーバ手段として決定すると、前記コンピュータから、複数のサーバ装置の状態情報を管理するサーバ装置情報ポータルに、複数のサーバ装置のうちの何れのサーバ装置のサーバ手段を用いるかの決定を依頼し、前記サーバ装置情報ポータルが、複数のサーバ装置のうちの何れのサーバ装置のサーバ手段を変更先のサーバ手段とするかを決定する構成を採用できる。
付記のプログラムは、それぞれが、クライアント・サーバ方式の通信でユーザにクライアント機能を提供するクライアント手段、及び、該クライアント手段に対してサーバ機能を提供できるサーバ手段を有する複数の端末装置と、前記クライアント手段に対してサーバ機能を提供できるサーバ手段を有する1以上のサーバ装置とを有する通信システムを制御する処理を、コンピュータに実行させるプログラムであって、前記コンピュータに、記憶装置に記憶されたサーバ手段決定のルールに基づいて、前記クライアント手段に対してサーバ機能を提供すべきサーバ手段として、前記端末装置のサーバ手段、又は、前記サーバ装置のサーバ手段の何れを用いるかを決定するステップを実行させることを特徴とする。
付記のプログラムは、前記コンピュータに、前記端末装置のサーバ手段を用いた通信の継続中に、前記端末装置の状態情報を参照して、サーバ手段を変更するための条件が成立したか否かを判断するステップと、前記条件が成立したと判断すると、記憶装置に記憶されたサーバ手段再選択時のルールに基づいて、通信サーバ機能を提供しているサーバ手段を、通信中の他の端末装置のサーバ手段、又は、前記サーバ装置のサーバ手段に変更するステップとを更に実行させる構成を採用できる。