JP2019125997A - Multi-point communication system and method, and program - Google Patents
Multi-point communication system and method, and program Download PDFInfo
- Publication number
- JP2019125997A JP2019125997A JP2018007097A JP2018007097A JP2019125997A JP 2019125997 A JP2019125997 A JP 2019125997A JP 2018007097 A JP2018007097 A JP 2018007097A JP 2018007097 A JP2018007097 A JP 2018007097A JP 2019125997 A JP2019125997 A JP 2019125997A
- Authority
- JP
- Japan
- Prior art keywords
- mcu
- multipoint
- communication
- distributed
- terminal
- 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.)
- Granted
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Telephonic Communication Services (AREA)
Abstract
Description
本発明は、多地点接続機能を交流点として複数の端末間でグループ通信を行う多地点間通信システムに関する。 The present invention relates to a multipoint communication system in which group communication is performed between a plurality of terminals by using a multipoint connection function as an AC point.
近年、4K/8Kなど超高精細カメラ/ディスプレイ装置やAR(拡張現実:Augmented Reality)/VR(仮想現実:Virtual Reality)技術の発達とあわせ、省エネやワークライフバランスを目的とした各企業のテレワーク推奨施策等により、ネットワークを介した映像コミュニケーションサービスへの需要が高まっている。 In recent years, together with the development of ultra-high-definition camera / display devices such as 4K / 8K and AR (Augmented Reality) / VR (Virtual Reality) technology, telework of each company for the purpose of energy saving and work-life balance Demands for video communication services via networks are increasing due to recommended measures and the like.
映像コミュニケーションサービスの代表例として映像会議が挙げられる。映像会議システムを構成する上で良く知られる装置として多地点接続装置(MCU:Multipoint Control Unit)が挙げられる。MCUは、グループ通信の交流点としてネットワークに配置される装置であり、映像会議システム用のMCUは、全ユーザ端末からの映像/音声パケットを受信したのち、各参加者の映像を1つの画面に合成して、全ユーザ端末に映像/音声を配信する装置である。 A video conference is mentioned as a representative example of a video communication service. A multipoint control unit (MCU: Multipoint Control Unit) is known as a device well-known in configuring a video conference system. The MCU is a device arranged in the network as an exchange point of group communication, and the MCU for the video conference system combines the video of each participant into one screen after receiving video / audio packets from all the user terminals. It is a device that combines and distributes video / audio to all user terminals.
MCUを用いた多地点間映像会議では、P2P(Peer to Peer)方式の多地点映像会議と比べて端末負荷が下げられる一方で、MCUサーバの計算負荷およびネットワーク負荷が増大するという課題がある。MCUのネットワーク負荷低減方法の一例として、複数のMCUを地理的に分散配備したシステムが知られている(例えば、特許文献1参照)。このシステムでは、例えば、大阪エリアと東京エリアとで会議参加端末を収容するMCUを分離しつつ、大阪のMCUと東京のMCUとをカスケード接続させる。大阪エリアの複数端末の会議参加者映像は大阪のMCUにおいて1画面に合成された状態で東京のMCUへ送出される。また逆方向も同様、東京エリアの複数ユーザの会議参加者映像が東京のMCUにおいて1画面に合成された状態で大阪のMCUへ送出される。このようなシステムにより、東京−大阪間のネットワーク帯域の増加を抑制することができる。 In multipoint video conferencing using an MCU, there is a problem in that while the terminal load can be reduced compared to multipoint video conferencing in P2P (Peer to Peer), the computational load and network load of the MCU server increase. As an example of a method of reducing the network load of MCUs, a system in which a plurality of MCUs are distributed and distributed geographically is known (see, for example, Patent Document 1). In this system, for example, an MCU in Osaka and a MCU in Tokyo are cascaded while the MCUs accommodating the conference participation terminals are separated in the Osaka area and the Tokyo area. Conference participant images of a plurality of terminals in the Osaka area are sent to the MCU in Tokyo in a state of being combined into one screen in the MCU in Osaka. Similarly, in the reverse direction, conference participant images of a plurality of users in the Tokyo area are sent to the MCU in Osaka in a state where they are combined into one screen in the MCU in Tokyo. Such a system can suppress an increase in the network bandwidth between Tokyo and Osaka.
上述の特許文献1に記載の方法によれば、複数のMCUをカスケード接続しているので、会議参加端末数が増大した場合または映像品質レートをより高品質にしようとした場合においても、中継ネットワークや他網との相互接続部(ゲートウェイ)におけるネットワーク負荷の増大を防ぐことができると期待される。しかし、映像会議の参加者やネットワーク負荷は時々刻々と変わるため、最もネットワーク負荷の小さいMCU配置場所も変化する。上述の特許文献1に記載の方法では、MCUの動的な配置場所変更ができないため、ネットワークの負荷軽減ができないという課題がある。
According to the method described in
そこで、特許文献2に記載されているように、地理的に分散配備されたMCU群の中から、会議が発生するごとに参加端末の構成に応じて利用するMCUを動的に変更させる方法が提案されている。この方法では、会議が開催される度に最適な(たとえば会議によって発生するネットワークトラヒックを最小限にするような)MCUを選択することができるので、初期の設計に縛られることなく参加者エリア構成に応じて効果的な中継ネットワーク帯域節約が可能となる。また、あるMCUが故障した場合においても、他の候補MCUを選択すればよいので会議の開催が可能となる。
Therefore, as described in
しかし、特許文献2に記載のものは、会議ごとに単一のMCUを選出する方法が与えられているのみであって、会議参加端末の地域的な偏り等に応じて効果的に複数のMCUを選出しカスケード接続させる方法については言及されていない。またMCUの配置場所の候補は、配置可能な場所と参加者の増加に伴って指数関数的に増加するため、最もネットワーク負荷最小となる最適配置が現実的な時間で探索できないという課題もある。
However, the method described in
本発明は上記事情に鑑みてなされたものであり、その目的とするところは、ネットワークやサーバの負荷や遅延が小さい多地点間通信システム及び方法並びにプログラムを提供することにある。 The present invention has been made in view of the above circumstances, and an object of the present invention is to provide a multipoint communication system, a method, and a program that reduce load and delay of a network and a server.
上記目的を達成するために、本願発明は、ネットワークに収容された複数の端末間でグループ通信を行う多地点間通信システムであって、前記ネットワーク内に地理的に分散配備された複数のサーバにおいて動作し且つ前記複数の端末との間にセッションを張りグループ通信に係る通信トラヒックを集約する1つ以上の多地点接続機能であって、他の多地点接続機能とカスケード接続することにより前記複数の端末に対して単一のグループ通信が実施されているように動作可能な多地点接続機能と、グループ通信で用いる多地点接続機能の配置を算出する配置計算処理手段と、グループ通信の実施中に前記配置計算処理手段により配置計算処理を行うとともに、この配置計算処理の算出結果に基づき、端末から多地点接続機能との間で張られているセッションを他の多地点接続機能との間に張り替えるよう制御する多地点接続機能制御手段とを備えたことを特徴とする。 In order to achieve the above object, the present invention is a multipoint communication system in which group communication is performed between a plurality of terminals accommodated in a network, in which a plurality of servers geographically distributed in the network are distributed. One or more multipoint connection functions that operate and aggregate sessions with the plurality of terminals and aggregate communication traffic related to group communication, wherein the plurality of multipoint connection functions are cascaded with other multipoint connection functions. During execution of group communication, a multipoint connection function operable such that a single group communication is performed for a terminal, arrangement calculation processing means for calculating an arrangement of the multipoint connection function used in group communication, and The arrangement calculation processing means performs arrangement calculation processing, and based on the calculation result of the arrangement calculation processing, the terminal is connected with the multipoint connection function from the terminal. Characterized in that a multipoint connection function control means for controlling so that Harikaeru between the other multipoint connection function sessions are.
本発明によれば、グループ通信実施中においてもグループ参加者の増減やネットワーク負荷の変動に応じて多地点接続機能の配置場所を変更することで、グループ通信を中断することなくネットワークのサーバ、回線帯域負荷を低減することができる。 According to the present invention, the server of the network and the line can be performed without interrupting the group communication by changing the arrangement location of the multipoint connection function according to the increase and decrease of the group participants and the change of the network load even during the group communication. Band load can be reduced.
以降の説明では多地点接続機能を映像会議における多地点接続装置(MCU:Multipoint Control Unit)として機能するものとして説明する。 In the following description, it is assumed that the multipoint connection function functions as a multipoint control unit (MCU) in a video conference.
まず、本発明の概要について図1及び図2を参照して説明する。本発明は、図1(b)に示すように、端末1の上位の中継ネットワークに地理的に分散して存在する仮想サーバインフラ2に、MCU機能3を分散配置し、分散したMCU3間はカスケード接続することで一つのMCUのように振る舞わせる。またそれぞれのMCU3は、同一の会議参加者の映像を合成/縮小して他のMCU機能3へ映像を転送することで通信帯域の削減を行う。以上を実現するためにMCU管理機能4を配置する。
First, the outline of the present invention will be described with reference to FIG. 1 and FIG. According to the present invention, as shown in FIG. 1 (b), the
一方、図1(a)に示す従来技術では、MCU3は全体で1つ配備されているのみであり、全会議参加端末1の画像を合成して、各参加端末1に配信している。このため、映像トラヒックが1つのMCU3に集中するという課題がある。一方、本発明では、図1(b)に示すように、分散配備された各MCU3においてエリア毎に一次とりまとめ画面合成を行い、各MCU3間で前記一次とりまとめ画面を交換して最終合成を行い、各参加端末1に配信する。これにより、中継ネットワークの利用が一画面の帯域で済むという利点がある。
On the other hand, in the prior art shown in FIG. 1A, only one
そして本発明では、図2に示すように、MCU管理機能4により、会議参加者の増減や、仮想サーバインフラ2、回線帯域などのネットワーク負荷が変動した際に、会議情報を分散されたMCU3間で引き継ぎ、MCU機能3の配置を動的に変更することを特徴とする。なお、図2は、会議途中にユーザが途中参加し、MCUの配置場所を変更する例を示している。
In the present invention, as shown in FIG. 2, when the
次に、本発明のより具体的な実施形態について図3を参照して説明する。図3は多地点間会議システムのシステム構成図である。 Next, a more specific embodiment of the present invention will be described with reference to FIG. FIG. 3 is a system configuration diagram of the multipoint conference system.
図3に示すように、多地点間会議システムは、複数の端末10と、複数地域にまたがる中継ネットワーク20と、地理的に分散配備された仮想サーバインフラ30と、前記仮想サーバインフラ30上に配備された分散MCU40と、前記仮想サーバインフラ30及び分散MCU40を制御するMCU管理ノード50及びインフラ管理ノード60と、を含んで構成される。
As shown in FIG. 3, the multipoint conference system is deployed on a plurality of
中継ネットワーク20は地理的に分散して構築された複数の地域ネットワークの相互接続により構成された論理的なネットワークであり、地理的に分散配備された複数のルータ25を含む。本実施の形態における中継ネットワーク20のネットワークトポロジーは、図3に示すように、ルータ25をノードとするツリー構造であるものとする。中継ネットワーク20は、ツリー構造の最上位のルータ25を介して、他網であるインターネット70に接続している。
The
各ルータ25の近傍には仮想サーバインフラ30が存在する。任意の仮想サーバインフラ30はインフラ管理ノード60からの指示により分散MCUアプリケーションを起動、終了できる。
A
端末10は、例えばスピーカー、マイクなどを備えるコンピュータであり、仮想サーバインフラ30上に起動している何れかの分散MCU40とセッションを確立して映像会議を行う。
The
仮想サーバインフラ30は仮想ハイパーバイザ(または仮想ホスト)であり、MCU40は仮想マシン(VM:Virtual Machine)上で動作するアプリケーションの実体(インスタンス)である。
The
インフラ管理ノード60は中継ネットワーク20全体を管理しており、端末−ルータ間、ルータ−ルータ間の回線帯域使用率、仮想サーバインフラ使用率(CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、メモリ、ストレージ利用率等)をリアルタイムに監視している。監視方法としては、例えばSNMP(Simple Network Management Protocol)を用いることで各ルータ25のポート別送受信量、CPU利用率、メモリ利用率などを取得できる。
The
MCU管理ノード50は、全開催会議情報(仮想会議室識別子、会議開催分散MCU、分散MCU毎の端末割当、端末識別子等)を管理し、分散MCU40への会議割当、端末10への分散MCU40の割当、分散MCU40の起動、終了指示、分散MCU40間のカスケード接続指示等を行う。
The
なお仮想サーバインフラ30、分散MCU40、MCU管理ノード50は中継ネットワーク20内に限定されず、例えばインターネット70等の他網上にあっても良い。また本実施の形態では説明は省略するが、分散MCU40は端末10が持つことも考えられる。
The
映像会議を行う際、仮想会議室が一つまたは複数の分散MCU40上に開催され、会議に参加する端末10は何れかの分散MCU40とセッションを確立する。一つまたは複数の分散MCU40は、セッションを確立している端末10の映像を取得及び合成し、他の分散MCU40へ合成した映像を転送する。分散MCU40は他の分散MCU40から取得した合成済みの映像を取得し、自身が合成した映像と更に合成して、自身とセッションを確立している全端末10に、全参加ユーザが合成された映像を転送する。映像の合成方法としては他に、それぞれの分散MCU機能40が、セッションを確立している端末10の映像を合成せずに縮小だけして他の分散MCU40へ送信し、各分散MCU40は全ての映像が揃ってから合成を行う方法も考えられる。
When a video conference is performed, a virtual conference room is held on one or more distributed
次に、インフラ管理ノード、MCU管理ノード、仮想サーバインフラ、端末の構成について図4を参照して説明する。図4は、インフラ管理ノード、MCU管理ノード、仮想サーバインフラの機能ブロック図である。 Next, configurations of the infrastructure management node, the MCU management node, the virtual server infrastructure, and the terminal will be described with reference to FIG. FIG. 4 is a functional block diagram of an infrastructure management node, an MCU management node, and a virtual server infrastructure.
各仮想サーバインフラ30は、サーバ・ネットワーク負荷監視部31と、負荷情報送信部32と、アプリケーション管理部33と、当該仮想サーバインフラ30上で動作する分散MCU40とを備えている。
Each
MCU管理ノード50は、再配置制御部51と、分散MCU配置要求送信部52と、分散MCU管理部53と、会議受付部54と、会議情報データベース55とを備えている。
The
インフラ管理ノード60は、負荷情報取得部61と、インフラ状態管理部62と、制御要求受信部63と、仮想サーバインフラ制御部64とを備えている。
The
また、MCU管理ノード50又はインフラ管理ノード60は、MCU配置計算部80を備えている。図4は、MCU配置計算部80の実装先がMCU管理ノード50又はインフラ管理ノード60の何れであってもよいことを示している。
Further, the
各仮想サーバインフラ30のサーバ・ネットワーク負荷監視部31では、CPU、メモリその他計算資源の使用率と、仮想サーバインフラ30から送受信したパケット量から算出した帯域使用量を常に監視しており、負荷情報送信部32からインフラ管理ノード60の負荷情報取得部61へ定期的に各種使用率の通知を行う。前述の各種使用率はインフラ状態管理部62で管理され、分散MCU40の最適配置を行う際に必要があればMCU配置計算部80へ通知される。
The server / network
各仮想サーバインフラ30のアプリケーション管理部33は、分散MCU40など中継ネットワーク20上に配置されるアプリケーションの管理をしている。MCU管理ノード50から分散MCU40の起動・終了指示があった場合、当該指示は、インフラ管理ノード60の制御要求受信部63・仮想サーバインフラ制御部64からアプリケーション管理部33へ通知される。アプリケーション管理部33は、当該指示に基づき、分散MCU40の起動・終了処理を実施する。
The
各分散MCU40はMCU管理ノード50と通信可能であり、MCU管理ノード50の分散MCU管理部53からは仮想会議室の追加/削除、分散MCU40間のカスケード接続指示、端末10の収容、転送指示などが通知される。また、分散MCU40は、分散MCU40の処理負荷量、各端末10の会議品質、端末10の増減情報を、分散MCU管理部53に通知する。また、分散MCU40は、分散MCU40間同士でカスケード接続を行う場合も、分散MCU40間の通信品質を収集し、MCU管理ノード50の分散MCU管理部53に通知する。
Each distributed
MCU管理ノード50の会議情報データベース55は、全ての会議情報を管理する。MCU管理ノード50の会議受付部54は、端末10に対して、会議参加のために接続すべき分散MCU40を指示する。再配置制御部51は、分散MCU40及びインフラ管理ノード60からのサーバ、ネットワーク負荷情報に応じて分散MCU40の再配置を実施するかの判定を行う。
The
次に、MCU管理ノード50内の再配置制御部51と仮想サーバインフラ30内の分散MCU40の機能構成について図5を参照して説明する。図5は再配置制御部及び分散MCUの機能ブロック図である。
Next, functional configurations of the
再配置制御部51は、図5に示すように、再配置判定部511と、再配置計算判定部512と、再配置バッファ513と、端末増減数管理部514と、ネットワーク輻輳判定部515と、サーバ負荷判定部516とを備える。分散MCU40は、分散MCU負荷監視部41と、RTT(Round Trip Time)・ジッタ計測部42と、パケットロス計測部43と、端末管理部44と、品質情報送信部45とを備える。
As shown in FIG. 5, the
分散MCU40は、各会議毎に、端末10の増減情報を端末管理部44により常時計測する。また、分散MCU40は、各会議毎に、会議に参加する各端末10との通信における、パケットロス率をパケットロス計測部43により、RTT及びジッタをRTT・ジッタ計測部42により常時計測する。これらの情報は、TCP(Transmission Control Protocol)、RTCP(Real Time Control Protocol)等一般的なプロトコルで取得可能である。また分散MCU40間がカスケード接続している場合は、分散MCU40間の通信におけるパケットロス率、RTT、ジッタを分散MCU負荷監視部41により常時計測する。分散MCU負荷監視部41、RTT・ジッタ計測部42、パケットロス計測部43、端末管理部44により取得された各情報は、定期的に品質情報送信部45からMCU管理ノード50の分散MCU制御部53を通じて再配置制御部51へ送信される。
The distributed
再配置制御部51は、上記の情報を元に端末数の増減、ネットワーク品質の輻輳状況、分散MCU40の負荷状況に応じて、中継ネットワーク20上の分散MCU40を再配置すべきかを判定する。当該判定は、MCU配置計算部80による再配置計算処理を行うか否かを再配置計算判定部512が判定するステップと、MCU配置計算部80により算出されたMCU配置情報に対して再配置処理を行うか否かを再配置判定部511が判定するステップとを含む。
Based on the above information, the
分散MCU40の再配置が決定した場合、MCU配置計算部80により計算されたMCU配置情報に係る再配置タスクが再配置バッファ513に保存され、逐次的に再配置処理が実施される。これは分散MCU再配置時の一時的な負荷増大を軽減するための処理である。なお、前記再配置タスクは、例えば、分散MCU40の他の仮想サーバインフラ30への移動、分散MCU40間のカスケード接続や接続解除、端末10のセッション張り替え等が挙げられる。また、再配置バッファ513に再配置タスクを保存しているので、再配置処理として、インフラ管理ノード60から取得した中継ネットワーク20、仮想サーバインフラ30の負荷情報を利用し、負荷の小さい端末10や仮想サーバインフラ30から優先して処理することも可能である。
When relocation of the distributed
図6に、端末数の増減によってMCU40の再配置を行う手順を示す。図6の処理は会議毎に独立に実施される。図6に示すように、会議の開始時や終了時に頻発する端末10の短時間での増減や、端末10の一時的な切断によって、MCU40の再配置が行われることを防ぐため、端末10の増減が一定時間行われなかった場合に再配置の計算を実施する(ステップS1〜S3)。また、再配置の計算は、前回配置計算時から会議端末数の変動あった場合にのみ実施する(ステップS4)。ステップS6の分散MCUの最適配置計算では、配置コスト(該当映像会議で使用する回線帯域、特定のリンク、仮想サーバインフラ30の負荷等)の最小化を実現する分散MCU40の配置場所と、分散MCU40と端末10の対応を算出する。分散MCU40を配置する仮想サーバインフラ30の変更、および、端末10の通信経路の変更にも負荷が生じるため、配置コストが一定以上(再配置閾値)改善する場合に実際の配置変更を実施する(ステップS7,S8)。
FIG. 6 shows a procedure for relocating the
図7に、ネットワーク輻輳によって再配置を実施する手順を示す。図7は分散MCU40−端末10間と、互いにカスケード接続するMCU40間の通信毎に独立に実施し、輻輳と判定された端末10または分散MCU40が参加/開催する会議について再配置計算を実施するものである。
FIG. 7 shows a procedure for implementing relocation due to network congestion. FIG. 7 is implemented independently for each communication between the distributed
図7に示すように、取得したRTTが、該当する通信において最小のRTTであった場合、最小RTTとして保存する(ステップS11〜13)。取得したRTTと最小RTTとの差が一定値(非輻輳閾値)以下であれば、輻輳が起きていなと判断し、非輻輳時のパケットロス率、RTT、ジッタ値の平均値を計算する(ステップS14,15)。端末10の接続状況に応じて平常時のパケットロス率、RTT、ジッタは異なるため本手順を実行する。また輻輳がRTTの増加に現れないネットワーク環境では、RTTの代わりにパケットロス率の変動やECNの利用によって輻輳を判定できる。現在のパケットロス率、RTT、ジッタと非輻輳時の平均値の差が一定値(輻輳閾値)以上の場合、該当する通信が輻輳状態にあると判定し、その通信を含む会議についてMCUの再配置計算を図6のステップS5〜8と同様に行う。 As shown in FIG. 7, when the acquired RTT is the minimum RTT in the corresponding communication, it is stored as the minimum RTT (steps S11 to S13). If the difference between the acquired RTT and the minimum RTT is equal to or less than a predetermined value (non-congestion threshold), it is determined that congestion is not occurring, and the average value of packet loss rate, RTT, and jitter value at non-congestion is calculated ( Step S14, 15). This procedure is executed because the normal packet loss rate, RTT, and jitter differ depending on the connection status of the terminal 10. Also, in a network environment where congestion does not appear in RTT increase, congestion can be determined by packet loss rate fluctuation or ECN utilization instead of RTT. If the difference between the current packet loss rate, RTT, jitter and the average value at the time of non-congestion is equal to or more than a fixed value (congestion threshold), it is determined that the corresponding communication is in a congestion state, and the MCU including the communication is read again The layout calculation is performed in the same manner as steps S5 to S8 in FIG.
なお、現在のパケットロス率、RTT、ジッタ値は、取得した値をそのまま利用せずに、過去の値によって平準化した値を利用することで瞬間的な変動を検知させないことも可能である。 Note that it is possible not to detect instantaneous fluctuation by using the current packet loss rate, RTT, and jitter value without using the acquired values as they are but using values equalized with the past values.
図8に、分散MCU40の負荷上昇によってMCU40の再配置を実施する手順を示す。図8では、分散MCU40から取得した分散MCUの負荷(CPU、メモリその他の計算資源リソース、映像会議の管理セッション数、同時開催会議数等)が高負荷と判定される閾値を超えた場合に再配置(図6のステップS5〜8と同様)を実行する。
FIG. 8 shows a procedure for implementing relocation of the
なお、再配置処理を実行するタイミングの他の例としては、定期的にインフラ管理ノード60から仮想サーバインフラ30及び中継ネットワーク20の負荷を取得したタイミングや、特定のリンク、仮想サーバインフラ30の負荷が増加した際にインフラ管理ノード60からMCU管理ノード50に分散MCU40の配置変更指示がなされる状況なども考えられる。
As another example of the timing for executing the relocation process, the timing at which the loads of the
図9に、既にカスケード接続済みの分散MCU1と分散MCU2間で端末Aのセッションを張り替える手順を示す。なお、以下の説明では複数の同種の構成要素を区別するために、構成要素の名称の後に連番等を付すとともに、その後に参照符号に同連番等を付したものを括弧付きで付記している。
FIG. 9 shows a procedure for switching the session of the terminal A between the distributed
ここでは、図9に示すように、会議#1に参加している既存の端末10は分散MCU1(40−1)とセッションを張っている(ステップS101)。ここで、端末A(10−A)も他の端末10と同様に、分散MCU1(40−1)とセッションを張っている(ステップS102)。各分散MCU40は定期的に、端末増減、分散MCU負荷情報、通信品質情報等をMCU管理ノード50に送信している(ステップS103)。
Here, as shown in FIG. 9, the existing
分散MCU40からの情報を取得したMCU管理ノード50は、再配置計算判定を行い、再計算が必要と判定された場合、インフラ管理ノード60から回線帯域使用率、仮想サーバインフラ使用率を取得し、ネットワーク負荷が低減するMCU40の配置及び端末10とMCU40の対応付けを計算し、再配置を実施するかを判定する(ステップS104〜S107)。
The
図9では端末A(10−A)のセッションを分散MCU1(40−1)から分散MCU2(40−2)へ変更するため、MCU管理ノード50は会議情報を管理する会議情報データベース55を更新し、分散MCU1,2(40−1,40−2)へ端末A(10−A)のセッション変更指示を出す(ステップS108,S109)。指示を受けた分散MCU1(40−1)は端末A(10−A)へ転送先の分散MCU2(40−2)の識別子(IPアドレス等)と共に転送指示をだし、端末A(10−A)は分散MCU2(40−2)の呼び出しを行う(ステップS110,S111)。端末A(10−A)は分散MCU2(40−2)とセッションを確立後、分散MCU1(40−1)とのセッションを切断する(ステップS112,S113)。
In FIG. 9, in order to change the session of the terminal A (10-A) from the distributed MCU 1 (40-1) to the distributed MCU 2 (40-2), the
なお、図10に示すように、セッションの張り替えを行う際、通常は、転送先の分散MCU40と完全にセッションを確立してから転送元のセッションを切断するため、回線帯域が狭い端末−分散MCU間で一時的に映像の送受信両方を二重に転送することになる。このため、図11及び図12に示す手順で上り通信トラフィックに係るセッションと下り通信トラヒックに係るセッションを別々に張り替えることで、端末10からの送受信を送受信の何れかのみを二重に転送するだけでセッションを切断することなく分散MCU間で張り替えることができるので、帯域削減の観点から好適である。
As shown in FIG. 10, when reassigning a session, normally, a session is completely established with the transfer destination distributed
図13及び図14に、分散MCU1と分散MCU2が連携していない状態から、新たに端末Aが会議へ参加し、カスケード接続する分散MCU2を追加して端末Aのセッションを分散MCU2機能へ張り替える手順を示す。
In FIG. 13 and FIG. 14, from the state where the distributed
ここでは、端末A(10−A)が参加を希望する会議についてデフォルトの接続先の分散MCU40が分散MCU1(40−1)であり、当該対応情報が予め会議情報データベースに記憶されているものとする。
Here, for a conference that the terminal A (10-A) wants to participate in, the default connection destination distributed
図13及び図14に示すように、会議#1に参加している既存の端末10は分散MCU1(40−1)とセッションを張っている(ステップS201)。端末A(10−A)からの会議参加要求を受け取ったMCU管理ノード50は、会議情報データベース55を参照し、該当会議のデフォルトで接続する分散MCU1(40−1)に対して端末の追加指示を行うとともに、端末A(10−A)へ分散MCU1(40−1)の識別子を通知する(ステップS202,203)。
As shown in FIGS. 13 and 14, the existing
端末A(10−A)は分散MCU1(40−1)とセッションを確立する(ステップS204,S05)。分散MCU1(40−1)は会議#1に端末A(10−A)が追加されたことを検出して当該追加をMCU管理ノード50に通知する(ステップS206)。その後、MCU管理ノードは、MCUの再配置配判定を行って再計算を実行する。MCU配置計算部80は、インフラ管理ノード60から取得した、回線帯域使用率、仮想サーバインフラ使用率を元に、ネットワーク負荷が低減するMCU40の配置及び端末10とMCU40の対応付けを計算する(ステップS207〜S210)。端末10とMCU40の紐付けに変更があった場合、MCU管理ノード50は会議情報を管理する会議情報データベース55を更新し、該当する分散MCU40へ端末の紐付け変更の指示を出す(ステップS211,S212)。図13及び図14の例では分散MCU2(40−2)を新たに会議に追加し(ステップS213〜S215)、端末A(10−A)のセッションを分散MCU1(40−1)から分散MCU2(40−2)へ張り替えを行う(ステップS216〜S219)。
The terminal A (10-A) establishes a session with the distributed MCU 1 (40-1) (steps S204 and S05). The distributed MCU 1 (40-1) detects that the terminal A (10-A) has been added to the
既に複数端末10が参加している会議に新規端末10が途中参加する場合、会議主催MCU配置は既存の参加端末10においてネットワーク負荷を低減するように選択されているため、新規端末10にとってはネットワーク負荷が大きく、会議全体としてはネットワーク負荷が低減できていない可能性がある。本実施例2では新規端末10が会議へ途中参加時に、ネットワーク負荷が低減される分散MCU40を選択し、会議が中断することなく、既存の会議参加端末10を含めて新しいMCU40に再接続することを実現する。
When the
なお、図13及び図14の例では、新規端末A(10−A)は初めにデフォルトの分散MCU40へ接続したが、図15及び図16に示すように、新規端末A(10−A)から会議参加要求(ステップS252)があった時点で、最適配置を計算し(ステップS253〜S256)、計算結果に基づきMCU配置を行い(ステップS257〜S263)、最初から配置変更後の分散MCU40へ接続しに行くパターンも考えられる(ステップS264〜S266)。
In the examples of FIGS. 13 and 14, the new terminal A (10-A) is first connected to the default distributed
図17及び図18に、会議参加端末が減少した際に、残存端末のセッションを張り替えて、分散MCU機能を削除する手順を示す。本実施例は会議参加端末が減少した場合に、残っている会議接続端末にネットワーク負荷を最適化するために実施する。 FIG. 17 and FIG. 18 show the procedure of switching the session of the remaining terminal and deleting the distributed MCU function when the number of conference participation terminals decreases. This embodiment is implemented to optimize the network load on the remaining conference connection terminals when the number of conference participation terminals decreases.
図17及び図18の例では、エリア1、2の二つの地域に各分散MCU1,2(40−1,40−2)が配置されており、各分散MCU1,2は1つの会議#1について連携動作するためにカスケード接続されている(ステップS301)。エリア1の5台の端末10がエリア1の分散MCU1(40−1)から会議に接続している(ステップS302)。一方、エリア2の2台の端末A,B(10−A,10−B)がエリア2の分散MCU2(40−2)から会議に接続している(ステップS303,S304)。
In the example of FIGS. 17 and 18, the distributed
ここで、エリア2の1台の端末B(10−B)が会議を切断した場合(ステップS305)、エリア2の分散MCU2(40−2)の利用端末(残存端末)は端末A(10−A)の1台のみとなる。この場合、映像を集約して帯域を削減する効果がないため、分散MCU2(40−2)の機能を実行するだけの仮想サーバリソース30が無駄となる。そこで、本実施例では、このような場合に、分散MCU40の再配置処理を実施する。
Here, when one terminal B (10-B) of
図17及び図18の例では、端末B(10−B)が切断され会議から離脱したことは分散MCU2(40−2)からMCU管理ノード50に通知される(ステップS306)。MCU管理ノード50は、分散MCU40の再配置計算を行い(ステップS307〜S310)、その結果、当該会議から分散MCU2(40−2)の利用は解除し、分散MCU2(40−2)に接続していたエリア2に残存する端末A(10−A)が分散MCU1(40−1)から当該会議に接続するよう制御を行う(ステップS311〜S319)。
In the examples of FIGS. 17 and 18, the distributed MCU 2 (40-2) notifies the
なお、上記の実施例1〜3では一つの分散MCU40及び端末10の変更のみを扱ったが、複数の分散MCU40、端末10が同時に変更する場合などその他の分散MCU40及び、端末セッションの張り替えについても、実施例1〜3の組合せで対応可能である点に留意されたい。
In the first to third embodiments described above, only the change of one distributed
本発明の実施例4について図19〜図23を参照して説明する。図19は実施例4に係る多地点間会議システムのシステム構成図、図20は実施例4に係る多地点間会議システムにおける通信経路の変更を説明する図、図21〜図22は実施例4において端末10が新規に追加された際のMCU変更手順を説明する図、図23はインフラ管理ノードとMCU管理ノードを異なる事業者が所有する場合のMCU変更手順を説明する図である。 Fourth Embodiment A fourth embodiment of the present invention will be described with reference to FIGS. FIG. 19 is a system configuration diagram of the multipoint conference system according to the fourth embodiment, FIG. 20 is a diagram for explaining a change of communication route in the multipoint conference system according to the fourth embodiment, and FIGS. FIG. 23 is a diagram for explaining an MCU change procedure when a terminal 10 is newly added in FIG. 23. FIG. 23 is a diagram for explaining an MCU change procedure when different operators own infrastructure management nodes and MCU management nodes.
本実施例4では、図19に示すように、端末近傍の仮想サーバインフラ30上に、端末10とのセッション管理及び分散MCU40までの映像送受信機能のみを持つ分散SFU(Selective Forwarding Unit)機能を具備する。MCU40が処理負荷の大きい映像のデコード・エンコード・合成を行うのに対し、分散SFU90は端末10に変わって映像の転送のみを実施する。
In the fourth embodiment, as shown in FIG. 19, a distributed SFU (Selective Forwarding Unit) function having only a session management with the terminal 10 and a video transmission / reception function up to the distributed
本実施例では、図20〜図22に示すように、端末10は常に最寄りの分散SFU90とのみセッションを張れば良く(ステップS401,S403)、中継ネットワーク20上で分散MCU40の配置が変更しても、変更処理は分散SFU90が担う(ステップS404〜S421)。端末10は分散MCU40の変更を意識することなく会議が実施可能となる。なお、図21〜図22の分散MCU40の変更処理は前述の実施例2で説明した処理と同様である。
In the present embodiment, as shown in FIGS. 20 to 22, the terminal 10 should always have a session only with the nearest distributed SFU 90 (steps S401 and S403), and the arrangement of the distributed
また、本実施例4では、MCU配置計算に個々の端末10の情報ではなく分散SFU40の情報によって配置計算が可能となる。これにより図23に示すように、MCU管理ノード50とインフラ管理ノード60を異なる事業者が所有する場合に、インフラ管理ノード60側にMCUの最適配置計算機能(MCU配置計算部)80を具備することで、仮想サーバインフラ30の負荷、中継ネットワーク20のトポロジー情報や、映像会議に参加する端末10の情報を互いに提供することなくMCUの最適配置計算が可能となる。
Further, in the fourth embodiment, it is possible to calculate the arrangement by the information of the distributed
図23の例では、分散MCU40及びMCU管理ノード50は事業者1が所有し、分散SFU90及び最適配置計算機能(MCU配置計算部)80並びにインフラ管理ノード60は事業者2が所有している場合を示している。図23に示すように、事業者1のMCU管理ノード50がMCU配置計算を行うと判定した際には(ステップS453)、MCU管理ノード50は事業者2の最適配置計算機能(MCU配置計算部)80に、配置を変更したい端末10が利用するSFU80の識別子のみを提供する(ステップS454)。最適配置計算機能(MCU配置計算部)80は、事業者2の仮想サーバインフラ30とSFU90間に閉じたMCU配置計算を行い、MCU40の配置場所とSFU90の紐付けをMCU管理ノード50に通知する(ステップS455,S456)。MCU管理ノード50は、SFU90を端末10に紐付けてMCU40の配置、SFU90の映像転送指示を実施する(ステップS457)。
In the example of FIG. 23, the distributed
本発明の実施例5について図24及び図25を参照して説明する。図24は実施例5に係る多地点間会議システムにおける通信経路の変更を説明する図、図25は実施例5において分散MCU機能をSFU機能に切り替える手順を説明する図である。 A fifth embodiment of the present invention will be described with reference to FIGS. 24 and 25. FIG. 24 is a diagram for explaining the change of the communication route in the multipoint conference system according to the fifth embodiment, and FIG. 25 is a diagram for explaining the procedure for switching the distributed MCU function to the SFU function in the fifth embodiment.
実施例5では、分散MCU40内にSFU機能90を具備し、MCU40とSFU機能90の切り替え(端末10からの映像合成を行うか、他の分散MCU40へ転送のみを行うかの変更)を行う。これにより、図24に示すように、分散MCU機能を配置した仮想サーバインフラ30の負荷が、バースト的に増加した際に、一時的に映像合成を行わず、他MCU40への転送のみに切り替えることで、仮想サーバインフラ30の負荷を低減することができる。
In the fifth embodiment, an
図25の例では、端末10が仮想サーバインフラ1(30−1)上の分散MCU1(40−1)に接続しており(ステップS501)、端末A(10−A)が仮想サーバインフラ2(30−2)上の分散MCU2(40−2)に接続している(ステップS503)。そして、分散MCU1(40−1)と分散MCU2(40−2)は連携して1つの会議を開催しており、それぞれ全端末の映像合成処理を行っているものとする(ステップS502,S504)。 In the example of FIG. 25, the terminal 10 is connected to the distributed MCU 1 (40-1) on the virtual server infrastructure 1 (30-1) (step S501), and the terminal A (10-A) is the virtual server infrastructure 2 ( 30-2) It is connected to the distributed MCU 2 (40-2) above (step S503). Then, it is assumed that the distributed MCU 1 (40-1) and the distributed MCU 2 (40-2) cooperate and hold one conference, and perform video combining processing of all the terminals (steps S502 and S504). .
ここで仮想サーバインフラ2(30−2)の負荷が大きくなったことを想定する。インフラ管理ノード60は当該負荷増大を検出してMCU管理ノード50に通知する(ステップS505)。MCU管理ノード50は、分散MCU2(40−2)に対して、動作中の分散MCU40機能をSFU機能90に切り替えるために、映像転送の切り替え指示をだす(ステップS506)。また、MCU管理ノード50は、分散MCU1(40−1)に対して合成映像を分散MCU2へ転送するよう指示をだす(ステップS507)。これにより、仮想サーバインフラ2(30−2)の分散MCU2(40−2)は、以降、端末A(10−A)の通信トラフィックを仮想サーバインフラ1(30−1)の分散MCU1(40−1)に転送するSFUとして機能する(ステップS508,S510,S513,S514)。また、映像合成処理は仮想サーバインフラ1(30−1)の分散MCU2(40−2)のみで行われる(ステップS511)。
Here, it is assumed that the load on the virtual server infrastructure 2 (30-2) is increased. The
次に、上述のMCU配置計算部80において分散MCU機能の配置場所を決定する方法について詳述する。
Next, the method of determining the arrangement location of the distributed MCU function in the above-mentioned MCU
まず、分散MCU配置の決定に用いる配置コストの一例を以下に列挙する。 First, an example of the arrangement cost used to determine the distributed MCU arrangement will be listed below.
1.帯域利用コスト
帯域利用コストの例としては以下が挙げられる。
(a)映像帯域総和:映像ビットレート×総ホップ数
(b)重みを考慮した帯域利用コスト:Σ(映像ビットレート×リンク毎の重み)
なお、前記のリンク毎の重みの例としては、RTT、最大帯域、利用料金等が挙げられる。
1. Bandwidth utilization costs Examples of bandwidth utilization costs include:
(A) Video bandwidth sum: video bit rate × total number of hops (b) Bandwidth utilization cost considering weight: ((video bit rate × weight for each link)
Examples of the weight for each link include RTT, maximum bandwidth, usage fee and the like.
2.帯域利用率コスト
帯域利用率コストの例としては以下が挙げられる。
(a)帯域利用率総和:Σ{(他通信利用帯域+MCU利用帯域)/リンク最大帯域}
(b)重みを考慮した帯域利用率コスト:Σ{(他通信利用帯域+MCU利用帯域)/リンク最大帯域×リンク毎の重み}
2. Bandwidth Utilization Cost Examples of bandwidth utilization cost include the following.
(A) Bandwidth utilization sum: {{(other communication use band + MCU use band) / link maximum band}
(B) Bandwidth utilization rate cost considering weight: Σ {(other communication utilization bandwidth + MCU utilization bandwidth) / link maximum bandwidth × weight for each link}
3.仮想サーバインフラ使用コスト
仮想サーバインフラ使用コストの例としては以下が挙げられる。
(a)CPU:分散MCU基本処理量×分散MCU数
+ 1映像当りの映像エンコード・デコード処理量×セッション数
+ 1映像当りの映像合成処理量×(セッション数−1)
(b)メモリ:分散MCU基本メモリ使用量×分散MCU数
+ 1映像当りの映像エンコード・デコードメモリ使用量×セッション数
+ 1映像当りの映像合成メモリ使用量×(セッション数−1)
3. Virtual server infrastructure usage costs The following are examples of virtual server infrastructure usage costs.
(A) CPU: Distributed MCU basic processing amount × dispersed MCU number + video encoding / decoding processing amount per video × number of sessions + video combining processing amount per video × (session number -1)
(B) Memory: Distributed MCU basic memory usage × number of distributed MCUs + video encoding / decoding memory usage per video × number of sessions + video combining memory usage per video × (session number -1)
4.仮想サーバインフラ使用率コスト
仮想サーバインフラ使用率コストの例としては以下が挙げられる。
(a)CPU :Σ(他アプリCPU使用率+MCUのCPU使用率)/100×仮想サーバインフラ毎の重み
4. Virtual server infrastructure utilization cost The following is an example of virtual server infrastructure utilization cost.
(A) CPU: Σ (other application CPU usage rate + MCU CPU usage rate) / 100 × weight for each virtual server infrastructure
5.遅延コスト
遅延コストの例としては以下が挙げられる。
(a)伝送遅延+MCU処理遅延
5. Delay Costs Examples of delay costs include:
(A) Transmission delay + MCU processing delay
また、分散MCU配置ポリシー(目的関数)の例としては以下が挙げられる。
(a)一つの会議のコスト最小化
(b)中継ネットワーク全体のコスト最小化
(c)特定のリンク帯域の利用率最小化
(d)特定の仮想サーバインフラ使用率最小化
Also, examples of the distributed MCU placement policy (objective function) include the following.
(A) Minimizing the cost of one conference (b) Minimizing the cost of the entire relay network (c) Minimizing the utilization of a specific link bandwidth (d) Minimizing the utilization of a specific virtual server infrastructure
以下の説明では、説明を簡単にするため、コストとして「帯域利用コスト」、目的関数として「一つの会議のコスト最小化」を用いて分散MCU配置計算のアルゴリズムについて説明する。なお、一般的には、コストは前述した各項目等を複合的に考える必要がある点に留意されたい。 In the following description, in order to simplify the description, an algorithm of distributed MCU arrangement calculation will be described using “band use cost” as the cost and “minimize the cost of one conference” as the objective function. In addition, it should be noted that, in general, the cost needs to be considered in combination with each item mentioned above.
分散MCU配置計算アルゴリズムの一例を図26に示す。 An example of the distributed MCU placement calculation algorithm is shown in FIG.
まず、後述するステップS35で分散MCUの総帯域利用コストを計算するのに先だって、全仮想サーバインフラ間、仮想サーバインフラ−端末間の帯域利用コストを計算しておく(ステップS31)。各リンクの帯域利用コストが既知であれば、仮想サーバインフラ間、仮想サーバインフラ−端末間の帯域利用コストは1つ辺り1回の演算で計算可能である。 First, prior to calculating the total bandwidth utilization cost of the distributed MCU in step S35 described later, the bandwidth utilization cost between all virtual server infrastructures and between virtual server infrastructure and terminals is calculated (step S31). If the bandwidth utilization cost of each link is known, the bandwidth utilization cost between virtual server infrastructures and between virtual server infrastructures and terminals can be calculated by one operation per one.
後述するステップS35で総帯域利用コスト計算を実施する際、一から総帯域利用コストを計算する場合、仮想サーバインフラ数m、会議参加端末数n台に対して、O(nlog m)の演算が必要であるが、上記のステップS31の処理を実施しておくことで、端末−MCU間の総帯域利用コストはO(n)の演算で計算可能である。なお、O(nlog m)やO(n)はO−記法によるものである。なお、ステップS31で予め計算をするのではなく、後述するステップS35で計算した仮想サーバインフラ、端末間の帯域利用コストを順次保存して再利用する方法でも計算量の削減が可能である。 When calculating the total bandwidth use cost in step S35 described later, when calculating the total bandwidth use cost from scratch, the calculation of O (n log m) is performed for the number m of virtual server infrastructures and the number n of conference participants Although necessary, by performing the process of step S31 described above, the total bandwidth utilization cost between the terminal and the MCU can be calculated by the operation of O (n). In addition, O (n log m) and O (n) are based on O- notation. The calculation amount can also be reduced by a method of sequentially saving and reusing the virtual server infrastructure and the bandwidth utilization cost between the terminals calculated in step S35 described later, instead of calculating in advance in step S31.
ここで、ステップS31の具体例について図27を参照して説明する。図27では8台の仮想サーバインフラと4台の端末が完全二分木のツリー構造となっているものとし、4台の端末A,C,D,Fが会議参加端末であるものとする。 Here, a specific example of step S31 will be described with reference to FIG. In FIG. 27, it is assumed that eight virtual server infrastructures and four terminals have a complete binary tree tree structure, and four terminals A, C, D, and F are conference participation terminals.
図27の表は仮想サーバリソース間、端末−仮想サーバリソース間の帯域利用コストであり、表中のCijはノードiからノードjの帯域利用コストを示している。 The table of FIG. 27 shows the bandwidth utilization cost between virtual server resources and between terminal and virtual server resources, and C ij in the table indicates the bandwidth utilization cost of node i to node j.
端末A,C,D,Fが仮想サーバリソース(2)を、端末Fが仮想サーバリソース(3)を利用する場合の帯域利用コストは、
端末Aのコスト+端末Cのコスト+端末Dのコスト+端末Fのコスト+MCU間のコスト=CA2+CC2+CD2+CF3+C23
となる。
When the terminals A, C, D, F use the virtual server resource (2) and the terminal F uses the virtual server resource (3), the bandwidth use cost is
Cost between cost + MCU cost + terminal F of the cost + terminal D cost + terminal C of the terminal A = C A2 + C C2 + C D2 + C F3 + C 23
It becomes.
完全二分木の場合、一つの配置コストの計算量は、端末数n、仮想サーバリソース数mに対して、一から計算する場合は、O(log m)×n=O(nlog m)となるが、上記の場合m2+nmの計算をしておくことでO(n)となる。 In the case of a complete binary tree, the amount of calculation of one placement cost is O (log m) × n = O (n log m) when calculating from one for the number of terminals n and the number of virtual server resources m However, in the above case, calculation of m 2 + nm results in O (n).
再び図26に戻りアルゴリズムの説明を続ける。ステップS32では帯域利用コストを計算する分散MCUの配置を一つ選択し、ステップS33で分散MCU間のカスケード接続方法を選択し、ステップS34で端末をどの分散MCUに接続するかを選択する。 Referring back to FIG. 26, the explanation of the algorithm is continued. In step S32, one arrangement of the distributed MCUs for which the band use cost is calculated is selected. In step S33, a cascade connection method between the distributed MCUs is selected, and in step S34, which distributed MCU the terminal is connected to is selected.
ここで分散MCUの選択方法は、分散MCUの最大数を端末数n−1個としたとき次式の通り数だけ存在する。 Here, when the maximum number of distributed MCUs is n-1 in number of terminals, the number of distributed MCUs is selected according to the following equation.
更に端末が任意の分散MCUを利用できる場合、総数は次式の通り数となる。 Furthermore, if the terminal can use any of the distributed MCUs, the total number is as follows.
これは、例えば端末が10台、仮想サーバリソースが50ヵ所でも約6京通りとなり、毎回全組合せを計算して最適配置を計算するのは現実的ではない。 For example, even if there are 10 terminals and 50 virtual server resources, the number of terminals will be approximately six, and it will not be practical to calculate all combinations and calculate the optimum arrangement each time.
そこで本発明では、端末が利用する分散MCUは、前記ステップS31で計算した端末−仮想サーバリソース間のコストを用い、前記ステップS32で選択された分散MCUの配置場所の中で最もコストが最小となる分散MCUとする。 Therefore, in the present invention, the distributed MCU used by the terminal uses the cost between the terminal and the virtual server resource calculated in step S31, and the least cost among the locations of the distributed MCU selected in step S32 is considered as the lowest. Become a distributed MCU.
次に、ステップS35では前記ステップS31で計算した値からO(1)で前記ステップS32〜S34で選択した分散MCU配置の総帯域利用コストを計算する。総帯域利用コストがこれまでの計算で最少であれば、分散MCUの配置とコストを保存し(ステップS37)、ステップS38で計算を終了するか判定する。全ての分散MCU配置の組合せを計算するか、別に定めた終了条件を満たせば、総帯域利用コスト最小の分散MCU配置を出力して終了する(ステップS39)。 Next, at step S35, the total bandwidth utilization cost of the distributed MCU arrangement selected at steps S32 to S34 is calculated at O (1) from the value calculated at step S31. If the total bandwidth utilization cost is the lowest in the calculations so far, the arrangement of the distributed MCU and the cost are saved (step S37), and it is determined whether or not the calculation is ended in step S38. If the combination of all the distributed MCU arrangements is calculated or if a separately defined termination condition is satisfied, the distributed MCU arrangement with the lowest total bandwidth utilization cost is output and the process ends (step S39).
ここで、終了条件としては、例えば一定時間の経過や、以下で述べる帯域削減効果が見込めるMCUに限定した配置の探索終了などが考えられる。 Here, as the end condition, for example, the passage of a fixed time, the end of the search for the arrangement limited to the MCU where the band reduction effect described below can be expected, and the like can be considered.
すなわち、端末が接続する分散MCUが一意に決定したとしても、分散MCU配置は、端末数、仮想サーバリソース数によって膨大となるため、更にステップS32で選択する仮想サーバリソースを限定して分散MCU配置の探索を行う。 That is, even if the distributed MCUs to which the terminals are connected are uniquely determined, the distributed MCU arrangement becomes enormous depending on the number of terminals and the number of virtual server resources, so further limiting the virtual server resources selected in step S32 and arranging the distributed MCUs. Search for
インフラ管理ノード60にて各端末毎に、各端末と最上位ルータ間の最短経路内で利用可能な仮想サーバインフラリストを保持する。
The
ここでMCUを配置する仮想サーバインフラの候補を、会議に参加する端末の上記リストを参照し、2端末以上が共通する(重複する)仮想サーバリソースに限定することができる。分散MCUの配置場所は複数端末の映像を集約可能な場所が望ましいため、上記の仮想サーバインフラに限定してもある程度帯域削減が可能なMCU配置が期待できる。 Here, candidates for the virtual server infrastructure in which the MCU is arranged can be limited to virtual server resources common to (or overlapping with) two or more terminals by referring to the above-mentioned list of terminals participating in the conference. Since the place where the distributed MCUs are arranged is desirably a place where images of a plurality of terminals can be aggregated, it is possible to expect an MCU arrangement which can reduce the bandwidth to some extent even if limited to the above virtual server infrastructure.
また、端末に近く、複数端末で共通する端末数が多い仮想サーバインフラはより帯域削減効果が大きいと考えられるため、端末に近く、複数端末で共通する端末数が多い仮想サーバインフラに配置場所を限定したり、分散MCU配置の候補として優先度を高くすることで更に配置場所の探索範囲を低減することもできる。図28にリストの一例を示す。 In addition, since a virtual server infrastructure close to terminals and having a large number of terminals common to a plurality of terminals is considered to have a greater effect of reducing bandwidth, it is closer to the terminals and arranged in a virtual server infrastructure near a plurality of terminals having a large number of common terminals. The search range of the placement location can be further reduced by limiting or raising the priority as a candidate for distributed MCU placement. FIG. 28 shows an example of the list.
図28の例では、一つの映像会議で使用する総帯域の最小化を目的としたが、特定のリンクの帯域削減が目的であれば、該当リンクより下位(端末側)の仮想サーバインフラに候補を限定する、特定の仮想サーバインフラの負荷低減であれば該当仮想サーバインフラを分散MCU配置の候補から除外するなどの処理が効果的である。 Although the example in FIG. 28 aims to minimize the total bandwidth used in one video conference, if the purpose is to reduce the bandwidth of a specific link, it is a candidate for a virtual server infrastructure below the corresponding link (terminal side) If the load on a specific virtual server infrastructure is reduced, processing such as excluding the virtual server infrastructure from candidates for distributed MCU deployment is effective.
以上詳述したように、本発明によれば、会議開催中にも会議参加者の増減やネットワーク負荷の変動に応じてMCUの配置場所を変更することで、会議を中断することなくネットワークのサーバ、回線帯域負荷を低減することができる。 As described above in detail, according to the present invention, the server of the network can be interrupted without interrupting the conference by changing the arrangement location of the MCU according to the increase or decrease of the conference participants and the change of the network load even during the conference. The line bandwidth load can be reduced.
また、本発明によれば、端末−分散MCU間、分散MCU−分散MCU間のネットワーク品質、端末増減数を監視することで、常時中継ネットワークの情報を取得することなくMCUの配置変更が可能となる。 Further, according to the present invention, by monitoring the network quality between the terminal and the distributed MCU and between the distributed MCU and the distributed MCU and the number of increase and decrease in the number of terminals, it is possible to change the arrangement of the MCU without acquiring information of the relay network at all times. Become.
また、本発明によれば、イベント的なバーストトラヒックが生じた際にも、柔軟にMCU配置を変更することで、会議の品質低下を防ぐことができる。 Further, according to the present invention, it is possible to prevent the deterioration of the conference quality by flexibly changing the arrangement of the MCU even when the eventual burst traffic occurs.
また、本発明によれば、端末近傍の仮想サーバインフラにSFU機能を具備することで、動的なMCU配置の変更に対応していない端末でも、本発明の通信システムの利用が可能になる。 Further, according to the present invention, by providing the SFU function in the virtual server infrastructure in the vicinity of the terminal, it is possible to use the communication system of the present invention even for a terminal which does not support dynamic change of the MCU arrangement.
また、本発明によれば、端末近傍の仮想サーバインフラにSFU機能を具備することで、インフラ管理ノードとMCU管理ノードを所有する事業者が異なっていても、SFUの識別子以外の情報を互いに共有することなく分散MCUの配置計算を可能となる。 Further, according to the present invention, by providing the SFU function in the virtual server infrastructure near the terminal, even if the infrastructure management node and the operator who owns the MCU management node are different, information other than the SFU identifier is mutually shared. It becomes possible to calculate the arrangement of distributed MCUs without doing so.
また、本発明によれば、効率的にMCU配置コストを計算することで、MCU管理ノードの負荷低減と、よりネットワーク負荷の小さいMCU配置が可能となる。 Further, according to the present invention, by efficiently calculating the MCU placement cost, it is possible to reduce the load on the MCU management node and to place the MCU with a smaller network load.
以上本発明の実施の形態について詳述したが本発明はこれに限定されるものではない。例えば、上記実施の形態では、多地点間通信システムの適用例として会議システムについて説明したが、他のシステムにも適用できる。適用例としては、例えば、Web会議システムや、リアルタイム映像配信システム、ファイル転送を行うマルチキャスト配信システムなどが挙げられる。 The embodiment of the present invention has been described in detail, but the present invention is not limited to this. For example, in the above embodiment, the conference system has been described as an application example of the multipoint communication system, but the present invention can be applied to other systems. Examples of the application include, for example, a web conference system, a real time video distribution system, and a multicast distribution system for transferring files.
また、上記実施の形態においては、MCU管理ノード50とサーバインフラ管理ノード60により分散MCUの管理・制御を行っているが、各ノードの機能を集中化や分散化させるなど他の実装形態でも本発明を実施できる。
Further, in the above embodiment, although the management and control of distributed MCUs are performed by the
また、上記実施の形態では、中継ネットワーク20のネットワークトポロジーがツリー構造の場合について説明したが、他のネットワークトポロジーであっても本発明を実施できる。
Moreover, although the case where the network topology of the
また、上記実施の形態では、サーバ上で動作する多地点接続機能を仮想インフラサーバ上で動作するアプリケーションという形態で実装したが、他の形態での実装も考えられる。例えば、サーバがコンテナホストであり、MCUアプリケーションがコンテナ上で提供される、という形態とすることができる。また、サーバが汎用サーバであり、MCUがアプリケーションソフトウェア、という形態とすることができる。また、サーバとMCUとが一体となったアプライアンス製品、という形態とすることができる。SFU機能についても同様である。 In the above embodiment, the multipoint connection function operating on the server is implemented in the form of an application operating on the virtual infrastructure server, but implementation in other forms is also conceivable. For example, the server may be a container host, and an MCU application may be provided on the container. Also, the server may be a general-purpose server, and the MCU may be application software. In addition, an appliance product in which a server and an MCU are integrated can be used. The same applies to the SFU function.
10…端末
20…中継ネットワーク
25…ルータ
30…仮想サーバインフラ
31…サーバ・ネットワーク負荷監視部
32…負荷情報送信部
33…アプリケーション管理部
40…MCU
41…分散MCU負荷監視部
42…RTT・ジッタ計測部
43…パケットロス率計測部
44…端末管理部
50…MCU管理ノード
51…再配置制御部
511…再配置判定部
512…再配置計算判定部
513…再配置バッファ
514…端末増減数管理部
515…ネットワーク輻輳判定部
516…サーバ負荷判定部
52…分散MCU配置要求送信部
53…分散MCU管理部
54…会議受付部
55…会議情報データベース
60…インフラ管理ノード
61…負荷情報取得部
62…インフラ状態管理部
63…制御要求受信部
64…仮想サーバインフラ制御部
70…インターネット
80…MCU配置計算部
90…SFU
DESCRIPTION OF
41 ... distributed MCU
Claims (10)
前記ネットワーク内に地理的に分散配備された複数のサーバにおいて動作し且つ前記複数の端末との間にセッションを張りグループ通信に係る通信トラヒックを集約する1つ以上の多地点接続機能であって、他の多地点接続機能とカスケード接続することにより前記複数の端末に対して単一のグループ通信が実施されているように動作可能な多地点接続機能と、
グループ通信で用いる多地点接続機能の配置を算出する配置計算処理手段と、
グループ通信の実施中に前記配置計算処理手段により配置計算処理を行うとともに、この配置計算処理の算出結果に基づき、端末から多地点接続機能との間で張られているセッションを他の多地点接続機能との間に張り替えるよう制御する多地点接続機能制御手段とを備えた
ことを特徴とする多地点間通信システム。 A multipoint communication system for performing group communication between a plurality of terminals accommodated in a network, comprising:
One or more multipoint connection functions that operate on a plurality of geographically distributed servers in the network and extend sessions with the plurality of terminals and aggregate communication traffic related to group communication, A multipoint connection function operable such that a single group communication is performed for the plurality of terminals by cascading with another multipoint connection function;
Arrangement calculation processing means for calculating the arrangement of the multipoint connection function used in group communication;
The arrangement calculation processing means performs arrangement calculation processing during execution of group communication, and based on the calculation result of the arrangement calculation processing, the session established between the terminal and the multipoint connection function is connected to another multipoint connection. A multipoint communication system, comprising: multipoint connection function control means for controlling to switch between functions.
ことを特徴とする請求項1記載の多地点間通信システム。 The multipoint connection function control means is based on any one or any combination of communication quality between the multipoint connection functions, communication quality between the multipoint connection function and terminals, and the number of terminals participating in the group communication. The multipoint communication system according to claim 1, wherein it is determined whether or not the placement calculation is performed by the placement calculation processing means.
ことを特徴とする請求項1又は2記載の多地点間通信システム。 The multipoint according to claim 1 or 2, wherein the layout calculation processing means calculates the layout of the multipoint connection function based on increase / decrease of network load information acquired from a node relaying communication traffic relating to group communication. Communication system.
ことを特徴とする請求項1乃至3何れか1項記載の多地点間通信システム。 The multipoint communication system according to any one of claims 1 to 3, wherein the multipoint connection control means switches a session relating to upstream traffic and a session relating to downstream traffic separately.
ことを特徴とする請求項1乃至4何れか1項記載の多地点間通信システム。 The arrangement calculation processing means holds, for each terminal participating in group communication, server information of the server that the terminal can use in the shortest route to the highest router in the network, and based on the server information It is characterized by limiting to a server that can be redundantly used by a plurality of terminals, prioritizing, and calculating the arrangement location of the multipoint communication connection function based on the limited information and the priority information. A multipoint communication system according to any one of Items 1 to 4.
ことを特徴とする請求項1乃至5何れか1項記載の多地点間通信システム。 The arrangement calculation processing means stores communication costs between servers and terminals / servers used in the arrangement place calculation of the multipoint communication connection function in the past, and other multipoint communication using this communication cost information The multipoint communication system according to any one of claims 1 to 5, wherein the arrangement place of the connection function is calculated.
前記多地点接続制御手段は、多地点間接続機能と前記第1の転送機能との間のセッションを張り替える
ことを特徴とする請求項1乃至6何れか1項記載の多地点間通信システム。 One or more first to operate in a plurality of servers arranged closest to a terminal in the network, manage only a session with the plurality of terminals, and transfer communication traffic related to group communication without aggregation Equipped with one transfer function,
The multipoint communication system according to any one of claims 1 to 6, wherein the multipoint connection control means switches a session between the multipoint connection function and the first transfer function.
ことを特徴とする請求項1乃至7何れか1項記載の多地点間通信システム。 The multipoint connection control means operates in the server, performs session management only with the plurality of terminals, and transfers communication traffic related to group communication without aggregating communication traffic related to group communication. The switching control is performed to operate as a second transfer function, and the session established between the other multipoint connection function and the multipoint connection function before the switching is referred to as the other multipoint connection function The multipoint communication system according to any one of claims 1 to 7, wherein a session for each terminal between the second transfer function after switching and the second transfer function is replaced.
他の多地点接続機能とカスケード接続することにより前記複数の端末に対して単一のグループ通信が実施されているように動作可能な多地点接続機能が動作する複数のサーバを前記ネットワーク内に地理的に分散配備し、
グループ通信で用いる多地点接続機能の配置を算出する配置計算処理手段と、
グループ通信の実施中に、
配置計算処理手段が、グループ通信で用いる多地点接続機能の配置を算出し、
多地点接続機能制御手段が、前記配置計算処理の算出結果に基づき、端末から多地点接続機能との間で張られているセッションを他の多地点接続機能との間に張り替えるよう制御する
ことを特徴とする多地点間通信方法。 A multipoint communication method for performing group communication between a plurality of terminals accommodated in a network, comprising:
A plurality of servers operating multipoint connection functions operable such that a single group communication is performed for the plurality of terminals by cascading with other multipoint connection functions are geographically located in the network. Distributed and deployed
Arrangement calculation processing means for calculating the arrangement of the multipoint connection function used in group communication;
During group communication,
Arrangement calculation processing means calculates the arrangement of the multipoint connection function used in group communication;
The multipoint connection function control means controls to switch the session established between the terminal and the multipoint connection function to another multipoint connection function based on the calculation result of the arrangement calculation process. A multipoint communication method characterized by
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018007097A JP6892206B2 (en) | 2018-01-19 | 2018-01-19 | Multipoint communication systems and methods and programs |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018007097A JP6892206B2 (en) | 2018-01-19 | 2018-01-19 | Multipoint communication systems and methods and programs |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019125997A true JP2019125997A (en) | 2019-07-25 |
JP6892206B2 JP6892206B2 (en) | 2021-06-23 |
Family
ID=67399198
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018007097A Active JP6892206B2 (en) | 2018-01-19 | 2018-01-19 | Multipoint communication systems and methods and programs |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6892206B2 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112511783A (en) * | 2019-09-16 | 2021-03-16 | 武汉斗鱼网络科技有限公司 | Mixed display method and device of audio and video stream, server and storage medium |
CN114710642A (en) * | 2022-03-14 | 2022-07-05 | 北京奇艺世纪科技有限公司 | Media data transmission system and method |
WO2022257629A1 (en) * | 2021-06-07 | 2022-12-15 | 华为技术有限公司 | Wireless communication method and communication apparatus |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11232201A (en) * | 1998-02-12 | 1999-08-27 | Nippon Telegr & Teleph Corp <Ntt> | Communication resource control device |
JP2000115737A (en) * | 1998-10-08 | 2000-04-21 | Mitsubishi Electric Corp | Multi-point video conference system |
JP2000253374A (en) * | 1999-02-26 | 2000-09-14 | Hitachi Ltd | Video conference control system and video conference system |
JP2006229416A (en) * | 2005-02-16 | 2006-08-31 | Fujitsu Ltd | Multi-point conference system |
JP2007142903A (en) * | 2005-11-21 | 2007-06-07 | Nec Corp | Route generating system, route generating method, route management server, relay device, terminal device, and control program |
JP2010200273A (en) * | 2009-02-27 | 2010-09-09 | Oki Electric Ind Co Ltd | Network control system, method and program |
-
2018
- 2018-01-19 JP JP2018007097A patent/JP6892206B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11232201A (en) * | 1998-02-12 | 1999-08-27 | Nippon Telegr & Teleph Corp <Ntt> | Communication resource control device |
JP2000115737A (en) * | 1998-10-08 | 2000-04-21 | Mitsubishi Electric Corp | Multi-point video conference system |
JP2000253374A (en) * | 1999-02-26 | 2000-09-14 | Hitachi Ltd | Video conference control system and video conference system |
JP2006229416A (en) * | 2005-02-16 | 2006-08-31 | Fujitsu Ltd | Multi-point conference system |
JP2007142903A (en) * | 2005-11-21 | 2007-06-07 | Nec Corp | Route generating system, route generating method, route management server, relay device, terminal device, and control program |
JP2010200273A (en) * | 2009-02-27 | 2010-09-09 | Oki Electric Ind Co Ltd | Network control system, method and program |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112511783A (en) * | 2019-09-16 | 2021-03-16 | 武汉斗鱼网络科技有限公司 | Mixed display method and device of audio and video stream, server and storage medium |
WO2022257629A1 (en) * | 2021-06-07 | 2022-12-15 | 华为技术有限公司 | Wireless communication method and communication apparatus |
CN114710642A (en) * | 2022-03-14 | 2022-07-05 | 北京奇艺世纪科技有限公司 | Media data transmission system and method |
Also Published As
Publication number | Publication date |
---|---|
JP6892206B2 (en) | 2021-06-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7890656B2 (en) | Transmission system, delivery path controller, load information collecting device, and delivery path controlling method | |
KR100680888B1 (en) | Virtual multicast routing for a cluster having state synchronization | |
US7570594B2 (en) | Methods, systems, and computer program products for multi-path shortest-path-first computations and distance-based interface selection for VoIP traffic | |
US9065768B2 (en) | Apparatus for a high performance and highly available multi-controllers in a single SDN/OpenFlow network | |
KR101278843B1 (en) | Application-level routing protocol for multiparty audio-video conferencing | |
CN106452958B (en) | Flow control method, system and centralized controller | |
US8289365B2 (en) | Method and apparatus for the efficient transmission of multimedia streams for teleconferencing | |
US11381883B2 (en) | Dynamic designated forwarder election per multicast stream for EVPN all-active homing | |
US7715403B2 (en) | Methods, systems, and computer program products for load balanced and symmetric path computations for VoIP traffic engineering | |
US20110246658A1 (en) | Data exchange optimization in a peer-to-peer network | |
JP6892206B2 (en) | Multipoint communication systems and methods and programs | |
CN111083061B (en) | Method, equipment and system for determining DF (distribution function) of multicast flow | |
CN104639437A (en) | Forwarding method and apparatus of broadcast messages in stack system | |
CN115514651A (en) | Cloud-edge data transmission path planning method and system based on software-defined stacked network | |
Wei et al. | DecVi: adaptive video conferencing on open peer-to-peer networks | |
WO2020132033A1 (en) | Management of live media connections | |
JP2015041938A (en) | Network control method | |
JP6892205B2 (en) | Multipoint communication systems and methods and programs | |
Hossain et al. | Distributed dynamic MCU for video conferencing in peer-to-peer network | |
Grozev et al. | Considerations for deploying a geographically distributed video conferencing system | |
CN113630319B (en) | Data distribution method, device and related equipment | |
CN114363326B (en) | Information processing method and device, network management node and boundary node | |
US11979332B2 (en) | Adaptive networking for resilient communications | |
WO2023202041A1 (en) | Virtual network management method and related apparatus | |
KR101958943B1 (en) | Method and apparatus for multicast routing in software defined networking environment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20191206 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20201009 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20201021 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20201221 |
|
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: 20210526 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210526 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6892206 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |