(57)【要約】【課題】  経路計算の時間を従来方式と比較して短縮することによって、サービスを提供するために必要な時間を短縮し、ユーザに対し迅速にサービスを提供する。【解決手段】  経路の始点からネットワーク中の他のノードまでを結ぶメトリック最短経路を計算し、与えられた経路の終点のうち、計算された最短経路においてこの終点より下流に別の終点が存在しない終点あるいは別の終点が存在する終点を基点とするメトリック最短経路を計算し、経路の始点と終点とを頂点とし、該当する頂点間のメトリック最短経路が計算されていればこの最短経路に対応する枝が存在し、各枝のメトリックが対応する最短経路のメトリックとなるような仮想グラフを作成し、この仮想グラフ上で全ての頂点を通る経路のうち、最も経路全体のメトリックが小さくなるような経路を計算し、その計算結果に含まれる最短経路を最終結果とする。【選択図】  図１
2005198182.tif 000002
【特許請求の範囲】
【請求項１】
単一の始点と複数の終点とが与えられ、ネットワークを構成するリンクにリンクの選択指標となるメトリックが計算時点には付与されているネットワークにおける、与えられた始点と終点とを結ぶマルチキャスト転送経路計算方法であって、
経路の始点からネットワーク中の他のノードまでを結ぶメトリック最短経路を計算し、
与えられた経路の終点のうち、計算された最短経路においてこの終点より下流に別の終点が存在しない終点を基点とするメトリック最短経路を計算し、
経路の始点と終点とを頂点とし、該当する頂点間のメトリック最短経路が計算されていればこの最短経路に対応する枝が存在し、各枝のメトリックが対応する最短経路のメトリックとなるような仮想グラフを作成し、
この仮想グラフ上で全ての頂点を通る経路のうち、最も経路全体のメトリックが小さくなるような経路を計算し、その計算結果に含まれる最短経路を最終結果とする
ことを特徴とするマルチキャスト転送経路計算方法。
【請求項２】
単一の始点と複数の終点とが与えられ、ネットワークを構成するリンクにリンクの選択指標となるメトリックが計算時点には付与されているネットワークにおける、与えられた始点と終点とを結ぶマルチキャスト転送経路計算方法であって、
経路の始点からネットワーク中の他のノードまでを結ぶメトリック最短経路を計算し、
与えられた経路の終点のうち、計算された最短経路においてこの終点より下流に別の終点が存在する終点を基点とするメトリック最短経路を計算し、
経路の始点と終点とを頂点とし、該当する頂点間のメトリック最短経路が計算されていればこの最短経路に対応する枝が存在し、各枝のメトリックが対応する最短経路のメトリックとなるような仮想グラフを作成し、
この仮想グラフ上で全ての頂点を通る経路のうち、最も経路全体のメトリックが小さくなるような経路を計算し、その計算結果に含まれる最短経路を最終結果とする
ことを特徴とするマルチキャスト転送経路計算方法。
【請求項３】
単一の始点と複数の終点とが与えられ、ネットワークを構成するリンクにリンクの選択指標となるメトリックが計算時点には付与されているネットワークにおける、与えられた始点と終点とを結ぶマルチキャスト転送経路を計算する手段を備えたマルチキャスト転送経路計算装置であって、
前記計算する手段は、
経路の始点からネットワーク中の他のノードまでを結ぶメトリック最短経路を計算する手段と、
与えられた経路の終点のうち、計算された最短経路においてこの終点より下流に別の終点が存在しない終点を基点とするメトリック最短経路を計算する手段と、
経路の始点と終点とを頂点とし、該当する頂点間のメトリック最短経路が計算されていればこの最短経路に対応する枝が存在し、各枝のメトリックが対応する最短経路のメトリックとなるような仮想グラフを作成する手段と、
この仮想グラフ上で全ての頂点を通る経路のうち、最も経路全体のメトリックが小さくなるような経路を計算し、その計算結果に含まれる最短経路を最終結果とする手段と
を備えたことを特徴とするマルチキャスト転送経路計算装置。
【請求項４】
単一の始点と複数の終点とが与えられ、ネットワークを構成するリンクにリンクの選択指標となるメトリックが計算時点には付与されているネットワークにおける、与えられた始点と終点とを結ぶマルチキャスト転送経路を計算する手段を備えたマルチキャスト転送経路計算装置であって、
前記計算する手段は、
経路の始点からネットワーク中の他のノードまでを結ぶメトリック最短経路を計算する手段と、
与えられた経路の終点のうち、計算された最短経路においてこの終点より下流に別の終点が存在する終点を基点とするメトリック最短経路を計算する手段と、
経路の始点と終点とを頂点とし、該当する頂点間のメトリック最短経路が計算されていればこの最短経路に対応する枝が存在し、各枝のメトリックが対応する最短経路のメトリックとなるような仮想グラフを作成する手段と、
この仮想グラフ上で全ての頂点を通る経路のうち、最も経路全体のメトリックが小さくなるような経路を計算し、その計算結果に含まれる最短経路を最終結果とする手段と
を備えたことを特徴とするマルチキャスト転送経路計算装置。
【請求項５】
請求項３または４記載のマルチキャスト転送経路計算装置により前記最終結果として計算された最短経路を設定する手段を備えたことを特徴とするマルチキャスト転送経路設定装置。
【請求項６】
情報処理装置にインストールすることにより、その情報処理装置に、
単一の始点と複数の終点とが与えられ、ネットワークを構成するリンクにリンクの選択指標となるメトリックが計算時点には付与されているネットワークにおける、与えられた始点と終点とを結ぶマルチキャスト転送経路を計算する機能を備えたマルチキャスト転送経路計算装置に相応する機能を実現させるプログラムであって、
前記計算する機能として、
経路の始点からネットワーク中の他のノードまでを結ぶメトリック最短経路を計算する機能と、
与えられた経路の終点のうち、計算された最短経路においてこの終点より下流に別の終点が存在しない終点を基点とするメトリック最短経路を計算する機能と、
経路の始点と終点とを頂点とし、該当する頂点間のメトリック最短経路が計算されていればこの最短経路に対応する枝が存在し、各枝のメトリックが対応する最短経路のメトリックとなるような仮想グラフを作成する機能と、
この仮想グラフ上で全ての頂点を通る経路のうち、最も経路全体のメトリックが小さくなるような経路を計算し、その計算結果に含まれる最短経路を最終結果とする機能と
を実現させることを特徴とするプログラム。
【請求項７】
情報処理装置にインストールすることにより、その情報処理装置に、
単一の始点と複数の終点とが与えられ、ネットワークを構成するリンクにリンクの選択指標となるメトリックが計算時点には付与されているネットワークにおける、与えられた始点と終点とを結ぶマルチキャスト転送経路を計算する機能を備えたマルチキャスト転送経路計算装置に相応する機能を実現させるプログラムであって、
前記計算する機能として、
経路の始点からネットワーク中の他のノードまでを結ぶメトリック最短経路を計算する機能と、
与えられた経路の終点のうち、計算された最短経路においてこの終点より下流に別の終点が存在する終点を基点とするメトリック最短経路を計算する機能と、
経路の始点と終点とを頂点とし、該当する頂点間のメトリック最短経路が計算されていればこの最短経路に対応する枝が存在し、各枝のメトリックが対応する最短経路のメトリックとなるような仮想グラフを作成する機能と、
この仮想グラフ上で全ての頂点を通る経路のうち、最も経路全体のメトリックが小さくなるような経路を計算し、その計算結果に含まれる最短経路を最終結果とする機能と
を実現させることを特徴とするプログラム。
【請求項８】
情報処理装置にインストールすることにより、その情報処理装置に、
請求項３または４記載のマルチキャスト転送経路計算装置により前記最終結果として計算された最短経路を設定する機能を備えたマルチキャスト転送経路設定装置に相応する機能を実現させることを特徴とするプログラム。
【請求項９】
請求項６ないし８のいずれかに記載のプログラムが記録された前記情報処理装置読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータネットワーク上で、動画や音声を特定多数のユーザに配送するマルチキャスト転送に利用する。特に、マルチキャスト主転送経路（以下、主転送経路という）の障害対策に関する。
【背景技術】
【０００２】
コンピュータネットワーク上で、動画や音声を特定多数のユーザに配送するマルチキャスト通信が注目を集めている。この通信方式は、経路の始点と選択された１つ以上の終点とを結ぶ経路のうち、経路が分かれる部分において情報をコピーし、各終点へと情報を配送する。特定多数の終点へ始点と一対一で通信を行うユニキャスト通信を用いて情報を配送した場合に、終点の数だけ始点は情報を用意する必要がある。よって、マルチキャスト通信を用いることにより、ネットワーク内の情報量は減少する。
【０００３】
マルチキャスト通信では特定多数の終点をマルチキャストグループと呼ばれる管理単位で管理を行い、マルチキャストグループに対して１つの転送経路が設定される。この転送経路は始点からマルチキャストグループに属する全ての終点を接続するように設定される。また、あるマルチキャストグループへと転送される情報を取得したいユーザはマルチキャストグループに参加することで情報を取得する。このため、ユーザの参加状況に応じて転送経路は変化する。
【０００４】
マルチキャスト通信における転送経路は、リンクに与えられたメトリックと呼ばれる指標を用いて決定される。メトリックはネットワーク管理者のネットワーク設計方針に従い、決定される。経路計算を行うアルゴリズムも設計方式に従い選択される。多くの種類のアルゴリズムが存在し、代表的なものとしては経路の始点から終点までのメトリックの総和を最小にするアルゴリズムと経路を構成するリンクにつけられたメトリックの総和を最小にするアルゴリズムがある。
【０００５】
本発明は、後者のアルゴリズムに属する。このアルゴリズムは、２種類存在する。１つはネットワーク中の全ノードを通る経路のうち、経路の総メトリック量が最も小さい経路を探索するアルゴリズムであり、最小木探索アルゴリズムと呼ばれる。もう１つはネットワーク中の特定のノードを通る経路のうち、経路の総メトリック量が最も小さい経路を探索するアルゴリズムである。このようなアルゴリズムはシュタイナー木計算アルゴリズムと呼ばれ、このような経路はシュタイナー木と呼ばれる。
【０００６】
マルチキャスト経路計算には主にシュタイナー木計算アルゴリズムが使用される。最小木計算アルゴリズムは高速に経路計算を行うことが可能であるが、シュタイナー木計算アルゴリズムは有限時間内に解を出すことが非常に困難であることが証明されている。このため、有限時間内にシュタイナー木が実現する総メトリック値に近い値を実現するアルゴリズムが多く提案されている。近年、シュタイナー木計算アルゴリズムとして、例えば、非特許文献１または２に記載されているような従来方式が公開されている。
【０００７】
非特許文献１は、高速シュタイナー木計算アルゴリズムとして知られ、非特許文献２は、シュタイナー木計算アルゴリズムであるが、経路の始点から終点まで到達するのに必要とする遅延が制限されている経路を計算するアルゴリズムである。
【０００８】
経路の総メトリックの削減度という観点で両アルゴリズムを比較すると、非特許文献２のアルゴリズムは始点終点間の遅延制限を取り外すにつれ、非特許文献１のアルゴリズムより大きくなる。しかし、非特許文献２の方式は非常に計算時間が大きくなるため、経路計算など短時間で解を出すことを要求するアプリケーションに適用することは困難になる。ここで、非特許文献１のアルゴリズムに注目する。
【０００９】
非特許文献１で紹介されている方式の動作について概略を説明する。非特許文献１では、シュタイナー木を計算するために以下の手続きを実行する。
１．始点と全終点とを含んだノード集合Ｄを定義し、Ｄ中に存在するノード間を結ぶ経路のうち、総メトリックが最小の経路を探索する。
２．探索された経路を枝とし、Ｄ中のノードを点とする架空のメッシュ状のネットワークを構成する。枝のメトリックは１．で発見されたＤ中に存在するノード間を結ぶ経路の総メトリックとなる。
３．２．で構成されたネットワークに対し、最小木を探索する。前述のとおり、最小木計算アルゴリズムは高速に動作するため、この動作は有限時間内に終了する。
４．３．で選ばれた総メトリック最小経路に相当する実ネットワーク内の経路を計算結果とする。
【００１０】
この技術をネットワーク中の経路計算に利用することで、収容トラヒック量の増加などネットワーク管理者が定めた設計方針に従ってトラヒックの流れを決定することが可能となる。
【非特許文献１】L.Kou,G.Markowsky,andL.Berman,“A Fast Algorithm for Steiner Tree,”Acta Informatica,pp.141-145,1981.
【非特許文献２】Q.Zhu,他,“Asource-based algorithm for delay-constrained minimum-cost multicasting,”procin IEEE INFOCOM’95,vol.1,pp.377-385,1995
【発明の開示】
【発明が解決しようとする課題】
【００１１】
上記の非特許文献１で紹介されている技術では、以下のような問題がある。
【００１２】
非特許文献１で紹介されている技術は高速にシュタイナー木の近似解を計算するが、計算時間の削減度は改善の余地が存在する。非特許文献１のステップ１において、ノード集合Ｄに含まれる全ての始点と終点とを基点とする最短経路を計算していた。一般的に最短経路の特性として、ある最短経路に含まれる点から、その下流に位置する点までの最短経路は、前者の点を基点とする最短経路にも含まれるという特徴を持つ。
【００１３】
これより、ある最短経路が保持する情報を他の最短経路が持つ場合が存在する。これより、一部の始点または終点を基点とする最短経路の計算を省略した場合でも他の点が基点となる最短経路を計算することで同等の情報を得られるということがいえる。最短経路計算の一部を省略することは、計算時間の短縮に大きな効果が期待される。
【００１４】
本発明は計算時間の短縮のため、省略の対象となる最短経路計算を、経路の始点を基点とする最短経路中に含まれる経路の終点とする方式と、経路の末端に存在する終点とする方式とを提案する。
【課題を解決するための手段】
【００１５】
本発明の第一の観点は、単一の始点と複数の終点とが与えられ、ネットワークを構成するリンクにリンクの選択指標となるメトリックが計算時点には付与されているネットワークにおける、与えられた始点と終点とを結ぶマルチキャスト転送経路計算方法である。
【００１６】
ここで、本発明の特徴とするところは、経路の始点からネットワーク中の他のノードまでを結ぶメトリック最短経路を計算し、与えられた経路の終点のうち、計算された最短経路においてこの終点より下流に別の終点が存在しない終点を基点とするメトリック最短経路を計算し、経路の始点と終点とを頂点とし、該当する頂点間のメトリック最短経路が計算されていればこの最短経路に対応する枝が存在し、各枝のメトリックが対応する最短経路のメトリックとなるような仮想グラフを作成し、この仮想グラフ上で全ての頂点を通る経路のうち、最も経路全体のメトリックが小さくなるような経路を計算し、その計算結果に含まれる最短経路を最終結果とするところにある（請求項１）。
【００１７】
これにより、与えられた経路の終点のうち、計算された最短経路においてこの終点より下流に別の終点が存在しない終点を基点としてメトリック最短経路を計算する場合のマルチキャスト転送経路計算方法を実現することができる。
【００１８】
あるいは、本発明のマルチキャスト転送経路計算方法は、経路の始点からネットワーク中の他のノードまでを結ぶメトリック最短経路を計算し、与えられた経路の終点のうち、計算された最短経路においてこの終点より下流に別の終点が存在する終点を基点とするメトリック最短経路を計算し、経路の始点と終点とを頂点とし、該当する頂点間のメトリック最短経路が計算されていればこの最短経路に対応する枝が存在し、各枝のメトリックが対応する最短経路のメトリックとなるような仮想グラフを作成し、この仮想グラフ上で全ての頂点を通る経路のうち、最も経路全体のメトリックが小さくなるような経路を計算し、その計算結果に含まれる最短経路を最終結果とすることを特徴とする（請求項２）。
【００１９】
これにより、与えられた経路の終点のうち、計算された最短経路においてこの終点より下流に別の終点が存在する終点を基点としてメトリック最短経路を計算する場合のマルチキャスト転送経路計算方法を実現することができる。
【００２０】
本発明の第二の観点は、単一の始点と複数の終点とが与えられ、ネットワークを構成するリンクにリンクの選択指標となるメトリックが計算時点には付与されているネットワークにおける、与えられた始点と終点とを結ぶマルチキャスト転送経路を計算する手段を備えたマルチキャスト転送経路計算装置である。
【００２１】
ここで、本発明の特徴とするところは、前記計算する手段は、経路の始点からネットワーク中の他のノードまでを結ぶメトリック最短経路を計算する手段と、与えられた経路の終点のうち、計算された最短経路においてこの終点より下流に別の終点が存在しない終点を基点とするメトリック最短経路を計算する手段と、経路の始点と終点とを頂点とし、該当する頂点間のメトリック最短経路が計算されていればこの最短経路に対応する枝が存在し、各枝のメトリックが対応する最短経路のメトリックとなるような仮想グラフを作成する手段と、この仮想グラフ上で全ての頂点を通る経路のうち、最も経路全体のメトリックが小さくなるような経路を計算し、その計算結果に含まれる最短経路を最終結果とする手段とを備えたところにある（請求項３）。
【００２２】
これにより、与えられた経路の終点のうち、計算された最短経路においてこの終点より下流に別の終点が存在しない終点を基点としてメトリック最短経路を計算する場合のマルチキャスト転送経路計算装置を実現することができる。
【００２３】
あるいは、本発明のマルチキャスト転送経路計算装置は、前記計算する手段は、経路の始点からネットワーク中の他のノードまでを結ぶメトリック最短経路を計算する手段と、与えられた経路の終点のうち、計算された最短経路においてこの終点より下流に別の終点が存在する終点を基点とするメトリック最短経路を計算する手段と、経路の始点と終点とを頂点とし、該当する頂点間のメトリック最短経路が計算されていればこの最短経路に対応する枝が存在し、各枝のメトリックが対応する最短経路のメトリックとなるような仮想グラフを作成する手段と、この仮想グラフ上で全ての頂点を通る経路のうち、最も経路全体のメトリックが小さくなるような経路を計算し、その計算結果に含まれる最短経路を最終結果とする手段とを備えたことを特徴とする（請求項４）。
【００２４】
これにより、与えられた経路の終点のうち、計算された最短経路においてこの終点より下流に別の終点が存在する終点を基点としてメトリック最短経路を計算する場合のマルチキャスト転送経路計算方法を実現することができる。
【００２５】
本発明の第三の観点は、本発明のマルチキャスト転送経路計算装置により前記最終結果として計算された最短経路を設定する手段を備えたことを特徴とするマルチキャスト転送経路設定装置である（請求項５）。
【００２６】
本発明の第四の観点は、情報処理装置にインストールすることにより、その情報処理装置に、単一の始点と複数の終点とが与えられ、ネットワークを構成するリンクにリンクの選択指標となるメトリックが計算時点には付与されているネットワークにおける、与えられた始点と終点とを結ぶマルチキャスト転送経路を計算する機能を備えたマルチキャスト転送経路計算装置に相応する機能を実現させるプログラムである。
【００２７】
ここで、本発明の特徴とするところは、前記計算する機能として、経路の始点からネットワーク中の他のノードまでを結ぶメトリック最短経路を計算する機能と、与えられた経路の終点のうち、計算された最短経路においてこの終点より下流に別の終点が存在しない終点を基点とするメトリック最短経路を計算する機能と、経路の始点と終点とを頂点とし、該当する頂点間のメトリック最短経路が計算されていればこの最短経路に対応する枝が存在し、各枝のメトリックが対応する最短経路のメトリックとなるような仮想グラフを作成する機能と、この仮想グラフ上で全ての頂点を通る経路のうち、最も経路全体のメトリックが小さくなるような経路を計算し、その計算結果に含まれる最短経路を最終結果とする機能とを実現させるところにある（請求項６）。
【００２８】
あるいは、本発明のプログラムは、前記計算する機能として、経路の始点からネットワーク中の他のノードまでを結ぶメトリック最短経路を計算する機能と、与えられた経路の終点のうち、計算された最短経路においてこの終点より下流に別の終点が存在する終点を基点とするメトリック最短経路を計算する機能と、経路の始点と終点とを頂点とし、該当する頂点間のメトリック最短経路が計算されていればこの最短経路に対応する枝が存在し、各枝のメトリックが対応する最短経路のメトリックとなるような仮想グラフを作成する機能と、この仮想グラフ上で全ての頂点を通る経路のうち、最も経路全体のメトリックが小さくなるような経路を計算し、その計算結果に含まれる最短経路を最終結果とする機能とを実現させるところにある（請求項７）。
【００２９】
あるいは、本発明のプログラムは、情報処理装置にインストールすることにより、その情報処理装置に、本発明のマルチキャスト転送経路計算装置により前記最終結果として計算された最短経路を設定する機能を備えたマルチキャスト転送経路設定装置に相応する機能を実現させることを特徴とするプログラムである（請求項８）。
【００３０】
本発明の第五の観点は、本発明のプログラムが記録された前記情報処理装置読取可能な記録媒体である（請求項９）。本発明のプログラムは本発明の記録媒体に記録されることにより、前記情報処理装置は、この記録媒体を用いて本発明のプログラムをインストールすることができる。あるいは、本発明のプログラムを保持するサーバからネットワークを介して直接前記情報処理装置に本発明のプログラムをインストールすることもできる。
【００３１】
これにより、汎用の情報処理装置を用いて、短時間で、かつ高い精度を保持した、シュタイナー木の近似解を可能とし、経路計算の時間を従来方式と比較して短縮することによって、サービスを提供するために必要な時間を短縮することができ、ユーザに対し迅速にサービスを提供することが可能となるマルチキャスト転送経路計算装置またはマルチキャスト転送経路設定装置を実現することができる。
【発明の効果】
【００３２】
本発明によれば、短時間で、かつ高い精度を保持した、シュタイナー木の近似解を可能とする。また、経路計算の時間を従来方式と比較して短縮することによって、サービスを提供するために必要な時間を短縮することができる。これにより、ユーザに対し迅速にサービスを提供することが可能となる。
【発明を実施するための最良の形態】
【００３３】
以下、本発明の一実施形態によるマルチキャスト転送経路の計算を、図面を参照して説明する。
【００３４】
図１は本発明の概要を説明するための図である。本発明は、シュタイナー木計算アルゴリズムを用いて経路を計算する、マルチキャスト転送経路計算方法である。そして、当該マルチキャストネットワークは、マルチキャスト転送経路計算装置を含む複数のノードにより構成されている。
【００３５】
そして、ネットワーク内のマルチキャスト転送装置が、各リンクの残余帯域などのネットワーク計測情報をデータが流れる方向毎に収集し（１）、そしてマルチキャスト転送装置がマルチキャスト転送経路計算にネットワーク計測情報を通知する（２）。マルチキャスト転送経路計算装置に計算の依頼が他のノード、もしくはマルチキャスト転送経路計算装置と同一装置内に存在するマルチキャスト転送経路設定部からきたとき、マルチキャスト転送経路計算装置は収集したネットワーク内のトラヒック計測情報を基に経路を計算する（３）。
【００３６】
そして計算結果はマルチキャスト転送経路設定装置の経路設定モジュールに通知され（４）、当該計算結果を受信したマルチキャスト転送経路設定装置がデータのマルチキャスト転送経路を設定する（５）。
【００３７】
また、１つのノードが複数の上述の装置の機能を有している場合もある。
【００３８】
なお、上述のネットワーク計測情報を収集する機能においては、すでに提案されているＯＳＰＦ−ＴＥ(Open Shortest Path Fitst-Traffic
Engineering)やＩＳ−ＩＳ−ＴＥ(Intermediate system-Intermediate system-traffic
Engineering)などの隣接ノード間でのネットワーク計測情報を交換する機能が備わった経路計算プロトコルを拡張して用いることによりネットワーク計測情報を収集する。収集されたネットワーク情報は記憶媒体に蓄えられる。
【００３９】
次に、本発明のマルチキャスト転送経路計算装置を実現するために必要なマルチキャスト転送経路計算装置とマルチキャスト転送経路設定装置とを説明する。
【００４０】
図２はマルチキャスト転送経路計算装置の構成を示す図である（請求項３、４）。この図において符号１０はマルチキャスト転送経路計算装置である。そして、図２に示すマルチキャスト転送経路計算装置１０はネットワーク内のノードや各ノードをつなぐリンクで発生する遅延やメトリックに関するネットワーク計測情報を管理する情報管理部１１と、転送経路を計算する経路計算部１２と、送受信するパケットを処理するパケット処理部１３により構成される。そして、マルチキャスト転送経路計算装置１０のパケット処理部１３が情報管理部１１で管理されるネットワーク計測情報や経路計算依頼の受信や、経路計算部１２が計算した転送経路の計算結果のマルチキャスト転送経路設定装置への送信を行う。
【００４１】
また、マルチキャスト転送経路計算装置１０の情報管理部１１はトラヒック状態の情報の収集に使用するＯＳＰＦやＩＳ−ＩＳなどのルーチングプロトコルで使用される情報交換プロトコルを処理するルーチングプロトコルモジュール１１１とそのプロトコルによって得られたネットワークのトポロジや遅延、メトリックなどのネットワーク計測情報を管理する計測情報記憶部１１２とを備えている。
【００４２】
また、経路計算部１２は、転送経路を計算する経路計算モジュール１２１と、計算結果を記憶する計算結果記憶部１２２とを備えている。また、パケット処理部１３は到着したパケットの種別を判断し、そのパケットを転送、または情報管理部１１に送るパケット処理モジュール１３１とパケットの転送先を記録するパケット転送テーブル記憶部１３２と、ネットワークインタフェース１３３とを備えている。
【００４３】
図３はマルチキャスト転送経路設定装置の構成を示す図である（請求項５）。この図において符号２０はマルチキャスト転送経路設定装置である。そして、図３に示すマルチキャスト転送経路設定装置２０は、ネットワーク内のノードやリンクで発生する遅延やメトリックに関する情報を管理する情報管理部２１と、自身の処理により発生する遅延やメトリックなどを測定する測定部２２と、新たなデータフローが発生したときに経路設定を行う経路設定用プロトコル処理部２３と、到着したパケットを処理するパケット処理部２４とにより構成される。
【００４４】
そして、情報管理部２１の基本構成はマルチキャスト転送経路計算装置１０の情報管理部１１と同様であり、ルーチングプロトコルモジュール２１１と、計測情報記憶部２１２とを備えている。また、測定部２２はパケット処理部２４が備えるネットワークインタフェース２４３の状態や、ネットワーク上の各ノードの処理の遅延などの情報を測定する測定モジュールを備えている。また、パケット処理部２４は到着したパケットの種別を判断し、パケットの転送を行い、また新規の経路設定の決定を判断するパケット処理モジュール２４１と、パケットの転送先を記録するパケット転送テーブル記憶部２４２と、ネットワークインタフェース２４３とを備えている。また、マルチキャスト転送経路設定装置２０は経路計算部２５を備えており、経路計算部２５は転送経路を計算する経路計算モジュール２５１と、計算結果を記憶する計算結果記憶部２５２とを備えている。なお、転送経路の計算をマルチキャスト転送経路設定装置２０が行う場合には、この経路計算部２５がマルチキャスト転送経路計算装置１０と同様の処理を行う。
【００４５】
経路設定用プロトコル処理部２３はパケット処理部２４から経路設定依頼を受信し、その経路設定依頼のマルチキャスト転送経路計算装置への送信処理を行う。また経路設定用プロトコル処理部２３はマルチキャスト転送経路計算装置から受信した転送経路の計算結果にしたがってデータ転送のための転送経路を設定する機能を有する。
【００４６】
なお、マルチキャスト転送経路計算装置１０とマルチキャスト転送経路設定装置２０とが同一ノードである場合には、そのノードはマルチキャスト転送経路計算装置１０およびマルチキャスト転送経路設定装置２０の各処理部を有し、上述の各処理部の処理を行う。また、マルチキャスト転送装置の機能が同一ノードに備えられる場合には、経路設定用プロトコル処理部２３は隣接するノードに対して経路計算依頼を行う。
【００４７】
次に、上記のマルチキャスト転送経路計算装置１０、マルチキャスト転送経路設定装置２０、マルチキャスト転送装置の動作を説明する。ネットワーク内のマルチキャスト転送装置の機能を有するノードは常にネットワークのトポロジや遅延やメトリックを現すネットワーク計測情報を隣接ノード間で交換する。そして各ノードは、その交換の処理によって得られたネットワーク計測情報を記憶する。
【００４８】
ノードが交換するネットワーク計測情報は、次ノードで計測したネットワーク計測情報のみならず、自ノードが保持する他ノードが計測したネットワーク計測情報も含まれる。これらの交換動作により、各ノードはネットワーク内の全ノードにおける接続情報や遅延などのネットワーク計測情報を保持する。そして、新たに転送経路を設定するマルチキャスト転送経路設定装置２０の機能を有するノードは、マルチキャスト転送経路計算装置１０の機能を有するノードに経路計算依頼をする。
【００４９】
このとき、マルチキャスト転送経路計算装置１０の機能を有するノードは情報管理部１１で管理されているネットワーク内のトポロジや遅延やトラヒックに関するネットワーク計測情報と、経路計算依頼をしたノードから送られてきた終点の情報に基づいて転送経路を計算する。
【００５０】
図４はマルチキャスト転送経路計算装置１０における経路計算の処理を示すフローチャートである。まず、マルチキャスト転送経路計算装置１０はマルチキャスト転送経路を設定しようとするノード、もしくは同一装置内のマルチキャスト転送経路設定部から経路計算要求を受け付ける。このとき、マルチキャスト転送経路計算装置１０は、マルチキャスト転送経路設定装置からデータ転送の終点の情報も受け付ける。すると、マルチキャスト転送経路計算装置１０の経路計算部１２が情報管理部１１の計測情報記憶部１１２に記録されているネットワークのトポロジやトラヒック状態を示すネットワーク計測情報、もしくはそれらの情報を基にネットワーク管理者のネットワーク設計指針に従うように計算されたメトリックを読み取る（ステップＳ１）。
【００５１】
次に、計算要求のあったマルチキャスト経路の始点を基点とするメトリック最短経路を計算する。このとき、計算するアルゴリズムは、メトリック最短経路を計算するダイクストラのアルゴリズムのような公知のアルゴリズムを用い、その種類は問わない（ステップＳ２）。
【００５２】
次に、与えられた終点情報から、計算されたメトリック最短経路における、各終点の場所を特定する。そして、その下流に終点が存在しない終点と、下流にまだ他の終点が存在するような終点とにグループ分けする（ステップＳ３）。本発明では、２つの計算方式を含んでいる。この次の動作で２つの方式は異なった動作を行う。
【００５３】
まず方式１（請求項１、３）であるが、先ほどグループ分けされた終点群のうち、その下流に終点が存在しない終点のグループに属する終点を基点とするメトリック最短経路を終点毎に計算する（ステップＳ３−１）。そして、方式２（請求項２、４）は、先ほどグループ分けされた終点群のうち、その下流に他の終点が存在するようなグループに属する終点のグループに属する終点を基点とするメトリック最短経路を終点毎に計算する（ステップＳ３−２）。
【００５４】
次に、与えられた始点と終点とが頂点となり、２点間の最短経路が計算されているときに、この最短経路に対応する枝が存在するような仮想グラフを作成する。このとき、２点間に作られたリンクは、実ネットワークにおける該当する２点間の最短経路を示し、そのメトリックは対応する経路を構成するリンクのメトリック和となる（ステップＳ４）。
【００５５】
そして作られた仮想グラフに対し、グラフ内に存在する全てのノードを通る経路のうち、経路全体のメトリック和が最も小さくなるような経路である最小木を計算するアルゴリズムを使用して、仮想グラフ上での最小木を計算する。このとき、計算された経路を構成するリンクが現す、実ネットワーク上での２点間の最短経路が最終的な計算結果となる。すなわち、仮想グラフ上で最小木計算を実行し、この計算結果に含まれる最短経路を最終結果とする（ステップＳ５）。
【００５６】
なお、本実施例では、マルチキャスト転送装置が遅延などのネットワーク計測情報を収集する際には、ＯＳＰＦ−ＴＥを用いる。ＯＳＰＦ−ＴＥはユニキャストのルーチングプロトコルであるＯＳＰＦのトポロジ情報交換情報に遅延などのネットワーク内のトラヒック情報を格納した通信プロトコルである。
【００５７】
次に、本発明による転送経路を計算する処理の一実施例について説明する。図５はマルチキャストネットワークを示す図である。この図において、符号２０はデータ転送経路の始点となるマルチキャスト転送経路設定装置である。符号１〜３はデータ転送の終点である。
【００５８】
またＡ〜Ｋは中間ノードであり、マルチキャスト転送装置の機能を有している。なお、マルチキャスト転送経路設定装置２０、ノードＡ〜Ｋ、終点１〜３の各ノードが通信ケーブル（リンク）により接続されてマルチキャストネットワークを構成している。そして各リンクはメトリックという２つの経路選択指標を持っている。そして、リンクの遅延特性と、メトリック特性は、データがリンクに進入する際の進入方向によって、異なる遅延特性とメトリック特性を有していることが認められている。そして、マルチキャスト転送経路設定装置２０は、マルチキャスト転送経路計算装置１０が計算した結果に基づいて、自らを始点として終点１〜終点３に対してデータを転送する。
【００５９】
なお、各ノード間のリンクで発生する遅延を示すネットワーク計測情報は前述のＯＳＰＦ−ＴＥを用いて各ノードが収集する。そして当該ネットワーク計測情報があらかじめマルチキャスト転送経路計算装置１０に通知される。
【００６０】
本発明によるマルチキャスト転送経路の計算例を示す。本計算例では、ノードＳから終点１、２、３へと経路を設定する例を示す。まず、最初に方式１（請求項１、３）で計算したときの例を示す。方式１は、経路の始点を基点とするメトリック最短経路を計算し、各終点間の最短経路内の位置で分類わけをしたときに、最短経路における下流に他の終点が存在しない終点を基点とした最短経路を用いて経路を計算する方式である。
【００６１】
本計算例では、図５で示されるようなネットワークに対し経路計算を行う。図６に示すように、まず、マルチキャスト転送経路計算装置１０は、経路を設定するノードもしくはモジュールから経路計算要求を受け取る。そして、経路の始点となるノードを基点とするメトリック最短経路を計算する。このとき、この最短経路計算では、公知のアルゴリズムであるダイクストラのアルゴリズムを用いる。そして、この最短経路上における残りの終点の位置を確認する。そして、経路の末端に位置する終点を選択する。図６では、そのような終点は、ノード１と２である。
【００６２】
次に、図７に示すように、選択されたノード１と２を基点とするメトリック最短経路を計算する。次に、図８に示すように、経路の始点、終点がグラフの頂点となり、該当する２点間の最短経路（太線）が既に計算されている場合には、この最短経路に対応する枝（細線）が存在するような仮想グラフを計算する。このとき、２点間のリンクは２点間の最短経路を示し、そのメトリックは、最短経路を構成するリンクに付与されたメトリックの和となる。このグラフに対し、最小木を発見するアルゴリズムを適用する。このとき、適用するアルゴリズムの候補としては、公知のアルゴリズムであるｐｒｉｍのアルゴリズムがある。計算された最小木を構成するリンクが示す、実ネットワーク上での最短経路が最終的な計算結果の一部となり、図９に示すように、これらが寄り集まることで最終結果は計算される。
【００６３】
次に、方式２（請求項２、４）で計算したときの例を示す。方式１は、経路の始点を基点とするメトリック最短経路を計算し、各終点間の最短経路内の位置で分類わけをしたときに、最短経路における下流に他の終点が存在しない終点を基点とした最短経路を用いて、経路を計算する方式である。これに対し、方式２では、図５で示されるような下流に終点が存在する終点を基点とするネットワークに対し経路計算を行う。
【００６４】
まず、図１０に示すように、マルチキャスト転送経路計算装置１０は、経路を設定するノードもしくはモジュールから経路計算要求を受け取る。そして、経路の始点となるノードを基点とするメトリック最短経路を計算する。このとき、この最短経路計算では、公知のアルゴリズムであるダイクストラのアルゴリズムを用いる。そして、この最短経路上における残りの終点の位置を確認する。そして、経路の末端以外に位置する終点を選択する。図１０では、そのような終点は、ノード３である。
【００６５】
次に、図１１に示すように、選択されたノード３を基点とするメトリック最短経路を計算する。計算の後、図１２に示すように、経路の始点、終点がグラフの頂点となり、該当する２点間の最短経路（太線）が既に計算されている場合には、この最短経路に対応する枝（細線）が存在するような仮想グラフを計算する。このとき、２点間のリンクは２点間の最短経路を示し、そのメトリックは、最短経路を構成するリンクに付与されるメトリックの和となる。このグラフに対し、最小木を発見するアルゴリズムを適用する。このとき、適用するアルゴリズムの候補としては、公知のアルゴリズムであるｐｒｉｍのアルゴリズムがある。計算された最小木を構成するリンクが示す、実ネットワーク上での最短経路が最終的な計算結果の一部となり、図９に示すように、これらが寄り集まることで最終結果は計算される。
【００６６】
本発明は、汎用の情報処理装置にインストールすることにより、その情報処理装置に本発明のマルチキャスト転送経路計算装置１０またはマルチキャスト転送経路設定装置２０に相応する機能を実現させるプログラムとして実現することができる（請求項６〜８）。このプログラムは、記録媒体に記録されて情報処理装置にインストールされ（請求項９）、あるいは通信回線を介して情報処理装置にインストールされることにより当該情報処理装置に、情報管理部１１、経路計算部１２、パケット処理部１３、情報管理部２１、測定部２２、経路設定用プロトコル処理部２３、パケット処理部２４、経路計算部２５にそれぞれ相応する機能を実現させることができる。
【産業上の利用可能性】
【００６７】
本発明によれば、短時間で、かつ高い精度を保持した、シュタイナー木の近似解を可能とし、経路計算の時間を従来方式と比較して短縮することによって、サービスを提供するために必要な時間を短縮することができ、ユーザに対し迅速にサービスを提供することが可能となる。
【００６８】
これにより、ユーザに対するサービス品質を向上させることができるため、サービス提供者によるユーザ獲得に寄与することができる。
【図面の簡単な説明】
【００６９】
【図１】発明方式の概念図。
【図２】マルチキャスト転送経路計算装置の構成概念図。
【図３】マルチキャスト転送経路設定装置の構成概念図。
【図４】マルチキャスト転送経路計算アルゴリズムのフロー図。
【図５】対象ネットワークの一例を示す図。
【図６】始点の基点とする最短経路の計算を説明するための図。
【図７】選択された終点からの最短経路の計算を説明するための図。
【図８】仮想グラフと各リンクのメトリック（最短経路のメトリック）を説明するための図。
【図９】方式１および２の計算結果を示す図。
【図１０】始点を基点とする最短経路の計算を説明するための図。
【図１１】選択された終点からの最短経路の計算を説明するための図。
【図１２】仮想グラフと各リンクのメトリック（最短経路のメトリック）を説明するための図。
【符号の説明】
【００７０】
１〜３  終点
１０  マルチキャスト転送経路計算装置
１１、２１  情報管理部
１１１、２１１  ルーチングプロトコルモジュール
１１２、２１２  計測情報記憶部
１２、２５  経路計算部
１２１、２５１  経路計算モジュール
１２２、２５２  計算結果記憶部
１３、２４  パケット処理部
１３１、２４１  パケット処理モジュール
１３２、２４２  パケット転送テーブル記憶部
１３３、２４３  ネットワークインタフェース
２０  マルチキャスト転送経路設定装置
２２  測定部
２３  経路設定用プロトコル処理部
Ａ〜Ｋ  中間ノード
【図１】
2005198182.tif 000003
【図２】
2005198182.tif 000004
【図３】
2005198182.tif 000005
【図４】
2005198182.tif 000006
【図５】
2005198182.tif 000007
【図６】
2005198182.tif 000008
【図７】
2005198182.tif 000009
【図８】
2005198182.tif 000010
【図９】
2005198182.tif 000011
【図１０】
2005198182.tif 000012
【図１１】
2005198182.tif 000013
【図１２】
2005198182.tif 000014