JP4769015B2 - 分散マルチパーティ会議を制御する機構 - Google Patents

分散マルチパーティ会議を制御する機構 Download PDF

Info

Publication number
JP4769015B2
JP4769015B2 JP2005134487A JP2005134487A JP4769015B2 JP 4769015 B2 JP4769015 B2 JP 4769015B2 JP 2005134487 A JP2005134487 A JP 2005134487A JP 2005134487 A JP2005134487 A JP 2005134487A JP 4769015 B2 JP4769015 B2 JP 4769015B2
Authority
JP
Japan
Prior art keywords
conference
message
join
party
members
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2005134487A
Other languages
English (en)
Other versions
JP2006004406A (ja
Inventor
ルオ チョン
リー チアン
リー シーピェン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2006004406A publication Critical patent/JP2006004406A/ja
Application granted granted Critical
Publication of JP4769015B2 publication Critical patent/JP4769015B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/40Business processes related to the transportation industry
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1813Arrangements for providing special services to substations for broadcast or conference, e.g. multicast for computer conferences, e.g. chat rooms
    • H04L12/1822Conducting the conference, e.g. admission, detection, selection or grouping of participants, correlating users to one or more conference sessions, prioritising transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1854Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with non-centralised forwarding system, e.g. chaincast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • H04L65/403Arrangements for multi-party communication, e.g. for conferences
    • H04L65/4046Arrangements for multi-party communication, e.g. for conferences with distributed floor control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working
    • H04N7/15Conference systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Multimedia (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Tourism & Hospitality (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Health & Medical Sciences (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Telephonic Communication Services (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Information Transfer Between Computers (AREA)

Description

本文書は、全般的にはコンピュータ実施される会議システムに関し、具体的には、分散マルチパーティ会議システム(decentralized multi−party conferencing system)に関する。
現在、人々は、一般に、インターネットを介するメッセージングサービスを使用して互いに通信する。例えば、ある人が、通信したい友人のリストを作成する場合がある。各友人は、そのリストに現れる一意のユーザIDを有する。友人がオンラインのとき、その友人のユーザIDが、その友人が通信に応えられることがその人にわかる形で表示される。その人は、友人との「チャット」セッションを開始し、メッセージを交換することができ、これを一般にインスタントメッセージ(IM)と称する。追加の友人をその「チャット」セッションに追加することができ、複数の人が互いに通信するマルチパーティ「チャット」セッションがもたらされる。
マルチパーティ「チャット」セッションをもつことは便利であるが、ユーザは、メッセージをタイプするのではなく、他の人を見られることとと、より「現実」的な経験をすることに関心を持つようになりつつある。残念ながら、マルチパーティビデオ会議システムは、多くの課題を提示する。課題の1つは、ビデオ会議アプリケーションの高帯域幅の需要とインターネットユーザの不均一性の両方を扱えるシステムを設計することである。もう1つの課題が、複数の当事者の間での通信の管理である。
マルチパーティビデオ会議システムの多くが、ローカルエリアネットワーク(LAN)でのみ動作する。以下のものは、LANで動作する2つのマルチパーティビデオ会議システムである(非特許文献1、非特許文献2)。これらのシステムは、LANで動作するので、帯域幅はそれほど問題ではない。というのは、システムが、ハードウェアのマルチキャスト機能を使用して、LANを介して送信されるデータの量を減らすことができるからである。残念ながら、IPマルチキャスト対応ルータは、インターネットであまねく配備されてはいない。
ハードウェアマルチキャスト機能は、インターネットであまねく配備されてはいないが、広域ネットワーク(WAN)でマルチパーティビデオ会議システムを実装する試みが行われてきた。一般にIVISITと称する、米国カリフォルニア州サンタモニカのiVisit LLC社が製造するシステムは、サーバベースの通信ツールである。IVISITは、いつでもユーザによってアクセス可能な中央サーバを必要とする。中央サーバは、メンバシップ登録および検証を実行する。ユーザは、そのユーザの友人のリストで識別される他のユーザとのオーディオ/ビデオセッションをセットアップするときに、中央サーバと対話する。IVISITは、ユーザが同時に複数の接続を行い、複数のビデオを見ることを可能にするが、このシステムは理想的ではない。あるモードでは、ユーザが、所望の接続のそれぞれを手動で行わなければならない。もう1つのモードでは、複数の当事者が、単一のチャットルーム内で互いにインスタントメッセージを送信することができるが、ビデオが望まれるときには、ビデオ通信が独立の1対1接続に基づく。したがって、IVISITは、一般大衆が望むタイプのマルチパーティビデオ会議システムを提供しない。
一般にWEBEXと称する、米国カリフォルニア州サンノゼのWebEx Communication,INC.社が製造するもう1つのシステムは、グローバルビジネス用のオンライン会議サービスを提供する。このサービスには、アプリケーション共有、ホワイトボード、およびビデオ会議が含まれる。WEBEXには、エンドユーザの間で通信をルーティングする、全世界の複数のスイッチングセンタが含まれる。この戦略は、多数の同時ビデオ会議があるときに効率的であるが、WebExは、小規模の個人的通信にはコストが高すぎる。
K. Watanabe et al. entitled "Distributed Multiparty Desktop Conferencing System: MERMAID" published in Proceedings of the Conference on Computer-Supported Cooperative Work, Los Angeles, CA, September 1990 Mike Macedonia and Don Bruzman entitled "MBONE, the Multicast Backbone" published in IEEE Computer, April 1994 J. Lennox and H. Schulzrinne, entitled "A protocol for reliable decentralized conferencing", In Proc of 13th International Workshop on Network and Operating Systems Support for Digital Audio and Video, pp. 72-81, 2003
上で説明したように、サーバに通信を処理させることは、大企業には効率的であるが、サーバベースシステムは、小規模の個人通信と共に動作するには複数の支障がある。支障の1つが、サーバを購入し、維持する費用である。もう1つの不利益が、中央サーバを使用することによって生じるボトルネックである。したがって、これまで、一般大衆による使用に適するマルチパーティビデオ会議システムの満足な解決策はなかった。
本明細書に記載の技法および機構は、フルメッシュアーキテクチャをサポートする分散マルチパーティ会議の会議メンバの間での通信パスの制御を対象とする。並列性(concurrency)の問題を処理し、サービス品質を保証するために、複数のチェックポイントをテストする。第1に、2つのシステムの間に保留中の通信パスが存在するかどうかを判定する検査を行う。第2に、システムの1つがマルチパーティ会議を退去する過程にあるかどうかを判定する検査を行う。第3に、最大数の会議メンバが既に会議に存在するかどうかを判定する検査を行う。これらの検査のいずれかに合格しない場合に、2つのシステムの間の通信パスがエラーになる。成功の場合に、新しいシステムが、フルメッシュアーキテクチャを維持するために、会議の他のメンバのそれぞれとの参加プロセスを開始する。
図面を参照して、非制限的で非網羅的な実施形態を説明するが、図面では、同一の符号が、特に指定されない限り様々な図面を通じて同一の部分を指す。
手短に言えば、本発明の機構は、分散マルチパーティビデオ会議システムを確立し、実施する会議制御プロトコルを提供する。このプロトコルは、複数のチェックポイントを使用して、並列性の問題を処理し、サービス品質を保証する。以下で詳細に説明するように、本発明の会議制御プロトコルは、ダイヤルアップ、ブロードバンド、ケーブルなど、異なるタイプのインターネット接続で効果的に動作する。上記および他の利益は、次の詳細な説明を読んだ後に明白になる。
図1に、本発明の分散ビデオ会議機構を実施する1つの例示的なシステムを示す。このシステムには、コンピューティングデバイス100などのコンピューティングデバイスが含まれる。非常に基本的な構成で、コンピューティングデバイス100に、通常は、少なくとも1つの処理ユニット102およびシステムメモリ104が含まれる。コンピューティングデバイスの正確な構成およびタイプに応じて、システムメモリ104を、揮発性(RAMなど)、不揮発性(ROM、フラッシュメモリなど)、またはこの2つのある組合せとすることができる。システムメモリ104に、通常は、オペレーティングシステム105、1つまたは複数のプログラムモジュール106が含まれ、プログラムデータ107を含めることができる。プログラムモジュール106に、本発明の分散マルチパーティ会議機構を実施するモジュール130が含まれる。この基本構成は、図1では破線108内のコンポーネントによって示されている。
コンピューティングデバイス100は、追加の特徴または機能性を有することができる。例えば、コンピューティングデバイス100に、例えば磁気ディスク、光学ディスク、またはテープなどの追加のデータストレージデバイス(取り外し可能および/または固定)を含めることもできる。そのような追加ストレージは、図1では、取り外し可能ストレージ109および固定ストレージ110によって示されている。コンピュータ記憶媒体に、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータなどの情報のストレージの方法またはテクノロジで実施された、揮発性および不揮発性の、取り外し可能および固定の媒体を含めることができる。システムメモリ104、取り外し可能ストレージ109、および固定ストレージ110のすべてが、コンピュータ記憶媒体の例である。したがって、コンピュータ記憶媒体に、RAM、ROM、EEPROM、フラッシュメモリ、または他のメモリテクノロジ、CD−ROM、デジタル多用途ディスク(DVD)、または他の光学ストレージ、磁気カセット、磁気テープ、磁気ディスクストレージ、または他の磁気ストレージデバイス、あるいは、所望の情報の記憶に使用でき、コンピューティングデバイス100によってアクセスできる他のすべての媒体が含まれるが、これらに制限はされない。そのようなコンピュータ記憶媒体のすべてを、デバイス100の一部とすることができる。コンピューティングデバイス100は、キーボード、マウス、ペン、音声入力デバイス、接触入力デバイスなどの入力デバイス112も有することができる。ディスプレイ、スピーカ、プリンタなどの出力デバイス114も、含めることができる。これらのデバイスは、当技術分野で周知であり、本明細書で長々と説明はしない。
コンピューティングデバイス100に、このデバイスが、ネットワークを介するなど、他のコンピューティングデバイス118と通信できるようにする通信接続116も含めることができる。通信接続116は、通信媒体の1つの例である。通信媒体は、通常は、搬送波または他のトランスポート機構などの変調されたデータ信号内のコンピュータ可読命令、データ構造、プログラムモジュール、または他のデータによって実施でき、すべての情報配信媒体が含まれる。用語「変調されたデータ信号」は、信号内で情報をエンコードする形でその特性の1つまたは複数を設定または変更された信号を意味する。制限ではなく例として、通信媒体に、有線ネットワークまたは直接配線接続などの有線媒体と、音響、RF、赤外線、および他の無線媒体などの無線媒体が含まれる。本明細書で使用される用語コンピュータ可読媒体に、記憶媒体と通信媒体の両方が含まれる。
プログラムモジュールなど、1つまたは複数のコンピュータまたは他のデバイスによって実行されるコンピュータ実行可能命令の全般的な文脈で、本明細書で様々なモジュールおよび技法を説明する場合がある。一般に、プログラムモジュールに、特定のタスクを実行するか特定の抽象データ型を実施する、ルーチン、プログラム、オブジェクト、コンポーネント、データ構造などが含まれる。これらのプログラムモジュール等は、ネイティブコードとして実行することができ、あるいは、仮想マシンまたは他のジャストインタイムコンパイル実行環境内などで、ダウンロードし、実行することができる。通常、プログラムモジュールの機能性は、様々な実施形態で望み通りに組み合わせ、あるいは分散することができる。
これらのモジュールおよび技法の実装は、ある形のコンピュータ可読媒体に記憶するか、これを介して伝送することができる。コンピュータ可読媒体は、コンピュータによってアクセスできるすべての使用可能な媒体とすることができる。制限ではなく例として、コンピュータ可読媒体に、「コンピュータ記憶媒体」および「通信媒体」が含まれる。
図2は、図1に示された複数のコンピュータデバイスをその中で構成できる例示的なネットワークである。ネットワーク200は、フルメッシュ会議アーキテクチャを使用する分散アーキテクチャである。フルメッシュ会議アーキテクチャを説明する追加情報は、その全体を参照によって本明細書に特に組み込まれる非特許文献3から得ることができる。上の文献で、この文献に記載のフルメッシュ会議アーキテクチャが、無線デバイスおよび56kbpsモデムを有するユーザなど、帯域幅制限されたエンドシステムに適さないと述べられていることに留意されたい。対照的に、本発明の会議制御プロトコルは、この制限を克服する。さらに、本発明の会議制御プロトコルは、接続プロセス中のネットワークコストを減らし、より高速の参加プロセスを提供し、過渡的ネットワークエラーによって引き起こされる参加プロセス中の障害の可能性を減らす、効率的なプロトコルを提供する。
一般に、フルメッシュ会議アーキテクチャでは、各会議メンバ(例えば、会議メンバ202〜210)が、他の会議メンバとの直接通信チャネル(2つの会議メンバの間の矢印によって表される)を有する。各会議メンバ202〜210は、図1に示されたコンピューティングデバイス100などのコンピューティングデバイスである。各会議メンバ202〜210は、フルメッシュ会議アーキテクチャの確立および維持に、本明細書に記載の会議制御プロトコルを使用する。以下で詳細に説明するように、本発明の会議制御プロトコルは、小規模のシステムに適する単純な会議制御プロトコルを提供する。従来のマルチパーティビデオ会議システムと異なって、本発明のアーキテクチャは、中央サーバを必要としない。したがって、中央サーバに関して上で述べた支障は、本発明のアーキテクチャにはあてはまらない。
フルメッシュ会議アーキテクチャ200では、各会議メンバ202〜210が、等しい地位を有する。したがって、どの会議メンバも、他の会議メンバと比較して特別な機能性または特権を有しない。さらに、各会議メンバは、いつでも会議に新しいユーザを勧誘する、等しい能力を有する。同様に、各会議メンバは、いつでも会議から退去することができる。各会議メンバが、いつでも、追加のユーザを勧誘し、退去することができるが、以下で詳細に説明するように、フルメッシュ会議アーキテクチャ200の安定性が維持される。
図3は、本明細書に記載の技法および機構を実施する、図1に示されたコンピューティングデバイス100内のモジュール130の一実施形態を示す機能ブロック図である。当業者が諒解するように、いくつかの実施形態において、1モジュールの機能性全体または1モジュールの機能性の一部を、請求の範囲から逸脱せずに別のモジュールに組み込むことができる。このマルチパーティビデオ会議システムに、ユーザインターフェース302、メディアストリームエンジン310、伝送モジュール312、会議制御モジュール304、メッセージングサービスインターフェース308、および伝送制御プロトコル(TCP)/ユーザデータグラムプロトコル(UDP)インターフェース306が含まれる。
ユーザインターフェース302は、メディアストリームエンジン310および会議制御モジュール304と通信する。メディアストリームエンジン310は、伝送モジュール312と通信し、伝送モジュール312は、TCP/UDPインターフェース306と通信する。会議制御モジュール304は、メッセージングサービスインターフェース308を介して、メッセージングサービス(図示せず)と通信する。さらに、会議制御モジュール304は、TCP/UDPインターフェース306を介して他のコンピューティングデバイスと通信する。メッセージングサービス308が、オープンプログラミングインターフェースを使用する時に、会議制御モジュール304は、当業者に既知の標準的なプログラミング技法を使用して、メッセージングサービスと通信することができる。
ユーザインターフェース302、メディアストリームエンジン310、および伝送モジュール312の動作は、本発明の会議制御プロトコルが動作する形を変更せずに、様々な形で行うことができる。したがって、次では、これらの他のモジュールの1つの例示的な動作を説明し、その後、会議制御モジュール304を詳細に説明する。前者に関して、ユーザインターフェース302は、会議中にオーディオ/ビデオをオンまたはオフに切り替える、会議に参加する、会議から退去するなど、ユーザ要求を処理する。メディアストリームエンジン310は、オーディオ/ビデオを取り込み、オーディオ/ビデオを再生する。メディアストリームエンジン310によって取り込まれるオーディオ/ビデオは、伝送モジュール312によって、TCP/UDPインターフェースを介して他の会議メンバに送信される。会議制御モジュール304は、新しいユーザが参加する時および現在のメンバがメッシュ会議アーキテクチャから退去するときに、会議メンバの間の通信を処理する。この説明では、マルチパーティビデオ会議システムに関してメッシュ会議アーキテクチャおよび会議制御プロトコルを説明するが、以下で説明する機構は、グループテキストメッセージングなど、他の環境でも実施することができる。
図4は、図2に示されたメッシュ会議ネットワークを確立し、維持する責任を負う本発明の会議制御プロトコルを実施するメッセージタイプを示す表400である。上で述べたように、メッシュ会議ネットワークの各会議メンバは、ネットワーク内の他の会議メンバのそれぞれへの通信チャネルを有する。表400には、2つの列があり、第1列402は、会議制御プロトコルによって使用されるメッセージのタイプを識別する。第2列404は、メッセージの各タイプに関連するアクションを説明する。図からわかるように、本発明の会議制御プロトコルは、非常に簡潔であり、4つのメッセージタイプすなわち、JOIN(参加)メッセージ410、ACCEPT(受入)メッセージ412、REJECT(拒絶)メッセージ414、およびLEAVE(退去)メッセージ416を使用する。本発明の会議制御プロトコルは、簡潔なプロトコルを実施するので、接続セットアッププロセス中のネットワークコストが減り、メンバを参加させるプロセスが高速であり、過渡的ネットワークエラーに起因する参加プロセス中の障害の可能性が減る。
JOINメッセージ410は、第1コンピューティングデバイスがマルチパーティ会議の確立または参加を望むことを示すために、第1コンピューティングデバイスから別のコンピューティングデバイスに送信される。ACCEPTメッセージ412は、JOINメッセージ410に応答して別のコンピューティングデバイスから送信され、その別のコンピューティングデバイスがJOINメッセージ410を受け入れたことを示す。REJECTメッセージ414は、JOINメッセージ410に応答して別のコンピューティングデバイスから送信され、その別のコンピューティングデバイスがJOINメッセージ410を受け入れなかったことを示す。以下で説明するように、図5に関して、JOINメッセージが受け入れられない複数のシナリオがある。LEAVEメッセージ416は、現在マルチパーティ会議に加わっている第1コンピューティングデバイスがそのマルチパーティ会議から離脱することを示すために、第1コンピューティングデバイスからそのマルチパーティ会議の他のコンピューティングデバイスに送信される。
本発明の会議制御プロトコルは、マルチパーティビデオ会議システムに適するサービス品質(QOS)を提供する。このプロトコルは、参加プロセスおよび離脱プロセス中に要件(例えばチェックポイント)を課すことによって、このサービス品質を達成する。一般に、チェックポイントは、メッシュ会議アーキテクチャが危険にさらされない形で並列性の問題が処理されることを保証する。並列アクションとは、会議が、別の既存のメンバのアクションによって引き起こされる不安定状態であるときに、1つの既存メンバによって実行されるアクションである。したがって、並列性は、必ずしも正確な一致を意味しない。
図5は、図2に示されたメッシュ会議ネットワークに新しいユーザを追加する参加プロセス500中の会議制御プロトコルの動作を示す順次流れ図である。参加プロセス500は、フルメッシュアーキテクチャを完全に保つために、必要な接続ごとに実行される。勧誘された新しいユーザは、必要な通信チャネルのそれぞれを作る責任を負う。例えば、現在3つの既存メンバがある場合に、新しいユーザは、既存の3つのメンバのそれぞれについて1回、合計3回だけ参加プロセス500を実行する。一点鎖線501の上のアクションは、TCP接続を作成するのに必要な処理を表す。一点鎖線501の下のアクションは、通信ダイアログを作成するのに必要な処理を表す。通信ダイアログは、既存会議メンバのオーディオ/ビデオストリームへの加入要求など、会議制御メッセージを送信するのに使用される。
参加プロセス500に、4つのチェックポイント502、504、506、および508が含まれる。以下で説明するように、これらのチェックポイントのどれかに合格しない場合に、参加プロセス500が終了し、新しいユーザは、会議に参加することができない。この図の左側の行は、マルチパーティビデオ会議の既存の参加者(例えばメンバM)を表す。この図の右側の行は、そのマルチパーティビデオ会議のメンバになることを望む新しいユーザ(例えば新規ユーザN)を表す。あるときに、新規ユーザNがCONNECTION REQUEST(接続要求)メッセージを送信する前に、新規ユーザNが、マルチパーティビデオ会議を知るようになる。新規ユーザNは、既存メンバMからインターネットメッセージングサービスを介して送信されたインターネットインスタントメッセージ(IM)を介してマルチパーティビデオ会議を知るようになる可能性がある。このインターネットメッセージングサービスは、複数の周知のメッセージングサービスの1つとすることができる。これらのメッセージングサービスは、当技術分野で周知であり、本発明の会議制御プロトコルとの対話を説明するのに必要な範囲を除いて、本明細書で長々と述べる必要はない。インターネットメッセージに、IPアドレスが含まれ、新規ユーザNは、参加プロセス500全体を通じてこのIPアドレスを使用する。さらに、インスタントメッセージに、一意の会議IDを含めることができる。新規ユーザNが、マルチパーティ会議を知るようになり、会議に参加するように勧誘されたならば、会議制御プロトコルが開始される。上の例では、新規ユーザNは、インスタントメッセージ内で供給されたリンクをクリックすることによって、会議への参加を開始することができる。
チェックポイント502で、図3に示されたマルチパーティビデオ会議モジュールのインスタンスが、新規ユーザNに関連するコンピューティングデバイスに前にロードされたかどうかかを、新規ユーザNが判定する。マルチパーティビデオ会議モジュールが、前にロードされていない場合に、この時にこのモジュールをロードし、その結果、処理を継続できるようにする。マルチパーティビデオ会議モジュールが、ロードされ、実行に使用可能になったならば、新規ユーザNは、新規ユーザNを会議に勧誘したインスタントメッセージなど、帯域外機構から受け取ったIPアドレスに従って、既存メンバMにCONNECTION REQUESTメッセージを送信する。このCONNECTION REQUESTメッセージによって、既存メンバMと新規ユーザNとの間のTCP接続チャネルの作成が開始される。処理は、チェックポイント504に続く。
チェックポイント504で、既存メンバMが、同一の2つのコンピューティングデバイスの間で2つの通信チャネルが作られないようにする並列性検査を実行する。2つの通信チャネルは、フルメッシュアーキテクチャを損なわないが、各通信チャネルが、リソースを使用し、これによって、最終的に、他のコンピューティングデバイスによってそれを使用できるようにしないことによってリソースが浪費される。したがって、2つの通信チャネルを有することは、望ましくない。
本発明の会議制御プロトコルは、重複する通信チャネルを防ぐために、コンピューティングデバイスのそれぞれで、メンバリスト(例えば、メンバリスト512および522)と共に保留中リスト(例えば、保留中リスト510および520)を実施する。保留中リスト510および520ならびにメンバリスト512および522は、別々のリストとして図示されているが、当業者は、コンピューティングデバイスが、保留中リストおよびメンバリストの両方に必要な情報を含む1つのリストを有することができることを諒解するであろう。保留中リスト510および520は、CONNECTION REQUESTメッセージが送信される時に、そのCONNECTION REQUESTを送信するコンピュータデバイスで更新される。
したがって、図5を参照すると、保留中リスト520は、新規ユーザNがCONNECTION REQUESTを送信する時に更新される。図からわかるように、既存メンバMは、新規ユーザNに関連する保留中リスト520にリストされている。メンバリスト522は、コンピューティングデバイスが、マルチパーティビデオ会議モジュールをロードするときに、メンバであるものとしてそのコンピューティングデバイスを反映するために更新される。したがって、上のメンバリスト522は、メンバであるものとして新規ユーザNを反映する。既存メンバMも、保留中リスト510を有することに留意されたい。保留中リスト510には、既存メンバMがCONNECTION REQUESTを送信した先のコンピューティングデバイスがリストされる。図5に示された例のフローでは、既存メンバMが、新規ユーザNにCONNECTION REQUESTを送信しておらず、したがって、新規ユーザNは、保留中リスト510にない。CONNECTION REQUESTが送信されたコンピューティングデバイスの一意の識別子が、そのメンバを識別するために保留中リスト520に追加される。
したがって、チェックポイント504で、既存メンバMが、新規ユーザNからCONNECTION REQUESTを受信するときに、既存メンバMは、その保留中リスト(例えば保留中リスト510)を検査する。新規ユーザNが、保留中リスト510にない場合に、既存メンバMは、CONNECTION ACKNOWLEDGE(ACK、接続肯定応答)メッセージを新規ユーザNに送信する。しかし、新規ユーザNが、既に保留中リストにある場合に、既存メンバMは、保留中リストの新規ユーザNの識別を、CONNECTION REQUESTメッセージから受け取った新規ユーザNの識別と比較する。この比較に基づいて、既存メンバMは、CONNECTION REJECT(接続拒否)メッセージまたはCONNECTION ACKメッセージのいずれかを新規ユーザNに送信する。一実施形態において、この比較に、新規ユーザNのドット区切りIPアドレスを比較することが用いられる。この実施形態では、コンピューティングデバイスのドット区切りIPアドレスが、保留中リストに記憶されたローカルIDより大きい時に、CONNECTION ACKが送信される。したがって、チェックポイント504を実行することによって、メンバMと新規ユーザNの間の冗長パスが、確立されない。
新規ユーザNが、CONNECTION ACKメッセージを受信する場合に、これによって、TCP接続が確立されたことが知らされる。新規ユーザNは、次に、既存メンバMにJOINメッセージを送信する。既存メンバMは、もう1つの検証を実行する(チェックポイント506参照)。チェックポイント506で、存在フラグを検査して、既存メンバMが、実際に会議を退去する過程にあるかどうかを判定する。以下で図6に関して説明するように、既存メンバMが、退去を試みているときには、既存メンバMは、その意志を示すために存在フラグをセットする。したがって、チェックポイント506で、既存メンバMは、その存在フラグを検査して、新規ユーザNから受信したJOINメッセージを拒否するか否かを決定する。存在フラグから、既存メンバMが会議を退去する過程にあることが示される場合に、既存メンバMは、JOINメッセージを拒否する。そうでない場合に、既存メンバMは、チェックポイント508に進む。
チェックポイント508で、既存メンバMが、そのメンバリスト512および保留中リスト510を検査して、会議に別のメンバを追加できるかどうかを判定する。マルチパーティビデオ会議システムで互いに通信できるメンバの数は、ユーザに最大の接続性を提供すると同時に、インターネットの現在の帯域幅条件の下でサービス品質が劣化しないように選択される。一実施形態において、会議メンバのこの限度は5をデフォルトとする。別の実施形態では、会議メンバの最大数は会議イニシエータ(すなわち、会議に関する最初のCONNECTION REQUESTメッセージを送信するユーザ)によって構成可能である。会議メンバの所定の数に既に達している場合には、JOINメッセージがエラーになり、新規ユーザNは、メッシュアーキテクチャに含まれない。しかし、チェックポイント508に合格する場合に、既存メンバMは、ACCEPTメッセージを新規ユーザNに送信する。ACCEPTメッセージは、既存メンバMが見るマルチパーティ会議に現在加わっているすべての会議メンバ(例えば、メンバA、B、M、およびN)を識別する。この時点で、既存メンバMが、新規ユーザNをメンバとみなし、新規ユーザNをメンバリスト512に含めることに留意されたい。これが完了したならば、既存メンバMと新規ユーザNとの間で、このどちらかが退去するまで、通信ダイアログが使用可能である。
新規ユーザNは、ACCEPTメッセージを受信するときに、既存メンバMを保留中リスト520からメンバリスト522に移動する。次に、新規ユーザNは、ACCEPTメッセージで識別されたメンバのそれぞれ(例えばメンバAおよびB)について参加プロセス500を実行する責任を負う。メンバAおよびBは、新規ユーザNがこれらにCONNECTION REQUESTメッセージを送信するまで、保留中リスト520に追加されない。
図6は、図2に示されたメッシュ会議ネットワークからメンバを除去する退去プロセス600中の会議制御プロトコルの動作を示す順次流れ図である。退去プロセス600について、退去するメンバ(例えばメンバA)は、会議の他の既存メンバのそれぞれ(例えばメンバB)にLEAVEメッセージを送信する。したがって、退去プロセス600は、既存メンバごとに1回実行される。少なくとも1つのLEAVEメッセージの後に、好ましくは最初の退去メッセージを送信した後に、退去するメンバAは、その存在フラグを更新して、会議から退去する過程にあることを示す。上で説明したように、参加プロセス500は、チェックポイント506中にこの存在フラグを使用して、退去するメンバが再参加を「強制」されないことを保証する。
図5に示された参加プロセス500中のチェックポイント502〜506のそれぞれの、図6に示された退去プロセス600とあいまっての重要性は、以下のある例のシナリオによって最もよく理解することができる。
チェックポイント502に関して、チェックポイント502は、分散マルチパーティプログラムモジュールの1つのインスタンスだけが、1つのコンピューティングデバイスにロードされることを保証する。チェックポイント502は、ユーザが再参加すると判断する少し前にユーザが会議から退去する状況を処理する手段になる。この状況では、JOINメッセージが、LEAVEメッセージを追い越す可能性がある。チェックポイント502がなければ、これが発生した場合に、他のメンバが、先に到着したJOINメッセージを無視し、LEAVEが到着したときに接続をクローズする可能性がある。これは、非常に望ましくない結果である。しかし、チェックポイント502を実行することによって、既にメンバリストにあるメンバからJOINメッセージを受信する既存メンバが、前の接続をクローズし、現在の要求を受け入れるようになる。
チェックポイント504に関して、チェックポイント504は、2つのメンバの間の通信チャネルが1つだけあることを保証する。2つの既存会議メンバ(例えば会議メンバAおよびB)のそれぞれが、異なる新規ユーザ(例えば新規ユーザCおよびD)をそれぞれ勧誘する場合に、同一のコンピューティングデバイスの間で2つの通信チャネルが作られる可能性がある。メッシュ会議ネットワークを実施する時に、会議メンバAが会議に新規ユーザCを勧誘するときに、会議メンバAは、メンバAおよびBが現在の既存メンバであることを新規ユーザCに知らせる。同様に、会議メンバBが、新規ユーザDを会議に勧誘する時に、会議メンバBは、AおよびBがメンバであることを新規ユーザDに知らせる。メンバCが、メンバBとの参加プロセスを開始する時に、その最後に、メンバBは、A、B、およびDがメンバであることをメンバCに知らせる。同様に、メンバDが、メンバAとの参加プロセスを開始するときに、その最後に、メンバAは、A、B、およびCがメンバであることをメンバDに知らせる。したがって、メンバCおよびDの両方が、お互いの間の通信ダイアログを確立するために参加プロセスを開始する。チェックポイント504は、この通信ダイアログのうちの1つだけが確立されることを保証する。
チェックポイント506に関して、チェックポイント506は、退去しようとしているメンバが、フルメッシュ会議アーキテクチャを維持するために会議への再参加を強制されないことを保証する。例えば、マルチパーティ会議に3つのメンバ(メンバA、B、およびC)がいると仮定する。メンバAは、マルチパーティ会議から退去すること望み、メンバBおよびCの両方にLEAVEメッセージを送信する。メンバAが、退去の過程にある間に、メンバBが、このマルチパーティ会議にメンバDを勧誘する。この状況で、Aが、マルチパーティ会議から成功裡に退去する前に、メンバDのCONNECTION REQUESTを受信する場合がある。チェックポイント506がなければ、メンバAは、DのCONNECTION REQUESTに応答して会議に再参加することになる。しかし、チェックポイント506で、退去の時に存在フラグを使用することによって、Aは、それが退去の過程にあると判断し、新規ユーザNにREJECTメッセージを送信する。
チェックポイント508に関して、チェックポイント508は、すべてのマルチパーティ会議についてサービス品質が維持されることを保証する。ユーザの数を所定の数までに制限することによって、会議制御プロトコルは、会議が大きくなりすぎ、サービス品質を危険にさらすことを許容しない。早期のメンバは、後から参加するメンバに対する優先権を有する。
ある状況で、新規ユーザNが、既に新しいメンバとして受け入れられており、あるコンピューティングデバイスのメンバリストに既に現れている可能性があることに留意することは重要である。新規ユーザNが、異なる既存メンバからCONNECTION REJECTメッセージを受信する場合に、参加プロセス500がエラーになり、新規ユーザNは、会議に参加しない。したがって、新規ユーザNは、それとの接続が既に確立されているすべての既存会議メンバにLEAVEメッセージを送信しなければならない。
どの会議制御プロトコルの検証も難しいが、本発明のマルチパーティ会議制御プロトコルの検証は、さらに難しい。というのは、このプロトコルの挙動が、イベントが発生する順序に強く依存し、可能な順序が、実際に、会議のサイズおよびアクションの数に対して指数関数的であるからである。これを知ってのうえで、本発明のマルチパーティ会議プロトコルの検証は、すべての可能な並行シナリオでこのプロトコルの動作を検証することによって実行された。上で述べたように、メッシュ会議アーキテクチャの安定性は、メンバが同時に参加し、退去する場合であっても常に保護されなければならない。同時の参加および退去は、2つの異なるメンバについて発生する可能性があり、あるいは、同一のメンバについて発生する場合がある。
したがって、4タイプのイベントが、定義され、検証された。下の表に示された、この4つのイベントに、JOIN(J)、LEAVE(L)、BRIEF JOIN(BJ)、およびBRIEF LEAVE(BL)が含まれる。JOINおよびLEAVEは、上で説明した。BRIEF JOINは、メンバが参加し、即座に退去する状況を指す。BRIEF LEAVEは、メンバが退去し、即座に再参加する状況を指す。この4つのイベントに基づいて、本発明の会議制御プロトコルをテストした。テストの結果を、表1に示す。
Figure 0004769015
表1からわかるように、15個のシナリオをテストした。各行が、テストシナリオの1つを表す。初期状態は、会議の既存メンバを識別する。アクション列は、同時に発生したアクション、JOIN(J)、LEAVE(L)、BRIEF JOIN(BJ)、およびBRIEF LEAVE(BL)を識別する。例えば、テスト1では、EおよびFの両方が、JOINメッセージを送信した。最後の状態列は、生じなければならない最終的な状態を識別する。通常、許容可能な最後の状態が、1つだけある。しかし、テスト1では、本発明の会議プロトコルが、メンバの数を5までに制限するので、2つの参加者のうちの1つだけが、出席を許容され、あるいはその代わりに、両方が参加を許可されない。表1の情報は、自己説明的なので、表1のこれ以上の分析は説明しない。本発明の会議プロトコルが、15個のテストのそれぞれに合格し、すべての会議メンバが、他のメンバのそれぞれとの正確に1つの単一アクティブ通信チャネルにより安定したことに留意することが重要である。
本発明のマルチパーティビデオ会議システムは、セキュリティ保護も提供する。一実施形態において、セキュリティ保護には、各会議に一意の128ビット会議IDを割り当てることが含まれる。この128ビット会議IDは、グローバル一意識別子(GUID)に類似する。会議IDは、会議に出席するように新規ユーザを勧誘する会議イニシエータによって生成される。同一の会議への勧誘のそれぞれが、インスタントメッセージ内に同一の会議IDを有する。会議IDは、会議を識別するため、および新規ユーザが識別された会議に適当に勧誘されたことを保証するために、JOINメッセージと共に送信される。
したがって、説明したように、本発明のマルチパーティビデオ会議システム用の会議制御プロトコルは、フルメッシュ会議アーキテクチャで構成されたネットワーク化されたコンピュータを使用して動作する。したがって、1つまたは複数の中央サーバを有することに関連するコストおよび支障が回避される。本発明の会議制御プロトコルは、低コストでもある、マルチパーティビデオ会議の信頼性があり柔軟な代替案を提供する。
本明細書全体を通じて、「一実施形態」、「実施形態」、または「例の実施形態」に言及したが、これは、特定の説明される特徴、構造、または特性が、本発明の少なくとも1つの実施形態に含まれることを意味する。したがって、そのような句の使用は、単に1つの実施形態以上のものを指す場合がある。さらに、説明された特徴、構造、または特性を、1つまたは複数の実施形態において、適当な形で組み合わせることができる。
しかし、当業者は、1つまたは複数の特定の詳細なしで、または他の方法、リソース、材料などを用いて、本発明を実践できることを認めるであろう。他の場合に、本発明の諸態様を不明瞭にしないようにするだけのために、周知の構造、リソース、または動作を、詳細には図示せず、説明しなかった。
例の実施形態および応用例を図示し、説明したが、本発明が、上で説明した正確な構成およびリソースに制限されないことを理解されたい。当業者に明白な様々な修正、変更、および変形を、請求される発明の範囲から逸脱せずに、本明細書で開示された本発明の方法およびシステムの配置、動作、および詳細において行うことができる。
本明細書で説明する技法および機構を実施するのに使用することができる例示的コンピューティングデバイスを示す図である。 図1に示された複数のコンピュータデバイスをその中で構成できる例示的ネットワークを示す図である。 本明細書で説明する技法および機構を実施する、図1に示されたコンピューティングデバイス内の構成要素を示す機能ブロック図である。 図2に示されたネットワークを確立し、維持する会議制御プロトコルを示す表図である。 図2に示されたネットワークに新しいユーザを追加するときの会議制御プロトコルの動作を示す順次流れ図である。 メンバが図2に示されたネットワークから退去するときの会議制御プロトコルの動作を示す順次流れ図である。
符号の説明
100 コンピューティングデバイス
104 システムメモリ
105 オペレーティングシステム
106 プログラムモジュール
107 プログラムデータ
102 処理ユニット
109 取り外し可能ストレージ
110 固定ストレージ
112 入力デバイス
114 出力デバイス
116 通信接続
118 他のコンピューティングデバイス
202 コンピューティングデバイスA
204 コンピューティングデバイスB
206 コンピューティングデバイスC
208 コンピューティングデバイスD
210 コンピューティングデバイスE
302 ユーザインターフェース
310 メディアストリームエンジン
312 伝送モジュール
304 会議制御モジュール
308 メッセージングサービスインターフェース
306 TCP/UDPインターフェース

Claims (30)

  1. フルメッシュアーキテクチャをサポートする分散マルチパーティ会議の会議メンバの間の通信パスを制御する方法であって、
    第2システムから送信された接続要求メッセージを第1システムで受信すること、
    前記第1システムと前記第2システムとの間に保留中の通信パスが存在しない場合に、接続肯定応答を前記第2システムに送信すること、
    前記第2システムから参加メッセージを受信すること
    前記第1システムが前記マルチパーティ会議から退去する過程にない場合に、前記第2システムに参加受入メッセージを送信すること、および
    前記第1システムが前記マルチパーティ会議から退去する過程にある場合に、前記第2システムに拒否メッセージを送信すること
    を備えることを特徴とする方法。
  2. フルメッシュアーキテクチャをサポートする分散マルチパーティ会議の会議メンバの間の通信パスを制御する方法であって、
    第2システムから送信された接続要求メッセージを第1システムで受信すること、
    前記第1システムと前記第2システムとの間に保留中の通信パスが存在しない場合に、接続肯定応答を前記第2システムに送信すること、
    前記第2システムから参加メッセージを受信すること、および
    前記第1システムが前記マルチパーティ会議から退去する過程にない場合に、前記第2システムに参加受入メッセージを送信すること
    を備え、
    前記第1システムは、前記参加メッセージを送信した第2システムが前記マルチパーティ会議の既存のメンバである場合、前記第2のシステムとの接続をクローズしてから、前記参加メッセージに応答して前記第2システムに参加受入メッセージを送信することを特徴とする方法。
  3. 前記参加受入メッセージは、現在前記マルチパーティ会議にいる会議メンバを識別するメンバリストを含むことを特徴とする請求項1または2に記載の方法。
  4. 前記メンバリストは、前記会議メンバの1つとして前記第2システムを含むことを特徴とする請求項に記載の方法。
  5. 前記第1システムは、前記第1システムの保留中リストを検査することによって、前記第1システムと前記第2システムとの間に保留中通信パスがあるかどうかを判定し、前記保留中リストは、前記第1システムが既に前の接続要求メッセージを送信した先のシステムのそれぞれの識別子を記憶することを特徴とする請求項1または2に記載の方法。
  6. 前記第1システムは、前記第1システムの存在フラグを検査することによって、前記第1システムが退去の過程にあるかどうかを判定し、前記存在フラグは、退去メッセージが前記第1システムから送信されるときに更新されることを特徴とする請求項1または2に記載の方法。
  7. 前記参加受入メッセージの送信は、さらに、前記会議が最大数の会議メンバをまだ有していないことの判定に基づくことを特徴とする請求項1または2に記載の方法。
  8. 会議メンバの前記最大数は、会議イニシエータによって構成されることを特徴とする請求項に記載の方法。
  9. 前記最大数は、現在のインターネット帯域幅状態に基づくことを特徴とする請求項に記載の方法。
  10. 前記会議が最大数の会議メンバをまだ有していないことの判定は、メンバリストおよび保留中リストの両方にリストされたメンバの数を、会議メンバの前記最大数と比較することを含むことを特徴とする請求項に記載の方法。
  11. 前記最大数は、デフォルト値であることを特徴とする請求項に記載の方法。
  12. 前記接続要求メッセージを送信することによって、前記会議のメンバになり、参加プロセスを開始するように前記第2システムを勧誘するために、インターネットインスタントメッセージを前記第2システムに送信することをさらに備えることを特徴とする請求項1または2に記載の方法。
  13. 前記インターネットインスタントメッセージは、会議識別子を含むことを特徴とする請求項1に記載の方法。
  14. 前記接続要求メッセージおよび前記参加メッセージは、前記会議識別子を含むことを特徴とする請求項1に記載の方法。
  15. フルメッシュアーキテクチャをサポートする分散マルチパーティ会議の会議メンバの間の通信パスを制御する方法であって、
    第1システムから第2システムに接続要求メッセージを送信することであって、前記第2システムは、前記マルチパーティ会議の既存メンバであること、
    前記第2システムから受信された接続肯定応答に応答して、前記第2システムに関連する識別子を用いて、前記第1システムで保留中リストを更新することであって、前記保留中リストは、前記第1システムと前記第2システムとの間で重複するチャネルが確立されないようにするのに使用されること、
    前記第1システムから前記第2システムに参加メッセージを送信すること、
    前記第1システムと前記第2システムとの間の通信パスが確立されたことを示す参加受入メッセージを前記第2システムから受信すること
    前記第2システムとの前記通信パスがもはや保留中でないことを反映するように、前記第1システムで前記保留中リストを更新すること、および
    前記第2システムが前記マルチパーティ会議から退去する過程にある場合に、前記第1システムに拒否メッセージを送信すること
    を備えることを特徴とする方法。
  16. フルメッシュアーキテクチャをサポートする分散マルチパーティ会議の会議メンバの間の通信パスを制御する方法であって、
    第1システムから第2システムに接続要求メッセージを送信することであって、前記第2システムは、前記マルチパーティ会議の既存メンバであること、
    前記第2システムから受信された接続肯定応答に応答して、前記第2システムに関連する識別子を用いて、前記第1システムで保留中リストを更新することであって、前記保留中リストは、前記第1システムと前記第2システムとの間で重複するチャネルが確立されないようにするのに使用されること、
    前記第1システムから前記第2システムに参加メッセージを送信すること、
    前記第1システムと前記第2システムとの間の通信パスが確立されたことを示す参加受入メッセージを前記第2システムから受信すること、および
    前記第2システムとの前記通信パスがもはや保留中でないことを反映するように、前記第1システムで前記保留中リストを更新すること
    を備え、
    前記第2システムは、前記参加メッセージを送信した第1システムが前記マルチパーティ会議の既存のメンバである場合、前記第1のシステムとの接続をクローズしてから、前記参加メッセージに応答して前記第1システムに参加受入メッセージを送信することを特徴とする方法。
  17. 前記参加受入メッセージは、現在前記マルチパーティ会議にいる会議メンバを識別するメンバリストを含むことを特徴とする請求項15または16に記載の方法。
  18. 前記第1システムは、前記メンバリスト内で識別される前記会議メンバのそれぞれに別々の接続要求メッセージを送信することによって、各会議メンバとの参加プロセスを開始し、これにより前記分散マルチパーティ会議のフルメッシュアーキテクチャを維持することを特徴とする請求項1に記載の方法。
  19. 前記接続要求メッセージを送信することによって、前記会議のメンバになり、参加プロセスを開始するように前記第1システムを勧誘するインターネットインスタントメッセージを前記第2システムから受信することをさらに備えることを特徴とする請求項15または16に記載の方法。
  20. 前記インターネットインスタントメッセージは、会議識別子を含むことを特徴とする請求項19に記載の方法。
  21. 前記接続要求メッセージおよび前記参加メッセージは、前記会議識別子を含むことを特徴とする請求項20に記載の方法。
  22. プロセッサと、
    1つまたは複数のプログラムモジュールがロードされるメモリと
    を備えるシステムであって、前記プログラムモジュールは、メッシュアーキテクチャを使用する分散マルチパーティ会議を制御することを担い、
    会議制御プロトコルをサポートする会議制御モジュールを含み、前記会議制御プロトコルは、
    マルチパーティ会議に参加する許可を求める接続要求メッセージと、
    前記接続要求メッセージを許可する接続肯定応答メッセージと、
    2つのシステムの間の通信パスを開始する参加メッセージと、
    前記2つのシステムの間の前記通信パスを最終的に承認する参加受入メッセージと
    前記通信パスの開始を拒否する拒否メッセージと
    を有し、
    前記2つのシステムのうちの前記参加メッセージを受信した一方のシステムは、前記マルチパーティ会議から退去する過程にある場合に、他方のシステムに前記拒否メッセージを送信することを特徴とするシステム。
  23. プロセッサと、
    1つまたは複数のプログラムモジュールがロードされるメモリと
    を備えるシステムであって、前記プログラムモジュールは、メッシュアーキテクチャを使用する分散マルチパーティ会議を制御することを担い、
    会議制御プロトコルをサポートする会議制御モジュールを含み、前記会議制御プロトコルは、
    マルチパーティ会議に参加する許可を求める接続要求メッセージと、
    前記接続要求メッセージを許可する接続肯定応答メッセージと、
    2つのシステムの間の通信パスを開始する参加メッセージと、
    前記2つのシステムの間の前記通信パスを最終的に承認する参加受入メッセージと
    を有し、
    前記2つのシステムのうちの一方のシステムは、前記参加メッセージを送信した他方のシステムが前記マルチパーティ会議の既存のメンバである場合、前記他方のシステムとの接続をクローズしてから、前記参加メッセージに応答して前記他方のシステムに参加受入メッセージを送信することを特徴とするシステム。
  24. 前記会議制御モジュールは、さらに、保留中リストを維持することをサポートし、前記保留中リストは、前記接続要求メッセージが既存システムに送信されるときに、前記既存システムの識別子を前記保留中リストに追加することによって更新されることを特徴とする請求項22または23に記載のシステム。
  25. 前記保留中リストに対する更新は、前記接続肯定応答メッセージおよび接続拒絶メッセージに基づいて行われることを特徴とする請求項2に記載のシステム。
  26. 前記会議制御モジュールは、さらに、メンバリストを維持することをサポートし、前記メンバリストは、前記マルチパーティ会議の各会議メンバをリストし、前記メンバリストは、退去メッセージを受信する時または前記通信パスを最終的に承認する前記参加受入メッセージを受信する際に更新されることを特徴とする請求項22または23に記載のシステム。
  27. 前記会議制御モジュールは、さらに、システムが前記マルチパーティ会議から退去する過程にあることを示す存在フラグを維持することをサポートし、前記存在フラグは、前記退去メッセージに関連して更新されることを特徴とする請求項22または23に記載のシステム。
  28. 前記プログラムモジュールは、前記マルチパーティ会議への参加または退去に関するユーザ要求を処理するように構成されたユーザインターフェースをさらに含むことを特徴とする請求項22または23に記載のシステム。
  29. 前記プログラムモジュールは、前記会議制御モジュールがメッセージングサービスと通信できるようにするメッセージングサービスインターフェースをさらに含むことを特徴とする請求項22または23に記載のシステム。
  30. 前記ユーザインターフェースは、前記メッセージングサービスからインスタントメッセージを受信するように構成され、前記インスタントメッセージは、前記会議制御プロトコルを開始するようにシステムを勧誘することを特徴とする請求項29に記載のシステム。
JP2005134487A 2004-04-30 2005-05-02 分散マルチパーティ会議を制御する機構 Expired - Fee Related JP4769015B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/837,315 2004-04-30
US10/837,315 US7552175B2 (en) 2004-04-30 2004-04-30 Mechanism for controlling communication paths between conference members

Publications (2)

Publication Number Publication Date
JP2006004406A JP2006004406A (ja) 2006-01-05
JP4769015B2 true JP4769015B2 (ja) 2011-09-07

Family

ID=34939599

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005134487A Expired - Fee Related JP4769015B2 (ja) 2004-04-30 2005-05-02 分散マルチパーティ会議を制御する機構

Country Status (7)

Country Link
US (1) US7552175B2 (ja)
EP (1) EP1599014B1 (ja)
JP (1) JP4769015B2 (ja)
KR (1) KR101298342B1 (ja)
CN (1) CN100518073C (ja)
AT (1) ATE450111T1 (ja)
DE (1) DE602005017848D1 (ja)

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8856663B2 (en) 2004-05-03 2014-10-07 Blackberry Limited User interface for integrating applications on a mobile communication device
US20060026237A1 (en) * 2004-07-30 2006-02-02 Wang Richard G Method and system for instant message using HTTP URL technology
DE102004053597B4 (de) * 2004-11-05 2008-05-29 Infineon Technologies Ag Verfahren zum automatischen Erzeugen und/oder Steuern einer Telekommunikations-Konferenz mit einer Vielzahl von Teilnehmern, Telekommunikations-Konferenz-Endgerät und Telekommunikations-Konferenz-Servereinrichtung
US8219622B2 (en) * 2005-02-09 2012-07-10 Verizon Business Global Llc Systems and methods for providing extended peering
AU2006312041B2 (en) 2005-11-02 2010-04-08 Interdigital Technology Corporation Method and system for autonomous channel coordination for a wireless distribution system
US8817668B2 (en) * 2006-09-15 2014-08-26 Microsoft Corporation Distributable, scalable, pluggable conferencing architecture
TWI355211B (en) * 2006-12-01 2011-12-21 Inst Information Industry Connection node, method, application program, and
US8554265B1 (en) * 2007-01-17 2013-10-08 At&T Mobility Ii Llc Distribution of user-generated multimedia broadcasts to mobile wireless telecommunication network users
CN101237336B (zh) * 2007-02-01 2011-10-05 华为技术有限公司 进行多方通信的方法、系统及装置
US8806027B2 (en) * 2007-02-14 2014-08-12 Microsoft Corporation Nearby media device tracking
US8204910B2 (en) 2007-02-14 2012-06-19 Microsoft Corporation Media device presence management
US8477177B2 (en) * 2007-08-10 2013-07-02 Hewlett-Packard Development Company, L.P. Video conference system and method
US8954178B2 (en) 2007-09-30 2015-02-10 Optical Fusion, Inc. Synchronization and mixing of audio and video streams in network-based video conferencing call systems
US8243119B2 (en) * 2007-09-30 2012-08-14 Optical Fusion Inc. Recording and videomail for video conferencing call systems
US20110069141A1 (en) * 2008-04-30 2011-03-24 Mitchell April S Communication Between Scheduled And In Progress Event Attendees
US8516049B2 (en) * 2008-06-09 2013-08-20 International Business Machines Corporation Administering instant messaging (‘IM’) chat sessions
US8437282B2 (en) * 2009-06-21 2013-05-07 Clearone Communications Hong Kong Limited System and method of multi-endpoint data conferencing
US8645484B2 (en) * 2011-08-02 2014-02-04 Google Inc. Messaging service using different text messaging channels
KR101745740B1 (ko) * 2012-06-05 2017-06-09 라인 가부시키가이샤 모바일 메시징 애플리케이션 기반 스케줄링 서비스 제공 방법 및 장치
CN102857512B (zh) * 2012-09-18 2015-10-07 广东威创视讯科技股份有限公司 基于sip协议的分布式会议方法
WO2014080293A2 (en) 2012-11-23 2014-05-30 Calgary Scientific Inc. Methods and systems for peer-to-peer discovery and connection from a collaborative application session
US9473363B2 (en) * 2013-07-15 2016-10-18 Globalfoundries Inc. Managing quality of service for communication sessions
KR102125557B1 (ko) 2013-08-01 2020-06-22 삼성전자주식회사 복수의 단말기간의 통신 수립 방법 및 장치
KR101885776B1 (ko) 2013-09-12 2018-08-06 삼성전자주식회사 통신을 수립하는 방법, 장치 및 기록매체
CN104935763B (zh) * 2014-03-20 2018-05-25 华为技术有限公司 一种电话会议的处理方法、主持方电话终端、及电话会议系统
US9984242B2 (en) * 2014-08-13 2018-05-29 Adobe Systems Incorporated Attestation for electronic signatures
US10305945B2 (en) 2014-11-10 2019-05-28 The Mitre Corporation Providing survivable calling and conferencing
US10269012B2 (en) * 2015-11-06 2019-04-23 Swfl, Inc. Systems and methods for secure and private communications
KR102279582B1 (ko) 2017-10-30 2021-07-19 삼성에스디에스 주식회사 회의 제공 장치 및 상기 장치에서의 접속 단말 변경 방법
CN108235044A (zh) * 2017-12-29 2018-06-29 北京密境和风科技有限公司 一种实现多人直播的方法、装置和服务器
CN110971767B (zh) * 2019-12-18 2021-08-17 紫光展讯通信(惠州)有限公司 电话会议管理方法、装置及可读存储介质
JP7153942B2 (ja) * 2020-08-17 2022-10-17 ラトナ株式会社 情報処理装置、方法、コンピュータプログラム、及び、記録媒体
CN114785729B (zh) * 2022-03-30 2023-01-10 慧之安信息技术股份有限公司 基于sip协议格式转换的信令交互控制方法和系统

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0827769B2 (ja) 1992-10-30 1996-03-21 インターナショナル・ビジネス・マシーンズ・コーポレイション 通信インターフェースの生成システム及びその方法
JPH0774743A (ja) * 1993-08-31 1995-03-17 Oki Electric Ind Co Ltd 多地点間接続方法
US6167432A (en) 1996-02-29 2000-12-26 Webex Communications, Inc., Method for creating peer-to-peer connections over an interconnected network to facilitate conferencing among users
US5867653A (en) 1996-04-18 1999-02-02 International Business Machines Corporation Method and apparatus for multi-cast based video conferencing
US5862329A (en) 1996-04-18 1999-01-19 International Business Machines Corporation Method system and article of manufacture for multi-casting audio visual material
JP3748952B2 (ja) * 1996-08-08 2006-02-22 株式会社リコー 多地点接続ネットワークの構築方法及び多地点接続ネットワークシステム
US6850985B1 (en) * 1999-03-02 2005-02-01 Microsoft Corporation Security and support for flexible conferencing topologies spanning proxies, firewalls and gateways
JP2001014156A (ja) * 1999-06-29 2001-01-19 Hitachi Ltd 分散オブジェクトの動的切り替え方法
US6496201B1 (en) 1999-09-30 2002-12-17 International Business Machines Corporation System and user interface for multiparty conferencing
WO2001098936A2 (en) 2000-06-22 2001-12-27 Microsoft Corporation Distributed computing services platform
US7047273B2 (en) 2000-11-28 2006-05-16 Navic Systems, Inc. Load balancing in set top cable box environment
US20020073204A1 (en) 2000-12-07 2002-06-13 Rabindranath Dutta Method and system for exchange of node characteristics for DATA sharing in peer-to-peer DATA networks
US7685224B2 (en) 2001-01-11 2010-03-23 Truelocal Inc. Method for providing an attribute bounded network of computers
AU2002234258A1 (en) 2001-01-22 2002-07-30 Sun Microsystems, Inc. Peer-to-peer network computing platform
US7275102B2 (en) 2001-01-22 2007-09-25 Sun Microsystems, Inc. Trust mechanisms for a peer-to-peer network computing platform
US20020133611A1 (en) * 2001-03-16 2002-09-19 Eddy Gorsuch System and method for facilitating real-time, multi-point communications over an electronic network
US7099871B2 (en) 2001-05-04 2006-08-29 Sun Microsystems, Inc. System and method for distributed real-time search
US7269632B2 (en) 2001-06-05 2007-09-11 Xdyne, Inc. Networked computer system for communicating and operating in a virtual reality environment
DE10143754A1 (de) 2001-09-06 2003-04-03 Siemens Ag Skalierbares Peer-to-Peer-Netzwerk mit einem Verzeichnisdienst
US7068309B2 (en) 2001-10-09 2006-06-27 Microsoft Corp. Image exchange with image annotation
US20030217096A1 (en) 2001-12-14 2003-11-20 Mckelvie Samuel J. Agent based application using data synchronization
CA2505936A1 (en) * 2002-11-11 2004-05-27 Supracomm, Inc. Multicast videoconferencing
US7533141B2 (en) * 2003-01-24 2009-05-12 Sun Microsystems, Inc. System and method for unique naming of resources in networked environments
KR100546832B1 (ko) * 2003-08-21 2006-01-26 삼성전자주식회사 임베디드 pcb 기판을 사용한 듀플렉서 및 그 제조 방법
US7660889B2 (en) 2003-11-18 2010-02-09 Cisco Technology, Inc. Initialization and acquisition of peers in a peers' list in a peer-to-peer network

Also Published As

Publication number Publication date
EP1599014B1 (en) 2009-11-25
ATE450111T1 (de) 2009-12-15
US20050256925A1 (en) 2005-11-17
EP1599014A3 (en) 2006-05-24
DE602005017848D1 (de) 2010-01-07
KR101298342B1 (ko) 2013-08-20
US7552175B2 (en) 2009-06-23
JP2006004406A (ja) 2006-01-05
CN1694410A (zh) 2005-11-09
CN100518073C (zh) 2009-07-22
KR20060045874A (ko) 2006-05-17
EP1599014A2 (en) 2005-11-23

Similar Documents

Publication Publication Date Title
JP4769015B2 (ja) 分散マルチパーティ会議を制御する機構
US10862987B2 (en) System and method for collaborative telepresence amongst non-homogeneous endpoints
US9565249B2 (en) Adaptive connectivity in network-based collaboration background information
US9769216B2 (en) Collaboration handoff
US20210374685A1 (en) Using calendar information to authorize user admission to online meetings
RU2459371C2 (ru) Распределяемая, масштабируемая, подключаемая архитектура конференцсвязи
US20070286101A1 (en) System and method for providing conferencing capabilities
US7987233B1 (en) System and methods for facilitating a multiparty communications session with a dynamically designated session manager
US20180012192A1 (en) User experiences in personal meeting rooms
US9525779B2 (en) Communications services management using services profile
US8868658B2 (en) Client assisted multicasting for audio and video streams
US20110302247A1 (en) Contextual information dependent modality selection
US9660824B2 (en) Renewing an in-process meeting without interruption in a network environment
US11997102B2 (en) Data object for selective per-message participation of an external user in a meeting chat
US20180034581A1 (en) Quality of service assessment for conferences
US8611878B2 (en) Arrangement and method for controlling service activation on a mobile terminal
CN113949596B (zh) 一种设备连接方法、装置、设备以及存储介质
KR20130017082A (ko) 중앙 집중식 통지를 통한 멀티모달 대화 상태 및 전달
CN113872778B (zh) 一种设备连接方法、装置、设备以及存储介质
US11871208B2 (en) Methods and systems for spatial rendering of multi-user voice communication
WO2024144861A1 (en) Access control of audio and video streams and control of representations for communication sessions

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080425

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101019

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101029

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110127

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110610

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110617

R150 Certificate of patent or registration of utility model

Ref document number: 4769015

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140624

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees