JP2010278777A - Overlay node and overlay network system - Google Patents
Overlay node and overlay network system Download PDFInfo
- Publication number
- JP2010278777A JP2010278777A JP2009129512A JP2009129512A JP2010278777A JP 2010278777 A JP2010278777 A JP 2010278777A JP 2009129512 A JP2009129512 A JP 2009129512A JP 2009129512 A JP2009129512 A JP 2009129512A JP 2010278777 A JP2010278777 A JP 2010278777A
- Authority
- JP
- Japan
- Prior art keywords
- node
- capacity
- overlay
- reconnection
- end node
- 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.)
- Withdrawn
Links
- 238000011144 upstream manufacturing Methods 0.000 claims abstract description 95
- 238000012546 transfer Methods 0.000 claims abstract description 44
- 238000012545 processing Methods 0.000 claims abstract description 36
- 230000004044 response Effects 0.000 claims abstract description 6
- 238000000034 method Methods 0.000 claims description 43
- 230000008569 process Effects 0.000 claims description 23
- 238000004891 communication Methods 0.000 claims description 10
- 230000005540 biological transmission Effects 0.000 description 58
- 238000010586 diagram Methods 0.000 description 21
- 235000008694 Humulus lupulus Nutrition 0.000 description 11
- 238000012544 monitoring process Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000009792 diffusion process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
本発明は、マルチキャストツリーが構築されたオーバーレイネットワーク、そのオーバーレイネットワークを構成するオーバーレイノード、及びマルチキャストツリーにおけるエンドノードの再接続方法に関する。 The present invention relates to an overlay network in which a multicast tree is constructed, overlay nodes constituting the overlay network, and a method of reconnecting end nodes in the multicast tree.
IPルータ等で構成される物理ネットワーク上に構築される仮想的なネットワークである「オーバーレイネットワーク」が知られている。図1は、オーバーレイネットワークを示す模式図である。オーバーレイネットワークを構成するノードは、以下「オーバーレイノード100」と参照される。図1に示されるように、物理ネットワークにおいてノード間を実際に接続する物理リンクに対し、オーバーレイネットワークにおいてオーバーレイノード100間を接続するリンクは、仮想リンクあるいは論理リンクと呼ばれている。
An “overlay network”, which is a virtual network constructed on a physical network composed of IP routers or the like, is known. FIG. 1 is a schematic diagram showing an overlay network. The nodes constituting the overlay network are hereinafter referred to as “
その一方で、一対多あるいは多対多の通信を行う方法として、マルチキャストが古くから注目されてきた。マルチキャストの実現方法としては、IPマルチキャストが従来知られていた。しかしながら、IPマルチキャストでは、ネットワーク上の全ルータがIPマルチキャストに対応している必要があったため、普及が進まなかった。今日では、他の実現方法として、オーバーレイネットワーク上でマルチキャストを行う「オーバーレイマルチキャスト」が注目を集めている(特許文献1参照)。オーバーレイマルチキャストでは、物理ネットワーク上のルータがIPマルチキャストに対応している必要がないため、普及に対する障害がIPマルチキャストに比べ少ない。そのため、動画データの同報配信や、株式情報やセンサ情報等のリアルタイム同報配信など、幅広い分野での利用が検討されている。 On the other hand, multicast has been attracting attention for a long time as a method of performing one-to-many or many-to-many communication. As a method for realizing multicast, IP multicast has been conventionally known. However, in IP multicast, since all routers on the network need to be compatible with IP multicast, the spread has not progressed. Today, “overlay multicast” which performs multicast on an overlay network is attracting attention as another implementation method (see Patent Document 1). In overlay multicast, routers on the physical network do not need to support IP multicast, so there are fewer obstacles to diffusion than IP multicast. For this reason, use in a wide range of fields such as broadcast distribution of moving image data and real-time broadcast distribution of stock information, sensor information, etc. is being studied.
オーバーレイマルチキャストにおいてマルチキャストトラヒックの送信及び受信を担うノードは、以下「エンドノード200」と参照される。オーバーレイネットワークを構成するオーバーレイノード100は、そのオーバーレイネットワークにおいてマルチキャストトラヒックの転送を行う。オーバーレイマルチキャストは概ね、以下の4ステップで実現される。
A node responsible for transmission and reception of multicast traffic in overlay multicast is hereinafter referred to as “
(1)オーバーレイネットワークの構築
まず、各オーバーレイノード100が、DHT(Distributed Hash Table)やSkip Graphなどに基づいて、オーバーレイネットワーク上での隣接ノードを決定し、隣接ノード間で仮想リンクを作成する。これにより、オーバーレイネットワークが構築される。
(1) Construction of Overlay Network First, each
(2)エンドノードによるオーバーレイネットワークの発見及び接続
次に、エンドノード200が、ブートストラップサーバを利用したり、検索メッセージをブロードキャストしたりすることにより、オーバーレイネットワークに接続するためのオーバーレイノード100を発見する。例えばブートストラップサーバが利用される場合、そのブートストラップサーバは、オーバーレイノード100のリストを保持しており、当該リスト中から何らかのポリシー(ランダム、オーバーレイノードの負荷、エンドノードからの物理的近傍性)に基づいていずれかのオーバーレイノード100を選択し、選択したオーバーレイノード100をエンドノード200へ通知する。また、検索メッセージがブロードキャストされる場合、ブロードキャストを受信したオーバーレイノード100はエンドノード200へ返信し、エンドノード200は最も早く返信を送り返してきたオーバーレイノード100を選択するのが一般的である。
(2) Discovery and connection of overlay network by end node Next, the
エンドノード200は、選択されたオーバーレイノード100に対して、IP、UDP、TCPやSSL等を用いて接続する。以降、当該エンドノード200は、オーバーレイネットワークを利用した他のエンドノードとのトラヒックのやりとりを、本ステップで発見・接続したオーバーレイノード100を通じて行う。このようなエンドノード200の接続先であるオーバーレイノード100は、以下「エッジノード」と参照される。尚、エンドノード200自身がDHTやSkip Graphを処理するのに十分な能力を有している場合は、エンドノード200とエッジノードとが物理的に同一であることもある。
The
(3)マルチキャストグループの作成
企業の部門や地域コミュニティ等、物理的な組織や興味対象とする情報のカテゴリなどに応じて、マルチキャストグループが作成される。作成されたマルチキャストグループは、それへの参加方法と共に、ディレクトリサーバ等を通じてエンドノード200に通知される。
(3) Creation of a multicast group A multicast group is created according to a physical organization such as a company department or a local community, or a category of information of interest. The created multicast group is notified to the
(4)マルチキャストツリーの作成
マルチキャストグループへの参加を希望するエンドノード200は、エッジノードに対して、マルチキャストグループへの参加要求を送信する。エッジノードは、エンドノード200から受け取った参加要求を、オーバーレイネットワークを利用して他のオーバーレイノードに転送する。最終的には、同一マルチキャストグループに参加する全てのエンドノード200のエッジノードをつなぐマルチキャストツリーが作成される。マルチキャストグループに向けて送信されるトラヒックは、当該マルチキャストツリー上で転送され、各エンドノード200に到達する。マルチキャストツリーの方式に関しては、多数の研究が行われている。以下、いくつかの例を説明する。
(4) Creation of Multicast Tree The
図2は、「センダーベース方式」のマルチキャストツリーを示す模式図である。図2において、オーバーレイノード100−A、100−B、100−C、100−SE、エンドノード200−B1、200−C1、200−C2、200−Sが示されている。エンドノード200−B1は、オーバーレイノード100−Bに接続されている。すなわち、オーバーレイノード100−Bは、エンドノード200−B1のエッジノードである。また、エンドノード200−C1、200−C2は、オーバーレイノード100−Cに接続されている。すなわち、オーバーレイノード100−Cは、エンドノード200−C1、200−C2のエッジノードである。また、エンドノード200−Sは、マルチキャストトラヒックの送信者(以下、「送信者エンドノード」と参照される)である。送信者エンドノード200−Sは、オーバーレイノード100−SEに接続されている。すなわち、オーバーレイノード100−SEは、送信者エンドノード200−Sのエッジノード(以下、「送信者エッジノード」と参照される)である。 FIG. 2 is a schematic diagram showing a “sender-based” multicast tree. In FIG. 2, overlay nodes 100-A, 100-B, 100-C, 100-SE, and end nodes 200-B1, 200-C1, 200-C2, and 200-S are shown. The end node 200-B1 is connected to the overlay node 100-B. That is, the overlay node 100-B is an edge node of the end node 200-B1. The end nodes 200-C1 and 200-C2 are connected to the overlay node 100-C. That is, the overlay node 100-C is an edge node of the end nodes 200-C1 and 200-C2. The end node 200-S is a sender of multicast traffic (hereinafter referred to as “sender end node”). The sender end node 200-S is connected to the overlay node 100-SE. That is, the overlay node 100-SE is an edge node of the sender end node 200-S (hereinafter referred to as “sender edge node”).
センダーベース方式では、あるマルチキャストグループの送信者エンドノード200−Sが、オーバーレイネットワーク全体に、当該マルチキャストグループの情報をブロードキャストする。各エンドノード200は、ブロードキャストを受信する。当該マルチキャストグループへの参加を希望するエンドノード200は、宛先が送信者エンドノード200−Sに設定された参加要求を、オーバーレイネットワーク(エッジノード)に送信する。その参加要求は、オーバーレイノード100によってオーバーレイネットワーク上で順次転送され、最終的に送信者エンドノード200−Sに到達する。参加要求の転送の際、各オーバーレイノード100は、直前のノード(すなわち、参加要求の送信元)を自身のマルチキャストルーティングテーブルに登録しておく。マルチキャストトラヒックの転送時、各オーバーレイノード100は、マルチキャストルーティングテーブルに登録されたノード(すなわち、参加要求の送信元)に対して、トラヒックを転送する。このようにして、送信者エンドノード200−Sから各エンドノード200へのパス、すなわちマルチキャストツリーが作成される。
In the sender-based method, a sender end node 200-S of a certain multicast group broadcasts information on the multicast group to the entire overlay network. Each
尚、センダーベース方式は、もともとIPマルチキャストで開発されたDVMRP(Distance Vector
Multicast Routing Protocol)(参照:非特許文献1)をオーバーレイマルチキャストに応用したものである。
The sender base method is DVMRP (Distance Vector) originally developed by IP multicast.
Multicast Routing Protocol (see Non-Patent Document 1) is applied to overlay multicast.
図3は、「ランデブーベース方式」のマルチキャストツリーを示す模式図である。ランデブーベース方式によれば、マルチキャストグループの作成時に、任意の1つのオーバーレイノード100が「ランデブーノード100−RP」として選択される。そして、当該マルチキャストグループへの参加を希望するエンドノード200は、宛先がそのランデブーノード100−RPに設定された参加要求を、オーバーレイネットワーク(エッジノード)に送信する。その参加要求は、オーバーレイノード100によってオーバーレイネットワーク上で順次転送され、最終的にランデブーノード100−RPに到達する。参加要求の転送の際、各オーバーレイノード100は、直前のノード(すなわち、参加要求の送信元)を自身のマルチキャストルーティングテーブルに登録しておく。
FIG. 3 is a schematic diagram showing a multicast tree of the “Rendezvous base method”. According to the rendezvous base method, any one
図3に示されるように、当該マルチキャストグループの送信者エンドノード200−Sは、エッジノード100−Eにトラヒックを送信する。エッジノード100−Eは、受信したトラヒックを、一旦、ランデブーノード100−RPに向けて転送する。ランデブーノード100−RPは、当該トラヒックを受信すると、同一マルチキャストグループに参加する他の全エンドノード200に向けてトラヒックを送信する。各オーバーレイノード100は、マルチキャストルーティングテーブルに登録されたノード(すなわち、参加要求の送信元)に対して、トラヒックを転送する。このようにして、ランデブーノード100−RPと各エンドノード200との間に双方向のパス、すなわちマルチキャストツリーが作成される。
As shown in FIG. 3, the sender end node 200-S of the multicast group transmits traffic to the edge node 100-E. The edge node 100-E once transfers the received traffic toward the rendezvous node 100-RP. When the rendezvous node 100-RP receives the traffic, the rendezvous node 100-RP transmits the traffic toward all the
ランデブーベース方式は、例えば、非特許文献2や非特許文献3に開示されている。
The rendezvous base method is disclosed in
従来技術によれば、オーバーレイネットワーク上に構築されるマルチキャストツリーにおけるホップ数が大きくなり、エンドノード200間のマルチキャストトラヒックの転送遅延が増大する可能性があった。
According to the prior art, the number of hops in the multicast tree constructed on the overlay network increases, and there is a possibility that the multicast traffic transfer delay between the
その理由は、上記ステップ(2)においてエッジノードが選択される際に、オーバーレイネットワークのトポロジーが考慮されていなかったためである。従来、エッジノードは、オーバーレイノード100の中からランダムに選択されたり、エンドノード200との物理的近傍性に基づいて選択されたりしていた。このとき、当該エッジノードと上述のランデブーノード100−RPや送信者エッジノード100−SEとの間のオーバーレイネットワーク上のホップ数は考慮されていない。そのため、選択されたエッジノードが、オーバーレイネットワークにおいてランデブーノード100−RPや送信者エッジノード100−SEから多ホップ離れたものとなる可能性があった。結果として、エンドノード200間のホップ数が大きなマルチキャストツリーが作成されてしまい、エンドノード200間のマルチキャストトラヒックの転送遅延が増大する。
This is because the topology of the overlay network is not considered when the edge node is selected in step (2). Conventionally, the edge node is randomly selected from the
本発明の1つの目的は、オーバーレイマルチキャストおいて、エンドノード間のマルチキャストトラヒックの転送遅延を短縮することにある。 One object of the present invention is to reduce the transmission delay of multicast traffic between end nodes in overlay multicast.
オーバーレイネットワーク上にはマルチキャストツリーが構築される。オーバーレイネットワークにおいて、マルチキャストグループへの参加要求の転送方向が上流方向と定義され、その上流方向の逆方向が下流方向と定義される。マルチキャストツリーにおいて、下流側に隣接するノードは次ホップノードであり、上流側に隣接するノードは前ホップノードである。また、あるオーバーレイノードの「キャパシティ」は、当該オーバーレイノードに追加的に接続され得るエンドノードの許容数に相当するパラメータである。 A multicast tree is constructed on the overlay network. In the overlay network, the transfer direction of the participation request to the multicast group is defined as the upstream direction, and the reverse direction of the upstream direction is defined as the downstream direction. In the multicast tree, a node adjacent on the downstream side is a next hop node, and a node adjacent on the upstream side is a previous hop node. The “capacity” of a certain overlay node is a parameter corresponding to the allowable number of end nodes that can be additionally connected to the overlay node.
本発明の第1の観点において、オーバーレイネットワークを構成するオーバーレイノードが提供される。そのオーバーレイノードは、キャパシティ管理部と再接続管理部とを備える。キャパシティ管理部は、自ノードのキャパシティを算出し、自ノードのキャパシティ及びアドレスを示すキャパシティ通知メッセージを次ホップノードに送信する。一方、再接続管理部は、上流側から受け取るキャパシティ通知メッセージに応答して、再接続指示処理を行う。ここで、上流側から受け取るキャパシティ通知メッセージで示されるキャパシティ及びアドレスは、それぞれ、通知キャパシティ及び上流ノードアドレスと参照される。再接続指示処理において、再接続管理部は、通知キャパシティを参照して、自ノードに現在接続されているローカルエンドノードから上述の許容数以内のエンドノードを選択する。そして、再接続管理部は、選択されたエンドノードに対して、上流ノードアドレスで指定されるオーバーレイノードである上流ノードへ再接続するように指示する。 In a first aspect of the present invention, an overlay node constituting an overlay network is provided. The overlay node includes a capacity management unit and a reconnection management unit. The capacity management unit calculates the capacity of the own node, and transmits a capacity notification message indicating the capacity and address of the own node to the next hop node. On the other hand, the reconnection management unit performs reconnection instruction processing in response to the capacity notification message received from the upstream side. Here, the capacity and the address indicated in the capacity notification message received from the upstream side are referred to as the notification capacity and the upstream node address, respectively. In the reconnection instruction process, the reconnection management unit refers to the notification capacity and selects an end node within the above allowable number from the local end nodes currently connected to the own node. Then, the reconnection management unit instructs the selected end node to reconnect to the upstream node that is the overlay node specified by the upstream node address.
本発明の第2の観点において、マルチキャストツリーが構築されたオーバーレイネットワークシステムが提供される。そのマルチキャストツリーは、第1オーバーレイノードと、第1オーバーレイノードよりも下流側に位置する第2オーバーレイノードと、を備える。第1オーバーレイノードは、第1オーバーレイノードのキャパシティを算出し、第1オーバーレイノードのキャパシティ及びアドレスを示すキャパシティ通知メッセージを下流に送信する。第2オーバーレイノードは、キャパシティ通知メッセージで示される第1オーバーレイノードのキャパシティを参照して、第2オーバーレイノードに現在接続されているローカルエンドノードから上述の許容数以内のエンドノードを選択する。更に、第2オーバーレイノードは、第1オーバーレイノードのアドレスを示す再接続指示メッセージを、選択されたエンドノードに送信する。選択されたエンドノードは、再接続指示メッセージを受け取ると、第1オーバーレイノードに対して再接続要求を送信し、第2オーバーレイノードの代わりに第1オーバーレイノードを新たなエッジノードとする。 In a second aspect of the present invention, an overlay network system in which a multicast tree is constructed is provided. The multicast tree includes a first overlay node and a second overlay node located downstream of the first overlay node. The first overlay node calculates the capacity of the first overlay node, and transmits a capacity notification message indicating the capacity and address of the first overlay node downstream. The second overlay node refers to the capacity of the first overlay node indicated by the capacity notification message, and selects an end node within the above allowable number from the local end nodes currently connected to the second overlay node. . Further, the second overlay node transmits a reconnection instruction message indicating the address of the first overlay node to the selected end node. Upon receiving the reconnection instruction message, the selected end node transmits a reconnection request to the first overlay node, and uses the first overlay node as a new edge node instead of the second overlay node.
本発明の第3の観点において、オーバーレイネットワーク上に構築されたマルチキャストツリーにおけるエンドノードの再接続方法が提供される。当該マルチキャストツリーは、第1オーバーレイノードと、第1オーバーレイノードよりも下流側に位置する第2オーバーレイノードと、を備える。再接続方法は、(A)第1オーバーレイノードにおいて、第1オーバーレイノードのキャパシティを算出するステップと、(B)第1オーバーレイノードのキャパシティ及びアドレスを示すキャパシティ通知メッセージを、第1オーバーレイノードから下流に送信するステップと、(C)第2オーバーレイノードにおいて、キャパシティ通知メッセージで示される第1オーバーレイノードのキャパシティに基づいて、第2オーバーレイノードに現在接続されているローカルエンドノードから上述の許容数以内のエンドノードを選択するステップと、(D)第1オーバーレイノードのアドレスを示す再接続指示メッセージを、第2オーバーレイノードから、上記選択されたエンドノードに送信するステップと、(E)再接続指示メッセージに応答して、選択されたエンドノードから第1オーバーレイノードに対して再接続要求を送信するステップと、を含む。 In a third aspect of the present invention, a method for reconnecting end nodes in a multicast tree constructed on an overlay network is provided. The multicast tree includes a first overlay node and a second overlay node located downstream from the first overlay node. The reconnection method includes: (A) calculating a capacity of the first overlay node in the first overlay node; and (B) a capacity notification message indicating the capacity and address of the first overlay node. Transmitting downstream from the node, and (C) at the second overlay node, from the local end node currently connected to the second overlay node based on the capacity of the first overlay node indicated in the capacity notification message Selecting an end node within the above allowable number; and (D) transmitting a reconnection instruction message indicating the address of the first overlay node from the second overlay node to the selected end node; E) Responding to the reconnection instruction message And, and transmitting the reconnection request to the first overlay node from the selected end nodes, the.
本発明によれば、オーバーレイマルチキャストおいて、エンドノード間のマルチキャストトラヒックの転送遅延を短縮することが可能となる。 According to the present invention, it is possible to reduce a multicast traffic transfer delay between end nodes in overlay multicast.
本発明の実施の形態でも、図1で示されたようなオーバーレイネットワーク(オーバーレイネットワークシステム)が構築される。また、オーバーレイネットワーク上には、図2や図3で示されたようなマルチキャストツリーが構築される。まず、本実施の形態において用いられる用語の定義を行う。 Also in the embodiment of the present invention, an overlay network (overlay network system) as shown in FIG. 1 is constructed. Also, a multicast tree as shown in FIGS. 2 and 3 is constructed on the overlay network. First, terms used in this embodiment are defined.
オーバーレイネットワークにおいて、マルチキャストグループへの参加要求の転送方向が「上流」方向と定義される(図2及び図3参照)。一方、上流方向の逆方向が「下流」方向と定義される。最上流のオーバーレイノード100は、基点ノードと参照される。図2で示されたように、マルチキャストツリーがセンダーベース方式に基づく場合、基点ノードは送信者エッジノード100−SEである。図3で示されたように、マルチキャストツリーがランデブーベース方式に基づく場合、基点ノードはランデブーノード100−RPである。マルチキャストツリーにおいて、基点ノード(100−SE,100−RP)により近づく方向が上流方向であり、その基点ノードからより離れる方向が下流方向である。
In the overlay network, the transfer direction of the request to join the multicast group is defined as the “upstream” direction (see FIGS. 2 and 3). On the other hand, the reverse direction of the upstream direction is defined as the “downstream” direction. The most
また、マルチキャストツリーにおいて、自ノードの下流側に隣接するノードは、「次ホップノード」と参照される。一方、マルチキャストツリーにおいて、自ノードの上流側に隣接するノードは、「前ホップノード」と参照される。すなわち、自ノードに参加要求を送信した送信元が次ホップノードであり、自ノードが参加要求を転送する転送先が前ホップノードである。言い換えれば、次ホップノードは、自ノードよりも基点ノード(100−SE,100−RP)から遠く、前ホップノードは、自ノードよりも基点ノードから近い。図2で示されたセンダーベース方式の場合、次ホップノードは、マルチキャストトラヒックの転送先と一致する。 In the multicast tree, a node adjacent to the downstream side of its own node is referred to as a “next hop node”. On the other hand, in the multicast tree, a node adjacent to the upstream side of its own node is referred to as a “previous hop node”. That is, the transmission source that transmitted the participation request to the own node is the next hop node, and the transfer destination to which the own node transfers the participation request is the previous hop node. In other words, the next hop node is farther from the base node (100-SE, 100-RP) than its own node, and the previous hop node is closer to the base node than its own node. In the case of the sender-based method shown in FIG. 2, the next hop node matches the multicast traffic forwarding destination.
但し、図3で示されたランデブーベース方式の場合、次ホップノードは、マルチキャストトラヒックの転送先と必ずしも一致しない。例えば図3において、送信者エンドノード200−Sとランデブーノード100−RPとの間に位置するオーバーレイノード100−Eは、隣接するオーバーレイノード100−Dに参加要求を転送する。従って、オーバーレイノード100−Dは、オーバーレイノード100−Eの前ホップノードである。そして、オーバーレイマルチキャストにおいて、オーバーレイノード100−Eは、前ホップノードであるオーバーレイノード100−Dにマルチキャストトラヒックを転送する。 However, in the case of the rendezvous base method shown in FIG. 3, the next hop node does not necessarily match the multicast traffic transfer destination. For example, in FIG. 3, the overlay node 100-E located between the sender end node 200-S and the rendezvous node 100-RP transfers the participation request to the adjacent overlay node 100-D. Therefore, the overlay node 100-D is a previous hop node of the overlay node 100-E. In the overlay multicast, the overlay node 100-E transfers the multicast traffic to the overlay node 100-D that is the previous hop node.
また、あるオーバーレイノード100をエッジノードとするエンドノード200は、当該オーバーレイノード100の「ローカルエンドノード」と参照される。あるオーバーレイノード100のローカルエンドノード200は、当該オーバーレイノード100に直接接続されている。あるオーバーレイノード100に接続可能なローカルエンドノード200の総数は、最大接続可能台数NMである。そのオーバーレイノード100に現在接続されているローカルエンドノード200の数は、現在接続台数NCである。そして、最大接続可能台数NMと現在接続台数NCとの差分(NM−NC)は、追加接続許容台数NAである。追加接続許容台数NAは、当該オーバーレイノード100に追加的に接続され得るローカルエンドノード200の許容数である。
An
追加接続許容台数NAは、オーバーレイノード100のリソース残余量等に依存する。追加接続許容台数NAは、オーバーレイノード100のリソース残余量等のパラメータに基づいて推定可能である。追加接続許容台数NA、及びその追加接続許容台数NAの推定に用いられるパラメータは、まとめて「キャパシティ」と参照される。つまり、キャパシティとは、追加接続許容台数NAに相当するパラメータであると言える。本実施の形態では、オーバーレイノード100に関して、このキャパシティという概念が用いられる。
The allowable additional connection number NA depends on the remaining resource amount of the
次に、図4を参照して、本実施の形態に係る処理の概要を説明する。 Next, an overview of the processing according to the present embodiment will be described with reference to FIG.
図4には、あるマルチキャストグループに関するマルチキャストツリーの主要な構成が示されている。該マルチキャストツリーは、基点ノード(送信者エッジノード100−SE、あるいは、ランデブーノード100−RP)、第1オーバーレイノード100−1、第2オーバーレイノード100−2、及びエンドノード200を備えている。第2オーバーレイノード100−2は、第1オーバーレイノード100−1よりも下流に位置している。すなわち、第1オーバーレイノード100−1は、第2オーバーレイノード100−2よりも基点ノードに近い。尚、上流側の第1オーバーレイノード100−1と下流側の第2オーバーレイノード100−2は、互いに隣接していなくてもよい。
FIG. 4 shows the main structure of a multicast tree related to a certain multicast group. The multicast tree includes a base node (sender edge node 100-SE or rendezvous node 100-RP), a first overlay node 100-1, a second overlay node 100-2, and an
エンドノード200は、送信者エンドノードであっても受信者エンドノードであってもよい。本実施の形態に係る処理(エンドノード再接続)が実行される前の段階で、エンドノード200は、第2オーバーレイノード100−2に接続している。つまり、第2オーバーレイノード100−2は、エンドノード200のエッジノードである。本実施の形態によれば、次のような処理が実行される。
The
(1)第1オーバーレイノード100−1は、自ノード(第1オーバーレイノード100−1)のキャパシティを算出する。 (1) The first overlay node 100-1 calculates the capacity of the own node (first overlay node 100-1).
(2)第1オーバーレイノード100−1は、自ノード(第1オーバーレイノード100−1)のキャパシティ及びアドレスを示す「キャパシティ通知メッセージCMSG」を生成する。そして、第1オーバーレイノード100−1は、そのキャパシティ通知メッセージCMSGを下流方向に送信する。 (2) The first overlay node 100-1 generates a “capacity notification message CMSG” indicating the capacity and address of the own node (first overlay node 100-1). Then, the first overlay node 100-1 transmits the capacity notification message CMSG in the downstream direction.
(3)第2オーバーレイノード100−2は、上流側からキャパシティ通知メッセージCMSGを受け取る。受け取ったキャパシティ通知メッセージCMSGには、上流の第1オーバーレイノード100−1のキャパシティ(通知キャパシティ)及びアドレス(上流ノードアドレス)が示されている。 (3) The second overlay node 100-2 receives the capacity notification message CMSG from the upstream side. The received capacity notification message CMSG indicates the capacity (notification capacity) and address (upstream node address) of the upstream first overlay node 100-1.
(4)第2オーバーレイノード100−2は、受け取ったキャパシティ通知メッセージCMSGで示される通知キャパシティと、自ノード(第2オーバーレイノード100−2)に現在接続されているローカルエンドノード200の状態とを照らし合わせる。そして、第2オーバーレイノード100−2は、ローカルエンドノード200から、第1オーバーレイノード100−1に関する追加接続許容台数NA以内のエンドノード200を選択する。
(4) The second overlay node 100-2 receives the notification capacity indicated by the received capacity notification message CMSG and the state of the
(5)第2オーバーレイノード100−2は、選択されたローカルエンドノード200に対して、より上流側の第1オーバーレイノード100−1への“再接続”を指示する。より詳細には、第2オーバーレイノード100−2は、選択されたローカルエンドノード200に「再接続指示メッセージRMSG」を送信する。再接続指示メッセージRMSGは、キャパシティ通知メッセージCMSGに含まれていた上流ノードアドレス、すなわち、第1オーバーレイノード100−1のアドレスを示す。
(5) The second overlay node 100-2 instructs the selected
(6)選択されたエンドノード200は、再接続指示メッセージRMSGを受け取る。当該エンドノード200は、受け取った再接続指示メッセージRMSGで指定された第1オーバーレイノード100−1に対して、「再接続要求RREQ」を送信する。
(6) The selected
(7)第1オーバーレイノード100−1は、ローカルエンドノードではない下流のエンドノード200から再接続要求RREQを受け取る。他のエンドノード200からの要求を既に受け入れた等の理由によりキャパシティが不足している場合、第1オーバーレイノード100−1は、再接続要求RREQを拒否する。新規ローカルエンドノードを接続可能な場合、第1オーバーレイノード100−1は、再接続要求RREQを受け入れる。
(7) The first overlay node 100-1 receives the reconnection request RREQ from the
(8)再接続要求RREQが受け入れられた場合、エンドノード200は、マルチキャストグループへの参加要求を、第1オーバーレイノード100−1に対して送信する。その結果、エンドノード200は、第1オーバーレイノード100−1に再接続し、第2オーバーレイノード100−2の代わりに第1オーバーレイノード100−1を新たなエッジノードとする。すなわち、エンドノード200のエッジノード(接続先)が、基点ノード(100−SE,100−RP)から遠い第2オーバーレイノード100−2から、基点ノードにより近い第1オーバーレイノード100−1に変更される。尚、エンドノード200は、元のエッジノードである第2オーバーレイノード100−2に、脱退要求を送信してもよい。
(8) When the reconnection request RREQ is accepted, the
以上に説明されたように、本実施の形態に係るエンドノード再接続処理によって、エンドノード200のエッジノードが、基点ノードから遠い第2オーバーレイノード100−2から、基点ノードにより近い第1オーバーレイノード100−1に変更される。その結果、オーバーレイネットワーク上でのエンドノード間のホップ数が減少する。従って、オーバーレイマルチキャストおいて、エンドノード間のマルチキャストトラヒックの転送遅延が短縮される。
As described above, the end node reconnection processing according to the present embodiment causes the edge node of the
また、本実施の形態では、上流側の第1オーバーレイノード100−1の追加接続許容台数NAの範囲内で、再接続指示対象のローカルエンドノード200が選択される。もし、第1オーバーレイノード100−1に多数の新規エンドノードがむやみに接続されたとすると、その第1オーバーレイノード100−1にかかる負荷が極端に増大し、転送遅延がかえって悪化するという問題が発生し得る。本実施の形態によれば、そのような問題は発生しない。
Further, in the present embodiment, the
更に、本実施の形態では、エンドノード200の接続先(エッジノード)が変更されるのみである。オーバーレイネットワークやマルチキャストツリーのトポロジーを変更する必要は一切無い。つまり、トポロジーを変更することなく、マルチキャストトラヒックの転送遅延を短縮することが可能である。トポロジー変更に伴うオーバーレイネットワークのルーティングテーブル及びマルチキャストルーティングテーブルの再構築は不要である。
Furthermore, in this embodiment, only the connection destination (edge node) of the
1.第1の実施の形態
1−1.オーバーレイノード100
図5は、第1の実施の形態に係るオーバーレイノード100の構成を示すブロック図である。オーバーレイノード100は、記憶部110、通信部120、参加要求転送部130、トラヒック転送部140、エンドノード管理部150、キャパシティ管理部160、及び再接続管理部170を備えている。以下、各部の機能を詳しく説明する。
1. 1. First embodiment 1-1.
FIG. 5 is a block diagram illustrating a configuration of the
(記憶部110)
記憶部110は、RAMやHDDを含む記憶装置である。記憶部110には、本実施の形態に係る処理に必要な各種情報が格納される。例えば、記憶部110には、後述されるマルチキャストルーティングテーブルRTN、トラヒック情報TFC、エンドノード管理情報ENDが格納される。
(Storage unit 110)
The
(通信部120)
通信部120は、オーバーレイネットワーク上において隣接する他のオーバーレイノード100に対して仮想リンクを張り、それら隣接ノードとの間で通信を行う。以下に説明される各部は、この通信部120を通して外部から情報を受信し、また、外部へ情報を送信する。
(Communication unit 120)
The
(参加要求転送部130)
参加要求転送部130は、マルチキャストグループへの参加要求及びマルチキャストグループからの脱退要求を転送する。また、参加要求転送部130は、記憶部110に格納されたマルチキャストルーティングテーブルRTNの更新(エントリの登録、削除)を行う。
(Participation request transfer unit 130)
The participation
具体的には、参加要求転送部130は、次ホップノード(つまり、ローカルエンドノード200あるいは他のオーバーレイノード100)から、参加要求または脱退要求を受け取る。参加要求や脱退要求には、マルチキャストグループのIDとその次ホップノードのアドレス(次ホップアドレス)が記載されている。参加要求を受け取った場合、参加要求転送部130は、マルチキャストグループID及び次ホップアドレスを新エントリとして、マルチキャストルーティングテーブルRTNに登録する。脱退要求を受け取った場合、参加要求転送部130は、当該マルチキャストグループIDの次ホップアドレスを示すエントリを、マルチキャストルーティングテーブルRTNから削除する。その後、参加要求転送部130は、自ノードのアドレスが記載された参加要求または脱退要求を、前ホップノードに送信する。尚、自ノードが基点ノード(送信者エッジノード100−SEあるいはランデブーノード100−RP)である場合は、転送は行われない。
Specifically, the participation
図6は、マルチキャストルーティングテーブルRTNの一例を示している。マルチキャストルーティングテーブルRTNには、マルチキャストグループIDと次ホップアドレス(すなわち、マルチキャストトラヒックを転送すべきノード)が登録される。例えば、オーバーレイノード100がマルチキャストグループGroup−A宛のマルチキャストトラヒックを受信した場合、そのマルチキャストトラヒックはオーバーレイノード100−10、100−15、及びローカルエンドノード200−1、200−2に転送される。
FIG. 6 shows an example of the multicast routing table RTN. In the multicast routing table RTN, a multicast group ID and a next hop address (that is, a node to which multicast traffic is transferred) are registered. For example, when the
(トラヒック転送部140)
トラヒック転送部140は、他のノードからマルチキャストトラヒックを受信すると、上記マルチキャストルーティングテーブルRTNを参照して、当該マルチキャストトラヒックを転送する。また、トラヒック転送部140は、マルチキャストトラヒックの転送処理に基づいてトラヒック情報TFCを生成・更新する。トラヒック情報TFCは、自ノードが処理しているマルチキャストトラヒックの状態を示す情報であり、記憶部110に格納される。
(Traffic forwarding unit 140)
When the
図7は、オーバーレイノード100−Bが処理しているマルチキャストトラヒックの状態の一例を示している。オーバーレイノード100−Bは、二つのマルチキャストグループX、Yのマルチキャストツリーに接続しているとする。図7において、マルチキャストグループXに関する仮想リンク及び通信は実線で示され、マルチキャストグループYに関する仮想リンク及び通信は破線で示されている。オーバーレイノード100−Bには、オーバーレイノード100−A、100−C、100−P、100−Q、及びエンドノード(ローカルエンドノード)200−a〜200−cが接続されている。エンドノード200−bは送信者エンドノードであり、エンドノード200−a及び200−cは受信者エンドノードである。 FIG. 7 shows an example of the state of multicast traffic being processed by the overlay node 100-B. It is assumed that the overlay node 100-B is connected to the multicast trees of the two multicast groups X and Y. In FIG. 7, the virtual link and communication regarding the multicast group X are indicated by solid lines, and the virtual link and communication regarding the multicast group Y are indicated by broken lines. Overlay nodes 100-A, 100-C, 100-P, 100-Q, and end nodes (local end nodes) 200-a to 200-c are connected to the overlay node 100-B. The end node 200-b is a sender end node, and the end nodes 200-a and 200-c are receiver end nodes.
図8は、図7で示されたオーバーレイノード100−Bが有するトラヒック情報TFCの一例を示している。トラヒック情報TFCは、トラヒックID、受信/送信、及び平均トラヒック量を示している。尚、図8において、トラヒックID:TR_[M]−[N][L]は、ノード[N]からノード[L]へ流れるマルチキャストグループ[M]のマルチキャストトラヒックを意味する。 FIG. 8 shows an example of the traffic information TFC included in the overlay node 100-B shown in FIG. The traffic information TFC indicates a traffic ID, reception / transmission, and average traffic volume. In FIG. 8, traffic ID: TR_ [M]-[N] [L] means multicast traffic of the multicast group [M] flowing from the node [N] to the node [L].
(エンドノード管理部150)
エンドノード管理部150は、エンドノード200の状態を管理する。エンドノード管理部150は、ローカルエンドノード監視部151を含んでいる。
(End node management unit 150)
The end
(ローカルエンドノード監視部151)
ローカルエンドノード監視部151は、自ノードにつながるローカルエンドノード200の状態を監視する。ここで、ローカルエンドノードの状態とは、ローカルエンドノード200の台数、ローカルエンドノード200への送出トラヒック量、ローカルエンドノード200からの受信トラヒック量などを含む。図7及び図8で示された例の場合、「ローカルエンドノード台数=3、200−aへの送出トラヒック量=10Mbps、200−bからの受信トラヒック量=5Mbps、200−cへの送出トラヒック量=5Mbps」である。ローカルエンドノード監視部151は、これらローカルエンドノードの状態を、記憶部110に格納されたエンドノード管理情報ENDに記載する。
(Local end node monitoring unit 151)
The local end
(キャパシティ管理部160)
キャパシティ管理部160は、自ノードのキャパシティを算出し、キャパシティ通知メッセージCMSGを次ホップノードに送信する。より詳細には、キャパシティ管理部160は、キャパシティ算出部161、キャパシティ按分部162、及び通知メッセージ生成部163を含んでいる。
(Capacity management unit 160)
The
(キャパシティ算出部161)
キャパシティ算出部161は、自ノードのキャパシティを算出(推定)する。具体的には、キャパシティ算出部161は、自ノードのリソース残余量を算出する。また、可能な場合には、キャパシティ算出部161は、リソース残余量から追加接続許容台数NAを更に算出してもよい。キャパシティは、リソース残余量及び/あるいは追加接続許容台数NAを含む。
(Capacity calculation unit 161)
The
<リソース残余量の算出>
リソースとしては、トラヒック受信/送出能力、CPU使用率、メモリ使用量などが挙げられる。例えば、トラヒック受信/送出能力の場合、キャパシティ算出部161は、上述のトラヒック情報TFCを参照することによって、トラヒック受信/送出能力の残余量を算出することができる。以下、図7及び図8で示された例の場合のトラヒック受信/送出能力の残余量を説明する。
<Calculation of remaining resource amount>
Examples of resources include traffic reception / transmission capability, CPU usage rate, and memory usage. For example, in the case of the traffic reception / transmission capability, the
図8に示されるように、オーバーレイノード100−Bの平均受信トラヒック量は、マルチキャストグループXに関して15Mbps(TR_X−AB+TR_X−bB)であり、マルチキャストグループYに関して5Mbps(TR_Y−PB)であり、合計20Mbpsである。また、オーバーレイノード100−Bの平均送出トラヒック量は、マルチキャストグループXに関して25Mbps(TR_X−BA+TR_X−BC+TR_X−Ba)であり、マルチキャストグループYに関して10Mbps(TR_Y−BQ+TR_Y−Bc)であり、合計35Mbpsである。ここで、オーバーレイノード100−Bは、全二重100Mbpsの帯域幅のリンクに接続しているとする。この場合、オーバーレイノード100−Bに残されているトラヒック受信能力及びトラヒック送出能力は、それぞれ、80Mbps及び65Mbpsである。これらが、オーバーレイノード100−Bのリソース残余量(受信/送出トラヒック残余量)である。 As shown in FIG. 8, the average received traffic amount of the overlay node 100-B is 15 Mbps (TR_X-AB + TR_X-bB) for the multicast group X, and 5 Mbps (TR_Y-PB) for the multicast group Y, for a total of 20 Mbps. It is. The average transmission traffic amount of the overlay node 100-B is 25 Mbps (TR_X-BA + TR_X-BC + TR_X-Ba) for the multicast group X and 10 Mbps (TR_Y-BQ + TR_Y-Bc) for the multicast group Y, which is 35 Mbps in total. . Here, it is assumed that the overlay node 100-B is connected to a link having a bandwidth of 100 Mbps full duplex. In this case, the traffic reception capability and traffic transmission capability remaining in the overlay node 100-B are 80 Mbps and 65 Mbps, respectively. These are the resource residual amount (reception / transmission traffic residual amount) of the overlay node 100-B.
<追加接続許容台数NAの算出>
追加接続許容台数NAを算出するためには、ローカルエンドノード200の追加接続によってキャパシティ消費量(つまり、リソース使用量)がどの程度増加するかを把握する必要がある。例えば、リソースとしてトラヒック受信/送出能力を考える場合、ローカルエンドノード200の追加接続によって受信/送出トラヒック量がどの程度増加するかが分かればよい。既に接続されている各ローカルエンドノード200の受信/送出トラヒック量(キャパシティ消費量)は、上述のエンドノード管理情報ENDに記載されている。従って、エンドノード管理情報ENDを参照することによって、追加接続許容台数NAを算出(推定)することが可能である。
<Calculation of additional connection allowable number NA>
In order to calculate the additional connection allowable number NA, it is necessary to know how much the capacity consumption (that is, the resource usage) increases due to the additional connection of the
図7及び図8で示された例において、マルチキャストグループXの受信者エンドノード200−aへの送出トラヒック量は、10Mbpsである。マルチキャストグループXの送信者エンドノード200−bからの受信トラヒック量は、5Mbpsである。マルチキャストグループYの受信者エンドノード200−cへの送出トラヒック量は、5Mbpsである。エンドノード管理情報ENDで示されるこれらパラメータは、各ローカルエンドノード200のキャパシティ消費量である。
In the example shown in FIG. 7 and FIG. 8, the amount of traffic to be sent to the receiver end node 200-a of the multicast group X is 10 Mbps. The amount of traffic received from the sender end node 200-b of the multicast group X is 5 Mbps. The amount of traffic sent to the receiver end node 200-c of the multicast group Y is 5 Mbps. These parameters indicated by the end node management information END are the capacity consumption of each
受信者エンドノードに関する追加接続許容台数NAは、次の通りである。マルチキャストグループXの場合、受信者エンドノード200−aへの送出トラヒック量は10Mbpsであり、マルチキャストグループYの場合、受信者エンドノード200−cへの送出トラヒック量は5Mbpsである。また、オーバーレイノード100−Bに残されているトラヒック送出能力は65Mbpsである。従って、マルチキャストグループXの場合、追加接続許容台数NAは6台であり、マルチキャストグループYの場合、追加接続許容台数NAは13台である。 The additional connection allowable number NA related to the receiver end node is as follows. In the case of multicast group X, the amount of traffic sent to receiver end node 200-a is 10 Mbps, and in the case of multicast group Y, the amount of traffic sent to receiver end node 200-c is 5 Mbps. Further, the traffic transmission capability remaining in the overlay node 100-B is 65 Mbps. Accordingly, in the case of the multicast group X, the allowable additional connection number NA is six, and in the case of the multicast group Y, the additional connection allowable number NA is 13.
送信者エンドノードに関する追加接続許容台数NAの算出はより複雑である。それは、送信者エンドノードが追加接続されると、オーバーレイノード100は、当該送信者エンドノードからトラヒックを受信するだけでなく、受信したトラヒックを隣接ノードに更に送信するからである。すなわち、送信者エンドノードが追加接続されると、受信トラヒック量だけでなく送出トラヒック量も増加する。
The calculation of the additional connection allowable number NA related to the sender end node is more complicated. This is because when the sender end node is additionally connected, the
図7及び図8で示された例において、マルチキャストグループXの送信者エンドノード200−bからの受信トラヒック量は5Mbpsである。また、マルチキャストグループXのトラヒックを受信すると、オーバーレイノード100−Bは、そのトラヒックを3台のノード100−A、100−C、200−aに転送する(トラヒックID=TR_X−BA、TR_X−BC、TR_X−Ba)。すなわち、送信者エンドノードが1台追加接続されると、オーバーレイノード100−Bの受信トラヒック量は5Mbps増加し、その送出トラヒック量は15Mbps(=5Mbps×3台)増加する。オーバーレイノード100−Bに残されているトラヒック受信能力及びトラヒック送出能力は、それぞれ80Mbps及び65Mbpsであるため、送信者エンドノードの追加接続許容台数NAは4台である。 In the example shown in FIGS. 7 and 8, the amount of traffic received from the sender end node 200-b of the multicast group X is 5 Mbps. Also, upon receiving traffic of multicast group X, overlay node 100-B forwards the traffic to three nodes 100-A, 100-C, and 200-a (traffic ID = TR_X-BA, TR_X-BC). , TR_X-Ba). That is, when one additional sender end node is connected, the received traffic volume of the overlay node 100-B increases by 5 Mbps, and the outgoing traffic volume increases by 15 Mbps (= 5 Mbps × 3). Since the traffic reception capability and traffic transmission capability remaining in the overlay node 100-B are 80 Mbps and 65 Mbps, respectively, the additional connection allowable number NA of the sender end node is four.
このように、送信者エンドノードに関する追加接続許容台数NAを算出するためには、送信者エンドノードが送出するトラヒック量に加えて、受信トラヒックの転送先の数まで把握しておく必要がある。追加接続許容台数NAの算出に用いられるこれらのパラメータも「キャパシティ」に含まれる。尚、サーバなどで全送信者エンドノードを管理しておき、サーバに問い合わせるなどして追加接続させる送信者エンドノードの送出トラヒック量を把握してもよい。 Thus, in order to calculate the additional connection allowable number NA related to the sender end node, it is necessary to know the number of transfer destinations of received traffic in addition to the traffic amount transmitted by the sender end node. These parameters used for calculating the allowable additional connection number NA are also included in the “capacity”. It should be noted that all sender end nodes may be managed by a server or the like, and the amount of outgoing traffic of the sender end node to be additionally connected by inquiring to the server or the like may be grasped.
(キャパシティ按分部162)
キャパシティ按分部162は、必要に応じて、上記キャパシティを分割(按分)する。分割が必要な場合としては、自ノードが複数のマルチキャストグループに参加している場合や、同一マルチキャストグループの次ホップノードが複数存在する場合が挙げられる。
(Capacity apportioning part 162)
The
<自ノードが複数のマルチキャストグループに参加している場合>
例えば、図7及び図8で示された例において、オーバーレイノード100−Bは、2つのマルチキャストグループX、Yに参加している。また、送出トラヒック残余量は65Mbpsである。この場合、例えば、キャパシティ按分部162は、マルチキャストグループXに45Mbps(NA=4に相等)を割り当て、マルチキャストグループYに20Mbps(NA=4に相等)を割り当てる。但し、分割比率は任意である。
<When the local node participates in multiple multicast groups>
For example, in the example shown in FIGS. 7 and 8, the overlay node 100-B participates in two multicast groups X and Y. The remaining amount of outgoing traffic is 65 Mbps. In this case, for example, the
<同一マルチキャストグループの次ホップノードが複数存在する場合>
この場合は、マルチキャストルーティングテーブルRTN(図6参照)において、同一マルチキャストグループIDに対して複数の次ホップアドレスが登録されている場合に相等する。この場合、キャパシティ按分部162は、当該マルチキャストグループに割り当てられたキャパシティを、それら複数の次ホップノード間で分割する。例えば、キャパシティ按分部162は、キャパシティを複数の次ホップノード間で均等に分割する。但し、分割比率は任意である。
<When there are multiple next hop nodes in the same multicast group>
This case is equivalent when a plurality of next hop addresses are registered for the same multicast group ID in the multicast routing table RTN (see FIG. 6). In this case, the
(通知メッセージ生成部163)
通知メッセージ生成部163は、キャパシティ通知メッセージCMSGを生成する。キャパシティ通知メッセージCMSGは、該当するマルチキャストグループに関する自ノードキャパシティ及び自ノードのアドレス(自ノードへの接続情報)を示している。マルチキャストグループ間でキャパシティが分割された場合は、マルチキャストグループ毎にキャパシティ通知メッセージCMSGが作成される。また、次ホップノード間でキャパシティが分割された場合は、次ホップノード毎にキャパシティ通知メッセージCMSGが作成される。
(Notification message generator 163)
The notification
通知メッセージ生成部163は、マルチキャストルーティングテーブルRTNを参照して、キャパシティ通知メッセージCMSGを次ホップノードに送信する。キャパシティの分割により複数のキャパシティ通知メッセージCMSGが作成された場合、通知メッセージ生成部163は、それら複数のキャパシティ通知メッセージCMSGをそれぞれ対応する次ホップノードに送信する。以下の説明において、あるオーバーレイノード100から下流に向けて送信されるキャパシティ通知メッセージCMSGは、「キャパシティ通知メッセージCMSG−DN」と参照される場合がある。
The
(再接続管理部170)
オーバーレイノード100は、前ホップノードから送信されたキャパシティ通知メッセージCMSGを受信する立場になることもある。以下の説明において、あるオーバーレイノード100が上流から受け取るキャパシティ通知メッセージCMSGは、「キャパシティ通知メッセージCMSG−UP」と参照される場合がある。
(Reconnection manager 170)
The
キャパシティ通知メッセージCMSG−UPを処理するのは再接続管理部170である。再接続管理部170は、エンドノード選択部171と指示部172を含んでいる。この再接続管理部170は、キャパシティ通知メッセージCMSG−UPに応答して、次に説明される「再接続指示処理」を行う。
The
(エンドノード選択部171)
エンドノード選択部171は、自ノードに現在接続されているローカルエンドノード200の中から、再接続指示対象を選択する。この選択処理において、エンドノード選択部171は、キャパシティ通知メッセージCMSG−UPで示される上流ノードのキャパシティ(通知キャパシティ)を参照する。そして、エンドノード選択部171は、選択されるローカルエンドノード200のキャパシティ消費量の合計が通知キャパシティ以下となるように、ローカルエンドノード200を選択する。すなわち、エンドノード選択部171は、上流ノードに関する追加接続許容台数NA以内のローカルエンドノード200を選択する。
(End node selection unit 171)
The end
例えば、通知キャパシティが、上流ノードのリソース残余量(例えば、受信/送出トラヒック残余量)である場合を考える。この場合、エンドノード選択部171は、上述のエンドノード管理情報ENDを参照して、各ローカルエンドノード200のリソース使用量(例えば、受信/送出トラヒック量)を把握する。そして、エンドノード選択部171は、選択されるローカルエンドノード200のリソース使用量の合計がリソース残余量以下となるように、ローカルエンドノード200を選択する。これは、上述の<追加接続許容台数NAの算出>で説明された手法で得られる追加接続許容台数NA以内でローカルエンドノード200を選択することに相当する。
For example, consider the case where the notification capacity is the resource residual amount (for example, the reception / transmission traffic residual amount) of the upstream node. In this case, the end
通知キャパシティが上流ノードの追加接続許容台数NAそのものである場合、エンドノード選択部171は、その追加接続許容台数NA以内のローカルエンドノード200をすぐに選択することができる。この場合は、選択されるローカルエンドノード200の総数がキャパシティ消費量の合計に相当する。
When the notification capacity is the additional connection allowable number NA of the upstream node itself, the end
(指示部172)
指示部172は、エンドノード選択部171によって選択されたローカルエンドノード200に対して、“上流ノードへの再接続”を指示する。より詳細には、指示部172は、選択されたローカルエンドノード200に再接続指示メッセージRMSGを送信する。再接続指示メッセージRMSGは、キャパシティ通知メッセージCMSG−UPに含まれていたアドレス(上流ノードアドレス)及びマルチキャストグループを示す。
(Instruction unit 172)
The
1−2.エンドノード200
図9は、本実施の形態に係るエンドノード200の構成を示すブロック図である。エンドノード200は、参加要求送信部210、トラヒック送受信部220、及び再接続処理部230を備えている。
1-2.
FIG. 9 is a block diagram showing a configuration of
参加要求送信部210は、マルチキャストグループへの参加要求あるいはマルチキャストグループからの脱退要求を作成する。そして、参加要求送信部210は、参加要求あるいは脱退要求を、指定されたオーバーレイノード100(エッジノード、あるいは、再接続指示メッセージRMSGで指定された上流ノード)に送信する。
The participation
トラヒック送受信部220は、特定のマルチキャストグループ宛てのマルチキャストトラヒックをエッジノード100へ送信する。また、トラヒック送受信部220は、特定のマルチキャストグループからのマルチキャストトラヒックをエッジノード100から受信する。
The traffic transmission /
再接続処理部230は、現在のエッジノードから上述の再接続指示メッセージRMSGを受け取る。その再接続指示メッセージRMSGは、上流ノードを指定する上流ノードアドレスを含んでいる。再接続処理部230は、上流ノードアドレスを参照し、当該上流ノードに対して再接続要求RREQを送信する。上流ノードが再接続要求RREQを受け入れた場合、再接続処理部230は、参加要求送信部210に対して、該当するマルチキャストグループへの参加要求を上流ノードに送信するよう指示する。その結果、エッジノードが、より基点ノードに近い上流ノードに変更される。またこのとき、元のエッジノードに対して脱退要求を送信してもよい。
The
1−3.動作例
次に、図10及び図11を参照して、本実施の形態に係るオーバーレイマルチキャストシステムの動作例を説明する。図10及び図11には、あるマルチキャストグループのマルチキャストツリーの一部が示されている。オーバーレイノード100−Aは、オーバーレイノード100−Bの前ホップノードである。オーバーレイノード100−C、100−Eは共に、オーバーレイノード100−Bの次ホップノードである。オーバーレイノード100−Dは、オーバーレイノード100−Cの次ホップノードである。オーバーレイノード100−Bにはエンドノード200−Bx、200−By、200−Bzが接続されている。オーバーレイノード100−Cにはエンドノード200−Cxが接続されている。オーバーレイノード100−Eにはエンドノード200−Exが接続されている。
1-3. Operation Example Next, an operation example of the overlay multicast system according to the present embodiment will be described with reference to FIGS. 10 and 11. 10 and 11 show a part of a multicast tree of a certain multicast group. The overlay node 100-A is a previous hop node of the overlay node 100-B. Both overlay nodes 100-C and 100-E are next hop nodes of overlay node 100-B. The overlay node 100-D is the next hop node of the overlay node 100-C. End nodes 200-Bx, 200-By, and 200-Bz are connected to the overlay node 100-B. An end node 200-Cx is connected to the overlay node 100-C. An end node 200-Ex is connected to the overlay node 100-E.
以下、オーバーレイノード100−Bがキャパシティ通知メッセージCMSG−UPを受信する場合と、オーバーレイノード100−Bがキャパシティ通知メッセージCMSG−DNを送信する場合とに分けて説明を行う。尚、以下の説明において、エンドノード200はすべて受信者エンドノードであるする。
Hereinafter, the case where the overlay node 100-B receives the capacity notification message CMSG-UP and the case where the overlay node 100-B transmits the capacity notification message CMSG-DN will be described separately. In the following description, all
1−3−1.キャパシティ通知メッセージ受信時の動作
図10に示されるように、オーバーレイノード100−Bは、オーバーレイノード100−Aからキャパシティ通知メッセージCMSG−UPを受信する。キャパシティ通知メッセージCMSG−UPは、オーバーレイノード100−Aのキャパシティとアドレスを示している。再接続管理部170は、通知キャパシティを参照して、ローカルエンドノード200−Bx、200−By、200−Bzの中から再接続指示対象を選択する。
1-3-1. Operation Upon Receiving Capacity Notification Message As shown in FIG. 10, the overlay node 100-B receives the capacity notification message CMSG-UP from the overlay node 100-A. The capacity notification message CMSG-UP indicates the capacity and address of the overlay node 100-A. The
例として、キャパシティ通知メッセージCMSG−UPが「受信者エンドノードに関する追加接続許容台数NA=2」を示している場合を考える。この場合、再接続管理部170は、2台以内のローカルエンドノード200を対象として選択する。対象は任意に選択されてもよいし、所定のポリシーに従って選択されてもよい。例えば、オーバーレイノード100−Bに接続していた時間が長いものから優先的に選択したり、オーバーレイノード100−Bからのトラヒック送出量が多いものから優先的に選択したりするといったポリシーが考えられる。このようなポリシーは、再接続管理部170に予め設定されていてもよいし、キャパシティ通知メッセージCMSG−UPに記載されていてもよい。
As an example, let us consider a case where the capacity notification message CMSG-UP indicates “additional allowable connection number NA = 2 for the receiver end node”. In this case, the
他の例として、キャパシティ通知メッセージCMSG−UPが「オーバーレイノード100−Aの送出トラヒック残余量(リソース残余量)=60Mbps」を示している場合を考える。また、ローカルエンドノード200−Bx、200−By、200−Bzのそれぞれへの送出トラヒック量(リソース使用量)が、20Mbps、30Mbps、30Mbpsであるとする。この場合、再接続管理部170は、リソース使用量の合計が60Mbps以下となるようにローカルエンドノード200を選択する。例えば、2台のローカルエンドノード200−By、200−Bzが選択される。上述の同様に、対象は任意に選択されてもよいし、所定のポリシーに従って選択されてもよい。
As another example, consider a case where the capacity notification message CMSG-UP indicates “transmission remaining traffic amount (resource remaining amount) of overlay node 100-A = 60 Mbps”. Further, it is assumed that the traffic volume (resource usage amount) to each of the local end nodes 200-Bx, 200-By, and 200-Bz is 20 Mbps, 30 Mbps, and 30 Mbps. In this case, the
更に、再接続管理部170は、選択されたローカルエンドノード200に再接続指示メッセージRMSGを送信する。再接続指示メッセージRMSGは、オーバーレイノード100−Aのアドレス(上流ノードアドレス)を示す。
Furthermore, the
例えば、エンドノード200−Byが再接続指示メッセージRMSGを受け取る。エンドノード200−Byは、オーバーレイノード100−Aに対して再接続要求RREQを送信する。オーバーレイノード100−Aは再接続要求RREQを受け入れる。そして、エンドノード200−Byは、脱退要求をオーバーレイノード100−Bに送信し、参加要求をオーバーレイノード100−Aに送信する。その結果、エンドノード200−Byは、オーバーレイノード100−Aに再接続し、オーバーレイノード100−Bの代わりにオーバーレイノード100−Aを新たなエッジノードとする。すなわち、エンドノード200−Byのエッジノード(接続先)が、基点ノードから遠いオーバーレイノード100−Bから、基点ノードにより近いオーバーレイノード100−Aに変更される。 For example, the end node 200-By receives the reconnection instruction message RMSG. The end node 200-By transmits a reconnection request RREQ to the overlay node 100-A. The overlay node 100-A accepts the reconnection request RREQ. Then, the end node 200-By transmits a withdrawal request to the overlay node 100-B, and transmits a participation request to the overlay node 100-A. As a result, the end node 200-By reconnects to the overlay node 100-A, and uses the overlay node 100-A as a new edge node instead of the overlay node 100-B. That is, the edge node (connection destination) of the end node 200-By is changed from the overlay node 100-B far from the base node to the overlay node 100-A closer to the base node.
1−3−2.キャパシティ通知メッセージ送信時の動作
図11を参照して、オーバーレイノード100−Bがキャパシティ通知メッセージCMSG−DNを送信する場合を説明する。オーバーレイノード100−Bのキャパシティ管理部160は、自ノードのキャパシティを取得する。キャパシティを取得するタイミングとしては、(1)前回のキャパシティ取得から一定時間が経過したとき、(2)図10で示された再接続処理が完了したとき、などが考えられる。
1-3-2. Operation when Capacity Notification Message is Transmitted A case where the overlay node 100-B transmits a capacity notification message CMSG-DN will be described with reference to FIG. The
更に、キャパシティ管理部160は、マルチキャストルーティングテーブルRTNを参照して、2つの次ホップノード100−C、100−Eが存在することを認識する。この場合、キャパシティ管理部160は、上記取得したキャパシティを、それら2つの次ホップノード100−C、100−E間で分割する。
Furthermore, the
キャパシティ管理部160は、2種類のキャパシティ通知メッセージCMSG−DN−C、CMSG−DN−Eを作成する。キャパシティ通知メッセージCMSG−DN−Cは、次ホップノード100−Cに割り当てられたキャパシティと、オーバーレイノード100−Bのアドレスを示す。一方、キャパシティ通知メッセージCMSG−DN−Eは、次ホップノード100−Eに割り当てられたキャパシティと、オーバーレイノード100−Bのアドレスを示す。そして、キャパシティ管理部160は、マルチキャストルーティングテーブルRTNを参照して、キャパシティ通知メッセージCMSG−DN−C、CMSG−DN−Eをそれぞれオーバーレイノード100−C、100−Eへ送信する。
The
オーバーレイノード100−Cは、再接続指示メッセージRMSGをエンドノード200−Cxに送信し、エンドノード200−Cxは再接続要求RREQをオーバーレイノード100−Bに送信する。オーバーレイノード100−Bは、エンドノード200−Cxからの再接続要求RREQを受け入れる。エンドノード200−Cxは、参加要求をオーバーレイノード100−Bに送信する。オーバーレイノード100−Bの参加要求転送部130は、マルチキャストルーティングテーブルRTNを更新し(エンドノード200−Cxをエントリに新たに追加する)、また、参加要求をオーバーレイノード100−Aに転送する。その後、オーバーレイノード100−Bが当該マルチキャストグループ宛のマルチキャストトラヒックを受信すると、そのトラヒック転送部140は、マルチキャストトラヒックを少なくともエンドノード200−Cxに転送する。
The overlay node 100-C transmits a reconnection instruction message RMSG to the end node 200-Cx, and the end node 200-Cx transmits a reconnection request RREQ to the overlay node 100-B. The overlay node 100-B accepts the reconnection request RREQ from the end node 200-Cx. The end node 200-Cx transmits a participation request to the overlay node 100-B. The participation
オーバーレイノード100−Eは、再接続指示メッセージRMSGをエンドノード200−Exに送信し、エンドノード200−Exは再接続要求RREQをオーバーレイノード100−Bに送信する。このとき、オーバーレイノード100−Bは、キャパシティ不足により、エンドノード200−Exからの再接続要求RREQを拒否するとする。この場合、エンドノード200−Exの再接続は行われない。 The overlay node 100-E transmits a reconnection instruction message RMSG to the end node 200-Ex, and the end node 200-Ex transmits a reconnection request RREQ to the overlay node 100-B. At this time, it is assumed that the overlay node 100-B rejects the reconnection request RREQ from the end node 200-Ex due to insufficient capacity. In this case, reconnection of the end node 200-Ex is not performed.
1−4.効果
以上に説明されたように、本実施の形態によれば、エンドノード200のエッジノードが、基点ノードにより近いオーバーレイノード100に変更される。その結果、オーバーレイネットワーク上でのエンドノード間のホップ数が減少する。従って、オーバーレイマルチキャストおいて、エンドノード間のマルチキャストトラヒックの転送遅延が短縮される。
1-4. Effect As described above, according to the present embodiment, the edge node of the
また、本実施の形態では、上流ノード100の追加接続許容台数NAの範囲内で、再接続指示対象のローカルエンドノード200が選択される。もし、上流ノード100に多数の新規エンドノードがむやみに接続されたとすると、その上流ノード100にかかる負荷が極端に増大し、転送遅延がかえって悪化するという問題が発生し得る。本実施の形態によれば、そのような問題は発生しない。
Further, in the present embodiment, the
更に、本実施の形態では、エンドノード200の接続先(エッジノード)が変更されるのみである。オーバーレイネットワークやマルチキャストツリーのトポロジーを変更する必要は一切無い。つまり、トポロジーを変更することなく、マルチキャストトラヒックの転送遅延を短縮することが可能である。トポロジー変更に伴うオーバーレイネットワークのルーティングテーブル及びマルチキャストルーティングテーブルの再構築は不要である。
Furthermore, in this embodiment, only the connection destination (edge node) of the
2.第2の実施の形態
第1の実施の形態では、上流から受け取るキャパシティ通知メッセージCMSG−UPに、隣接する前ホップノードのキャパシティのみが記載されていた。そのため、ローカルエンドノード200の再接続先候補は、前ホップノードだけであった。この場合、2ホップ以上上流側のオーバーレイノード100へローカルエンドノード200を再接続させるためには、再接続処理をホップ数分繰り返す必要があった。
2. Second Embodiment In the first embodiment, only the capacity of the adjacent previous hop node is described in the capacity notification message CMSG-UP received from upstream. Therefore, the reconnection destination candidate of the
第2の実施の形態では、下流へ送られるキャパシティ通知メッセージCMSG−DNに、自ノードのキャパシティだけでなく、自ノードよりも上流のオーバーレイノード100のキャパシティも記載される。その結果、ローカルエンドノード200の再接続先候補が、前ホップノードだけでなく、前ホップノードよりも更に上流側のオーバーレイノード100にも拡張されることになる。この場合、ローカルエンドノード200を、基点ノードにより近いオーバーレイノード100に再接続させやすくなる。また、そのために再接続処理を繰り返す必要がなくなるため、処理時間が短縮される。
In the second embodiment, not only the capacity of the own node but also the capacity of the
図12は、第2の実施の形態に係るオーバーレイノード100の構成を示すブロック図である。第1の実施の形態と比較して、本実施の形態に係る再接続管理部170は、更に上流キャパシティ再算出部173を備えている。第1の実施の形態と重複する説明は適宜省略される。
FIG. 12 is a block diagram illustrating a configuration of the
(上流キャパシティ再算出部173)
第1の実施の形態と同様に、再接続管理部170(エンドノード選択部171、指示部172)は、上流から受け取るキャパシティ通知メッセージCMSG−UPに応答して、再接続指示処理を実行する。再接続指示処理の後、上流ノードのキャパシティにまだ余裕がある可能性もある。そこで、上流キャパシティ再算出部173は、再接続指示処理の後の上流ノードのキャパシティを再度算出する。
(Upstream capacity recalculation unit 173)
Similar to the first embodiment, the reconnection management unit 170 (the end
キャパシティ通知メッセージCMSG−UPで示される上流ノードのキャパシティ(通知キャパシティ)をCupとする。また、エンドノード選択部171によって選択されたローカルエンドノード200のキャパシティ消費量の合計をCcとする。このとき、上流キャパシティ再算出部173は、残留キャパシティCup’=Cup−Ccを算出する。そして、キャパシティ再算出部173は、その残留キャパシティCup’と上流ノードアドレス(キャパシティ通知メッセージCMSG−UPで示されるアドレス)を示す残留キャパシティ通知メッセージCMSG−UP’を、キャパシティ管理部160に送る。
The capacity (notification capacity) of the upstream node indicated by the capacity notification message CMSG-UP is set to Cup. Further, the total capacity consumption of the
例えば、図10で示された例において、オーバーレイノード100−Bが受け取るキャパシティ通知メッセージCMSG−UPは、「オーバーレイノード100−Aの送出トラヒック残余量=60Mbps」を示している。ここで、再接続管理部170が、ローカルエンドノード200−By(受信トラヒック量=30Mbps)に対して、オーバーレイノード100−Aへの再接続を指示するとする。この場合、上流キャパシティ再算出部173は、残留キャパシティCup’を30Mbpsと算出し、「オーバーレイノード100−Aの送出トラヒック残余量=30Mbps」を示す残留キャパシティ通知メッセージCMSG−UP’を、キャパシティ管理部160に送る。
For example, in the example shown in FIG. 10, the capacity notification message CMSG-UP received by the overlay node 100-B indicates “transmission remaining traffic amount of overlay node 100-A = 60 Mbps”. Here, it is assumed that the
(キャパシティ管理部160)
キャパシティ管理部160は、残留キャパシティ通知メッセージCMSG−UP’をキャパシティ通知メッセージCMSG−DNに組み込む。すなわち、下流へ送られるキャパシティ通知メッセージCMSG−DNは、自ノードのキャパシティ及びアドレスに加えて、上流ノードの残留キャパシティ及び上流ノードアドレスをも含む。尚、キャパシティ按分部162は、第1の実施の形態と同様に、自ノード及び上流ノードのキャパシティを分割してもよい。
(Capacity management unit 160)
The
(再接続管理部170)
再接続管理部170は、上流からキャパシティ通知メッセージCMSG−UPを受け取る。そのキャパシティ通知メッセージCMSG−UPは、複数の上流ノードのそれぞれのキャパシティ及びアドレスを示している可能性がある。すなわち、ローカルエンドノード200にとって複数の再接続先候補が存在する可能性がある。その場合、エンドノード選択部171は、ローカルエンドノード200を再接続させる候補をも選択する。
(Reconnection manager 170)
The
例として、オーバーレイノード100−Aの送出トラヒック残余量が60Mbpsであり、オーバーレイノード100−Aよりも上流のオーバーレイノード100−Xの送出トラヒック残余量が30Mbpsである場合を考える。この場合に、再接続管理部170は例えば、ローカルエンドノード200−By(受信トラヒック量=30Mbps)に対してオーバーレイノード100−Xへの再接続を指示し、ローカルエンドノード200−Bz(受信トラヒック量=30Mbps)に対してオーバーレイノード100−Aへの再接続を指示する。その後、上流キャパシティ再算出部173が、上流ノードのキャパシティを再算出する。
As an example, let us consider a case in which the transmission traffic residual amount of the overlay node 100-A is 60 Mbps, and the transmission traffic residual amount of the overlay node 100-X upstream of the overlay node 100-A is 30 Mbps. In this case, for example, the
尚、エンドノード選択部171は、再接続先候補をランダムに選択してもよいし、キャパシティの多いものから優先的に選択してもよい。あるいは、エンドノード選択部171は、基点ノードにより近い再接続先候補を選択してもよい。これは、各オーバーレイノード100が、キャパシティ通知メッセージCMSG−DNに、自ノードの基点ノードからのホップ数を記載しておくことで実現することができる。基点ノードからのホップ数は、例えば次のようにして把握することができる。基点ノードは、マルチキャストツリーにデータを送信する際、当該データに転送回数記録用のフィールドを設けておく。各オーバーレイノード100は、データ転送時に当該フィールドの値を1増加させる。各オーバーレイノード100は、受け取ったデータの当該フィールドを参照することによって、基点ノードからのホップ数を把握することができる。
Note that the end
本実施の形態によれば、第1の実施の形態と同じ効果が得られる。更に、エンドノード200を基点ノードにより近いオーバーレイノード100に再接続させやすくなる。また、エンドノード200を基点ノードにより近いオーバーレイノード100に再接続させるために要する処理時間が短縮される。
According to the present embodiment, the same effect as in the first embodiment can be obtained. Furthermore, it becomes easy to reconnect the
3.第3の実施の形態
既出の図11で示された例において、オーバーレイノード100−Bは、マルチキャストツリーの分岐点に位置し、2つの次ホップノード100−C、100−Eを有していた。この場合、オーバーレイノード100−Bは、キャパシティを2つの次ホップノード100−C、100−Eで分割し、2つのキャパシティ通知メッセージCMSG−DN−C、CMSG−DN−Eを作成する。ここで、キャパシティの分割比率は任意であってもよいが、もしオーバーレイノード100−Bがそれぞれの分岐先のエンドノード200の状態を認識していれば、それぞれの分岐先に対してより適切な量のキャパシティを分配することが可能となる。そこで、第3の実施の形態では、次ホップ以遠のエンドノード200の状態(台数やリソース使用量)を考慮にいれて、キャパシティの分割が実施される。
3. Third Embodiment In the example shown in FIG. 11, the overlay node 100-B is located at the branch point of the multicast tree and has two next-hop nodes 100-C and 100-E. . In this case, the overlay node 100-B divides the capacity by the two next hop nodes 100-C and 100-E, and creates two capacity notification messages CMSG-DN-C and CMSG-DN-E. Here, the capacity division ratio may be arbitrary. However, if the overlay node 100-B recognizes the state of each branch
図13は、第3の実施の形態に係るオーバーレイノード100の構成を示すブロック図である。第1の実施の形態と比較して、本実施の形態に係るエンドノード管理部150は、更に通知メッセージ処理部152を備えている。第1の実施の形態と重複する説明は適宜省略される。
FIG. 13 is a block diagram illustrating a configuration of the
(通知メッセージ処理部152)
上述の通り、ローカルエンドノード監視部151は、自ノードにつながるローカルエンドノード200の状態を監視し、そのローカルエンドノード200の状態をエンドノード管理情報ENDに記載する。ローカルエンドノード200の状態は、ローカルエンドノード200の台数やキャパシティ消費量(送出/受信トラヒック量など)を含む。
(Notification message processing unit 152)
As described above, the local end
通知メッセージ処理部152は、エンドノード管理情報ENDに記載された情報を示す「エンドノード状態通知メッセージEMSG」を作成する。そして、通知メッセージ処理部152は、エンドノード状態通知メッセージEMSGを、前ホップノードへ送信する。あるオーバーレイノード100から上流に向けて送信されるエンドノード状態通知メッセージEMSGは、「エンドノード状態通知メッセージEMSG−UP」と参照される場合がある。
The notification
また、通知メッセージ処理部152は、次ホップノードから送られてきたエンドノード状態通知メッセージEMSGを受け取る。下流側から受け取るエンドノード状態通知メッセージEMSGは、「エンドノード状態通知メッセージEMSG−DN」と参照される場合がある。エンドノード状態通知メッセージEMSG−DNを受け取ると、通知メッセージ処理部152は、そのエンドノード状態通知メッセージEMSG−DNに含まれる情報をエンドノード管理情報ENDに追記する。その結果、エンドノード管理情報ENDには、自ノードにつながるローカルエンドノードだけでなく、下流ノードにつながるエンドノード(リモートエンドノード)の状態も記載されることになる。尚、このようなエンドノード管理情報ENDの更新は、分岐点に位置するオーバーレイノード100だけで行われてもよい。
Further, the notification
その後、通知メッセージ処理部152は、エンドノード状態通知メッセージEMSGを更新して、それを更に上流の前ホップノードへ送信する。すなわち、次ホップノードからエンドノード状態通知メッセージEMSG−DNを受け取ると、通知メッセージ処理部152は、それに自身のローカルエンドノード200の状態を追加した後、エンドノード状態通知メッセージEMSG−UPとして前ホップノードへ更に転送する。このようにして、エンドノード200の状態が累積的に上流方向に通知される。
Thereafter, the notification
次に、図14及び図15を参照して、本実施の形態に係る処理の一例を説明する。 Next, an example of processing according to the present embodiment will be described with reference to FIGS. 14 and 15.
図14には、あるマルチキャストグループのマルチキャストツリーの一部が示されている。オーバーレイノード100−Aは、オーバーレイノード100−Bの前ホップノードである。オーバーレイノード100−C、100−Eは共に、オーバーレイノード100−Bの次ホップノードである。オーバーレイノード100−Dは、オーバーレイノード100−Cの次ホップノードである。エンドノード200−A1は、オーバーレイノード100−Aのローカルエンドノードである。エンドノード200−B1、200−B2は、オーバーレイノード100−Bのローカルエンドノードである。エンドノード200−C1、200−C2、200−C3は、オーバーレイノード100−Cのローカルエンドノードである。エンドノード200−D1、200−D2は、オーバーレイノード100−Dのローカルエンドノードである。エンドノード200−E1は、オーバーレイノード100−Eのローカルエンドノードである。図15には、各エンドノード200への送出トラヒック量、及び各エンドノード200からの受信トラヒック量が示されている。
FIG. 14 shows a part of a multicast tree of a certain multicast group. The overlay node 100-A is a previous hop node of the overlay node 100-B. Both overlay nodes 100-C and 100-E are next hop nodes of overlay node 100-B. The overlay node 100-D is the next hop node of the overlay node 100-C. The end node 200-A1 is a local end node of the overlay node 100-A. The end nodes 200-B1 and 200-B2 are local end nodes of the overlay node 100-B. The end nodes 200-C1, 200-C2, and 200-C3 are local end nodes of the overlay node 100-C. The end nodes 200-D1 and 200-D2 are local end nodes of the overlay node 100-D. The end node 200-E1 is a local end node of the overlay node 100-E. FIG. 15 shows the amount of traffic sent to each
例えば、図14中のオーバーレイノード100−Cが作成するエンドノード状態通知メッセージEMSG−UPには、次のような情報が記載される。 For example, the following information is described in the end node state notification message EMSG-UP created by the overlay node 100-C in FIG.
<例1>オーバーレイノード毎に状態を記載
[オーバーレイノード100−C]
(A)エンドノードの台数
送信エンドノード=2台、受信エンドノード=1台
(B)各エンドノードへの送出トラヒック量、各エンドノードからの受信トラヒック量
200−C1:送出=10Mbps、受信= 0Mbps
200−C2:送出= 0Mbps、受信=15Mbps
200−C3:送出= 0Mbps、受信=20Mbps
(C)合計トラヒック量(送出、受信)
合計送出トラヒック量=10Mbps
合計受信トラヒック量=35Mbps
[オーバーレイノード100−D]
(A)エンドノードの台数
送信エンドノード=1台、受信エンドノード=1台
(B)各エンドノードへの送出トラヒック量、各エンドノードからの受信トラヒック量
200−D1:送出=15Mbps、受信= 0Mbps
200−D2:送出= 0Mbps、受信=10Mbps
(C)合計トラヒック量(送出、受信)
合計送出トラヒック量=15Mbps
合計受信トラヒック量=10Mbps
<Example 1> State is described for each overlay node [Overlay node 100-C]
(A) Number of end nodes Transmission end node = 2 units, reception end node = 1 unit (B) Transmission traffic amount to each end node, reception traffic amount from each end node 200-C1: transmission = 10 Mbps, reception = 0Mbps
200-C2: Transmission = 0 Mbps, Reception = 15 Mbps
200-C3: transmission = 0 Mbps, reception = 20 Mbps
(C) Total traffic volume (sending and receiving)
Total outgoing traffic = 10 Mbps
Total received traffic = 35 Mbps
[Overlay node 100-D]
(A) Number of end nodes Transmission end node = 1 unit, reception end node = 1 unit (B) Transmission traffic amount to each end node, reception traffic amount from each end node 200-D1: transmission = 15 Mbps, reception = 0Mbps
200-D2: transmission = 0 Mbps, reception = 10 Mbps
(C) Total traffic volume (sending and receiving)
Total outgoing traffic = 15 Mbps
Total received traffic = 10 Mbps
<例2>合算して記載
(A)エンドノードの台数
送信エンドノード=3台、受信エンドノード=2台
(C)合計トラヒック量(送出、受信)
合計送出トラヒック量=25Mbps
合計受信トラヒック量=45Mbps
<Example 2> Summed and described (A) Number of end nodes Transmission end node = 3 units, reception end node = 2 units (C) Total traffic volume (transmission and reception)
Total outgoing traffic = 25 Mbps
Total received traffic = 45 Mbps
また、図14中のオーバーレイノード100−Eが作成するエンドノード状態通知メッセージEMSG−UPには、次のような情報が記載される。
[オーバーレイノード100−E]
(A)エンドノードの台数
送信エンドノード=1台、受信エンドノード=1台
(B)各エンドノードへの送出トラヒック量、各エンドノードからの受信トラヒック量
200−E1:送出=10Mbps、受信=10Mbps
(C)合計トラヒック量(送出、受信)
合計送出トラヒック量=10Mbps
合計受信トラヒック量=10Mbps
Further, the following information is described in the end node state notification message EMSG-UP created by the overlay node 100-E in FIG.
[Overlay node 100-E]
(A) Number of end nodes Transmission end node = 1 unit, reception end node = 1 unit (B) Transmission traffic amount to each end node, reception traffic amount from each end node 200-E1: transmission = 10 Mbps, reception = 10Mbps
(C) Total traffic volume (sending and receiving)
Total outgoing traffic = 10 Mbps
Total received traffic = 10 Mbps
オーバーレイノード100−Bは、2つの次ホップノード100−C、100−Eのそれぞれから、上述のようなエンドノード状態通知メッセージEMSG−DNを受け取る。そして、オーバーレイノード100−Bのエンドノード管理部150は、受け取ったエンドノード状態通知メッセージEMSG−DNを参照して、次ホップノード以遠のキャパシティ消費量の合計を算出する。次ホップノード以遠のキャパシティ消費量の合計は、以下「後続キャパシティ消費量」と参照される。エンドノード管理部150は、次ホップノード毎に後続キャパシティ消費量を算出し、算出結果をエンドノード管理情報ENDに記録する。本例の場合、次ホップノード100−C、100−Eのそれぞれに関する後続キャパシティ消費量は次の通りである。
The overlay node 100-B receives the end node state notification message EMSG-DN as described above from each of the two next hop nodes 100-C and 100-E. Then, the end
[次ホップノード100−C]
後続キャパシティ消費量:送出=25Mbps、受信=45Mbps
[次ホップノード100−E]
後続キャパシティ消費量:送出=10Mbps、受信=10Mbps
[Next hop node 100-C]
Subsequent capacity consumption: transmission = 25 Mbps, reception = 45 Mbps
[Next hop node 100-E]
Subsequent capacity consumption: sending = 10 Mbps, receiving = 10 Mbps
この場合において、オーバーレイノード100−Bにおけるキャパシティ通知メッセージCMSG−DNの作成は、次の通りである。オーバーレイノード100−Bのキャパシティ管理部160(キャパシティ按分部162)は、2つの次ホップノード100−C、100−Eの間でキャパシティを分割する。このとき、キャパシティ管理部160は、エンドノード管理情報ENDを参照し、それぞれの次ホップノードに関する後続キャパシティ消費量に基づいてキャパシティを分割する。例えば、キャパシティ管理部160は、それぞれの後続キャパシティ消費量の比率を、キャパシティの分割比率とする。これにより、後続キャパシティ消費量に応じた適切な量のキャパシティが、各々の次ホップノードに割り当てられることになる。
In this case, the creation of the capacity notification message CMSG-DN in the overlay node 100-B is as follows. The capacity management unit 160 (capacity apportioning unit 162) of the overlay node 100-B divides the capacity between the two next hop nodes 100-C and 100-E. At this time, the
あるいは、ある次ホップノードに後続キャパシティ消費量を上回る過剰なキャパシティが割り当てられる一方、他の次ホップノードに後続キャパシティ消費量を下回るキャパシティしか割り当てられないといった不均衡がなくなるようなキャパシティ分割も可能である。典型的には、全ての次ホップノードの後続キャパシティ消費量の合計が、割り当て可能なキャパシティを上回っている場合に、そのような不均衡が発生し得る。その場合、キャパシティ管理部160は、キャパシティの分割量(割当量)が後続キャパシティ消費量を上回るような次ホップノードが無くなるように、キャパシティの分割を行う。これは、不必要に大きなキャパシティの割り当てを排除し、無駄をできるだけ削ることに相当する。その結果、上述のような不均衡が改善される。
Alternatively, a capacity that eliminates an imbalance in which one next hop node is allocated excess capacity that exceeds the subsequent capacity consumption, while another next hop node is allocated capacity that is less than the subsequent capacity consumption. City splitting is also possible. Typically, such an imbalance may occur when the sum of subsequent capacity consumption of all next hop nodes exceeds the allocatable capacity. In that case, the
例えば、図14及び図15で示された例において、オーバーレイノード100−Bの送出トラヒック残余量が30Mbpsである場合を考える。上述の通り、次ホップノード100−Cに関する後続キャパシティ消費量(送出)は25Mbpsであり、次ホップノード100−Eに関する後続キャパシティ消費量(送出)は10Mbpsである。従って、次ホップノード100−C側には25Mbps以下のキャパシティが割り当てられ、且つ、次ホップノード100−E側には10Mbps以下のキャパシティが割り当てられる。 For example, in the example shown in FIG. 14 and FIG. 15, a case is considered where the transmission traffic residual amount of the overlay node 100-B is 30 Mbps. As described above, the subsequent capacity consumption (sending) for the next hop node 100-C is 25 Mbps, and the subsequent capacity consumption (sending) for the next hop node 100-E is 10 Mbps. Accordingly, a capacity of 25 Mbps or less is allocated to the next hop node 100-C side, and a capacity of 10 Mbps or less is allocated to the next hop node 100-E side.
比較として、送出トラヒック残余量の30Mbpsが、次ホップノード100−C、100−Eで折半される場合を考える。この場合、次ホップノード100−Cには後続キャパシティ消費量(=25Mbps)を下回るキャパシティしか割り当てられないが、次ホップノード100−Eには後続キャパシティ消費量(=10Mbps)を上回る余剰なキャパシティが割り当てられる。これは、非効率的である。本実施の形態では、このような非効率が回避される。 As a comparison, let us consider a case in which the transmission traffic residual amount of 30 Mbps is divided by the next hop nodes 100-C and 100-E. In this case, the next hop node 100-C can only be allocated a capacity less than the subsequent capacity consumption (= 25 Mbps), but the next hop node 100-E has a surplus exceeding the subsequent capacity consumption (= 10 Mbps). Capacity is allocated. This is inefficient. In this embodiment, such inefficiency is avoided.
本実施の形態によれば、第1の実施の形態と同じ効果が得られる。更に、マルチキャストツリーの分岐点において、それぞれの分岐先に対してより適切な量のキャパシティを分配することが可能となる。非効率的なキャパシティ分配が防止されるため、エンドノードの再接続がより促進され、好適である。また、本実施の形態と第2の実施の形態とを組み合わせることも可能である。その場合、第2の実施の形態と同じ効果も得られる。 According to the present embodiment, the same effect as in the first embodiment can be obtained. Furthermore, a more appropriate amount of capacity can be distributed to each branch destination at the branch point of the multicast tree. Since inefficient capacity distribution is prevented, reconnection of end nodes is facilitated and preferable. It is also possible to combine the present embodiment and the second embodiment. In that case, the same effect as the second embodiment can be obtained.
4.第4の実施の形態
第4の実施の形態では、各エンドノード200に対して「優先度」が与えられる。そして、優先度の高いエンドノード200から優先的に再接続処理が実施される。
4). Fourth Embodiment In the fourth embodiment, “priority” is given to each
図16は、第4の実施の形態に係るオーバーレイノード100の構成を示すブロック図である。第1の実施の形態と比較して、エンドノード管理部150は更に通知メッセージ処理部152を備え、再接続管理部170は更に上流キャパシティ再算出部173を備えている。既出の実施の形態と重複する説明は適宜省略される。
FIG. 16 is a block diagram illustrating a configuration of the
上流キャパシティ再算出部173は、第2の実施の形態で説明されたものと同じである。つまり、上流キャパシティ再算出部173は、再接続指示処理の後の上流ノードの残留キャパシティを算出し、残留キャパシティ通知メッセージCMSG−UP’をキャパシティ管理部160に送る。
The upstream
通知メッセージ処理部152は、第3の実施の形態で説明されたものと同様であり、エンドノード状態通知メッセージEMSGの処理を行う。但し、本実施の形態では、エンドノード状態通知メッセージEMSGは、エンドノード200の台数やキャパシティ消費量(送出/受信トラヒック量など)に加えて、エンドノード200の「優先度」も含んでいる。また、通知メッセージ処理部152は、エンドノード状態通知メッセージEMSG−DNを参照して、優先度毎に後続キャパシティ消費量を算出し、算出結果をエンドノード管理情報ENDに記録する。
The notification
次に、図17〜図19を参照して、本実施の形態に係る処理の一例を説明する。 Next, an example of processing according to the present embodiment will be described with reference to FIGS.
図17には、あるマルチキャストグループのマルチキャストツリーの一部が示されている。図17において、オーバーレイノード100−A、100−B、100−C、100−D、100−Eが上流から下流に向かって順番につながっている。エンドノード200−C1、200−C2、200−C3は、オーバーレイノード100−Cのローカルエンドノードである。エンドノード200−D1、200−D2、200−D3は、オーバーレイノード100−Dのローカルエンドノードである。エンドノード200−E1、200−E2、200−E3は、オーバーレイノード100−Eのローカルエンドノードである。 FIG. 17 shows a part of a multicast tree of a certain multicast group. In FIG. 17, overlay nodes 100-A, 100-B, 100-C, 100-D, and 100-E are connected in order from upstream to downstream. The end nodes 200-C1, 200-C2, and 200-C3 are local end nodes of the overlay node 100-C. The end nodes 200-D1, 200-D2, and 200-D3 are local end nodes of the overlay node 100-D. The end nodes 200-E1, 200-E2, and 200-E3 are local end nodes of the overlay node 100-E.
図18には、各エンドノード200への送出トラヒック量、及び各エンドノード200の優先度が示されている。図18に示されるように、各エンドノード200には、三段階の優先度“1”〜“3”のうちいずれかが割り当てられている。ここで、優先度“1”が最も高く、優先度“3”が最も低い。
FIG. 18 shows the amount of traffic sent to each
図19は、オーバーレイノード100−Cのエンドノード管理情報ENDが示す後続キャパシティ消費量を示している。オーバーレイノード100−Cにおける後続キャパシティ消費量は、下流側のオーバーレイノード100−D、100−Eに接続された全エンドノード200のキャパシティ消費量の合計である。図19に示されるように、オーバーレイノード100−Cの通知メッセージ処理部152は、優先度毎に後続キャパシティ消費量を算出している。
FIG. 19 shows the subsequent capacity consumption indicated by the end node management information END of the overlay node 100-C. The subsequent capacity consumption in the overlay node 100-C is the sum of the capacity consumption of all the
再接続指示処理は、「優先度」の順番で行われる。以下、オーバーレイノード100−Cの再接続管理部170がキャパシティ通知メッセージCMSG−UPを受け取った際の再接続指示処理を説明する。
The reconnection instruction process is performed in the order of “priority”. Hereinafter, the reconnection instruction processing when the
オーバーレイノード100−Cが受け取るキャパシティ通知メッセージCMSG−UPが、「オーバーレイノード100−Aの送出トラヒック残余量=30Mbps、オーバーレイノード100−Bの送出トラヒック残余量=50Mbps」を示しているとする。キャパシティ通知メッセージCMSG−UPを受け取ると、再接続管理部170は、それぞれの送出トラヒック残余量(キャパシティ)を、一時キャパシティTC−A、TC−Bに代入する。その結果、TC−A=30Mbps、TC−B=50Mbpsとなる。
It is assumed that the capacity notification message CMSG-UP received by the overlay node 100-C indicates “transmission remaining traffic amount of overlay node 100-A = 30 Mbps, remaining transmission traffic amount of overlay node 100-B = 50 Mbps”. When receiving the capacity notification message CMSG-UP, the
<優先度=1>
まず、最高優先度“1”に関して再接続指示処理が実施される。再接続管理部170は、エンドノード管理情報ENDを参照して、優先度“1”のローカルエンドノード200−C1のキャパシティ消費量(=20Mbps)と後続キャパシティ消費量(=15Mbps)の合算値を算出する。そして、再接続管理部170は、一時キャパシティから当該合算値を差し引く。これは、優先度“1”のエンドノード200に関して、ローカルエンドノード200−C1だけでなく、次ホップノード以遠に位置するリモートエンドノード200−D1、200−E1に割り当てられるキャパシティを予め確保しておくことに相当する。
<Priority = 1>
First, a reconnection instruction process is performed for the highest priority “1”. The
複数の一時キャパシティが用意されている場合は、自ノードからより遠いオーバーレイノード100(すなわち、より基点ノードに近いオーバーレイノード100)の一時キャパシティから優先的に当該合算値を差し引くことが好適である。本例では、オーバーレイノード100−Aがより上流側に位置するので、一時キャパシティTC−A(=30Mbps)から当該合算値(=35Mbps)が差し引かれる。ここで、一時キャパシティTC−Aが5Mbps不足しているため、その分は次の一時キャパシティTC−B(=50Mbps)から差し引かれる。その結果、TC−A=−5Mbps、TC−B=45Mbpsとなる。
When a plurality of temporary capacities are prepared, it is preferable to preferentially subtract the sum from the temporary capacity of the
その後、再接続管理部170は、既出の実施の形態と同様の手法で、優先度“1”に関する再接続指示処理を実行する。すなわち、再接続管理部170は、優先度“1”のローカルエンドノード200−C1を選択し、当該ローカルエンドノード200−C1に対して上流への再接続を指示する。再接続先は、一時キャパシティから除算が行われたオーバーレイノード100−Aである。
Thereafter, the
<優先度=2>
優先度が1段階落とされ、“2”に設定される。再接続管理部170は、エンドノード管理情報ENDを参照して、優先度“2”のローカルエンドノード200−C2のキャパシティ消費量(=10Mbps)と後続キャパシティ消費量(=15Mbps)の合算値を算出する。一時キャパシティTC−Aは既に使い尽くされているため、再接続管理部170は、一時キャパシティTC−Bから当該合算値(=25Mbps)を差し引く。その結果、TC−A=−5Mbps、TC−B=20Mbpsとなる。その後、再接続管理部170は、優先度“2”のローカルエンドノード200−C2を選択し、当該ローカルエンドノード200−C2に対してオーバーレイノード100−Bへの再接続を指示する。
<Priority = 2>
The priority is lowered by one level and set to “2”. The
<優先度=3>
優先度が1段階落とされ、“3”に設定される。再接続管理部170は、エンドノード管理情報ENDを参照して、優先度“3”のローカルエンドノード200−C3のキャパシティ消費量(=10Mbps)と後続キャパシティ消費量(=15Mbps)の合算値を算出する。再接続管理部170は、一時キャパシティTC−Bから当該合算値(=25Mbps)を差し引く。その結果、TC−A=−5Mbps、TC−B=−5Mbpsとなる。その後、再接続管理部170は、優先度“3”のローカルエンドノード200−C3を選択し、当該ローカルエンドノード200−C3に対してオーバーレイノード100−Bへの再接続を指示する。
<Priority = 3>
The priority is dropped by one level and set to “3”. The
このようにして、優先度“1”のローカルエンドノード200−C1はオーバーレイノード100−Aに再接続され、優先度“2”、“3”のローカルエンドノード200−C2、C3はオーバーレイノード100−Bに再接続される。すなわち、優先度の高いエンドノード200が、より基点ノードに近いオーバーレイノード100に再接続されることになる。
In this way, the local end node 200-C1 having the priority “1” is reconnected to the overlay node 100-A, and the local end nodes 200-C2 and C3 having the priorities “2” and “3” are reconnected to the
再接続指示処理の後、上流キャパシティ再算出部173は、上流ノードの残留キャパシティを算出する。本例では、オーバーレイノード100−Aの残留キャパシティは、10Mbps(=30Mbps−20Mbps)であり、オーバーレイノード100−Bの残留キャパシティは、30Mbps(=50Mbps−10Mbps−10Mbps)である。このように、オーバーレイノード100−Aのキャパシティは未だ残っている。よって、オーバーレイノード100−Aのキャパシティを、次ホップノード100−Dにおける再接続指示処理で使用することが可能である。上流キャパシティ再算出部173は、それら残留キャパシティを示す残留キャパシティ通知メッセージCMSG−UP’をキャパシティ管理部160に送り、キャパシティ管理部160は、キャパシティ通知メッセージCMSG−DNを次ホップノード100−Dへ送信する。
After the reconnection instruction process, the upstream
オーバーレイノード100−Dでの再接続指示処理の結果、優先度“1”のローカルエンドノード200−D1(10Mbps)は、未だ余裕のあるオーバーレイノード100−Aに再接続されることになる。これは、先行処理において、優先度の高いエンドノード200−D1に割り当てられるキャパシティが予め確保されたからである。このように、本実施の形態によれば、優先度の高いエンドノード200を優先的に上流側に再接続させることが可能である。
As a result of the reconnection instruction processing in the overlay node 100-D, the local end node 200-D1 (10 Mbps) having the priority “1” is reconnected to the overlay node 100-A that still has a margin. This is because the capacity allocated to the end node 200-D1 having a high priority is secured in advance in the preceding process. Thus, according to the present embodiment, it is possible to reconnect the
本実施の形態によれば、既出の実施の形態と同じ効果が得られる。更に、各エンドノード200に優先度を割り当てることによって、所望のエンドノード200を優先的に上流側に再接続させることが可能となる。
According to the present embodiment, the same effect as the above-described embodiment can be obtained. Furthermore, by assigning a priority to each
以上、本発明の実施の形態が添付の図面を参照することにより説明された。但し、本発明は、上述の実施の形態に限定されず、要旨を逸脱しない範囲で当業者により適宜変更され得る。 The embodiments of the present invention have been described above with reference to the accompanying drawings. However, the present invention is not limited to the above-described embodiments, and can be appropriately changed by those skilled in the art without departing from the scope of the invention.
100 オーバーレイノード
100−SE 送信者エッジノード
100−RP ランデブーノード
110 記憶部
120 通信部
130 参加要求転送部
140 トラヒック転送部
150 エンドノード管理部
151 ローカルエンドノード監視部
152 通知メッセージ処理部
160 キャパシティ管理部
161 キャパシティ算出部
162 キャパシティ按分部
163 通知メッセージ生成部
170 再接続管理部
171 エンドノード選択部
172 指示部
173 上流キャパシティ再算出部
200 エンドノード
200−S 送信者エンドノード
210 参加要求送信部
220 トラヒック送受信部
230 再接続処理部
RTN マルチキャストルーティングテーブル
TFC トラヒック情報
END エンドノード管理情報
CMSG キャパシティ通知メッセージ
RMSG 再接続指示メッセージ
RREQ 再接続要求
EMSG エンドノード状態通知メッセージ
100 overlay node 100-SE sender edge node 100-
Claims (10)
前記オーバーレイネットワーク上にはマルチキャストツリーが構築され、
前記オーバーレイネットワークにおいて、マルチキャストグループへの参加要求の転送方向が上流方向と定義され、前記上流方向の逆方向が下流方向と定義され、
前記マルチキャストツリーにおいて、下流側に隣接するノードは次ホップノードであり、上流側に隣接するノードは前ホップノードであり、
あるオーバーレイノードのキャパシティは、前記あるオーバーレイノードに追加的に接続され得るエンドノードの許容数に相当するパラメータであり、
前記オーバーレイノードは、
自ノードの前記キャパシティを算出し、前記自ノードの前記キャパシティ及びアドレスを示すキャパシティ通知メッセージを前記次ホップノードに送信するキャパシティ管理部と、
上流側から受け取る前記キャパシティ通知メッセージに応答して、再接続指示処理を行う再接続管理部と
を備え、
上流側から受け取る前記キャパシティ通知メッセージで示される前記キャパシティ及び前記アドレスは、それぞれ、通知キャパシティ及び上流ノードアドレスであり、
前記再接続指示処理において、
前記再接続管理部は、前記通知キャパシティを参照して、前記自ノードに現在接続されているローカルエンドノードから前記許容数以内のエンドノードを選択し、
前記再接続管理部は、前記選択されたエンドノードに対して、前記上流ノードアドレスで指定されるオーバーレイノードである上流ノードへ再接続するように指示する
オーバーレイノード。 An overlay node constituting an overlay network,
A multicast tree is constructed on the overlay network,
In the overlay network, a transfer direction of a request to join a multicast group is defined as an upstream direction, and a reverse direction of the upstream direction is defined as a downstream direction,
In the multicast tree, a node adjacent to the downstream side is a next hop node, a node adjacent to the upstream side is a previous hop node,
The capacity of an overlay node is a parameter corresponding to the allowable number of end nodes that can be additionally connected to the overlay node,
The overlay node is
A capacity management unit that calculates the capacity of the own node and transmits a capacity notification message indicating the capacity and address of the own node to the next hop node;
A reconnection management unit for performing reconnection instruction processing in response to the capacity notification message received from the upstream side,
The capacity and the address indicated in the capacity notification message received from the upstream side are the notification capacity and the upstream node address, respectively.
In the reconnection instruction process,
The reconnection manager refers to the notification capacity, selects an end node within the allowable number from local end nodes currently connected to the own node, and
The reconnection management unit instructs the selected end node to reconnect to an upstream node that is an overlay node specified by the upstream node address.
前記再接続指示処理の後、前記再接続管理部は、前記上流ノードの前記キャパシティを再算出し、
前記キャパシティ管理部によって送信される前記キャパシティ通知メッセージは、前記自ノードの前記キャパシティ及び前記アドレスに加えて、前記上流ノードの前記キャパシティ及び前記上流ノードアドレスを示す
オーバーレイノード。 The overlay node according to claim 1, comprising:
After the reconnection instruction process, the reconnection management unit recalculates the capacity of the upstream node,
The capacity notification message transmitted by the capacity management unit indicates the capacity and the upstream node address of the upstream node in addition to the capacity and the address of the own node.
前記次ホップノードが複数存在する場合、前記キャパシティ管理部は、前記キャパシティを前記複数の次ホップノード間で分割し、前記複数の次ホップノード毎に前記キャパシティ通知メッセージを送信する
オーバーレイノード。 The overlay node according to claim 1 or 2, wherein
When there are a plurality of the next hop nodes, the capacity management unit divides the capacity among the plurality of next hop nodes, and transmits the capacity notification message for each of the plurality of next hop nodes. .
エンドノード管理部を更に備え、
あるエンドノードのキャパシティ消費量は、前記あるエンドノードとの通信によって消費される前記キャパシティの量であり、
前記エンドノード管理部は、前記ローカルエンドノードの前記キャパシティ消費量を監視し、
前記再接続管理部は、前記通知キャパシティと前記算出されたキャパシティ消費量とに基づいて、前記許容数以内のエンドノードを選択する
オーバーレイノード。 An overlay node according to any one of claims 1 to 3,
An end node management unit;
The capacity consumption of a certain end node is the amount of the capacity consumed by communication with the certain end node,
The end node management unit monitors the capacity consumption of the local end node,
The reconnection management unit selects an end node within the allowable number based on the notification capacity and the calculated capacity consumption overlay node.
前記エンドノード管理部は、前記ローカルエンドノードの前記キャパシティ消費量を示すエンドノード状態通知メッセージを前記前ホップノードに送信し、
下流側から前記エンドノード状態通知メッセージを受け取った場合、前記エンドノード管理部は、前記エンドノード状態通知メッセージに前記ローカルエンドノードの前記キャパシティ消費量を追加した後に、前記エンドノード状態通知メッセージを更に前記前ホップノードに転送する
オーバーレイノード。 The overlay node according to claim 4, wherein
The end node management unit transmits an end node state notification message indicating the capacity consumption of the local end node to the previous hop node;
When receiving the end node status notification message from the downstream side, the end node management unit adds the capacity consumption of the local end node to the end node status notification message, and then transmits the end node status notification message. An overlay node that forwards to the previous hop node.
前記次ホップノード以遠のオーバーレイノードに接続された全エンドノードの前記キャパシティ消費量の合計は、後続キャパシティ消費量であり、
前記次ホップノードが複数存在する場合、前記エンドノード管理部は、下流側から受け取った前記エンドノード状態通知メッセージを参照して、前記複数の次ホップノード毎に前記後続キャパシティ消費量を算出し、
更に、前記キャパシティ管理部は、前記複数の次ホップノードの前記後続キャパシティ消費量に基づいて、前記キャパシティを前記複数の次ホップノード間で分割し、前記複数の次ホップノード毎に前記キャパシティ通知メッセージを送信する
オーバーレイノード。 The overlay node according to claim 5, comprising:
The sum of the capacity consumption of all end nodes connected to the overlay node beyond the next hop node is the subsequent capacity consumption.
When there are a plurality of the next hop nodes, the end node management unit calculates the subsequent capacity consumption for each of the plurality of next hop nodes with reference to the end node state notification message received from the downstream side. ,
Further, the capacity management unit divides the capacity among the plurality of next hop nodes based on the subsequent capacity consumption of the plurality of next hop nodes, and the capacity management unit An overlay node that sends capacity notification messages.
前記キャパシティ管理部は、前記キャパシティの分割量が前記後続キャパシティ消費量を上回る次ホップノードが無くなるように、前記キャパシティを前記複数の次ホップノード間で分割する
オーバーレイノード。 The overlay node according to claim 6, comprising:
The capacity management unit divides the capacity among the plurality of next hop nodes so that there is no next hop node in which the capacity division amount exceeds the subsequent capacity consumption amount.
前記エンドノード管理部は、前記キャパシティ消費量と共に前記ローカルエンドノードの優先度を前記エンドノード状態通知メッセージに記載し、
前記次ホップノード以遠のオーバーレイノードに接続された全エンドノードの前記キャパシティ消費量の合計は、後続キャパシティ消費量であり、
前記再接続管理部は、下流側から受け取った前記エンドノード状態通知メッセージを参照して、前記優先度毎に前記後続キャパシティ消費量を算出し、
前記再接続管理部は、前記優先度の順番で前記再接続指示処理を行い、
ある優先度の前記再接続指示処理において、前記再接続管理部は、前記次ホップノード以遠に位置する現在の優先度のエンドノードに割り当てられる前記キャパシティを予め確保する
オーバーレイノード。 The overlay node according to claim 5, comprising:
The end node management unit describes the priority of the local end node together with the capacity consumption in the end node status notification message,
The sum of the capacity consumption of all end nodes connected to the overlay node beyond the next hop node is the subsequent capacity consumption.
The reconnection management unit refers to the end node state notification message received from the downstream side, calculates the subsequent capacity consumption for each priority,
The reconnection management unit performs the reconnection instruction processing in the priority order,
In the reconnection instruction process with a certain priority, the reconnection management unit reserves in advance the capacity allocated to the end node with the current priority located beyond the next hop node.
マルチキャストグループへの参加要求の転送方向が上流方向と定義され、前記上流方向の逆方向が下流方向と定義され、
あるオーバーレイノードのキャパシティは、前記あるオーバーレイノードに追加的に接続され得るエンドノードの許容数に相当するパラメータであり、
前記マルチキャストツリーは、
第1オーバーレイノードと、
前記第1オーバーレイノードよりも下流側に位置する第2オーバーレイノードと
を備え、
前記第1オーバーレイノードは、前記第1オーバーレイノードの前記キャパシティを算出し、前記第1オーバーレイノードの前記キャパシティ及びアドレスを示すキャパシティ通知メッセージを下流に送信し、
前記第2オーバーレイノードは、前記キャパシティ通知メッセージで示される前記第1オーバーレイノードの前記キャパシティを参照して、前記第2オーバーレイノードに現在接続されているローカルエンドノードから前記許容数以内のエンドノードを選択し、前記第1オーバーレイノードの前記アドレスを示す再接続指示メッセージを前記選択されたエンドノードに送信し、
前記選択されたエンドノードは、前記再接続指示メッセージを受け取ると、前記第1オーバーレイノードに対して再接続要求を送信し、前記第2オーバーレイノードの代わりに前記第1オーバーレイノードを新たなエッジノードとする
オーバーレイネットワークシステム。 An overlay network system in which a multicast tree is constructed,
The transfer direction of the request to join the multicast group is defined as the upstream direction, the reverse direction of the upstream direction is defined as the downstream direction,
The capacity of an overlay node is a parameter corresponding to the allowable number of end nodes that can be additionally connected to the overlay node,
The multicast tree is
A first overlay node;
A second overlay node located downstream from the first overlay node, and
The first overlay node calculates the capacity of the first overlay node and sends a capacity notification message indicating the capacity and address of the first overlay node downstream;
The second overlay node refers to the capacity of the first overlay node indicated by the capacity notification message, and ends within the allowable number from a local end node currently connected to the second overlay node. Selecting a node, and sending a reconnection indication message indicating the address of the first overlay node to the selected end node;
When the selected end node receives the reconnection instruction message, the selected end node transmits a reconnection request to the first overlay node, and replaces the first overlay node with the new edge node instead of the second overlay node. And overlay network system.
マルチキャストグループへの参加要求の転送方向が上流方向と定義され、前記上流方向の逆方向が下流方向と定義され、
あるオーバーレイノードのキャパシティは、前記あるオーバーレイノードに追加的に接続され得るエンドノードの許容数に相当するパラメータであり、
前記マルチキャストツリーは、
第1オーバーレイノードと、
前記第1オーバーレイノードよりも下流側に位置する第2オーバーレイノードと
を備え、
前記再接続方法は、
前記第1オーバーレイノードにおいて、前記第1オーバーレイノードの前記キャパシティを算出するステップと、
前記第1オーバーレイノードの前記キャパシティ及びアドレスを示すキャパシティ通知メッセージを、前記第1オーバーレイノードから下流に送信するステップと、
前記第2オーバーレイノードにおいて、前記キャパシティ通知メッセージで示される前記第1オーバーレイノードの前記キャパシティに基づいて、前記第2オーバーレイノードに現在接続されているローカルエンドノードから前記許容数以内のエンドノードを選択するステップと、
前記第1オーバーレイノードの前記アドレスを示す再接続指示メッセージを、前記第2オーバーレイノードから前記選択されたエンドノードに送信するステップと、
前記再接続指示メッセージに応答して、前記選択されたエンドノードから前記第1オーバーレイノードに対して再接続要求を送信するステップと
を含む
再接続方法。 An end node reconnection method in a multicast tree constructed on an overlay network, comprising:
The transfer direction of the request to join the multicast group is defined as the upstream direction, the reverse direction of the upstream direction is defined as the downstream direction,
The capacity of an overlay node is a parameter corresponding to the allowable number of end nodes that can be additionally connected to the overlay node,
The multicast tree is
A first overlay node;
A second overlay node located downstream from the first overlay node, and
The reconnection method is:
Calculating the capacity of the first overlay node at the first overlay node;
Transmitting a capacity notification message indicating the capacity and address of the first overlay node downstream from the first overlay node;
In the second overlay node, based on the capacity of the first overlay node indicated in the capacity notification message, end nodes within the allowable number from a local end node currently connected to the second overlay node A step of selecting
Sending a reconnection indication message indicating the address of the first overlay node from the second overlay node to the selected end node;
Transmitting a reconnection request from the selected end node to the first overlay node in response to the reconnection instruction message.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009129512A JP2010278777A (en) | 2009-05-28 | 2009-05-28 | Overlay node and overlay network system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009129512A JP2010278777A (en) | 2009-05-28 | 2009-05-28 | Overlay node and overlay network system |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2010278777A true JP2010278777A (en) | 2010-12-09 |
Family
ID=43425318
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009129512A Withdrawn JP2010278777A (en) | 2009-05-28 | 2009-05-28 | Overlay node and overlay network system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2010278777A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20230099633A1 (en) * | 2021-09-30 | 2023-03-30 | Hewlett Packard Enterprise Development Lp | Multicast rendezvous point deployment in a virtual gateway of a distributed tunnel fabric |
-
2009
- 2009-05-28 JP JP2009129512A patent/JP2010278777A/en not_active Withdrawn
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20230099633A1 (en) * | 2021-09-30 | 2023-03-30 | Hewlett Packard Enterprise Development Lp | Multicast rendezvous point deployment in a virtual gateway of a distributed tunnel fabric |
US11855792B2 (en) * | 2021-09-30 | 2023-12-26 | Hewlett Packard Enterprise Development Lp | Multicast rendezvous point deployment in a virtual gateway of a distributed tunnel fabric |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101086111B1 (en) | Routing Protocol for Multicast in Mesh Networks | |
US9432876B2 (en) | Data forwarding in hybrid mesh networks | |
Liebeherr et al. | Application-layer multicasting with delaunay triangulation overlays | |
JP4328283B2 (en) | Packet delivery control method | |
US8081628B2 (en) | Multicast distribution tree establishment and maintenance in a wireless multi-hop relay communication system | |
WO2010002440A4 (en) | Network utilities in wireless mesh communications networks | |
US9014051B2 (en) | Updating multicast group information of a client device of a wireless mesh network | |
JP5602954B2 (en) | Peer-to-peer communication by source tree routing in AMI | |
Gerasimov et al. | A bandwidth-reservation mechanism for on-demand ad hoc path finding | |
EP1346586A2 (en) | Method and system to provide a routing protocol for wireless devices | |
KR20110061609A (en) | Improved wireless ad hoc communication technology | |
CN106330731B (en) | A kind of multicast tree method for building up of wireless self-networking | |
Wang et al. | A multi-path QoS multicast routing protocol with slot assignment for mobile ad hoc networks | |
KR20120071953A (en) | Method for transmitting routing information and routing apparatus in wireless network | |
EP1440529B1 (en) | System and method for information object routing in computer networks | |
CN101977159A (en) | Management method of bandwidth resources of narrow band network | |
JP2010278777A (en) | Overlay node and overlay network system | |
WO2009129669A1 (en) | Method and device for data routing and bandwidth reservation in small scale distributed networks | |
CN109922442B (en) | Address Resolution Method for Heterogeneous Networks of Wireless Multi-hop Networks and Fully Connected Networks | |
Bur et al. | Multicast routing for ad hoc networks with a quality of service scheme for session efficiency | |
US7870292B2 (en) | Network node and associated methodology of expanding a network topology through peer selection | |
JP5673268B2 (en) | Communication device and program | |
Alwadani et al. | Opportunistic native multicast under churn | |
US11457506B2 (en) | Adaptive multipath routing failure recovery in a wireless network | |
Park et al. | Distributed semantic service discovery for MANET |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20120807 |