説明

マルチキャストネットワークシステム

【課題】マルチキャスト配信の中断時間の短縮化を可能とする。
【解決手段】サーバ210から送信されるマルチキャストトラフィックをクライアント220へ転送するための複数のルータ201〜206を含むマルチキャストネットワークシステムであって、各ルータは、マルチキャストトラフィックの配信経路に対する代替経路情報を有し、自ルータを通過する配信経路において、自ルータより上流側でリンク障害が生じたときに、前記代替経路情報に基づき、代替経路上の少なくとも1つのルータへ配信経路の変更通知を送信し、配信経路の変更通知の送信又は受信に応じて、マルチキャストルーティングプロトコルに基づくマルチキャストルーティングテーブルの更新を待つことなく配信経路の前記リンク障害に係る部分が代替経路で置換されるように、自ルータ内における前記配信経路の変更処理を実行する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、マルチキャストネットワークシステムに関する。
【背景技術】
【0002】
IPマルチキャストネットワークにおいては、PIM−SM(Protocol Independent Multicasting-Sparse Mode)のようなマルチキャストルーティングプロトコルをルータの
ようなパケット転送装置間で交換し、マルチキャストルーティングテーブルを各ルータ内に生成する。マルチキャストルーティングテーブルを用いたマルチキャストトラヒックの転送制御によって、マルチキャストパケットの転送が実現される。
【0003】
また、マルチキャストパケット転送に関しては、マルチキャストルーティングプロトコルに基づくジョイン(参加要求)メッセージおよびリーブ(離脱要求)メッセージによって、マルチキャストトラヒックの配信開始及び配信停止が行われる。
【0004】
マルチキャストパケット転送では、通常、ユニキャストルーティングプロトコルが併用される。ルータでは、ユニキャストルーティングプロトコルに基づきルータで設定されたユニキャスト第1優先インタフェースから、上記したジョインメッセージおよびリーブメッセージのようなマルチキャストルーティングプロトコルに基づく制御メッセージが送信される。制御メッセージの送受信経路を使用して、マルチキャストトラヒックの配信開始および配信停止が行われる。
【0005】
マルチキャストトラヒック配信中に、このマルチキャストトラヒックの配信ツリー(配信経路)上における回線故障や、ネットワークのトポロジ変更が発生することがある。この場合、配信ツリーに関する各ルータにおいて、ユニキャストルーティングプロトコルを用いた経路の再学習が行われる。各ルータでは、再学習の結果に従って、マルチキャストパケットの宛先アドレスに対する第1優先インタフェースが決定(コンバージェンス)される。
【0006】
その後、各ルータの第1優先インタフェースに関して、マルチキャスト制御パケット(ジョインメッセージ)の送受信が行われる。そして、下流(マルチキャストトラヒックの
宛先(クライアント)を収容する最下流のルータ(ラストホップルータと呼ばれる))か
ら上流(マルチキャストトラヒックのソース(サーバ)に収容された最上流のルータ(フ
ァーストホップルータと呼ばれる))へ向けて、ホップバイホップで受信要求の再学習が
実行される。この再学習の完了(マルチキャストルーティングプロトコルのコンバージェンス)後に、再学習の結果作成されたマルチキャストトラヒックの配信ツリーに従ったマルチキャストトラヒックの転送が再開される。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特開2008−28714号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
PIM−SM、或いはPIM−SSM(PIM-Source Specific Multicast)では、障害
やトポロジ変更が発生すると、配信ツリーにおける下流のルータは、PIMジョインメッセージを上流のルータに送出し、ホップバイホップで配信ツリー変更が実行される。このため、各ルータでの配信ツリーの変更処理が完了し、新たな配信ツリーの状態が収束(コ
ンバージェンス)するまでに時間が掛かっていた。従って、障害発生時におけるマルチキャストトラヒックの配信中断時間が長いと言う問題があった。
【0009】
本発明の一態様の目的は、配信ツリーの変更によるマルチキャストトラヒック配信の中断時間の短縮化を図ることが可能な技術を提供することである。
【課題を解決するための手段】
【0010】
本発明の一態様は、ソースから送信されるマルチキャストトラフィックをクライアントへ転送するための複数のルータを含むマルチキャストネットワークシステムであって、
前記各ルータは、
少なくともマルチキャストルーティングプロトコルによって決定された前記ソースから前記クライアントへの前記マルチキャストトラフィックの配信経路に応じた転送制御情報を保持するマルチキャストルーティングテーブルと、
前記マルチキャストトラフィックの配信経路に対する代替経路情報を生成する生成部と、
自ルータを通過する前記配信経路において、自ルータより上流側でリンク障害が生じたときに、前記代替経路情報に基づき、代替経路上の少なくとも1つのルータへ配信経路の変更通知を送信する通知制御部と、
前記配信経路の変更通知の送信又は受信に応じて、前記マルチキャストルーティングプロトコルに基づく前記マルチキャストルーティングテーブルの更新を待つことなく前記配信経路の前記リンク障害に係る部分が前記代替経路で置換されるように、自ルータ内における前記配信経路の変更処理を実行する変更部と
を含む。
【発明の効果】
【0011】
本発明の一態様によれば、配信ツリーの変更によるマルチキャストトラヒック配信の中断時間の短縮化を図ることが可能な技術を提供することができる。
【図面の簡単な説明】
【0012】
【図1】図1は、本発明の実施形態に係るIPマルチキャストネットワークのトラフィックの流れおよびマルチキャスト代替経路決定を説明する図である。
【図2A】図2Aは、ソース迄の経路・到達性確認メッセージ(IPパケット)のフォーマットを説明する図である。
【図2B】図2Bは、予めネットワーク内のサーバやルータに実装して置き、図2Aのソース迄の経路・到達性確認メッセージ(IPパケット)の受信した時にサーバやルータで動作するソフトウェアの動作フローを説明する図である。
【図3】図3はマルチキャスト代替経路決定時のシーケンス図である。
【図4】図4はマルチキャスト代替経路決定時の各ルータにおける処理フローチャートである。
【図5】図5は、マルチキャストトラフィック配信ツリー上で回線故障ないしはトポロジ変更による回線断が発生した場合の代替経路切替を説明する図である。
【図6】図6は、配信ツリー変更情報通知メッセージのフォーマットを説明する図である。
【図7】図7は、マルチキャスト経路切替における各ルータ間でのパケット及び配信ツリー変更情報通知メッセージ送受信のシーケンス図である。
【図8】図8は、マルチキャストトラフィック配信ツリー上で回線故障ないしはトポロジ変更による回線断が発生した場合の回線故障ないしは回線断検出の直近の下流ルータにおける配信ツリー変更情報通知および自ルータの代替経路切替の処理例を示すフローチャートである。
【図9】図9は、マルチキャストトラフィック配信ツリー上で回線故障(復旧)ないしはトポロジ変更による回線断(接続)が発生した場合の配信ツリー変更情報受信ルータにおける代替経路切替の処理例を示すフローチャートである。
【図10】図10は、マルチキャストトラフィック配信ツリー上で回線復旧ないしはトポロジ変更による回線接続が発生した場合の回線復旧ないしは回線接続検出の直近の下流ルータにおける配信ツリー変更情報通知および自ルータの代替経路切替の処理フロー図である。
【図11】図11は、マルチキャスト配信ツリーのダイレクト変更を実現するためのルータのハードウェアおよび機能ブロック図である。
【発明を実施するための形態】
【0013】
以下、本発明の一実施形態を、図面を参照して説明する。実施形態の構成は例示であり、本発明は実施形態の構成に限定されない。
【0014】
図1は、本発明の実施形態に係るマルチキャストネットワークの例を示す。図1に例示するマルチキャストネットワークは、マルチキャスト配信サーバ210(ソース(センダーとも呼ばれる)S1)と、マルチキャストグループへの参加/離脱が可能なルータ201〜206(ノードa1〜a6)と、クライアント220(ホスト(レシーバとも呼ばれる)H1)とを含んでいる。
【0015】
ルータ201〜206は、ユニキャストルーティングプロトコル(例えば、RIP(Routing Information Protocol),或いはOSPF(Open Shortest Path First))と、マ
ルチキャストルーティングプロトコル(例えば、PIM−SM,或いはPIM−SSM)とに従った、サーバ210からのマルチキャストトラフィックの配信ツリー(配信経路)の生成、及び配信ツリーに従ったマルチキャストパケットの転送処理を行う。
【0016】
ルータ201〜206は、ユニキャストルーティングプロトコルによって、各ルータ201〜206間を結ぶ各回線のリンクアップおよびリンクダウン、障害等を検知することができる。これによって、ルータ201〜206は、マルチキャストネットワーク内の経路の障害情報を共有することができる。
【0017】
クライアント220(ホストH1)は、サーバ210(ソースS1)から配信されるマルチキャストトラフィック(IPマルチキャストパケット)を受信する。クライアント220は、サーバ210からのマルチキャストパケットの受信に関して、マルチキャストグループG1に属している。
【0018】
サーバ210から配信されるマルチキャストパケット(マルチキャストトラフィック)は、サーバ210とクライアント220との間に設けられた配信ツリー上を転送される。サーバ210をソースS1とするマルチキャストグループG1の配信ツリーは、例えば、(210(S1)→206(a6)→204(a4)→202(a2)→201(a1)→220(H1))である。
【0019】
図1に示したマルチキャストネットワークにおいて、配信ツリー上に位置するルータ202(a2)が、マルチキャストトラフィックを受信する入方路(Incoming Interface)に対する代替経路情報を収集する場合を例として説明する。
【0020】
上記した配信ツリーに従えば、ルータ202は、上流側の隣接ルータであるルータ204からマルチキャストトラフィックを受信する。このようなマルチキャストトラフィックを受信する上流側の入方路が「マルチキャストトラフィックの入方路」に相当する。この入方路は、上流側の隣接ルータ(ルータ204)から見れば、マルチキャストトラフィックの出方路(Outgoing Interface)となる。
【0021】
本実施形態では、リンク障害又は装置障害によって上記入方路からマルチキャストトラフィックを受信できなくなった場合に、代わりの入方路(インタフェース又はポート)からマルチキャストトラフィックを受信することが試みられる。このことに鑑み、上記入方路を「第1(優先)入方路」と表記し、代わりの入方路(代替入方路)を「第2(優先)入方路」と表記することがある。「(優先)」の語は、ソースとホストを結ぶ複数の経路に対し、コストやメトリックを基準とした優先順位に従って、配信ツリーが決定されることに由来する。
【0022】
ルータ202は、ルータ202自身が保持するルーティング情報(ルーティングテーブル)を参照し、ソースS1およびグループG1に対するマルチキャストエントリ((S1, G1)エントリ)の第1入方路に対する第2入方路を決定する。ルータ202は、決定された第2入方路から、サーバ210(ソースS1)のIPアドレス向けに、経路・到達性確認メッセージを送信することによって、ルータ202からサーバ210(ソースS1)迄のパケットの到達性及び経路を確認する。
【0023】
具体的には、ルータ202は、ユニキャストルーティングプロトコルによって、ルータ202とサーバ210との間に複数の経路が存在することを学習することができる。図1の例では、ルータ202は、ルータ204を経由する経路と、ルータ203を経由する経路とが存在することを学習する。
【0024】
ルータ202を含むルータ201〜206によるユニキャストルーティングプロトコルの実施によって、ルータ201〜206は、サーバ210までの複数の経路とそのコスト又はメトリックを入手し、サーバ210までの最短経路を学習することができる。また、ルータ201〜206は、学習結果に応じたユニキャスト用のルーティングテーブルを作成することができる。ルータ201〜206におけるユニキャスト用ルーティングテーブルの完成を以て、ルータ201〜206が、ユニキャストに関するコンバージェンス(収束)状態となる。
【0025】
一方、ルータ201〜206におけるマルチキャストルーティングプロトコルの実行によって、サーバ210をソース(センダー)とし、且つクライアント220をホスト(レシーバ)とするマルチキャストトラヒックの配信ツリーが構築される。このとき、ルータ201〜206が配信ツリーに応じたマルチキャスト用のルーティングテーブルを完成させることによって、ルータ201〜206が、マルチキャストに関するコンバージェンス(収束)状態となる。
【0026】
ルータ202は、ユニキャスト及びマルチキャストのコンバージェンス状態において、ルータ204からのマルチキャストトラフィックを受信する方路をマルチキャストエントリ(S1,G1)に係る第1(優先)入方路と認識することができる。マルチキャストエントリは、ソース(S)とマルチキャストグループ(G)によって特定される。一方、ルータ202は、代替経路として、ルータ203からパケットを受信する配信ツリーの代替経路を認識でき、この代替経路に係る入方路を第2(優先)入方路に決定することができる。
【0027】
ルータ202は、第2入方路を決定(特定)した場合には、サーバ210(ソースS1)の経路・到達性確認メッセージを用いて、サーバ210迄のパケットの到達性及び経路確認を行う。経路・到達性確認のためのIPパケット(経路・到達性確認メッセージ)をサーバ210向けに第2入方路から送信する。すなわち、ルータ204より優先度の低い経路上のルータ203に対してサーバ210(ソースS1)迄のパケットの到達性および経路を確認する。
【0028】
図2Aは、経路・到達性確認メッセージの例を示す。図2Aにおいて、経路・到達性確認メッセージ(以下、単に確認メッセージと表記することもある)のフォーマットは、送信元IPアドレス及び送信先(宛先)IPアドレス等の情報を格納するヘッダ部100と、経由ルータ(インターフェース)のIPアドレス情報(図2Aでは、R1〜R3を例示)等の情報を格納するデータ部101から成る。
【0029】
経路・到達性確認メッセージを受信したルータは、IPパケットのデータ部101に対し、ルータ自身のIPアドレスを格納し、IPパケットを受信した方路(送信元方路)を除く方路へIPパケットを送信する。
【0030】
図2Bは、予めネットワーク内のサーバやルータに実装して置き、図2Aに示したソース迄の経路・到達性確認メッセージ(IPパケット)の受信した時にサーバやルータで動作するソフトウェアの動作フローを説明する図である。ネットワーク内の各サーバやルータは、図2Aの経路・到達性確認メッセージを受信すると(ステップ2100)、受信した経路・到達性確認メッセージの宛先アドレスが自ノード(自ルータ)かを判定し(ステップ2101)する。このとき、宛先アドレスが自ノードのIPアドレスである場合、自ノードのIPアドレスを経路・到達性確認メッセージに追加して、送信元アドレスに返送し(ステップ2103)、処理を終了する。ステップ2101において宛先アドレスが自ノードのIPアドレスでは無い場合、自ノードのIPアドレスを経路・到達性確認メッセージに追加し、経路・到達性確認メッセージを受信したインタフェース以外の全てのインタフェースから、経路・到達性確認メッセージを転送し(ステップ2102)、処理を終了する。
【0031】
図3は、ルータ202による経路・到達性確認シーケンスである。図3における実線矢印は、第2入方路(ルータ203)へ向けて送信された経路・到達性確認メッセージのシーケンス例を示す。一方、一点鎖線矢印は、第1入方路(ルータ204)へ経路・到達性確認メッセージを送信したときのシーケンス例を示す。
【0032】
ルータ202からルータ203へ送信された確認メッセージは、ルータ203,ルータ205,ルータ204,ルータ206を経由してサーバ210に到達する。確認メッセージのデータ部101(図1)には、確認メッセージが通過した順で各経由ルータ(又はインタフェース)のIPアドレスが各経由ルータによって格納される。
【0033】
確認メッセージを受信したサーバ210は、確認メッセージのヘッダ部100(図1)における送信元アドレス(ルータ202のIPアドレス)と送信先アドレス(サーバ210のIPアドレス)とを入れ替え、ルータ202へ向けて送信する。これにより、確認メッセージは往路と同一の経路を辿って最終的にルータ202に到達する。復路においても、経由ルータのIPアドレスがデータ部101に格納される。
【0034】
上記したような第2入方路の決定及び確認メッセージを用いた確認処理は、ユニキャスト及びマルチキャストに関するコンバージェンス状態となったときに、ルータ202を含む各ルータで実行される。但し、ファーストホップルータであるルータ206は、サーバ210(ソースS1)からパケットを必ず受信するので、上記決定及び確認処理を実施しなくても良い。
【0035】
図11に示すように、上記した確認処理の結果、ルータのメモリ1110上には、エントリ別入方路別経路情報1134が作成される。経路情報1134として、マルチキャストエントリ(S,G)と、入方路名と、経由ルータのIPアドレスとが関連づけて保持される。図11に示す経路情報1134(を格納するテーブル)の格納内容は、ルータ20
2における、マルチキャストエントリ(S1,G1)に関して第1及び第2入方路に関する確認処理の結果得られた経路情報が示されている。入方路名“A”は第1入方路の名称を示し、入方路名“B”は第2入方路の名称を示す。このような第2入方路“B”に関する経路情報が代替経路情報として用いられる。
【0036】
図4は、マルチキャスト代替経路決定時の各ルータにおける処理フローチャートである。図4において、マルチキャストネットワーク上の各ルータは、図11のメモリ1110内のマルチキャストルーティングテーブル1131内のソースを共有する各マルチキャストエントリ内の入方路(第1入方路)に対し、メモリ1110内のルーティングテーブル1121からその第2入方路を検索する(ステップ400)。
【0037】
次に、ルータは、経路・到達性確認メッセージをサーバ210(ソース)へ向けて送信することによって、第m位優先入方路からソースSnまでの経路上の各ルータのIPアドレス情報を取得する(ステップ401)。取得した各ルータのIPアドレス情報をソースを共有するエントリ別、方路別にメモリ1110内にエントリ別入方路別経路情報1134として格納する(ステップ402)。上記ステップ400からステップ402について、m=1→2、S1→Snまでループを実行し、終了する。
【0038】
サーバ210のIPアドレス(ソースアドレス)はルータ202において既知である。また、ルータ202において、ルータ204、203のIPアドレスは既知である(Helloによるアドレス交換)。従って、サーバ210からの確認メッセージ中のデータ部10
1に格納された各IPアドレスから代替経路上のルータのIPアドレスを認識することができる。すなわち、データ部に格納された複数のIPアドレスにおけるサーバ210のIPアドレスより、確認メッセージの往路・復路を判別することができる。さらに、ルータ202は、往路又は復路中の複数のIPアドレスから、隣接ルータのIPアドレスを特定することで、配信ツリーの代替経路を認識することができる。本実施形態では、ルータ202は、往路又は復路中の複数のIPアドレスから、隣接ルータ(ルータ204,203)のIPアドレスを特定することによって、代替経路はルータ203、205を経由して、配信ツリー上のプリビアスホップノード(previous hop node)であるルータ204に
到達することを知ることができる。
【0039】
確認処理は、代替経路上の各ルータのIPアドレスの入手を目的の一つとする。従って、代替経路上の各ルータのIPアドレスが静的な設定又は他の手法によって入手できる場合には、必須の処理ではない。
【0040】
なお、マルチキャストルーティングプロトコルとして、PIM−SMやPIM−SSMを適用することができる。PIM−SMであれば、配信ツリーは、ランデブーポイント(Rendezvous Point: RP)であるルータを境に最短パスツリー(Shortest Path Tree:
SPT)と共有ツリー(Sheared Tree)とに分かれた経路であったり、SPTであったりする。PIM−SSMであれば、RPは存在しないので、配信ツリーはSPTである。
【0041】
図5は、図1に示したマルチキャストネットワークにおいて、ルータ204とルータ202間の回線障害又はネットワークトポロジ変更による回線断が発生したときの様子を示す。図6は、マルチキャストトラフィック配信ツリー上でリンク障害(回線故障ないしはトポロジ変更による回線断)が発生した場合に直近の下流ルータが代替経路上の上流ルータに配信ツリー変更情報を通知する時に送信する配信ツリー変更情報通知メッセージのフォーマットを説明する図である。図7は、マルチキャスト経路切替における各ルータ間でのパケット及び配信ツリー変更情報通知メッセージ送受信のシーケンス図である。
【0042】
図5に示すルータ202及びルータ204は、回線障害又は回線断(まとめて“リンク
障害”と表記する)を信号入力の検出回路による入力喪失検知、或いはPIMのHelloメ
ッセージングによって検知することができる。
【0043】
ルータ202は、リンク障害を検知すると(図7、S1)、リンク障害を有する回線をマルチキャストトラヒックの配信ツリーにおける入方路とする、全てのマルチキャストエントリに関して、配信ツリーの変更情報を通知する(図7,S2)。
【0044】
配信ツリーの変更情報は、リンク障害に係るマルチキャストエントリ、対応する入方路及び出方路情報を含むことができる。図6の例に示すように、配信ツリー変更情報通知メッセージのフォーマットは、ヘッダ部500とデータ部501とからなる。ヘッダ部500には、送信元IPアドレスおよび送信先IPアドレスを含む情報が格納される。データ部501には、マルチキャスト配信を要求する送信元IPアドレスS1、S2、S3・・・およびグループアドレスG*、マルチキャスト入方路情報IIF1、IIF2、IIF3・・・、マルチキャスト出方路情報OIF1、OIF2、OIF3・・・を含む情報が格納される。出方路情報は、ルータのIPアドレスである。「ルータのIPアドレス」という表記は、「ルータが有するインタフェースのIPアドレス」も含む。
【0045】
配信ツリー変更情報通知メッセージは、リンク障害による配信ツリーの経路変更により、入方路及び出方路の少なくとも一方に対して変更(差分)を生じるルータに対してのみユニキャストで送信される。配信ツリー変更情報通知メッセージを受信する各ノードは、確認メッセージ受信時と同様に、配信ツリー変更情報通知メッセージを受信した方路と同一の方路へ配信ツリー変更情報通知メッセージを転送しないように、転送制御を行う。これによって、リンク障害を有するリンクを通過するルートのメトリックが小さい場合であっても、そのルートが選択されず、他のルートを辿って目的ルータへメッセージが到着することができる。
【0046】
例えば、ルータ202が配信ツリー変更情報通知メッセージをルータ203へ送信した場合、ルータ203→ルータ202→ルータ204のルートがルータ203→ルータ205→ルータ204のルートよりメトリック(コスト)が小さいと仮定する。この仮定では、ルータ203は、ルータ202から受信したメッセージを再びルータ202へ送信する可能性がある。これに対し、本実施形態では、ルータ203は、メッセージを受信した方路を転送先の方路から除外する。これによって、メッセージは逆流せず、受信方路と異なる転送方路を辿って目的のルータ(ルータ204)へ到達する。
【0047】
図5に示す例では、ルータ204とルータ202との間のリンク障害によって、マルチキャストトラフィック(配信ツリー)は、ルータ204→ルータ205→ルータ203→ルータ202へ変更されるべきである。このためには、ルータ204が出方路変更を行い、ルータ205及び203がマルチトラフィックを転送するための入方路及び出方路の変更を行わなければならない。従って、配信ツリー変更情報通知メッセージは、ルータ204,ルータ205,及びルータ203の夫々へ送信される(図7、S2−1,S2−2,S2−3)。さらに、ルータ202は、第1入方路から第2入方路への変更が要求される。
【0048】
ルータ202〜205の夫々が、配信ツリーに対する代替経路に応じた入方路、出方路の変更を実施することによって、ルータ204からルータ202へ送信すべきグループG1宛のマルチキャストトラフィックが、ルータ204からルータ205、ルータ203を経てルータ202へ到達する代替経路が生成される。これによって、マルチトキャストラフィックをクライアント220への転送することが可能となる。
【0049】
このような変更に係る経路を用いたマルチキャストトラフィックの転送は、リンク障害
の検知を契機としたユニキャスト及びマルチキャストプロトコルに基づくマルチキャストネットワークのトポロジ情報更新及びルーティング情報更新処理の完了、すなわち、各ルータの配信ツリーに係るルーティングテーブルのコンバージェンス状態を待つことなく開始される(図7、S3)。
【0050】
なお、配信ツリー変更情報により変更される各ルータ格納のマルチキャストエントリ別入方路・出方路情報は、図11のメモリ1110に含まれたマルチキャストルーティングテーブル1131の様になる。
【0051】
図8は、マルチキャストトラフィック配信ツリー上で回線故障ないしはトポロジ変更による回線断が発生した場合の回線故障ないしは回線断検出の直近の下流ルータにおける配信ツリー変更情報通知および自ルータの代替経路切替の処理例を示すフローチャートである。
【0052】
図8において、リンク障害(回線障害ないしは回線断)を検出(ステップ800)したルータは、リンク障害が生じた方路を第1入方路として使用しているソースを共有する全てのマルチキャストエントリについて、図4にて作成したエントリ別入方路別経路情報1134のデータを参照する。続いて、ルータは、各第2入方路の経由ルータに配信ツリー変更情報(エントリ情報(S,G)、各ルータにおける入方路、および出方路情報(IP
アドレス))を経路の変更(差分)が発生するルータにのみ通知する(ステップ801)。ルータは、ソースを共有する全エントリについてステップ801を実行する(ステップ8
02)。
【0053】
次に、ルータは、リンク障害が検出された出方路を第1入方路として使用している全てのマルチキャストエントリについて自ルータの入方路を第2入方路に変更する(ステップ
803)。
【0054】
その後、ユニキャストルーティングプロトコルおよびマルチキャストプロトコルのコンバージェンスが完了したら(ステップ804、Y)、再学習したマルチキャストトラヒックの配信ツリーに従って、メモリ1110内マルチキャストルーティングテーブル1131の情報を変更し (ステップ805)、図8の処理を終了する。
【0055】
図9は、配信ツリーの代替経路への変更のための処理を示すフローチャートである。図9には、回線障害ないし回線断検出直近下流ルータから、ユニキャストで配信ツリー変更情報の通知を受けた代替経路上の各ルータにおける代替経路への切り替えを実効する為の処理が図示されている。
【0056】
図9において、配信ツリー変更情報を受信したルータは、通知を受けた、ソースを共有する全てのマルチキャストエントリ(S,G)について、配信中の入方路・出方路から(存在する場合)、通知を受けた入方路・出方路に、変更する(ステップ901)。
【0057】
配信ツリー変更情報の通知を受けたソースを共有する全エントリに関してステップ901が実行される(ステップ902)。
【0058】
その後、各ルータのユニキャストルーティングプロトコルおよびマルチキャストプロトコルのコンバージェンスが完了したら(ステップ903)、再学習したマルチキャスト配信ツリーに従い、メモリ1110内のマルチキャストルーティングテーブル1131の情報を変更する(ステップ904)。ステップ904が終了すると図9の処理は終了する。
【0059】
図10は、回線復旧ないしはトポロジ変更による回線接続発生時(リンク回復時)にお
ける、回復リンクの直近下流ルータにおける、経路切り替えを実効する為の処理例を示すフローチャートである。
【0060】
図10に示す処理は、ルータがリンク回復(回線復旧ないしは回線接続)を検出することによって開始される(ステップ1000)。ルータは、ユニキャストルーティングプロトコルおよびマルチキャストプロトコルのコンバージェンス(配信ツリーの再学習)の完了を待つ(ステップ1001)。
【0061】
続いて、ルータは、再学習したマルチキャスト配信ツリーに従い、メモリ1110内のマルチキャストルーティングテーブル1131の情報を更新する(ステップ1002)、その後、図10の処理が終了する。
【0062】
ステップ1002の終了時点で、マルチキャストエントリ(S1,G1)に対するマルチキャストルーティングテーブル1131の内容は、リンク障害発生前の状態に戻る。すなわち、ルータ202においては、ルータ204からのマルチキャストトラヒックを第1入方路で受信する状態に復帰する。他のルータ204、205、203においても、図10に示したマルチキャストルーティングテーブル1131の更新によって、リンク障害前の状態に戻る。
【0063】
図11は、マルチキャストトラヒック配信ツリーのダイレクト変更を実現するためのルータのハードウェアおよび機能ブロック図である。図11には、図1に示したルータ201〜206に適用可能なルータ10が図示されている。
【0064】
ルータ10は、中央演算処理装置(CPU)1140,メモリ1110,及び転送処理部1100を含む。
【0065】
CPU1140は、メモリに記憶されたプログラムを実行することによって、ユニキャストおよびマルチキャストのルーティングプロトコル制御、予備経路生成及び代替経路制御を含む様々な処理を行う。
【0066】
メモリ(ストレージ)1110は、CPU1140によって実行されるプログラムや、プログラムの実行に際して使用されるデータを格納する。メモリ1110は、主記憶として使用されるRAM,ファームウェアを有するROM,プログラムやデータを保持するハードディスク,メモリカードのような補助記憶を含むことができる。
【0067】
転送処理部1100は、ユニキャストおよびマルチキャストパケットの転送先インタフェースを決定し、パケットの転送を制御するパケット転送処理部1103と、パケット転送処理部1103とともに送受信を行う回線インタフェース1101、1102とを備えている。転送処理部1100は、主に、パケット信号の送受信及び転送制御を司る専用又は汎用のハードウェア(電気・電子回路(IC,LSI,ASICなど))によって実現される。
【0068】
メモリ1110は、ユニキャスト経路制御部1120、マルチキャスト経路制御部1130、およびトレース先に送信元経路情報を選ばない様な代替ルート実行制御部1150を備える。但し、これらは、実際には、CPU1140がプログラムを実行することによって実現される機能である。
【0069】
ユニキャスト経路制御部1120は、ユニキャスト送信先IPアドレスと送信先回線インタフェースとのデータベースを有するユニキャストルーティングテーブル1121と、ユニキャストルーティング情報の送受信処理やユニキャスト経路計算処理を行うルーティ
ングプロトコル制御部1122とを含む装置として機能する。テーブル1121には、IPパケットの送信元IPアドレス及び宛先IPアドレス、方路(インタフェース)名,及びメトリックをレコードに持つ複数のエントリが保持されている。
【0070】
マルチキャスト経路制御部1130は、マルチキャストグループアドレス、サーバ送信元アドレス、受信回線インタフェース、および送信回線インタフェースのデータベースであるマルチキャストルーティングテーブル1131と、マルチキャストルーティングプロトコルの送受信並びに経路計算を行うルーティングプロトコル制御部1132とを備えている。
【0071】
マルチキャスト経路制御部1130は、マルチキャスト配信ツリーの変更情報(すなわちエントリ別入方路別経路情報1134)の生成及び他ルータへの通知を行う代替経路情報収集及び通知制御部1133と、配信ツリーの変更等を制御するマルチキャストルーティングテーブル変換制御部1139とをさらに備える。
【0072】
また、マルチキャスト経路制御部1130は、他ルータからのマルチキャスト配信ツリー変更情報の受信を行う代替経路受信制御部1135と、他ルータから受信したマルチキャスト配信ツリー変更情報(すなわちルーティングテーブル変更指示情報(変換前)1136)をルーティングテーブル変更指示情報(変換後)1138にルーティングテーブル1121を参照して変換を行うルーティングテーブル変更指示情報変換部1137をさらに備える。
【0073】
ルーティングテーブル変更指示情報変換部1137は、受信を行う代替経路受信制御部1135から受信した他ルータ(ないしは自ルータ)からのマルチキャスト配信ツリー変更情報(すなわちルーティングテーブル変更指示情報(変換前)1136)を、ルーティングテーブル1121を参照して対向ルータアドレス→方路名の抽出を行い、ルーティングテーブル変更指示情報(変換後)1138に変換する。
【0074】
代替経路情報収集及び通知制御部1133は、マルチキャストルーティングテーブル1131とルーティングテーブル1121から、トレース先(ソースへの転送先)に送信元経路情報を選ばない様な代替ルート実行制御部1150を使用して、エントリ別入方路別経路情報1134を生成する。
【0075】
マルチキャストルーティングテーブル変換制御部1139は、このルーティングテーブル変更指示情報(変換後)1138に従い、配信が停止する(した)マルチキャストソースを共有するマルチキャストエントリ別に第1入方路(代替経路)への自ルータにおける入方路・出方路の変更処理を行う。
【0076】
マルチキャストルーティングテーブル変換制御部1139は、自ルータにおける入方路・出方路の変更処理を行う場合、マルキャストルーティングテーブル1131に、変更後のマルチキャスト転送方路を登録する。
【0077】
回線障害ないしは回線断発生時には、自ルータが回線障害検出ないしは回線断検出ルータであるときには、代替経路情報収集及び通知制御部1133が収集したエントリ別入方路別経路情報1134から、代替経路受信制御部1135を経由して抽出されたルーティングテーブル変更指示情報(変換前)1136を、ルーティングテーブル変更指示情報変換部1137によりルーティングテーブル変更指示情報(変換後)1138に変換する。その変換後のルーティングテーブル変更指示情報に従い、マルチキャストルーティングテーブル1131の入方路および出方路が変更される。エントリ別マルチキャストパケット到着後、パケット転送処理部1103を介して、適当な回線インタフェース1101、1
102へパケット転送が行われる。
【0078】
回線障害ないしは回線断発生時、自ルータが回線障害検出ないしは回線断検出ルータでない場合は、回線障害検出ないしは回線断検出ルータから受信し、その後ルーティングテーブル変更指示情報変換部1137によりルーティングテーブル変更指示情報(変換後)1138に変換されたルーティングテーブル変更指示情報に従い、マルチキャストルーティングテーブル1131の入方路および出方路を変更、エントリ別マルチキャストパケット到着後、パケット転送処理部1103を介して、適当な回線インタフェース1101、1102へパケット転送を行う。
【0079】
本実施形態に係るマルチキャストネットワークによれば、各ルータにおいて、少なくとも1つのマルチキャストエントリ(S,G)に関して、現在の配信ツリーに従ってソースからのマルチキャストトラフィックを受信する第1入方路の代わりにソースからのマルチキャストトラフィックを受信可能な第2入方路を決定し、第2入方路からマルチキャストトラフィックを受信するための代替経路情報を保持する。
【0080】
代替経路情報の保持にあたって、ルータは、ソース迄の経路探索手法(経路・到達性確認メッセージ)を用いて、経路及びパケット到達性の確認処理を行うことができる。これによって、ソースまでの経路上に位置する各ルータのIPアドレスを得ることができる。レコードルートでの確認処理に用いる確認メッセージは、各ルータにおいて、確認メッセージの送信元の方路(受信方路)には転送されないように転送先が制御される。
【0081】
その後、リンク障害によって第1入方路からマルチキャストトラフィックを受信できなくなったルータ(リンク障害を生じたリンクの直下のルータ、またはその下流に位置するルータ)は、第2入方路からマルチキャストトラフィックを受信するために、代替経路上に位置する1以上のルータに対して配信ツリー変更情報を通知する。配信ツリー変更情報を受信した各ルータは、代替経路上をマルチキャストトラフィックが流れるように、マルチキャストルーティングテーブル1131の設定(書き換え)を行う。
【0082】
これによって、リンク障害を契機としたユニ/マルチキャストプロトコルに基づく配信ツリーの更新(ユニ/マルチキャストルーティングテーブルの更新)終了(コンバージェンス)を待つことなく、マルチキャストトラフィックが代替経路を通じてクライアント220(ホストH1)へ転送される。このようにして、経路変更が従来よりもダイレクト(迅速)に実施されるので、リンク障害によるマルチキャストトラフィックの転送の停止又は中断時間の短縮化を図ることができる。
【0083】
また、配信ツリー変更情報として、経路変更の対象であるマルチキャストエントリ(S,G)を示す情報に加えて、確認処理で得た代替経路上のルータ又はインタフェースのIPアドレスを出方路情報、時には入方路情報として与えることができる。これにより、配信ツリー変更情報を受信したルータは速やかな経路変更処理が可能となる。なお、入方路情報及び出方路情報として、対向ルータのループパックアドレス、インタフェースアドレス、自ルータのインタフェースアドレスを含むことができる。
【0084】
その後、リンク障害を契機とした配信ツリーの再構築(各ルータにおける配信ツリーの再学習)によって、各ルータのユニ/マルチキャストルーティングテーブルが更新された場合には、各ルータはそのマルチキャストルーティングテーブルに従ってマルチキャストトラフィックの転送制御を実行する。
【0085】
その後、リンク障害の解除、すなわち、リンク回復時には、リンク回復を契機とした、又は周期的なユニ/マルチキャストルーティングプロトコルに基づくトポロジ情報更新に
よって、配信ツリーがリンク障害発生前の状態に戻る。配信ツリーの変更に伴い、ユニ/マルチキャストテーブルが更新されることによって、ルータは、第1入方路から受信されるマルチキャストトラフィックを受信する状態に戻る。
【符号の説明】
【0086】
100 ヘッダ部
101 データ部
201〜206 ルータ
210 サーバ(ソース)
220 クライアント(PC:ホスト)
500 ヘッダ部
501 データ部
1100 転送処理部
1101〜1102 回線インタフェース
1103 パケット転送処理部
1110 メモリ
1120 ユニキャスト経路制御部
1130 マルチキャスト経路制御部
1121 ルーティングテーブル
1131 マルチキャストルーティングテーブル
1122、1132 ルーティングプロトコル制御部
1133 代替経路情報収集及び通知制御部
1134 エントリ別入方路別経路情報
1135 代替経路受信制御部
1136 ルーティングテーブル変更指示情報(変換前)
1137 ルーティングテーブル変更指示情報変換部
1138 ルーティングテーブル変更指示情報(変換後)
1139 マルチキャストルーティングテーブル
1140 CPU
1150 代替ルート実行制御部

【特許請求の範囲】
【請求項1】
ソースから送信されるマルチキャストトラフィックをクライアントへ転送するための複数のルータを含むマルチキャストネットワークシステムであって、
前記各ルータは、
少なくともマルチキャストルーティングプロトコルによって決定された前記ソースから前記クライアントへの前記マルチキャストトラフィックの配信経路に応じた転送制御情報を保持するマルチキャストルーティングテーブルと、
前記マルチキャストトラフィックの配信経路に対する代替経路情報を生成する生成部と、
自ルータを通過する前記配信経路において、自ルータより上流側でリンク障害が生じたときに、前記代替経路情報に基づき、代替経路上の少なくとも1つのルータへ配信経路の変更通知を送信する通知制御部と、
前記配信経路の変更通知の送信又は受信に応じて、前記マルチキャストルーティングプロトコルに基づく前記マルチキャストルーティングテーブルの更新を待つことなく前記配信経路の前記リンク障害に係る部分が前記代替経路で置換されるように、自ルータ内における前記配信経路の変更処理を実行する変更部と
を含むマルチキャストネットワークシステム。
【請求項2】
前記各ルータは、自ルータが前記配信経路を流れる前記マルチキャストトラヒックを受信する第1入方路を有する場合に、前記第1入方路の代わりに前記マルチキャストトラヒックを受信可能な第2入方路を特定し、前記第2方路から前記代替経路の確認メッセージを前記ソース向けに送信し、
前記確認メッセージを受信する1以上のルータは、自ルータのIPアドレスを前記確認メッセージに格納する一方で、前記確認メッセージを受信した方路と異なる方路に前記確認メッセージを送出し、
前記確認メッセージの送信元のルータは、前記第2方路を基点とし前記代替経路を辿って前記ソースに到達する一方で前記ソースから折り返されて自ルータに到着した前記確認メッセージに格納された、前記代替経路上の1以上のルータのIPアドレスを含む前記代替経路情報を生成し、前記配信経路の変更通知を送信するときには、前記代替経路情報に含まれた所定の前記代替経路上のルータのIPアドレスを、前記配信経路の変更に係る方路情報として前記配信経路の変更通知に含める
請求項1に記載のマルチキャストネットワークシステム。
【請求項3】
前記変更部は、前記配信経路の変更処理として、前記代替経路を辿って前記マルチキャストトラフィックが流れるように、自ルータ内の前記マルチキャストルーティングテーブルを書き換える
請求項1又は2に記載のマルチキャストネットワークシステム。
【請求項4】
前記変更部によって書き換えられた前記マルチキャストルーティングテーブルは、その後の前記マルチキャストルーティングプロトコルに基づいて新たに決定された配信経路に従って更新される
請求項3に記載のマルチキャストネットワークシステム。
【請求項5】
ソースから送信されるマルチキャストトラフィックをクライアントへ転送するための複数のルータを含むマルチキャストネットワークシステムにおいて、前記各ルータが、
少なくともマルチキャストルーティングプロトコルによって決定された前記ソースから前記クライアントへの前記マルチキャストトラフィックの配信経路に応じた転送制御情報を保持するマルチキャストルーティングテーブルを生成し、
前記マルチキャストトラフィックの配信経路に対する代替経路情報を生成し、
自ルータを通過する前記配信経路において、自ルータより上流側でリンク障害が生じたときに、前記代替経路情報に基づき、代替経路上の少なくとも1つのルータへ配信経路の変更通知を送信し、
前記配信経路の変更通知の送信又は受信に応じて、前記マルチキャストルーティングプロトコルに基づく前記マルチキャストルーティングテーブルの更新を待つことなく前記配信経路の前記リンク障害に係る部分が前記代替経路で置換されるように、自ルータ内における前記配信経路の変更処理を実行する
ことを含むマルチキャストネットワークシステムにおける配信経路変更方法。
【請求項6】
前記各ルータは、自ルータが前記配信経路を流れる前記マルチキャストトラヒックを受信する第1入方路を有する場合に、前記第1入方路の代わりに前記マルチキャストトラヒックを受信可能な第2入方路を特定し、前記第2方路から前記代替経路の確認メッセージを前記ソース向けに送信し、
前記確認メッセージを受信する1以上のルータは、自ルータのIPアドレスを前記確認メッセージに格納する一方で、前記確認メッセージを受信した方路と異なる方路に前記確認メッセージを送出し、
前記確認メッセージの送信元のルータは、前記第2方路を基点とし前記代替経路を辿って前記ソースに到達する一方で前記ソースから折り返されて自ルータに到着した前記確認メッセージに格納された、前記代替経路上の1以上のルータのIPアドレスを含む前記代替経路情報を生成し、前記配信経路の変更通知を送信するときには、前記代替経路情報に含まれた所定の前記代替経路上のルータのIPアドレスを、前記配信経路の変更に係る方路情報として前記配信経路の変更通知に含める
請求項5に記載のマルチキャストネットワークシステムにおける配信経路変更方法。
【請求項7】
前記配信経路の変更処理として、前記代替経路を辿って前記マルチキャストトラフィックが流れるように、自ルータ内の前記マルチキャストルーティングテーブルが書き換えられる
請求項5又は6に記載のマルチキャストネットワークシステムにおける配信経路変更方法。
【請求項8】
前記配信経路の変更処理によって書き換えられた前記マルチキャストルーティングテーブルは、その後の前記マルチキャストルーティングプロトコルに基づいて新たに決定された配信経路に従って更新される
請求項7に記載のマルチキャストネットワークシステムにおける配信経路変更方法。
【請求項9】
ソースから送信されるマルチキャストトラフィックをクライアントへ転送するためのマルチキャストネットワークをなす複数のルータの一つであって、
少なくともマルチキャストルーティングプロトコルによって決定された前記ソースから前記クライアントへの前記マルチキャストトラフィックの配信経路に応じた転送制御情報を保持するマルチキャストルーティングテーブルと、
前記マルチキャストトラフィックの配信経路に対する代替経路情報を生成する生成部と、
自ルータを通過する前記配信経路において、自ルータより上流側でリンク障害が生じたときに、前記代替経路情報に基づき、代替経路上の少なくとも1つのルータへ配信経路の変更通知を送信する通知制御部と、
前記配信経路の変更通知の送信又は受信に応じて、前記マルチキャストルーティングプロトコルに基づく前記マルチキャストルーティングテーブルの更新を待つことなく前記配信経路の前記リンク障害に係る部分が前記代替経路で置換されるように、自ルータ内における前記配信経路の変更処理を実行する変更部と
を含むルータ。

【図1】
image rotate

【図2A】
image rotate

【図2B】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate


【公開番号】特開2012−199689(P2012−199689A)
【公開日】平成24年10月18日(2012.10.18)
【国際特許分類】
【出願番号】特願2011−61547(P2011−61547)
【出願日】平成23年3月18日(2011.3.18)
【出願人】(000005223)富士通株式会社 (25,993)
【Fターム(参考)】