(57)【要約】【課題】  PIM-SMネットワークにおいて、マルチキャスト送信端末を収容するFirst-Hop RouterとRPとの間の通信が不安定な場合に、マルチキャスト送信端末を収容するパケット中継装置のPIM Register送信負荷を、汎用的かつ簡便な手段で抑制すること。【解決手段】  First-Hop Routerにて、RP到達性を到達性監視部230にて監視し、応答時間が一定時間以上かかった回数をRP管理表222に保存し、First-Hop Routerからの到達性が安定していないRPをRP選択処理にて選択しないようにすることにより、不安定なRPへのPIM Register送信を抑止する。【選択図】図２
2008177968.tif 000002
【特許請求の範囲】
【請求項１】
PIM-SM（Protocol Independent Multicast Sparse-Mode）によるマルチキャスト通信を行い、少なくとも１以上のRP（Rendezvous-Point）とネットワークを介して接続され、マルチキャストパケットの送信端末を収容するパケット中継装置であって、
前記送信端末からマルチキャストパケットを受信する回線部と、
前記受信したマルチキャストパケットのマルチキャストアドレスに基づいて前記マルチキャストパケットの経路検索を行うマルチキャストパケット中継処理部と、
マルチキャストアドレスとRPアドレスとを対応付けたRP管理表を保持する記憶部と、
疎通確認パケットを前記RPに送信することで到達性を監視し、監視結果を前記記憶部の前記RP管理表に記憶させるRP到達性監視部と、
前記回線部が受信した前記マルチキャストパケットのマルチキャストアドレスに対応するRPアドレスを前記RP管理表より検索し、検索したRPアドレスの到達性の監視結果を判断し、当該判断に基づき前記マルチキャストパケットを検索した前記RPアドレスの前記RPへユニキャストパケットにカプセル化して送信するPIM-SM経路計算部とを有する。
【請求項２】
請求項１記載のパケット中継装置において、
前記検索したRPアドレスの到達性の監視結果が所定の範囲外と判断したとき、前記PIM-SMは前記カプセル化を実行しないことを特徴とする。
【請求項３】
請求項１記載のパケット中継装置において、
前記RP到達性監視部は、前記RPに前記疎通確認パケットを送信するとき、前記記憶部の前記RP管理表で管理されるRPアドレスに基づき送信する。
【請求項４】
請求項１のパケット中継装置であって、
前記RP到達性監視部が前記RP管理表に記憶させる監視結果は、少なくとも前記疎通確認パケットの応答時間が一定時間を越える回数をカウントした結果を含む。
【請求項５】
請求項１のパケット中継装置であって、
少なくとも前記疎通確認パケットの応答時間が規定時間内か否かを判定し、前記RP到達性監視部が前記RP管理表に記憶させる監視結果として前記応答時間のオーバー回数を増やすか、前記応答時間のオーバー回数をゼロに設定するかを選択する。
【請求項６】
請求項４のパケット中継装置であって、
前記PIM-SM経路計算部は、前記回数が閾値内か否かを確認し、閾値内のとき前記カプセル化を行い、閾値外のとき前記受信したマルチキャストパケットを廃棄する。
【請求項７】
請求項６記載のパケット中継装置であって、
前記PIM-SM経路計算部は、前記マルチキャストパケットの廃棄が一定回数を超えた旨を前記マルチキャストパケット中継処理部に通知し、
前記マルチキャストパケット中継処理部は、新たに受信したマルチキャストパケットのうち、前記通知されたマルチキャストパケットと同じマルチキャストアドレスを有するマルチキャストパケットを廃棄する。
【請求項８】
請求項１記載のパケット中継装置であって、
前記RP到達性監視部は、定期的に前記疎通確認パケットを送信する。
【請求項９】
請求項８記載のパケット中継装置であって、
前記RP到達性監視部は、前記回線部によって前記マルチキャストパケットを受信した後に前記疎通確認パケットの前記RPへの送信を開始する。
【請求項１０】
請求項６記載のパケット中継装置において、
前記記憶部は、マルチキャストアドレスに対応する出力インタフェースを規定するマルチキャスト経路表を記憶し、
前記マルチキャストパケットの廃棄が一定回数を超えたとき、前記PIM-SM経路計算部は前記マルチキャスト経路表の出力インタフェースからRPを削除する。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、インターネットにおけるマルチキャスト中継技術に関し、特にPIM-SMを用いたマルチキャスト経路制御に関する。
【背景技術】
【０００２】
マルチキャストは、送信端末から送信された１つのパケットを中継途中の適切なパケット中継装置で複製し、複数の回線へパケットを出力することにより、同一内容のパケットを複数の受信端末へ送信する技術である。複数の送信先に対してパケットを複数回送信するのに比べて少ない量のパケットで複数の送信先にパケットを送ることが可能であるため、特にストリーミングやビデオ会議に代表される大容量トラフィックを必要とするリアルタイムマルチメディア通信に適している。
【０００３】
マルチキャストパケットを本来そのパケットを受信すべき受信端末へのみ送信するためには、パケット中継装置がマルチキャストパケットを複数の回線へ出力する際、適切な回線を選択する必要がある。この回線選択の判断基準を作成するのがマルチキャスト経路制御プロトコルであり、PIM-SM(Protocol Independent Multicast Sparse-Mode: 非特許文献１)が通常用いられている。
PIM-SMではRP(Rendezvous-Point)と呼ばれるパケット中継装置が経路制御において中心的な役割を果たす。PIM-SMではマルチキャスト通信を行うにあたり、マルチキャストパケットを受信する受信端末からマルチキャスト参加要求をLast-Hop Router（受信端末を収容するパケット中継装置）に送信する。Last-Hop Routerは受信端末からのマルチキャスト参加要求を受け、RPに向けてマルチキャスト参加要求を送信する。マルチキャスト参加要求は途中のパケット中継装置を経由して、やがてRPに到着し、マルチキャスト参加要求を中継した途中のパケット中継装置では、中継した方向とは逆の方向にマルチキャストパケットを配送する経路が生成される。これにより、RPからLast-Hop Routerまでのマルチキャストパケットの配送木が構成される。
【０００４】
一方マルチキャスト送信端末では、まず送信するマルチキャストパケットをFirst-Hop Router（送信端末を収容するパケット中継装置）に送る。First-Hop Routerは、受信したマルチキャストパケットを一旦ユニキャストパケット(PIM Registerパケット)にカプセル化して、RPへ送信する。RPは受信したPIM Registerパケットからマルチキャストパケットを取り出し、構成された配送木にもとづいて、Last-Hop Router方向の回線へそのマルチキャストパケットを出力する。
【０００５】
しかし、上述のPIM Registerパケットを用いた中継は中継性能が出にくいため、PIM-SMではPIM Registerパケットの流量がある一定量を超えたときにFirst-Hop Routerからカプセル化なしでPRへマルチキャストパケットのまま直接中継できるように動く。具体的には、通信量がある閾値を超えたときに、RPがFirst-Hop Routerに対してPIM Join-Pruneパケットを送信し、これによりFirst-Hop RouterからRPまでのマルチキャストパケットの配送木が構成される。さらにRPはカプセル化を中止する命令(PIM Register-Stopパケット)をFirst-Hop Routerに送ることにより、First-Hop Routerでのカプセル化が中止され、構成された配送木にもとづいたマルチキャストパケットの直接中継への移行を実現する。
【０００６】
ところが、First-Hop RouterとRPとの間の回線やFirst-Hop RouterやRP自身が不安定なとき、RPからのPIM Register-StopパケットがFirst-Hop Routerに届かないことがある。この場合、First-Hop RouterにおけるPIM Registerパケット送信処理が止まらず、First-Hop RouterのCPU負荷が高くなる。そのため元々不安定だったFirst-Hop RouterとRPとが、PIM Registerパケット送信によるCPU負荷によりますます不安定になるという問題がある。
【０００７】
PIM-SM仕様(非特許文献１)では、BSR(BootStrap Router)を用いてこの問題を解決している。BSRはRP情報をネットワーク内へ定期的に広告するパケット中継装置であり、First-Hop RouterはBSRからの情報に基づき、PIM Registerパケットの送信先RPを選択する。上述したネットワークが不安定な状態ならば、BSRからのRP情報がFirst-Hop Routerに到達しなくなり、やがてBSRからのRP情報がタイムアウトするため、First-Hop RouterからRPへのPIM Registerパケット送信が抑止される。
【０００８】
PIM-SM仕様を拡張しRPなしでマルチキャスト経路制御を実現するPIM-SSM (Protocol Independent Multicast Source-Specific Multicast) (非特許文献２)を用いても本問題は解決可能である。PIM-SSMはマルチキャスト受信端末からのマルチキャスト参加要求にマルチキャスト送信端末のIPアドレスが含まれていることを前提に、Last-Hop Routerが直接First-Hop Routerへグループ参加要求を送ることにより、First-Hop RouterからRPへのPIM Register送信を不要にしている。
Cisco社(非特許文献３)では、First-Hop RouterでのPIM Register送信レート制御により、この問題を解決している。First-Hop Router
にてPIM Register送信上限レートを規定することにより、First-Hop-RouterがPIM Registerパケット送信負荷で過負荷になることを防止する。
【０００９】
【非特許文献１】IETF, ”Protocol Independent Multicast-Sparse Mode (PIM-SM): Protocol Specification”, RFC2362.
【非特許文献２】IETF “An Overview of Source-Specific Multicast (SSM)”, RFC3569
【非特許文献３】Cisco Systems “Cisco IOS IP Multicast Command Reference Release 12.4T”pp.179-180.
【非特許文献４】IETF, “Embedding the Rendezvous Point (RP) Address in an IPv6 Multicast Address”, RFC3956
【非特許文献５】IETF, “Internet Group Management Protocol, Version 3”, RFC3376
【非特許文献６】IETF, “Multicast Listener Discovery Version 2 (MLDv2) for IPv6”, RFC3810
【非特許文献７】IETF, “Anycast-RP Using Protocol Independent Multicast (PIM)”, RFC4610
【特許文献１】特開2004-179811号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
BSRを用いた対策方法が有効なのは、BSRからの情報でFirst-hop RouterがRP情報を学習しているときに、BSRからFirst-hop Routerへの到達性が長時間不安定になった場合のみである。たとえば静的にRPを設定するEmbedded-RP(非特許文献４)などの場合には効果がない他、First-hop RouterからRPへの片方向の到達性のみが不安定になった場合にも対応できない。さらにBSRから配布されるRP情報のタイムアウトまでには時間がかかるため、それまでの間はFirst-hop RouterにおけるPIM Register送信負荷が軽減されない。
【００１１】
PIM-SSMはPIM Register送信を不要にする技術であるが、PIM-SSMを動かすためには、端末やアプリケーションやレイヤー2スイッチがSSM対応のグループ参加要求プロトコル(IGMPv3(非特許文献５)やMLDv2(非特許文献６))に対応するか、端末収容レイヤー3パケット中継装置がSSM対応のグループ参加要求プロトコル変換技術(特許文献１)を実装する必要がある。これらの技術のいずれかを全ての装置が実装しているネットワーク以外には、そもそもPIM-SSMを適用できない。
【００１２】
PIM Register送信レート制御はFirst-Hop Routerの送信負荷がある一定値以上にならないことを保証する技術であるが、パケット中継装置内のPIMプロセスにおける Register送信レートの算出自身が、First-Hop Routerにとっての負荷になる可能性があるほか、上述したネットワークが不安定な状態においても、PIM Register送信レートがある一定値以下であれば、PIM Register送信を行ってしまうことが課題である。
【００１３】
これらの課題に対して、本発明は、PIM-SMネットワークにおいて、First-Hop Routerが不安定なRPを選ぶことを簡便かつ汎用性のある方法で回避することにより、First-Hop RouterのCPU負荷を軽減することを目的としている。
【課題を解決するための手段】
【００１４】
上記目的を達成するために本発明では、First-Hop RouterがRPに対して疎通確認パケットを送信し、RPは当該パケットに対して応答パケットを返す。First-Hop Routerが一定回数連続で、応答パケットを受信しないもしくは受信はしても応答時間が一定時間よりも長い場合に、当該RPは不在であるとみなす。
【００１５】
First-Hop Routerが送信者からマルチキャストパケットを受け取りPIM Registerパケットの送信先RPを選ぶとき、上記処理により不在であるとみなされたRPを選ばないことにより、First-Hop RouterはPIM Registerを送るRPを見つけられなくなる。そのため、PIM Register送信負荷を抑止できる。
【００１６】
更に、RP不在時にはマルチキャストパケットを一定時間強制廃棄するnegative cache機構を利用することにより、First-Hop RouterのPIMプロセスがRP送信先を計算する負荷も抑えることができる。
【発明の効果】
【００１７】
本発明によれば、First-Hop Routerにおける、PIM-Registerパケットへのカプセル化を含めたPIM-Registerパケット送信処理自体の負荷とPIM-Registerパケット送信処理をPIM-SM処理部に依頼する負荷とを軽減することができる。
【００１８】
本発明では、PIM-SMマルチキャストネットワークにおいて、First-Hop Routerが不安定なRPを選ぶことを簡便かつ汎用性のある方法で回避することにより、前者の負荷を軽減する。
【００１９】
更にRP不在時のマルチキャストパケット強制廃棄機能(negative cache機能)と併用することにより、後者の負荷も軽減する。
【００２０】
またRP間の同期プロトコルであるAnycast-RP（非特許文献７）と併用することにより、First-Hop Routerが選ぶRPとLast-Hop Routerが選ぶRPとが異なる場合でも通信が継続できるようにする。
【発明を実施するための最良の形態】
【００２１】
図１に本発明の一実施形態であるPIM-SMマルチキャストネットワークの構成例を示す。PIM-SMマルチキャストネットワーク100は、PIM-SMルータ101、102、103と送信端末104と受信端末105から構成される。PIM-SMルータのうち送信端末を収容するものがFirst-Hop Router 101であり、受信端末を収容するものがLast-Hop Router 103である。そしてRP（Rendezvous-Point）102が、First-Hop RouterからのPIM Registerパケットの受信処理やLast-Hop Routerからのグループ参加要求受信処理により、送信端末104から受信端末105へのマルチキャスト中継を仲介する。
【００２２】
図２にFirst-Hop Router 101の構成図を示す。First-Hop Router 101は回線201、202、203の間でパケット中継を行う装置である。マルチキャストパケット中継処理部210は、回線から入力されたマルチキャストパケットをマルチキャスト経路表に従って他の回線に出力するハードウェア回路である。ユニキャストパケット中継処理部211も、同様にしてユニキャスト経路表に従ってユニキャストパケットを中継するハードウェア回路である。これらの中継処理部210,211の経路表は、メモリ213上にありCPU212上で動作する経路制御プログラム215により管理更新される。
【００２３】
図１０にマルチキャスト経路表の一例を示す。詳細は後述するが、マルチキャスト経路表450は、送信元のＩＰアドレスを表すソースアドレス451、マルチキャストアドレス452、入力元インタフェース453、出力インタフェース454で構成される。
【００２４】
経路制御プログラム215は、マルチキャストパケット中継処理部210やユニキャストパケット中継処理部211との通信を行うパケット入出力ドライバ240と、パケット入出力ドライバから入力されたパケットに対してPIM Registerパケットへのカプセル化を含めたPIM Registerパケット送信処理を行うPIM-SM経路計算部220と、後述するRPへの到達性を監視するRP到達性監視部230からなる。また、到着したパケットの送信元が自分自身に直結する端末であるか否かを判断するためのインタフェースアドレスリスト221と、マルチキャストアドレスに対応するRPアドレスを管理するRP管理表222を持ち、メモリ213に格納されている。
【００２５】
回線201〜203からマルチキャストパケットを受信すると、マルチキャストパケット中継処理部210は、受信したマルチキャストパケットのマルチキャストアドレスにマッチする経路エントリがマルチキャスト経路表450にあるかどうかを調べる。マッチする経路エントリが存在する場合には、出力インタフェース454の内容に従って処理を行う。図１０（ａ）を例に処理内容を説明すると、エントリ１のように出力インタフェースに物理回線が設定されている場合には、PIM Registerパケットへのカプセル化は行わず、マルチキャストパケットのまま該当エントリに示される出力回線にパケットを出力することで直接中継を行う。エントリ２のように出力インタフェースにRPが設定されている場合には、マルチキャストパケット中継処理部210はパケット入出力ドライバ240経由でPIM-SM経路計算部220にマルチキャストパケットの到達を通知する。この通知を受けるとPIM-SM経路計算部220はPIM Registerパケットへのカプセル化を含めたPIM Registerパケット送信処理を行う。エントリ３のように出力インタフェースに何も設定されていない場合は、マルチキャストパケット中継処理部211はPIM-SM経路計算部220にマルチキャストパケットの到達を通知せず、当該マルチキャストパケットを廃棄する。
【００２６】
一方、マルチキャストアドレスにマッチする経路エントリがマルチキャスト経路表450に存在しない場合は、マルチキャストパケット中継処理部210はパケット入出力ドライバ240経由でPIM-SM経路計算部220にマルチキャストパケットの到達を通知する。この通知を受けるとPIM-SM経路計算部220はPIM Registerパケットへのカプセル化を含めたPIM Registerパケット送信処理を行う。
【００２７】
従って、マルチキャストパケット中継処理部210は受信したマルチキャストパケットのマルチキャストアドレスにマッチするエントリがマルチキャスト経路表450に存在し出力インタフェースにRPが設定されている場合、もしくは、マルチキャストアドレスにマッチするエントリがマルチキャスト経路表450に存在しない場合に、PIM Register送信が必要であると判断し、PIM-SM経路計算部220にマルチキャストパケットの到達を通知する。その後、マルチキャストパケットの到達通知を受けたPIM-SM経路計算部220は、PIM Registerパケットへのカプセル化を含めたPIM Registerパケット送信処理を行う。
【００２８】
図３にFirst-Hop Router 101でのPIM-Registerパケット送信処理フロー図を示す。ここでは、マルチキャストパケット中継処理部210が、受信したマルチキャストパケットのマルチキャストアドレスにマッチするエントリがマルチキャスト経路表450に存在し出力インタフェースにRPが設定されている場合、もしくは、マルチキャストアドレスにマッチするエントリがマルチキャスト経路表450に存在しない場合に、PIM Register送信が必要であると判断し、PIM-SM経路計算部220にマルチキャストパケットの到達を通知した後の処理フローについて説明する。PIM-SM経路計算部220はマルチキャストパケット中継処理部210からマルチキャストパケットの到達通知を受けると（ステップ_300）、そのマルチキャストパケットの送信元が自分自身に直結する端末であるか否かを、インタフェースアドレスリスト221により確認する(ステップ_305)。マルチキャストパケットの送信元が直結する端末ではない場合、当該マルチキャストパケットは廃棄される(ステップ_330)。マルチキャストパケットの送信元が直結する端末である場合は、First-Hop Router 101のPIM-SM経路計算部220は当該マルチキャストパケットのマルチキャストアドレスをもとに後述するRP管理表222を検索し(ステップ_310)、マルチキャストアドレスに対応するRPが存在するか否かを確認する(ステップ_320)。マルチキャストアドレスに対応するRPが存在しない場合は、PIM Registerパケットの送信先が無いため当該マルチキャストパケットを廃棄する(ステップ_330)。RPが存在する場合は、RP管理表222から対応するRPアドレスを取得し、受信したマルチキャストパケットを、取得したRPアドレスを送信先アドレスとするPIM Registerパケット（ユニキャストパケット）にカプセル化し、パケット入出力ドライバ240経由でRPへユニキャストで送信する(ステップ340)。ユニキャストパケットを送信する場合、ユニキャストパケット中継処理部211は送信先アドレスであるRPアドレスについて内部の経路表を検索し、出力回線を決定し、決定した出力回線からユニキャストパケットを送信する。
【００２９】
PIM-SM経路計算部220は、PIM Registerパケット送信後、さらにマルチキャスト経路表450に経路エントリを追加し、当該パケットの出力回線としてRPを登録する。ただし、経路エントリが既に存在する場合には、追加は行わない。例えば、マルチキャスト経路表450が図１０（ａ）の場合にマルチキャストアドレスが「ff3e:40:2001:db8:1::8004」のパケットを受信すると、マルチキャスト経路表450にエントリが存在しないため、PIM-SM経路計算部220によってPIM Registerパケット送信が行われ、マルチキャスト経路表450に経路エントリ4を追加し、出力回線としてRPを登録することになる（図１０（ｂ））。再び送信元から同じパケット（マルチキャストアドレスが「ff3e:40:2001:db8:1::8004」のパケットを受信したとき、マルチキャストパケット中継処理部210はさきほど追加したエントリの出力インタフェース454に従い、同じ手順でPIM-SM経路計算部220を介してRPへPIM Registerパケットを送信する。
【００３０】
一方、First-Hop Router 101から送られるPIM Registerパケットの量が一定量を超えると、RPからFirst-Hop Router 101へPIM Join-PruneパケットとPIM Register-Stopパケットが到達する。前者のPIM Join-Pruneパケットにより、マルチキャスト経路表450の当該マルチキャストに関する経路エントリの出力インタフェース454としてRP方向の物理回線が追加される。例えば、図１０（ｂ）のマルチキャスト経路表450のエントリ４に対して、出力インタフェース454にRP方向の物理回線である「回線５」が追加される（図１０（ｃ））。そして後者のPIM Register-Stopパケットにより、同経路エントリの出力インタフェース454からRPが削除される。例えば、図１０（ｃ）のマルチキャスト経路表450のエントリ４の出力インタフェース454からRPが削除される（図１０（ｄ））。この追加および削除により、マルチキャスト経路表450の出力インタフェース454に物理回線が設定されるため、First-Hop Router 101でのPIM Register送信が終了し、マルチキャストパケットの直接中継が行われる。
【００３１】
図２のRP管理表222とRP到達性監視部230について、図４と図５を用いてそれぞれ説明する。
【００３２】
RP管理表222は図４に示すように、マルチキャストアドレス401とRPアドレス402の対応付けを管理する表である。この表にはさらに、各RPに関する優先度403とRP到達性確認の応答時間オーバー回数404が記憶される。優先度403および応答時間オーバー回数404は、RP到達性監視部230により更新される。
【００３３】
RP到達性監視部230は、RP管理表222にあるRPアドレスに対する到達性の監視を行う。RPアドレスへの到達性は図５のフローチャートに従い監視される。RP到達性監視部230は、まずRP管理表220のRPアドレス欄からIPアドレスを抽出し（ステップ500）、そのIPアドレスへ疎通確認パケットであるICMP ECHOメッセージを送付する(ステップ505)。そしてICMP ECHO-REPLY応答が返ってくるまでの応答時間を測定する(ステップ510)。測定時間が規定範囲以内である場合は、RP管理表220の当該RPアドレスに関する応答時間オーバー回数403を0に設定する(ステップ520)。測定時間が規定範囲以上である場合（応答が返ってこない場合も含む）は、応答時間オーバー回数403の値を1つ加算する(ステップ530)。以上のステップ500〜530をRP管理表450が保持する全てのRPアドレスに対して定期的に（例えば１秒間に１回など）行う。これにより、不安定なRPを把握することができる。なお、測定時間の規定範囲は任意に変更できるものとする。
【００３４】
PIM-SM経路計算部では、RP到達性監視部230により測定された応答時間オーバー回数403の値と優先度403とを基に、図６のフローチャートに従って、PIM Registerパケットの送信先であるRPを選択する。これは、図３のステップ310〜320にて受信パケットのマルチキャストアドレスに対応するRPが存在するかを確認する際に行われる処理である。まず、PIM-SM経路計算部220は、RP管理表220から受信したマルチキャストパケットのマルチキャストアドレスに最も長くマッチするマルチキャストアドレス401を持つエントリを検索する。最も長くマッチするエントリが複数ある場合は、優先度403が最も高いエントリを選択する(ステップ605)。マッチするエントリ不在の場合は(ステップ610)、RPが見つからなかったと判断する(ステップ630)。マッチするエントリが存在する場合は(ステップ610)、当該エントリの応答時間オーバー回数403を参照し、規定値を超えているか否かを確認する(ステップ620)。超えていない場合はこのRPが対応するRPであると判断し(ステップ640)、超えている場合は対応するRPがないとみなす(ステップ630)。図３で説明したが、対応するRPが存在すると判断されれば当該RPに対してPIM Registerパケットの送信が行われるし（ステップ340）、対応するRPが存在しないと判断されれば受信したパケットは廃棄される。これにより、応答時間オーバー回数404が規定値を超えているような不安定なRPに対してPIM Registerパケットの送信が行われないことになる。なお、規定値は任意に設定可能であるものとする。
【００３５】
以上の処理により、First-Hop Routerとの間の疎通が不安定な装置をRPとして選択することを防ぐことができる。これにより、不安定な装置をRPとして選択することによる、PIM Register送信のCPU負荷を抑制することができる。
【００３６】
また、negative cache機構を併用することにより、さらにFirst-Hop Router 101のCPU負荷を抑制することができる。図７にnegative cache機構を用いた場合のPIM Register送信の処理フロー図を示す。図３のPIM Register送信処理との違いは、ステップ720にて対応するRPが存在しなかった場合に、PIM-SM経路計算部220が、受信したマルチキャストパケットの到達頻度が閾値を超えているかを確認し(ステップ755)、閾値を超えている場合にはマルチキャスト経路表450の当該マルチキャストパケットのマルチキャストアドレスに対応する経路エントリの出力インタフェース454からRPを削除する(ステップ755)ことである。出力インタフェース454からRPを削除してからは、マルチキャストパケット中継処理部211は当該マルチキャストパケットと同じマルチキャストパケットを受信してもPIM-SM経路計算部220に当該パケットの到達を通知せず、当該パケットを廃棄するため、PIM-SM経路計算部220にPIM-Registerパケット送信処理を依頼するよるCPU負荷を抑制することができる。
【００３７】
以上の処理により、First-Hop Routerとの間の疎通が不安定なRPへPIM-Registerパケットの送信を必要とするマルチキャストパケットの受信をPIM-SM経路計算部220に通知することを防ぐことができる。これにより、PIM-SM経路計算部220にPIM-Registerパケット送信処理を依頼するよるCPU負荷を抑制することができる。
【００３８】
また、不安定でないRPが存在せず、PIM Register送信できない場合は送信端末から受信端末へマルチキャストが行えなくなるが、特に問題はない。RPが不安定な場合は本発明の有無にかかわらず、そもそもマルチキャスト通信が不安定になるためである。本発明を用いるとFirst-Hop RouterのCPU負荷を抑制することができるため、マルチキャスト以外の通信への影響を抑制することができる。
【００３９】
本実施形態では、図５のアルゴリズムを定期的に実行しているが、図５のアルゴリズムをマルチキャストパケット受信が開始してから実施しても同様な効果を得ることができる。
【００４０】
この場合、最初にマルチキャストパケットを受信した直後にはRPへの疎通確認が終了していないため、RP管理表222の対応するRPアドレスにおける応答時間オーバー回数404の値は0に設定されている。従って、図３のフローに沿ってRPへのPIM Registerパケット送信が行われる。RPへの疎通確認が終了するまでは、First-Hop RouterはRPへのPIM Registerパケット送信を行う。
【００４１】
しかしそのRPへの疎通が不安定と判明した後は、PIM-SM経路制御処理部220はRP管理表222に対応するRPが存在しないと判断し、PIM Registerパケット送信は行わず当該マルチキャストパケットを廃棄する。更に図７のフローを適用し、マルチキャスト経路表450の出力インタフェース454からRPを削除してもよい。以上により、疎通が不安定なRPへのPIM Registerパケット送信が抑止される。また、使用されていないRPに対する疎通確認を行わないため、更にCPU負荷を軽減することができる。
【００４２】
図８に本発明の対象となるPIM-SMマルチキャストネットワークの別の構成例を示す。図1とは異なりネットワーク上に稼動するRPが複数存在し、片方のRPに障害が発生した場合は、もう片方のRPのみで運用するようになっている。両RPはAnycast-RP(非特許文献７)により、First-Hop Routerから届いたPIM Registerパケットを互いに中継しあうことにより、それぞれのRP経由でのLast-Hop Routerへのマルチキャスト中継を実現する。この環境でも、RPが不安定になった場合にAnycast技術によるRP切替が動作しないため、PIM Registerが停止しない問題が発生する。
【００４３】
図２のFirst-Hop Router101を図８のFirst-Hop Router101およびLast-Hop Router103に適用し、図３の手順でFirst-Hop RouterがPIM Registerパケットを送信し、図4のRP管理表の応答時間オーバー回数欄を図5の手順で更新する。なお本実施例ではAnycast-RPを用いているが、各パケット中継装置ではPIM-SMの設定により、Anycast-RPアドレスではなく各RPのアドレスを認識しているものとする。これは、通常Anycast-RPアドレスは仮想ＩＰアドレスとして同じＩＰアドレスが複数のRPに設定されており、この場合各RPの区別を行えないためである。
【００４４】
この場合図6ではなく図9のフローチャートに従い、First-Hop RouterおよびLast-Hop RouterでRPを選択する。図9のフローチャートは、図6とは異なり、応答時間オーバー回数を最初のRP選択で考慮している(ステップ810)。先に応答時間オーバー回数を考慮することにより、最良のRPが不安定なときに、安定している中で最良なRPを選択することが可能となる。
【００４５】
図9のフローチャートに従った結果、Last-Hop Router 103がRP 106を選択し、First-Hop Router 101がRP 102を選択したとする。この場合First-Hop Router 101は送信端末104から受信したマルチキャストパケットを、PIM Registerパケットにカプセル化してRP 102へ送信する。RP 102はAnycast-RPにより、RP 106へ同PIM Registerパケットを中継する。一方Last-Hop Router 103はRP 106へグループ参加要求を送信しているため、RP 102から受信したPIM RegisterパケットをLast-Hop Router 103へ中継する。
【００４６】
以上の処理により、複数RPがある条件下でも、不安定なRPを選択せずに通信することにより、マルチキャスト中継を行うことができる。
【００４７】
これまで説明した実施形態ではFirst-Hop RouterからRPに向けて疎通確認パケットを送信することによりRPへの到達性を確認しているが、それ以外の方法によりRPへの到達性がないことを確認しても構わない。
【００４８】
例えば、First-Hop RouterからRPへ到達するための出力回線における物理回線エラーの発生頻度が一定値を超えたときに、当該RPへの到達性が悪いと判断してもよい。これは、一般的にルータ等が備えるエラーカウンタを図２の回線２０１〜２０３に備え、このカウンタ値を見ることにより、物理回線エラーの発生を検知できる。この場合は、図４の表の応答時間オーバー回数404フィールドに物理回線エラーの発生頻度を入力し、図６や図９のフローチャートに従うことにより、First-Hop Routerは疎通が不安定RPの選択を避けることができる。
【図面の簡単な説明】
【００４９】
【図１】本発明の一実施形態であるPIM-SMマルチキャストネットワークの構成例を示す。
【図２】First-Hop Router 101の構成図を示す。
【図３】PIM-Registerパケット送信処理フロー図を示す。
【図４】RP管理表の構成例を示す。
【図５】RPアドレスへの到達性を監視する処理フロー図を示す。
【図６】RPを選択する処理フロー図を示す。
【図７】negative cache機構を用いたPIM Register送信の処理フロー図を示す。
【図８】複数のRPが存在するPIM-SMマルチキャストネットワークの構成例を示す。
【図９】複数のRPが存在する場合のRP選択処理フロー図を示す。
【図１０】マルチキャスト経路表の一例を示す図である。
【符号の説明】
【００５０】
101：First-Hop Router、102：RP、103：Last-Hop Router、104：送信端末、105：受信端末、210：マルチキャストパケット中継処理部、211：ユニキャストパケット中継処理部、215：経路制御プログラム、220：PIM-SM経路計算部、221：インタフェースアドレスリスト、222：RP管理表、230：RP到達性監視部、240：パケット入出力ドライバ
【図１】
2008177968.tif 000003
【図２】
2008177968.tif 000004
【図３】
2008177968.tif 000005
【図４】
2008177968.tif 000006
【図５】
2008177968.tif 000007
【図６】
2008177968.tif 000008
【図７】
2008177968.tif 000009
【図８】
2008177968.tif 000010
【図９】
2008177968.tif 000011
【図１０】
2008177968.tif 000012