JP6993883B2 - マルチキャスト中継装置、マルチキャスト中継システムおよびマルチキャスト中継方法 - Google Patents

マルチキャスト中継装置、マルチキャスト中継システムおよびマルチキャスト中継方法 Download PDF

Info

Publication number
JP6993883B2
JP6993883B2 JP2018003714A JP2018003714A JP6993883B2 JP 6993883 B2 JP6993883 B2 JP 6993883B2 JP 2018003714 A JP2018003714 A JP 2018003714A JP 2018003714 A JP2018003714 A JP 2018003714A JP 6993883 B2 JP6993883 B2 JP 6993883B2
Authority
JP
Japan
Prior art keywords
multicast
relay device
data packet
upstream
request message
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.)
Active
Application number
JP2018003714A
Other languages
English (en)
Other versions
JP2019125862A (ja
Inventor
圭介 門脇
英洋 福島
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alaxala Networks Corp
Original Assignee
Alaxala Networks Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Alaxala Networks Corp filed Critical Alaxala Networks Corp
Priority to JP2018003714A priority Critical patent/JP6993883B2/ja
Publication of JP2019125862A publication Critical patent/JP2019125862A/ja
Application granted granted Critical
Publication of JP6993883B2 publication Critical patent/JP6993883B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、インターネットにおけるマルチキャスト中継技術に関する。
マルチキャストは、インターネットにおいてマルチキャスト送信者が送信した1つのマルチキャストデータパケットを、マルチキャスト受信者を収容するルータが、マルチキャスト受信者を接続する複数の回線にマルチキャストデータパケットを複製して出力することにより、マルチキャスト受信者を収容するルータまでのデータ通信量を抑えることで、マルチキャストデータパケットを効率良く複数のマルチキャスト受信者に中継する技術である。
マルチキャスト受信者のマルチキャストグループへの加入状況を管理する代表的なマルチキャストグループ管理プロトコルとしてIGMP(非特許文献2)およびMLD(非特許文献3)が知られている。マルチキャストグループ管理プロトコルは、問い合わせメッセージ(IGMP/MLD問い合わせメッセージ)を定期的に送信し、問い合わせメッセージを受信したマルチキャスト受信者が加入要求メッセージ(IGMP/MLD加入要求メッセージ)を応答することで、マルチキャストグループの加入状況を管理するプロトコルである。
マルチキャストは一般的にIPアドレスを付与したインタフェース単位で中継処理を行う。IPアドレスを付与したインタフェースが複数の回線を収容したVLAN(Virtual LAN)であった場合、前述した通り、マルチキャストデータパケットはVLANに属する全ての回線に複製して中継されるため、加入要求メッセージを受信していない回線に対してもマルチキャストデータパケットが中継されてしまう。すなわち、VLANに属する複数の回線のうち、1回線でもマルチキャストグループへの加入要求メッセージを受信すると、VLANに属する他の全ての回線にマルチキャストデータパケットを複製し中継する。このとき、加入要求メッセージを受信していない回線に中継されるマルチキャストデータパケットは不要なトラフィックであり、そのようなパケットを中継することによって通信帯域を無駄に使用してしまう。
マルチキャストデータパケットを更に効率よく中継する技術として、IGMP/MLDスヌーピング技術(IGMP/MLD snooping: 非特許文献1)が知られている。IGMP/MLDスヌーピングでは、VLANに属する回線で受信した加入要求メッセージの内容を解析し、加入要求メッセージを受信した回線情報を取得する。取得した回線情報とマルチキャストグループアドレスを元にマルチキャストデータパケットの中継を制御することで、加入要求メッセージを受信した回線にのみマルチキャストデータパケットを中継する。これにより、加入要求メッセージを受信した回線以外へのマルチキャスト中継は抑止され、通信帯域を無駄に使用することなくマルチキャスト中継を行うことが出来る。
IGMP/MLDスヌーピングは、前述した通り、マルチキャスト受信者からの、加入要求メッセージによって中継制御情報を作成する。加入要求メッセージは、ネットワーク内に設定したIGMP/MLD問い合わせメッセージ送信装置(IGMP/MLDクエリア)から定期的に送信される問い合わせメッセージに対して、各VLANに接続しているマルチキャスト受信者が応答する。
IGMP/MLDスヌーピングを使用する場合、一般的にマルチキャストルータポートを設定する。マルチキャストルータポートは、自装置と上流のマルチキャスト中継装置(マルチキャストルータも含む)とを接続するポートである。
マルチキャストルータポートの役割は、マルチキャスト受信者から送信された加入要求メッセージおよび離脱要求メッセージ(IGMP/MLD離脱要求メッセージ)をマルチキャストルータポートに中継することである。これらのメッセージに基づいて上流のマルチキャスト中継装置は下流のマルチキャスト中継装置に接続されたマルチキャスト受信者のマルチキャストグループ加入状態を把握し、当該マルチキャストデータパケットの下流への中継要否を制御する。
なお、上記のように、マルチキャストデータパケットは上流のマルチキャスト中継装置から下流のマルチキャスト中継装置に転送される。すなわち、マルチキャストデータパケットの送信元の側のマルチキャスト中継装置を上流のマルチキャスト中継装置、送信先の側のマルチキャスト中継装置を下流のマルチキャスト中継装置と記載する。
前述した通り、IGMPおよびMLDでは定期的にIGMP/MLDクエリアから問い合わせメッセージを送信し、問い合わせメッセージを受信したマルチキャスト受信者が加入要求メッセージを応答する。このとき、マルチキャストグループに加入するマルチキャスト受信者が大量に存在した場合、定期的な問い合わせメッセージの送受信のたびに、大量の加入要求メッセージが応答され、下流のマルチキャスト中継装置においては、上流のマルチキャスト中継装置への大量の中継処理が必要となり、上流のマルチキャスト中継装置においては、大量の加入要求メッセージの受信処理が必要となる。これによって、定期的な問い合わせメッセージの送受信のたびに、下流および上流のマルチキャスト中継装置が高負荷状態となる。そして、この高負荷状態を起因として、下流および上流のマルチキャスト中継装置でマルチキャストグループへの加入および離脱処理の遅延および加入要求メッセージの取りこぼし等の悪影響が発生することが考えられる。加入要求メッセージの取りこぼしが発生した場合、当該加入要求メッセージのマルチキャスト中継が停止する可能性がある。
VLANでマルチキャストを使用する場合、前述した通りマルチキャストではVLAN内の全回線にマルチキャストデータパケットを中継する。このため、VLAN内で同一のマルチキャストグループに加入しているマルチキャスト受信者が複数存在していたとしても、同一のマルチキャストグループに対して、1つの加入要求メッセージだけ送信すれば、VLANに対してマルチキャスト中継が可能である。
IGMPおよびMLDでは、マルチキャスト受信者がVLAN内で1つの加入要求メッセージだけ送信するための処理として、マルチキャスト受信者が送信した加入要求メッセージをVLAN内でフラッディングする。他の同一マルチキャストグループに加入するマルチキャスト受信者は、当該加入要求メッセージを受信すると、同一のマルチキャストグループに対する加入要求メッセージがすでに送信されたと判断して、当該マルチキャスト受信者からの当該加入要求メッセージの送信を抑止する。これによって、VLAN内で同一のマルチキャストグループに加入しているマルチキャスト受信者からの加入要求メッセージ送信は抑止され、無駄な加入要求メッセージ送信を低減することができる。
また、マルチキャスト受信者は、IGMP/MLD問い合わせメッセージを受信すると、IGMP/MLD加入要求メッセージの集中受信の負荷が軽減されるように、所定の最大応答時間内に、IGMP/MLD加入要求メッセージを応答する。最大応答時間は、IGMP,MLDのプロトコル規格として通常は10秒とされている。最大応答時間は問い合わせメッセージ内に格納されており、マルチキャスト受信者は応答時間を最大応答時間に基づいて無作為に決定する。これにより、マルチキャスト受信者からの加入要求メッセージ送信を分散することで、さらに加入要求メッセージ受信時の負荷を低減している。
一方、IGMP/MLDスヌーピングでは、前述した通り回線毎にマルチキャストグループへの加入状況を管理する必要があるため、加入要求メッセージをVLAN内にフラッディングしない。そのため、VLAN内の同一のマルチキャストグループに加入しているマルチキャスト受信者も加入要求メッセージを送信する。その結果、ネットワーク内に同一のマルチキャストグループに加入するマルチキャスト受信者が大量に存在する場合、VLANでマルチキャストを使用している場合と比較して膨大な加入要求メッセージが応答されてしまう。その結果、前述した通り、定期的な問い合わせメッセージを受信するたびに、下流および上流のマルチキャスト中継装置は大量の加入要求メッセージの送受信処理が必要となり高負荷状態となる。
問い合わせメッセージ受信時の、大量の加入要求メッセージの中継処理を抑制する技術として、IGMP/MLDプロキシー機能(非特許文献4)が知られている。IGMP/MLDプロキシー機能は、問い合わせメッセージ受信時にVLAN内の全マルチキャスト受信者からの加入要求メッセージをマルチキャストルータポートに中継するのではなく、下流のマルチキャスト中継装置が学習しているマルチキャストグループの加入要求メッセージを代理で1メッセージだけ応答する機能である。これにより、マルチキャストルータポートに中継する加入要求メッセージは、1つのマルチキャストグループに対して1つの加入要求メッセージのみであるため、中継する加入要求メッセージの数を削減し、上流のマルチキャスト中継装置の負荷を低減することができる。
IETF, " Considerations for Internet Group Management Protocol (IGMP) and Multicast Listener Discovery (MLD) Snooping Switches", RFC4541 IETF, "Internet Group Management Protocol, Version 2", RFC2236 IETF, "Multicast Listener Discovery (MLD) for IPv6", RFC2710 「CentreCOM x900シリーズ・SwitchBlade x908 コマンドリファレンス 5.3.2 IPマルチキャスト / IGMP IGMPプロキシー」、[online]、2009年7月1日、アライドテレシスホールディングス株式会社、2017年11月検索、インターネット(URL: https://www.allied-telesis.co.jp/support/list/switch/x900_sb900/doc/v532_docs/overview-52.html#sec3)
上記のように、マルチキャスト中継装置を複数接続しているネットワークでIGMP/MLDスヌーピングを使用してマルチキャスト中継を行っているマルチキャスト中継装置において、定期的な問い合わせメッセージの送受信のたびに、膨大な加入要求メッセージがマルチキャスト受信者より応答されるため、下流および上流のマルチキャスト中継装置で加入要求メッセージの膨大な送受信処理が必要となり高負荷状態となる。
これに対して、IGMP/MLDプロキシー機能は、1つのマルチキャストグループに対して1つの加入要求メッセージのみ送信するため、1つのマルチキャストグループに多数のマルチキャスト受信者が加入している場合は負荷を低減する効果が高い。しかし、将来的にネットワーク内で扱うマルチキャストグループ数が膨大になることが予想されており、その場合、IGMP/MLDプロキシー機能を使用しても、問い合わせメッセージ受信のたびに、膨大なマルチキャストグループ数の加入要求メッセージの送受信が必要となるため、その都度下流および上流のマルチキャスト中継装置は高負荷となり、十分な効果が得られない。
IGMPおよびMLDのプロトコル規格である、最大応答時間内に加入要求メッセージを分散して送信する手法も、マルチキャストグループ数自体が膨大になった場合、効果は十分でなく根本的な解決にはならない。
本発明の目的は、下流のマルチキャスト中継装置において、マルチキャスト受信者が送信する加入要求メッセージのマルチキャストルータポートへの中継状態を管理することと、上流のマルチキャスト中継装置において、下流のマルチキャスト中継装置から受信した加入要求メッセージで作成したマルチキャスト中継制御情報の生存時間を制御することで、定期的な問い合わせメッセージの送受信のたびに発生する上流および下流のマルチキャスト中継装置の高負荷状態を低減できる装置および手法を提供するものである。
上記課題を解決するために、本発明の代表的な形態は、複数のポートを有し、前記ポート間でマルチキャストデータパケットを中継するマルチキャスト中継装置であって、前記複数のポートのいずれかにマルチキャストデータパケットの送信元である上流のマルチキャスト中継装置が接続されている場合、いずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであるかを示す情報を保持し、前記上流のマルチキャスト中継装置からマルチキャストデータパケットの配信を要求するかを問い合わせるための問い合わせメッセージを受信すると、前記問い合わせメッセージを前記複数のポートの少なくともいずれかに中継し、前記複数のポートのいずれかが、いずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信した場合、当該マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであることを示す情報を保持しているかを判定し、当該マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであることを示す情報を保持していない場合、前記受信した加入要求メッセージを前記上流のマルチキャスト中継装置が接続されたポートに中継し、当該マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであることを示す情報を保持している場合、前記受信した加入要求メッセージの前記上流のマルチキャスト中継装置が接続されたポートへの中継を抑止し、前記複数のポートのいずれかにマルチキャストデータパケットの送信先である下流のマルチキャスト中継装置が接続され、かつ、前記下流のマルチキャスト中継装置からいずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信した場合、前記マルチキャストグループと前記下流のマルチキャスト中継装置が接続されたポートとを対応付ける中継制御情報を保持し、前記複数のポートのいずれかが前記マルチキャストグループのマルチキャストデータパケットを受信した場合、前記中継制御情報に基づいて、前記マルチキャストデータパケットを前記下流のマルチキャスト中継装置が接続されたポートに中継し、所定の間隔で、マルチキャストデータパケットの配信を要求するかを問い合わせるための問い合わせメッセージを少なくとも前記下流のマルチキャスト中継装置に送信し、前記下流のマルチキャスト中継装置から前記マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信したかにかかわらず、前記マルチキャストグループと前記下流のマルチキャスト中継装置が接続されたポートとを対応付ける前記中継制御情報の保持を継続することを特徴とする。
本発明の一態様によれば、定期的な問い合わせメッセージの送受信のたびに発生する、上流のマルチキャスト中継装置の膨大な加入要求メッセージの集中受信による高負荷状態および下流のマルチキャスト中継装置の膨大な加入要求メッセージの中継処理による高負荷状態を低減できる。
上記した以外の課題、構成及び効果は、以下の実施例の説明によって明らかにされる。
本発明の実施例1のネットワーク構成の説明図である。 本発明の実施例1の下流のマルチキャスト中継装置の内部構造の説明図である。 本発明の実施例1の上流のマルチキャスト中継装置の内部構造の説明図である。 本発明の実施例1のマルチキャスト中継装置が保持する構成定義情報の説明図である。 本発明の実施例1のマルチキャスト中継装置が保持するエントリ管理表の説明図である。 本発明の実施例1のマルチキャスト中継装置が保持するマルチキャストパケット中継制御表の説明図である。 本発明の実施例1のマルチキャスト中継装置が離脱要求を受信したときのエントリ管理表の説明図である。 本発明の実施例1の下流のマルチキャスト中継装置で障害が発生した場合に実行される処理の説明図である。 本発明の実施例1の上流のマルチキャスト中継装置が下流装置接続ポートから加入要求メッセージを受信したときに実行する処理を示すフローチャートである。 本発明の実施例1の下流のマルチキャスト中継装置が加入要求メッセージを受信したときに実行する処理を示すフローチャートである。 本発明の実施例1の下流のマルチキャスト中継装置が実行する確認用メッセージ作成処理を示すフローチャートである。 本発明の実施例1の上流のマルチキャスト中継装置が確認処理によって下流装置接続ポートから問い合わせメッセージを受信したときに実行する処理を示すフローチャートである。 本発明の実施例1の下流のマルチキャスト中継装置が上流のマルチキャスト中継装置から問い合わせメッセージを受信した場合に実行する処理を示すフローチャートである。 本発明の実施例1の下流のマルチキャスト中継装置がマルチキャスト受信者から離脱要求メッセージを受信したときに実行する処理を示すフローチャートである。 本発明の実施例1の下流のマルチキャスト中継装置においてエントリの生存時間が満了したときに実行される処理を示すフローチャートである。 本発明の実施例1の下流のマルチキャスト中継装置が障害となったときに実行される処理を示すフローチャートである。 本発明の実施例1の上流のマルチキャスト中継装置が即座にネットワーク内の全ての加入要求メッセージを収集するために実行する処理を示すフローチャートである。 本発明の実施例2の上流のマルチキャスト中継装置の内部構造の説明図である。 本発明の実施例2の上流のマルチキャスト中継装置が、生存時間が無期限の不要なエントリを削除するために実行する不要エントリ判定処理を示すフローチャートである。 本発明の実施例3の上流のマルチキャスト中継装置の内部構造の説明図である。 本発明の実施例3の上流のマルチキャスト中継装置が、下流のマルチキャスト中継装置から受信した加入要求メッセージに基づいて作成するエントリ管理表の生存時間に、任意の時間を設定するために実行する処理を示すフローチャートである。 本発明の実施例3の上流のマルチキャスト中継装置において、残時間が3秒のエントリを検知した場合に実行される処理を示すフローチャートである。 本発明の実施例4のネットワーク構成の説明図である。 本発明の実施例4の各マルチキャスト中継装置に設定されるIGMPスヌーピング情報の説明図である。 本発明の実施例5のネットワーク構成の説明図である。 本発明の実施例5の各マルチキャスト中継装置に設定されるIGMPスヌーピング情報の説明図である。 本発明の実施例6のネットワーク構成の説明図である。 本発明の実施例6の各マルチキャスト中継装置に設定されるIGMPスヌーピング情報の説明図である。
本実施例ではIGMPスヌーピングでの実施例について記述する。
前述した通り、下流のマルチキャスト中継装置は、マルチキャスト受信者からいずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージが送信される場合に、当該マルチキャスト受信者から最初に送信された加入要求メッセージのみを上流のマルチキャスト中継装置に中継する。上流のマルチキャスト中継装置は、下流のマルチキャスト中継装置から中継された加入要求メッセージで作成したエントリ管理表の生存時間を無期限とする。これによって、受信者がマルチキャストデータパケットの配信を要求するかを問い合わせるための定期的な問い合わせメッセージの送受信時に、大量の加入要求メッセージの中継を不要とし、上流および下流のマルチキャスト中継装置の高負荷状態を軽減する。
図1は、本発明の実施例1のネットワーク構成の説明図である。ここでは、例として、ネットワーク内に2台のマルチキャスト中継装置を接続したネットワーク構成を示している。
一般的にIGMPスヌーピングは、マルチキャスト受信者を接続するポートを認識して、加入要求を行ったマルチキャスト受信者のみにマルチキャスト中継を行う機能であるため、マルチキャスト受信者10,11,12を接続している下流のマルチキャスト中継装置2000、および、マルチキャスト受信者13を接続している上流のマルチキャスト中継装置1000に設定する。マルチキャスト中継装置1000にはマルチキャスト送信者20を接続しており、マルチキャスト送信者20からはマルチキャストデータパケットGroup1_addr(100)とGroup2_addr(150)を配信し続けている。
本ネットワークではマルチキャスト送信者20を収容しているマルチキャスト中継装置1000をIGMPクエリアとして運用する。IGMPクエリアは全所属ポート(1001,1002,1003)に問い合わせメッセージを送信し(300,301,305)、下流のマルチキャスト中継装置2000は受信した問い合わせメッセージ(301)を受信ポート以外の所属ポート(2002,2003,2004)に中継(フラッディング)する(302,303,304)。
本実施例では、マルチキャスト中継装置2000のマルチキャストルータポートに上流のマルチキャスト中継装置1000を接続しているポート(2001)を設定している。マルチキャスト中継装置1000には上流のマルチキャスト中継装置を接続していないので、マルチキャストルータポートは設定しない。
次にIGMPスヌーピングの学習処理について説明する。
マルチキャスト中継装置2000に接続するマルチキャスト受信者10がマルチキャスト送信者20から配信されるマルチキャストデータパケット(Group1_addr宛)を受信する場合、加入要求メッセージ(Group1_addr宛)を送信する(200)。加入要求メッセージ(Group1_addr宛)を受信したマルチキャスト中継装置2000で動作するIGMPスヌーピング機能は、加入要求メッセージを解析して、当該マルチキャストグループと受信ポート情報を取得し、それを元にマルチキャストデータパケットの中継制御情報をマルチキャスト中継装置2000に設定する。これにより、マルチキャスト中継装置2000は、マルチキャストデータパケット(Group1_addr宛)を受信した場合、そのパケットを加入要求メッセージ(Group1_addr宛)受信ポートである2002のみに中継する。
マルチキャスト中継装置2000で動作するIGMPスヌーピング機能は、受信した加入要求メッセージ(Group1_addr宛)をマルチキャストルータポート2001に中継する(201)。マルチキャスト中継装置1000のIGMPスヌーピング機能は中継された加入要求メッセージ(Group1_addr宛)を解析して、当該マルチキャストグループと受信ポート情報を取得し、それを元にマルチキャストデータパケットの中継制御情報をマルチキャスト中継装置1000に設定する。マルチキャスト中継装置1000にはマルチキャストポートの設定がないので、マルチキャスト中継装置1000は、受信した加入要求メッセージ(Group1_addr宛)をどこにも中継しない。
これにより、マルチキャスト送信者20から配信されたマルチキャストデータパケット(Group1_addr宛)(100)は、加入要求メッセージ(Group1_addr宛)を受信したポート1002のみに中継される。その結果、マルチキャストデータパケット(Group1_addr宛)は、マルチキャスト中継装置2000に中継され、マルチキャスト中継装置2000の中継制御情報に従ってポート2002のみに中継され、マルチキャスト受信者10に配信される。
図2は、本発明の実施例1の下流のマルチキャスト中継装置2000の内部構造の説明図である。
マルチキャスト中継装置2000は、IGMPスヌーピング処理部2100、装置構成定義部2200、マルチキャストパケット中継処理部2300およびポート状態検出部2400を備えている。
装置構成定義部2200にはVLAN情報2210およびIGMPスヌーピング情報2220が外部から設定される。VLAN情報2210にはマルチキャスト中継装置2000に設定しているVLAN名称、自装置のIPアドレスおよび当該VLANに属するポート情報が設定される(図4(c)参照)。VLAN名称とはVLANを識別するものであり、VLAN番号、VLANに設定した名称等が設定される。IGMPスヌーピング情報2220には、IGMPスヌーピングを使用するVLAN名称、マルチキャストルータポートおよび本発明で使用する上流装置アドレスが設定される(図4(d)参照)。マルチキャストルータポートと上流装置アドレスは1対1で設定される。
IGMPスヌーピング処理部2100は、IGMPスヌーピング機能を実現するための処理部であり、VLAN管理部2110、タイマ処理実行部2120、制御パケット送受信処理部2130およびIGMPスヌーピングの中継制御情報を管理するエントリ管理部2140を備えている。
VLAN管理部2110はVLAN管理表2111を管理しており、VLAN管理表2111には、装置構成定義部2200から取得した、IGMPスヌーピングを使用するVLAN名称、当該VLANの所属ポート情報、マルチキャストルータポートおよび上流装置アドレスが格納されている。
タイマ処理実行部2120は、実行時間、実行処理および実行処理に必要な情報を登録することで、指定した実行時間後に、指定した情報を元に、指定した処理を実行する機構である。
制御パケット送受信処理部2130は、当該VLANで受信したIGMP制御パケットの解析、IGMPメッセージの作成およびIGMP制御パケットの送受信処理を行う機構であり、本実施例で使用する確認用メッセージ作成部2131、離脱メッセージ作成部2132、応答用メッセージ受信処理部2133および抑止解除メッセージ受信処理部2134を備えている。
確認用メッセージ作成部2131は、マルチキャスト受信者からの加入要求メッセージを上流のマルチキャスト中継装置に中継したあと、上流のマルチキャスト中継装置において正しく当該マルチキャストグループのエントリ管理表が作成されたか(言い換えると、上流のマルチキャスト中継装置のエントリ管理表及びマルチキャストパケット中継制御表に、当該加入要求メッセージに対応する情報、具体的には、当該加入要求メッセージを受信したポートと当該マルチキャストグループとを対応付ける情報が設定されたか)を確認するメッセージを作成する処理部である。離脱メッセージ作成部2132は、下流のマルチキャスト中継装置がマルチキャストデータパケットの配信の停止を要求するために発信する離脱要求メッセージを作成する処理部である。
応答用メッセージ受信処理部2133は、上流のマルチキャスト中継装置から正しく当該マルチキャストグループのエントリ管理表が作成されたことを示すメッセージを受信した場合に、当該マルチキャストグループの加入要求メッセージの中継を抑止状態に設定する処理部である。抑止解除メッセージ受信処理部2134は、上流のマルチキャスト中継装置から、加入要求メッセージの中継抑止を解除するメッセージを受信した場合に、当該マルチキャストグループの加入要求メッセージの抑止状態を解除する処理部である。
エントリ管理部2140ではエントリ管理表2141を管理しており、本実施例で使用する削除エントリ検索部2142を備えている。エントリ管理表2141は、VLAN名称、当該VLANで学習した(すなわち加入要求メッセージを受信した)マルチキャストグループおよび加入ポート情報から作成され、生存時間、本発明で使用する上流装置アドレスおよび中継抑止フラグを設定している(図5(b)、(c)、図7(b)、(c)参照)。生存時間は当該エントリの満了(タイムアウト)を管理するために用いられる。上流装置アドレスおよび中継抑止フラグは1対1で管理されている。ある上流装置アドレスに対応する中継抑止フラグは、当該上流装置アドレスが示す上流のマルチキャスト中継装置に、当該マルチキャストグループの加入要求メッセージを中継済みか判別するために使用するフラグである。削除エントリ検索部2142は、削除対象となるエントリ管理表を検索する処理部である。
マルチキャストパケット中継処理部2300は、マルチキャスト中継装置2000が受信したマルチキャストデータパケットの中継を制御する処理部であり、VLAN登録表2310とマルチキャストパケット中継制御表2320を管理している。VLAN登録表2310には、IGMPスヌーピングを使用しているVLAN名称が格納されており、マルチキャストパケット中継制御表2320には、当該VLANで学習したマルチキャスト中継エントリ情報(VLAN名称、マルチキャストグループ、マルチキャストルータポートおよび出力ポート情報)が格納されている(図6(b)参照)。
ポート状態検出部2400は、ポートの状態(例えば運用状態または非運用状態)を検出する機構である。
図3は、本発明の実施例1の上流のマルチキャスト中継装置1000の内部構造の説明図である。
上流のマルチキャスト中継装置1000と下流のマルチキャスト中継装置2000の差分を説明する。具体的には、図3に示す上流のマルチキャスト中継装置1000のIGMPスヌーピング処理部1100、装置構成定義部1200、マルチキャストパケット中継処理部1300およびポート状態検出部1400は、それぞれ、図2に示した下流のマルチキャスト中継装置2000のIGMPスヌーピング処理部2100、装置構成定義部2200、マルチキャストパケット中継処理部2300およびポート状態検出部2400に対応する。以下に説明する相違点を除いて、マルチキャスト中継装置1000の各部は対応するマルチキャスト中継装置2000の各部と同様の機能を有するため、それらの説明は省略する。
装置構成定義部1200のIGMPスヌーピング情報1220に本実施例で使用する下流装置接続ポートと下流装置アドレスとを1対1で設定する。図1の例では、上流のマルチキャスト中継装置2000のさらに上流のマルチキャスト中継装置が存在しないため、上流装置アドレスは設定しない。
制御パケット送受信処理部1130は、本実施例で使用する応答用メッセージ作成部1131、中継抑止解除メッセージ作成部1132および確認用メッセージ受信処理部1133を備えている。応答用メッセージ作成部1131は、下流のマルチキャスト中継装置2000が、加入要求メッセージ中継後に、当該マルチキャストグループのエントリ管理表が上流のマルチキャスト中継装置1000に正しく作成されているかを確認するためのメッセージを送信し、上流のマルチキャスト中継装置1000がそのメッセージを受信したとき、下流のマルチキャスト中継装置2000に対してエントリ管理表が正しく作成されていることを示すために応答するメッセージを作成する。
中継抑止解除メッセージ作成部1132は、下流のマルチキャスト中継装置2000に対して、加入要求メッセージの中継抑止状態を解除するためのメッセージを作成する。確認用メッセージ受信処理部1133は、下流のマルチキャスト中継装置2000から確認用の加入要求メッセージを受信したときに、当該加入要求メッセージのマルチキャストグループが当該上流のマルチキャスト中継装置1000において学習済みかを確認するための検索処理を行う。
エントリ管理部1140のエントリ管理表1141は、下流のマルチキャスト中継装置2000のエントリ管理表2141と同様の項目の情報を含んでいるが、上流装置アドレスおよび中継抑止フラグは含まない(図5(a)、図7(a)参照)。また、エントリ管理部1140は、下流のマルチキャスト中継装置2000のエントリ管理部2140と異なり、削除エントリ検索部を含まない。
次に、図1に示すネットワーク構成の通常運用時にIGMPスヌーピング機能を使用した場合の具体的な手法を説明する。
マルチキャスト中継装置2000でIGMPスヌーピング機能を有効にする処理を、図2を用いて説明する。IGMPスヌーピングを有効にするということは、当該VLANで受信したIGMP制御パケットをIGMPスヌーピング処理部に通知することと、当該VLANで受信した未学習のマルチキャストデータパケットの中継を抑止することである。なお、IGMPスヌーピング機能を有効にした直後の状態では、何も学習していない(すなわち加入要求メッセージを受信していない)ため、全てのマルチキャストデータパケットの中継が抑止される。
マルチキャスト中継装置2000のVLAN100にIGMPスヌーピングを使用する場合、装置構成定義部2200にVLAN情報2210およびIGMPスヌーピング情報2220を外部から設定する。このとき、IGMPスヌーピング処理部2100は、VLAN情報2210およびIGMPスヌーピング情報2220を取得し、VLAN管理部2110内のVLAN管理表2111に、IGMPスヌーピングを使用しているVLAN名称、当該VLANの所属ポート情報、マルチキャストルータポートおよび上流装置アドレスを登録する。
次に、IGMPスヌーピング処理部2100は、登録したVLAN情報をマルチキャストパケット中継処理部2300に通知し、マルチキャストパケット中継処理部2300はVLAN登録表2310に当該VLAN名称を登録する。マルチキャストパケット中継処理部2300は、受信したIGMP制御パケット(IGMP加入要求/離脱要求/問い合わせメッセージ)を解析して、当該メッセージを受信したVLAN名称を取得する。そして、取得したVLAN名称が、VLAN登録表2310に登録されている場合は、マルチキャストパケット中継処理部2300は当該メッセージをIGMPスヌーピング処理部2100に通知する。これにより、IGMPスヌーピングを使用しているVLANにおいて、受信したIGMP制御パケットのIGMPスヌーピング処理部2100への通知が実現する。
VLAN管理部2110は、VLAN登録表2310に当該VLAN情報を登録したあと、マルチキャストパケット中継制御表2320に未学習エントリを登録する。本実施例では、未学習エントリにはマルチキャストグループおよび出力ポートの設定は行わない。マルチキャストルータポートが設定されている場合は、マルチキャストパケット中継制御表2320にマルチキャストルータポートを登録する。
IGMPスヌーピングを有効にした直後の未学習の状態では未学習エントリしか存在しないため、受信したマルチキャストデータパケット(すなわちマルチキャスト受信者の存在しないマルチキャストデータパケット)は、すべて未学習エントリに合致し、当該マルチキャストデータパケットはマルチキャストルータポートのみに中継される。これにより、IGMPスヌーピングを有効にした直後の、マルチキャスト受信者の存在しないマルチキャストデータパケットの中継抑止が実現する。なお、マルチキャストルータポートにはマルチキャストルータが接続されている場合がある。このため、マルチキャストルータポートが設定されている場合は、マルチキャスト送信者が配信したマルチキャストデータパケットをマルチキャスト中継できるように、無条件にマルチキャストルータポートに中継する。
次に、問い合わせメッセージのフラッディング処理について図2を用いて説明する。マルチキャストパケット中継処理部2300は、問い合わせメッセージを受信したあと、前述した方法でIGMPスヌーピング処理部2100に通知する。次に、当該VLANの所属ポート情報をVLAN管理表2111から取得する。次に、制御パケット送受信処理部2130で取得した所属ポートのうち受信ポート以外の全ポートに問い合わせメッセージを中継する。これにより、図1に示すネットワーク構成において、マルチキャスト中継装置2000が受信した問い合わせメッセージがマルチキャスト受信者10、11および12に中継される。
マルチキャスト中継装置1000はIGMPクエリアであるため、定期的に、受信者がマルチキャストデータパケットの配信を要求するかを問い合わせるための問い合わせメッセージを送信する。問い合わせメッセージの送信処理を、図3を用いて説明する。問い合わせメッセージ送信処理はタイマ処理実行部1120に登録されており、具体的には問い合わせメッセージ送信処理に必要なVLAN情報および実行時間が登録されている。この実行時間は一般的には125秒であるため本実施例では125秒として説明するが、実際にはそれ以外の時間であってもよい。タイマ処理実行部1120において、125秒経過が検出されると、問い合わせメッセージ送信処理が実行される。
問い合わせメッセージ送信処理では制御パケット送受信処理部1130が起動される。制御パケット送受信処理部1130は、問い合わせメッセージを作成したあと、タイマ処理実行部1120に登録されているVLAN情報およびVLAN管理表2111から当該VLANの所属ポートを取得し、作成した問い合わせメッセージを全所属ポートに対して送信する。その後、問い合わせメッセージ送信処理を再度タイマ処理実行部に125秒後に実行されるように登録する。これにより、定期的な(上記の例では125秒ごとの)問い合わせメッセージの送信が実現する。
以上の処理で、マルチキャスト中継装置1000および2000において、IGMPスヌーピング機能の初期状態(すなわち何も学習していない状態)における問い合わせメッセージ受信時のフラッディング処理および問い合わせメッセージの定期的な送信処理が実現する。
次に、マルチキャストグループへの加入処理について説明する。
本実施例では、下流のマルチキャスト中継装置2000が、マルチキャスト受信者からの最初の加入要求メッセージのみをマルチキャストルータポート2001に中継し、上流のマルチキャスト中継装置1000が、下流のマルチキャスト中継装置2000から受信した加入要求メッセージで生成するエントリ管理表1141の生存時間を無期限(本実施例では生存時間を無期限とする手法について説明する)と設定する。これによって、定期的な問い合わせメッセージ送受信時の下流のマルチキャスト中継装置2000での加入要求メッセージの中継処理を不要とし、定期的な問い合わせメッセージ送受信のたびに発生する上流および下流のマルチキャスト中継装置の装置負荷を低減することができる。その事例を、図1を用いて説明する。
図1の例ではマルチキャスト中継装置2000に、3台のマルチキャスト受信者10、11および12が接続されている。マルチキャスト受信者10および12はGroup1_addrに加入しており、マルチキャスト受信者11はGroup2_addrに加入している。
本実施例では、マルチキャスト受信者から送信された最初の加入要求メッセージだけがマルチキャストルータポートに中継される。その手法について図2を用いて説明する。本実施例では、加入要求メッセージの上流のマルチキャスト中継装置1000への中継状態を管理するために、エントリ管理表2141に上流装置アドレスおよび中継抑止フラグが追加される(図5(b)等参照)。
下流のマルチキャスト中継装置2000では、マルチキャスト受信者から最初の加入要求メッセージを受信した場合、前述した方法でマルチキャストパケット中継処理部2300が、受信したVLANがIGMPスヌーピングを使用しているVLANかを確認する。当該加入要求メッセージがIGMPスヌーピングを使用しているVLANで受信した加入要求メッセージであれば、マルチキャストパケット中継処理部2300は、当該加入要求メッセージを制御パケット送受信処理部2130に通知し、制御パケット送受信処理部2130が加入要求メッセージの解析を行う。
解析した結果、VLAN名称、マルチキャストグループ、加入ポート情報を取得してエントリ管理表2141が作成される。このとき、当該エントリの生存時間には、当該エントリがマルチキャスト受信者からの加入要求メッセージに基づいて作成されたエントリであるため、260秒が設定される。ここで、260秒とは、定期的な問い合わせメッセージの送信間隔が125秒の場合の一般的な生存時間であるが、例えば問い合わせメッセージの送信時間が125秒でない場合などには、それに合わせて260秒以外の適切な時間が設定されてもよい。また、この時点で、上流装置アドレスが示す上流のマルチキャスト中継装置1000に対して、正しく当該マルチキャストグループのエントリ管理表が作成されているかの確認がまだ行われていないため、中継抑止フラグには、Offが設定される。
次に、IGMPスヌーピング処理部2100が、当該マルチキャストデータパケットを中継するための情報(VLAN情報、マルチキャストグループ、マルチキャストルータポートおよび加入ポート)をマルチキャストパケット中継処理部2300に通知し、マルチキャストパケット中継処理部2300が、マルチキャストパケット中継制御表2320を作成する。次に、制御パケット送受信処理部2130が、VLAN管理表2111から当該VLANのマルチキャストルータポートを取得し、当該加入要求メッセージをマルチキャストルータポートに中継する。
このとき、本実施例の特徴である最初の加入要求メッセージの送信のみでマルチキャスト中継を開始することが必要であるため、下流のマルチキャスト中継装置2000は、上流のマルチキャスト中継装置1000に対して、中継した当該加入要求メッセージが正しく受信され、当該マルチキャストグループのエントリ管理表が作成されているかの確認処理を行う。
下流のマルチキャスト中継装置2000が上流のマルチキャスト中継装置1000に対して実施する確認処理を、図2を用いて説明する。
本実施例での確認処理は、次のように実行される。まず、下流のマルチキャスト中継装置2000において、制御パケット送受信処理部2130の確認用メッセージ作成部2131が、問い合わせメッセージを作成する。この問い合わせメッセージには、当該マルチキャストグループアドレスが設定され、さらに、ソースアドレスとして下流のマルチキャスト中継装置2000のアドレスが設定される。そして、確認用メッセージ作成部2131は、VLAN管理表2111からマルチキャスト中継装置1000を接続しているマルチキャストルータポートを取得して当該マルチキャストルータポートに当該問い合わせメッセージを送信する。そして、エントリ管理部2140は、当該マルチキャストグループで作成したエントリ管理表2141の上流のマルチキャスト中継装置1000に対しての中継抑止フラグをOffからWaitに設定する。
次に、上流のマルチキャスト中継装置1000が、下流のマルチキャスト中継装置2000から確認用の問い合わせメッセージを受信して、応答メッセージを送信する処理を、図3を用いて説明する。
上流のマルチキャスト中継装置1000は、当該問い合わせメッセージを受信した場合、前述した方法でIGMPスヌーピング処理部1100に通知する。IGMPスヌーピング処理部1100の制御パケット送受信処理部1130は、当該問い合わせメッセージの解析を行い、当該問い合わせメッセージを受信したポートとVLAN管理表1111に登録されている下流装置接続ポートとを比較し、さらに、当該問い合わせメッセージのソースアドレスとVLAN管理表1111に登録されている下流装置アドレスとを比較する。それらが一致すると、制御パケット送受信処理部1130は、当該問い合わせメッセージが、下流のマルチキャスト中継装置2000からの確認用に送信された問い合わせメッセージであると判断する。
当該問い合わせメッセージが下流のマルチキャスト中継装置2000からの問い合わせメッセージであると判断された場合、制御パケット送受信処理部1130の確認用メッセージ受信処理部1133は、エントリ管理表1141に当該マルチキャストグループのエントリが作成済みか確認する。当該エントリが作成済みであり、かつ、当該問い合わせメッセージを受信したポートが当該エントリの加入ポート情報に設定済みであれば、確認用メッセージ受信処理部1133は、当該マルチキャストグループのエントリ管理表が作成済みであると判断する。
次に、応答用メッセージ作成部1131が、当該マルチキャストグループの加入要求メッセージを作成し、そのソースアドレスとして上流のマルチキャスト中継装置1000のアドレスを設定して、VLAN管理表1111に登録されている当該下流装置アドレスの下流装置接続ポートに対して送信する。この加入要求メッセージは、下流のマルチキャスト中継装置2000からの確認用の問い合わせメッセージに対する応答メッセージであり、正しくエントリ管理表が作成されていることを示すメッセージである。
次に、下流のマルチキャスト中継装置2000が、上流のマルチキャスト中継装置1000から、正しくエントリ管理表が作成されていることを示す加入要求メッセージを受信する処理を、図2を用いて説明する。
下流のマルチキャスト中継装置2000は、前述した方法で、当該加入要求メッセージをIGMPスヌーピング処理部2100に通知する。IGMPスヌーピング処理部2100の制御パケット送受信処理部2130は、当該加入要求メッセージを解析し、当該加入要求メッセージのソースアドレスが上流装置アドレスと一致した場合、当該加入要求メッセージが、上流のマルチキャスト中継装置1000で正常に当該マルチキャストグループのエントリ管理表が作成されている場合の応答メッセージであると判断する。そして、制御パケット送受信処理部2130の応答用メッセージ受信処理部2133が、エントリ管理表2141の当該エントリの上流のマルチキャスト中継装置1000への中継抑止フラグをWaitからOnに設定する。これは、当該マルチキャストグループ宛ての加入要求メッセージが上流のマルチキャスト中継装置1000へ中継済みであることを示す値である。これ以降、当該マルチキャストグループ宛ての加入要求メッセージを受信した場合、上流のマルチキャスト中継装置1000への中継抑止フラグがOnであるため、当該加入要求メッセージは上流のマルチキャスト中継装置1000に中継されない。
マルチキャスト受信者は、加入要求メッセージを送信したあと、マルチキャスト中継が開始されない場合、下流のマルチキャスト中継装置のエントリ管理表2141の中継抑止フラグを確認することができる。その結果、Wait状態が継続しているのであれば、上流のマルチキャスト中継装置1000に何らかの障害が発生して、上流のマルチキャスト中継装置1000に正しくエントリ管理表が作成されていないことが確認できる。
本実施例では確認処理に下流のマルチキャスト中継装置からの問い合わせメッセージ送信と上流のマルチキャスト中継装置からの加入要求メッセージの応答を用いている。しかし、この方法は一例であり、これ以外の方法で確認処理を行ってもよい。
下流のマルチキャスト中継装置2000は、上流のマルチキャスト中継装置1000からの応答である、正常処理を示す加入要求メッセージを受信しなかった場合、当該マルチキャストグループの加入要求メッセージおよび確認用の問合せメッセージの送信を再試行する必要がある。このため、下流のマルチキャスト中継装置2000では、確認用メッセージ作成部2131が確認用の問い合わせメッセージをマルチキャストルータポートに送信したあと、確認処理をタイマ処理実行部2120に登録する。
タイマ処理実行部2120には、実行時間(例えば1秒)、実行する処理(確認用メッセージ作成部2131)、VLAN名称、マルチキャストグループおよび上流装置アドレスが登録される。これにより、指定した実行時間後(例えば1秒後)に確認処理が実行される。確認処理では当該マルチキャストグループの加入要求メッセージおよび問い合わせメッセージが再送される。加入要求メッセージは前回の中継時に廃棄されている可能性があるため、下流のマルチキャスト中継装置2000が再作成し、上流のマルチキャスト中継装置1000に送信する。
次に、加入要求メッセージおよび問い合わせメッセージの作成方法について説明する。確認処理では確認用メッセージ作成部2131が起動し、登録されているVLAN名称、マルチキャストグループおよび上流装置アドレスに基づいて、VLAN管理表2111から当該VLANの上流のマルチキャスト中継装置1000を接続しているマルチキャストルータポートおよび自装置アドレスを取得し、当該マルチキャストグループの加入要求メッセージを作成して、当該マルチキャストルータポートに送信する。次に、確認用メッセージ作成部2131は、マルチキャストグループアドレスを設定した問い合わせメッセージ(確認用メッセージとも記載する)を作成し、ソースアドレスに自装置アドレスを設定して、当該マルチキャストルータポートに送信する。その後、再度確認処理をタイマ処理実行部2120に所定の時間(本実施例では1秒)経過後に実行されるように登録する。これにより、上流のマルチキャスト中継装置1000に対して1秒間隔で繰り返し確認処理を実行することができる。
下流のマルチキャスト中継装置2000が上流のマルチキャスト中継装置1000からの応答である加入要求メッセージを受信した場合、応答用メッセージ受信処理部2133がタイマ処理実行部2120に登録している確認処理を削除すれば確認処理は終了する。
本実施例では、最初に受信した加入要求メッセージのみに基づいてマルチキャスト中継を継続するために、上流のマルチキャスト中継装置1000において、下流のマルチキャスト中継装置2000から受信した加入要求メッセージで作成するエントリ管理表の生存時間を無期限とする。これにより、下流のマルチキャスト中継装置2000においてマルチキャスト受信者からの二回目以降の加入要求メッセージの中継が抑止されたとしても、マルチキャスト中継を継続できる。このとき、一回目の加入要求メッセージに基づくエントリが何らかの原因によって作成されなかった場合には、上記の確認処理によって、エントリが作成されるまで加入要求メッセージが送信される。これにより、マルチキャスト中継が確実に開始される。
本実施例では、下流のマルチキャスト中継装置2000から中継される加入要求メッセージを判別するために、上流のマルチキャスト中継装置1000に下流装置接続ポートの設定を追加する。上流のマルチキャスト中継装置1000は、下流装置接続ポートから受信した加入要求メッセージを下流のマルチキャスト中継装置2000から中継された加入要求メッセージと判別する。
本実施例では、下流のマルチキャスト中継装置から中継された加入要求メッセージを判別する方法として、上流のマルチキャスト中継装置に下流装置接続ポートを設定して、当該ポートから受信した加入要求メッセージを、下流のマルチキャスト中継装置から中継された加入要求メッセージであると判定している。しかし、この方法は一例であり、これ以外の方法で下流のマルチキャスト中継装置から中継された加入要求メッセージを判定してもよい。
図4は、本発明の実施例1のマルチキャスト中継装置が保持する構成定義情報の説明図である。
具体的には、図1のネットワーク構成における、上流のマルチキャスト中継装置1000に設定される構成定義情報を図4(a)および図4(b)に、下流のマルチキャスト中継装置2000に設定される構成定義情報を図4(c)および図4(d)に示す。
図4(a)に示すように、上流のマルチキャスト中継装置1000のVLAN情報1210のVLAN名称1211には図1に示したVLAN100の名称である「VLAN100」、自装置アドレス1212には自装置アドレスであるIP1_addr、所属ポートには図1等に示したポート1001、1002および1003を識別する「1001,1002,1003」が設定される。なお、この例では、図1等に示したVLANおよび各ポートの参照符号をVLANおよび各ポートの識別情報として使用している(以下同様)。
図4(b)に示すように、上流のマルチキャスト中継装置1000のIGMPスヌーピング情報1220のVLAN名称1221にはVLAN100が設定される。図1の例では上流のマルチキャスト中継装置1000のさらに上流にマルチキャスト中継装置が接続されていないため、マルチキャストルータポート1222は設定無しとなる。下流装置接続ポート1223には下流のマルチキャスト中継装置2000が接続されているポートを識別する1002が、下流装置アドレスには下流のマルチキャスト中継装置2000のアドレスであるIP2_addrが設定される。下流装置接続ポート1223を設定することによって、後述するように、上流のマルチキャスト中継装置1000は、受信した加入要求メッセージが下流のマルチキャスト中継装置2000から送信されたものであるかを判定することができる。
図4(c)に示すように、下流のマルチキャスト中継装置2000のVLAN情報2210のVLAN名称2211にはVLAN100、自装置アドレス2212には自装置アドレスであるIP2_addr、所属ポートには2001,2002,2003,2004が設定される。
図4(d)に示すように、下流のマルチキャスト中継装置2000のIGMPスヌーピング情報2220のVLAN名称2221にはVLAN100、マルチキャストルータポート2222には上流のマルチキャスト中継装置1000の接続ポートである2001、上流装置アドレス2223には上流のマルチキャスト中継装置1000のアドレスであるIP1_addrが設定される。
図5は、本発明の実施例1のマルチキャスト中継装置が保持するエントリ管理表の説明図である。
具体的には、図1のネットワークにおいて、マルチキャスト受信者10,12がGroup1_addr、マルチキャスト受信者11,13がGroup2_addrに加入しているときの、上流のマルチキャスト中継装置1000のエントリ管理表を図5(a)に、下流のマルチキャスト中継装置2000のエントリ管理表を示す。
図5(a)に、上流のマルチキャスト中継装置1000のエントリ管理表1141を示す。エントリ管理表1141には学習した3つのエントリ(1141-1,1141-2,1141-3)が登録されている。
エントリ1141-1は、VLAN名称1142にVLAN100、学習したマルチキャストグループ1143にGroup1_addr、加入ポート情報1144に下流のマルチキャスト中継装置2000の接続ポートである1002、生存時間1145には当該エントリが下流装置接続ポートから受信した加入要求メッセージに基づいて作成したエントリであるため無期限を設定している。
エントリ1141-2は、VLAN名称1142にVLAN100、学習したマルチキャストグループ1143にGroup2_addr、加入ポート情報1144に下流のマルチキャスト中継装置2000の接続ポートである1002、生存時間1145には当該エントリが下流装置接続ポートから受信した加入要求メッセージに基づいて作成したエントリであるため無期限を設定している。
エントリ1141-3は、VLAN名称1142にVLAN100、学習したマルチキャストグループ1143にGroup2_addr、加入ポート情報1144にマルチキャスト受信者13の接続ポートである1003、生存時間1145には当該エントリがマルチキャスト受信者13からの加入要求メッセージに基づいて作成したエントリであるため260秒を設定している。
図5(b)および図5(c)に、下流のマルチキャスト中継装置2000のエントリ管理表2141の二つの例であるエントリ管理表2141-Aおよび2141-Bを示す。図5(b)に示すエントリ管理表2141-Aは、下流のマルチキャスト中継装置2000が受信した加入要求メッセージを上流のマルチキャスト中継装置1000に中継したあと、上流のマルチキャスト中継装置1000への確認処理のうち、マルチキャスト受信者10からの加入要求メッセージ(Group1_addr宛)については完了し、マルチキャスト受信者11からの加入要求メッセージ(Group2_addr宛)およびマルチキャスト受信者12からの加入要求メッセージ(Group1_addr宛)は確認中の(すなわち確認処理がまだ完了していない)時点のエントリ管理表2141を示す。
エントリ管理表2141-Aには学習した3つのエントリ(2141-A1,2141-A2,2141-A3)が登録されている。
エントリ2141-A1は、VLAN名称2142-AにVLAN100、学習したマルチキャストグループ1143-AにGroup1_addr、加入ポート情報2144-Aにマルチキャスト受信者10の接続ポートである2002、生存時間2145-Aには当該エントリがマルチキャスト受信者10からの加入要求メッセージに基づいて作成しているエントリであるため260秒、上流装置アドレス2146-Aには上流のマルチキャスト中継装置1000のアドレスであるIP1_addr、中継抑止フラグ2147-Aには当該エントリが上流のマルチキャスト中継装置1000に対して確認済みであるためOnを設定している。
エントリ2141-A2は、VLAN名称2142-AにVLAN100、学習したマルチキャストグループ1143-AにGroup1_addr、加入ポート情報2144-Aにマルチキャスト受信者12の接続ポートである2004、生存時間2145-Aには当該エントリがマルチキャスト受信者12からの加入要求メッセージに基づいて作成しているエントリであるため260秒、上流装置アドレス2146-Aには上流のマルチキャスト中継装置1000のアドレスであるIP1_addr、中継抑止フラグ2147-Aには当該エントリが上流のマルチキャスト中継装置1000に対して確認中であるためWaitを設定している。
エントリ2141-A3は、VLAN名称2142-AにVLAN100、学習したマルチキャストグループ1143-AにGroup2_addr、加入ポート情報2144-Aにマルチキャスト受信者11の接続ポートである2003、生存時間2145-Aには当該エントリがマルチキャスト受信者11からの加入要求メッセージに基づいて作成しているエントリであるため260秒、上流装置アドレス2146-Aには上流のマルチキャスト中継装置1000のアドレスであるIP1_addr、中継抑止フラグ2147-Aには当該エントリが上流のマルチキャスト中継装置1000に対して確認中であるためWaitを設定している。
下流のマルチキャスト中継装置2000がマルチキャスト受信者11からの加入要求メッセージ(Group2_addr宛)を上流のマルチキャスト中継装置1000に中継して、確認処理が完了したときのエントリ管理表2141-Bを図5(c)に示す。これは、下流のマルチキャスト中継装置2000のエントリ管理表2141が図5(b)に示す状態となった後に、当該マルチキャスト中継装置2000がマルチキャスト受信者11からの加入要求メッセージに関する確認処理が完了した場合の、エントリ管理表2141の変化を示している。この例では説明を簡単にするために、エントリ管理表2141が図5(b)に示す状態となった直後に確認処理が完了したと仮定している。
エントリ管理表2141-Bのエントリ2141-B1~2141-B3は、それぞれ図5(b)に示すエントリ管理表2141-Aのエントリ2141-A1~2141-A3に対応する。各エントリの項目であるVLAN名称2142-B、マルチキャストグループ2143-B、加入ポート情報2144-B、生存時間2145-B、上流装置アドレス2146-Bおよび中継抑止フラグ2147-Bは、それぞれ、エントリ管理表2141-AのVLAN名称2142-A、マルチキャストグループ2143-A、加入ポート情報2144-A、生存時間2145-A、上流装置アドレス2146-Aおよび中継抑止フラグ2147-Aに対応する。
図5(c)には、エントリ2141-B3に関する確認処理が完了した状態を示しているため、エントリ2141-B3の中継抑止フラグ2147-BにOnを設定している。エントリ2141-B3のその他の項目、および、その他のエントリの各項目の値は、図5(b)に示した対応するエントリの対応する項目の値と同じである。
図6は、本発明の実施例1のマルチキャスト中継装置が保持するマルチキャストパケット中継制御表の説明図である。
図1のネットワークにおいて、マルチキャスト受信者10がGroup1_addr、マルチキャスト受信者11がGroup2_addr、マルチキャスト受信者12がGroup1_addr、マルチキャスト受信者13がGroup2_addrに加入しているときの、上流のマルチキャスト中継装置1000が保持するマルチキャストパケット中継制御表1320、および、下流のマルチキャスト中継装置2000が保持するマルチキャストパケット中継制御表2320を、それぞれ図6(a)および図6(b)に示す。
図6(a)に示すように、上流のマルチキャスト中継装置1000のマルチキャストパケット中継制御表1320にはIGMPスヌーピング処理部1100によって設定された3つのエントリが登録されている。
マルチキャストパケット中継制御情報1320-1では、VLAN名称1321にVLAN100、マルチキャストグループ1322にGroup1_addrが設定されている。マルチキャストルータポート1323は設定無しとなっている。出力ポート1324には下流のマルチキャスト中継装置1000の接続ポートである1002が設定されている。これにより、Group1_addrのマルチキャストデータパケットは出力ポート1002のみに中継される。
マルチキャストパケット中継制御情報1320-2では、VLAN名称1321にVLAN100、マルチキャストグループ1322にGroup2_addrが設定されている。マルチキャストルータポート1323は設定無しとなっている。出力ポート1324には下流のマルチキャスト中継装置1000の接続ポートである1002およびマルチキャスト受信者13の接続ポートである1003が設定されている。これにより、Group2_addrのマルチキャストデータパケットは出力ポート1002および1003に中継される。
マルチキャストパケット中継制御情報1320-3は、未学習のマルチキャストグループのマルチキャストデータパケットを廃棄するための廃棄エントリである。上流のマルチキャスト中継装置1000は、未学習のマルチキャストデータパケットを受信した場合、廃棄エントリに従って、当該未学習のマルチキャストデータパケットをどこにも中継しない(すなわち廃棄する)。
図6(b)に示すように、下流のマルチキャスト中継装置2000のマルチキャストパケット中継制御表2320にはIGMPスヌーピング処理部2100によって設定された3つのエントリが登録されている。
マルチキャストパケット中継制御情報2320-1では、VLAN名称2321にVLAN100、マルチキャストグループ2322にGroup1_addr、マルチキャストルータポート2323に2001、出力ポート2324にはマルチキャスト受信者10の接続ポートである2002およびマルチキャスト受信者13の接続ポートである2004が設定されている。これにより、マルチキャストデータパケット(Group1_addr)は出力ポート2002および2004に中継される。なお、マルチキャストルータポート2001はマルチキャストデータパケット(Group1_addr)の受信ポートであるため、マルチキャストルータポート2001にはマルチキャストデータパケット(Group1_addr)は中継されない。
マルチキャストパケット中継制御情報2320-2では、VLAN名称2321にVLAN100、マルチキャストグループ2322にGroup2_addr、マルチキャストルータポート2323に2001、出力ポート2324にはマルチキャスト受信者11の接続ポートである2003が設定されている。これにより、マルチキャストデータパケット(Group2_addr)は出力ポート2003に中継される。なお、マルチキャストルータポート2001はマルチキャストデータパケット(Group2_addr)の受信ポートであるため、マルチキャストルータポート2001にはマルチキャストデータパケット(Group2_addr)は中継されない。
マルチキャストパケット中継制御情報2320-3は廃棄エントリである。下流のマルチキャスト中継装置2000にはマルチキャストルータポートが設定されているため、未学習のマルチキャストデータパケットは、当該廃棄エントリに従ってマルチキャストルータポートに中継される。
次に、マルチキャスト受信者がマルチキャストグループから離脱した場合の下流のマルチキャスト中継装置2000の処理を、図2を用いて説明する。
例として、マルチキャスト受信者11がマルチキャストグループGroup2_addrから離脱する場合の処理を説明する。
マルチキャスト受信者11がマルチキャストグループGroup2_addrから離脱する場合、マルチキャスト受信者11は離脱要求メッセージを送信する。下流のマルチキャスト中継装置2000は離脱要求メッセージを受信すると、前述したIGMPメッセージの受信処理と同様の方法でIGMPスヌーピング処理部2100に通知し、制御パケット送受信処理部2130が離脱要求メッセージの内容を解析する。具体的には、制御パケット送受信処理部2130は、当該離脱要求メッセージのVLAN名称、受信ポートおよびマルチキャストグループを取得し、当該エントリがエントリ管理表2141に存在するか確認する。
当該エントリが存在していれば、制御パケット送受信処理部2130は、当該エントリ管理表2141の生存時間を元の値(例えば200秒、図7参照)から3秒に短縮し、当該VLANのマルチキャストルータポートをVLAN管理表2111から取得して、当該離脱要求メッセージをマルチキャストルータポートに中継する。なお、上記の3秒は、IGMPでの離脱要求メッセージ受信時の一般的な短縮時間であり、それ以外の任意の時間を設定することも可能である。後述する上流のマルチキャスト中継装置1000の処理においても同様である。
次に、下流のマルチキャスト中継装置2000から中継された離脱要求メッセージを上流のマルチキャスト中継装置1000が受信した場合の処理を、図3を用いて説明する。
上流のマルチキャスト中継装置1000は、前述したIGMPメッセージの受信処理と同様の方法で離脱要求メッセージをIGMPスヌーピング処理部1100に通知し、制御パケット送受信処理部1130が離脱要求メッセージの内容を解析する。具体的には、制御パケット送受信処理部1130は、当該離脱要求メッセージのVLAN名称、受信ポートおよびマルチキャストグループを取得し、当該エントリがエントリ管理表1141に存在するか確認する。
当該エントリが存在していれば、制御パケット送受信処理部1130は、当該エントリ管理表1141の生存時間を無期限から3秒に短縮する。上流のマルチキャスト中継装置1000にはマルチキャストルータポートが設定されていないため、当該離脱要求メッセージはどこにも中継されない。
次に、上流のマルチキャスト中継装置1000はIGMPクエリアであるため、制御パケット送受信処理部1130は、当該マルチキャストグループを設定した問い合わせメッセージを作成し、VLAN管理表1111から当該VLANの所属ポートを取得して、全所属ポートに対して当該問い合わせメッセージを送信する。このとき、マルチキャストグループを設定した問い合わせメッセージの最大応答時間には通常2秒が設定される。当該問い合わせメッセージは下流のマルチキャスト中継装置2000にも送信される。
次に、上流のマルチキャスト中継装置1000から送信された問い合わせメッセージを下流のマルチキャスト中継装置2000が受信した場合の処理を、図2を用いて説明する。
下流のマルチキャスト中継装置2000は、前述したIGMPメッセージの受信処理と同様の方法で問い合わせメッセージをIGMPスヌーピング処理部2100に通知する。制御パケット送受信処理部2130は、当該問い合わせメッセージを解析し、VLAN名称およびマルチキャストグループを取得して、取得したVLAN名称およびマルチキャストグループを削除エントリ検索部2142に通知する。
削除エントリ検索部2142は、当該エントリがエントリ管理表2141に存在するか確認する。当該エントリが存在していれば、当該エントリ管理表2141の生存時間を2秒に短縮し、中継抑止フラグをOffに設定する。ここで、2秒とは、IGMPでの問い合わせメッセージ受信時の一般的な短縮時間であり、それ以外の任意の時間を設定することも可能である。次に制御パケット送受信処理部2130は、VLAN管理表2111から当該VLANの所属ポート情報を取得し、当該問い合わせメッセージの受信ポート以外の全所属ポートに対して当該問い合わせメッセージを中継(フラッディング)する。
マルチキャスト受信者11は、Group2_addrの問い合わせメッセージに対して加入意志が無いため、応答しない。その場合、2秒後に下流のマルチキャスト中継装置2000の当該エントリ管理表は削除され、3秒後に上流のマルチキャスト中継装置1000の当該エントリ管理表は削除される。その結果、マルチキャスト受信者11へのGroup2_addr宛てのマルチキャスト中継が停止する。
図1では説明を簡単にするために省略されているが、仮に下流のマルチキャスト中継装置2000のいずれかのポートにGroup2_addrのマルチキャストグループへの加入意思のあるマルチキャスト受信者が接続されている場合、当該問い合わせメッセージの最大応答時間である2秒以内に当該マルチキャスト受信者から加入要求メッセージが応答される。この場合、当該エントリの中継抑止フラグはOffであるため、上流のマルチキャスト中継装置1000に当該加入要求メッセージが中継され、上流のマルチキャスト中継装置1000の当該エントリ管理表の生存時間が無期限に更新される。その結果、マルチキャスト中継は継続する。
図7は、本発明の実施例1のマルチキャスト中継装置が離脱要求を受信したときのエントリ管理表の説明図である。
図7(b)は、下流のマルチキャスト中継装置2000がマルチキャスト受信者11からの離脱要求メッセージを受信したときのエントリ管理表2141-Aを示す。図7(b)に示すエントリ管理表2141-Aは、図5(b)に示したエントリ管理表2141-Aの60秒後の状態を示している。このため、各エントリの生存時間2145-Aは200秒となり、エントリ2141-A2及び2141-A3の中継抑止フラグ2147-AはOnとなっている。その時点でマルチキャスト中継装置2000がマルチキャスト受信者11からの離脱要求メッセージを受信すると、マルチキャスト受信者11からの加入要求メッセージに応じて作成されたエントリ2141-A3の生存時間2145-Aが200秒から3秒に短縮される。
図7(a)は、上流のマルチキャスト中継装置1000が下流のマルチキャスト中継装置2000から中継されたマルチキャスト受信者11からの離脱要求メッセージを受信したときのエントリ管理表1141を示す。図7(a)に示すエントリ管理表1141は、図5(a)に示したエントリ管理表1141の60秒後の状態を示している。このため、エントリ1141-3の生存時間1145は200秒となっている。その時点でマルチキャスト中継装置1000がマルチキャスト受信者11からの離脱要求メッセージを受信すると、マルチキャスト受信者11からの加入要求メッセージに応じて作成されたエントリ1141-2の生存時間1145が無期限から3秒に短縮される。
図7(c)は、下流のマルチキャスト中継装置2000が上流のマルチキャスト中継装置1000からの問い合わせメッセージを受信したときのエントリ管理表2141-Bを示す。これは、これは、下流のマルチキャスト中継装置2000のエントリ管理表2141が図7(b)に示す状態となった後に、当該マルチキャスト中継装置2000がマルチキャスト受信者11からの離脱要求メッセージに対応する上流のマルチキャスト中継装置1000からの問い合わせメッセージを受信した場合の、エントリ管理表2141の変化を示している。この例では説明を簡単にするために、エントリ管理表2141が図7(b)に示す状態となった直後に問い合わせメッセージを受信したと仮定している。
エントリ管理表2141-Aと2141-Bとの間の各エントリおよび各項目の対応は図5(b)及び図5(c)を参照して説明した通りである。図7(c)に示すように、マルチキャスト受信者11からの加入要求メッセージに応じて作成されたエントリ2141-B3の生存時間2145-Bが3秒から2秒に短縮され、中継抑止フラグ2147-BがOnからOffに設定される。
なお、一連の生存時間の短縮処理、離脱要求のマルチキャストルータポートへの中継処理、問い合わせメッセージの送受信処理は、IGMPおよびIGMPスヌーピングの一般的な処理である。
次に、図1に示すマルチキャスト中継の状態からマルチキャスト受信者11が問い合わせメッセージに対して無応答となり下流のマルチキャスト中継装置2000で当該エントリ管理表2141の生存時間が満了(タイムアウト)する場合の処理を、図2を用いて説明する。
下流のマルチキャスト中継装置2000において、エントリ管理表2141に登録されているエントリの生存時間の残時間が3秒のエントリを検知した場合、制御パケット送受信処理部2130の離脱メッセージ作成部2132が、当該マルチキャストグループの離脱要求メッセージを作成し、VLAN管理表2111から当該VLANのマルチキャストルータポートを取得して、作成した当該離脱要求メッセージを、取得したマルチキャストルータポートに送信する。
上流のマルチキャスト中継装置1000は、前述した離脱要求メッセージ受信処理と同様に、当該マルチキャストグループのエントリ管理表の生存時間を無期限から3秒に短縮し、当該マルチキャストグループを設定した問い合わせメッセージを作成して、当該VLANの全所属ポートに対して当該問い合わせメッセージを送信する。
下流のマルチキャスト中継装置2000は前述した問い合わせメッセージ受信処理と同様の方法で、当該エントリ管理表の生存時間を2秒に短縮し、中継抑止フラグをOffに設定して、当該問い合わせメッセージをVLAN内にフラッディングする。
マルチキャスト受信者11は、問い合わせメッセージに対して加入意志が無いため、応答しない。この場合、2秒後に下流のマルチキャスト中継装置2000の当該エントリ管理表は削除され、3秒後に上流のマルチキャスト中継装置1000の当該エントリ管理表は削除される。その結果、マルチキャスト受信者11へのマルチキャスト中継が停止する。
本実施例ではエントリの生存時間満了時の処理として、生存時間が3秒のエントリを検知した場合に、離脱要求メッセージを作成して上流のマルチキャスト中継装置に送信することで通知している。しかし、この方法は一例であり、これ以外の方法でエントリの生存時間満了時の処理が実行されてもよい。
次に下流のマルチキャスト中継装置で障害が発生した場合の処理を説明する。
図8は、本発明の実施例1の下流のマルチキャスト中継装置で障害が発生した場合に実行される処理の説明図である。
図8の例では3台のマルチキャスト中継装置(1000,2000,3000)が接続されている。この例では、図1の例と同様に、マルチキャスト中継装置1000の下流にマルチキャスト中継装置2000が接続されているが、図1の例とは異なり、マルチキャスト中継装置2000のポート2002にはさらに下流のマルチキャスト中継装置3000が接続されている。マルチキャスト中継装置3000のポート3001は、上流のマルチキャスト中継装置2000に接続されるマルチキャストルータポートである。マルチキャスト中継装置3000のポート3002、3003および3004には、それぞれ受信者10、11および12が接続されている。各受信者が加入しているマルチキャストグループは図1の例と同様である。また、マルチキャスト中継装置2000の構成は図2の例と同様である。
図8に示すマルチキャスト中継装置3000が障害となった場合の処理を、図2も参照しながら説明する。マルチキャスト中継装置3000が障害となった場合、マルチキャスト中継装置2000においてマルチキャスト中継装置3000を接続するポート2002が非運用状態となる。マルチキャスト中継装置2000では、ポート状態検出部2400がポートの非運用状態を検出すると、IGMPスヌーピング処理部2100に通知する。IGMPスヌーピング処理部2100は、非運用状態となったポートをエントリ管理部2140の削除エントリ検索部2142に通知する。
削除エントリ検索部2142は、エントリ管理表2141を検索し、当該非運用状態のポートを加入ポート情報とするエントリが存在するか確認する。当該非運用状態ポートを加入ポートとするエントリが存在した場合、削除エントリ検索部2142は、当該エントリの生存時間を3秒に短縮する。制御パケット送受信処理部2130の離脱メッセージ作成部2132は、当該マルチキャストグループの離脱要求メッセージを作成して、VLAN管理表2111から当該VLANのマルチキャストルータポートを取得し、取得したマルチキャストルータポートに当該離脱要求メッセージを送信する。
上流のマルチキャスト中継装置1000は、前述した離脱要求メッセージ受信処理と同様に、当該エントリのエントリ管理表の生存時間を無期限から3秒に短縮し、当該マルチキャストグループを設定した問い合わせメッセージを当該VLANの全所属ポートに送信する。送信された問い合わせメッセージは、前述した方法で、マルチキャスト中継装置2000、3000に中継される。しかし、装置3000のマルチキャスト中継装置が障害となっているため、マルチキャスト受信者10,11,12は問い合わせメッセージに対して加入要求メッセージを応答しない。そのため、マルチキャスト中継装置3000の障害によって不要となる各装置のGroup1_addr、Group2_addrのエントリは、3秒後に上流のマルチキャスト中継装置1000において削除され、2秒後に中間のマルチキャスト中継装置2000において削除される。
本実施例では非運用状態のポートを検出した場合に不要となるエントリを通知するために、離脱要求メッセージを作成して上流のマルチキャスト中継装置に送信している。しかし、この方法は一例であり、これ以外の方法で非運用状態のポートを検出した場合に不要となるエントリを通知してもよい。
前述した通り、本発明の特徴である上流のマルチキャスト中継装置のエントリ管理表の生存時間を無期限としたとしても、想定されるエントリの削除が必要となる事象が発生した場合に、問題なく削除処理が実行され、不要なエントリ管理表を削除してマルチキャスト中継を停止することができる。
次に、上流のマルチキャスト中継装置が障害復旧時等で早急にネットワーク内の全てのマルチキャストグループ加入状況を取得する場合の処理を説明する。
上流のマルチキャスト中継装置1000が障害から復旧した直後の処理を、図3を用いて説明する。障害復旧時、エントリ管理表1141は初期化されており、マルチキャスト中継は停止している。この場合、早急にネットワーク内のマルチキャスト加入状況を収集するために、制御パケット送受信処理部1130の中継抑止解除メッセージ作成部1132が、ソースアドレスに0.0.0.0を設定した問い合わせメッセージを作成し、VLAN管理表1111から全VLANの所属ポートを取得して、全VLANの全所属ポートに対して作成した問い合わせメッセージを送信する。
下流のマルチキャスト中継装置2000の問い合わせメッセージの受信処理を、図2を用いて説明する。下流のマルチキャスト中継装置2000は、前述した問い合わせメッセージの受信処理と同様の方法でIGMPスヌーピング処理部2100に通知し、制御パケット送受信処理部2130が解析を行う。ソースアドレスが0.0.0.0の問い合わせメッセージの場合、抑止解除メッセージ受信処理部2134がエントリ管理表2141の全エントリの中継抑止フラグをOffにして、当該問い合わせメッセージを前述した問い合わせメッセージと同じ方法でVLAN内にフラッディングする。これにより、全てのマルチキャスト受信者が加入要求メッセージを応答する。この場合、エントリ管理表2141の全エントリの中継抑止フラグがOffであるため、最初に受信した加入要求メッセージのみが上流のマルチキャスト中継装置に中継される。下流のマルチキャスト中継装置2000がマルチキャスト受信者からの加入要求メッセージを受信してからの処理は、前述した加入要求メッセージ受信処理と同様である。
本実施例ではネットワーク内の全マルチキャストグループの加入要求メッセージを収集するために、上流のマルチキャスト中継装置はソースアドレスに0.0.0.0を設定した中継抑止解除のメッセージを送信している。しかし、この方法は一例であり、これ以外の方法で下流のマルチキャスト中継装置に通知してもよい。すなわち、ソースアドレスの0.0.0.0は、下流のマルチキャスト中継装置における加入要求メッセージの中継の抑止の解除を示す情報の一例であり、上流のマルチキャスト中継装置は、上記以外の情報を中継の抑止の解除を示すための情報として含めた問い合わせメッセージを作成してもよい。以下の説明(実施例2、実施例3を含む)においてソースアドレスに0.0.0.0が設定されたメッセージも同様である。
前述した通り、本発明の特徴である下流のマルチキャスト中継装置での加入要求メッセージの中継抑止を行っていたとしても、上流のマルチキャスト中継装置からの全マルチキャストグループに対する加入要求メッセージの中継抑止解除の情報を追加した問い合わせメッセージの送信および下流のマルチキャスト中継装置においての当該問い合わせメッセージ受信による中継抑止状態の解除を行うことで、即座に全マルチキャストグループの加入要求を収集し、障害発生前のマルチキャスト中継を再開することができる。
以上の処理を適用することで、定期的な問い合わせメッセージの送受信時に発生する、下流のマルチキャスト中継装置での大量の加入要求メッセージの中継処理および上流のマルチキャスト中継装置での大量の加入要求メッセージの受信処理が不要となるため、上流および下流のマルチキャスト中継装置の高負荷状態を軽減することができる。
図10は、本発明の実施例1の下流のマルチキャスト中継装置2000が加入要求メッセージを受信したときに実行する処理を示すフローチャートである。
下流のマルチキャスト中継装置2000は、加入要求メッセージを受信した場合、当該加入要求メッセージを解析し(4200)、ソースアドレスが上流装置アドレスか確認する(4201)。ソースアドレスが上流装置アドレスでない場合(4201:No)、マルチキャスト中継装置2000は、マルチキャスト受信者からの加入要求メッセージを受信したと判断し、当該加入要求メッセージに対応するマルチキャストグループのエントリが作成済みか確認する(4202)。
ステップ4202においてエントリが存在しない場合(4202:No)、マルチキャスト中継装置2000は、当該マルチキャストグループのエントリを作成する(4203)。次に、マルチキャスト中継装置2000は、作成したエントリの生存時間に260秒を設定する(4204)。次に、マルチキャスト中継装置2000は、マルチキャストルータポートの設定が存在するか確認し(4205)、マルチキャストルータポートの設定が存在する場合は(4205:Yes)、当該加入要求メッセージをマルチキャストルータポートに中継する(4206)。
次に、マルチキャスト中継装置2000は、上流のマルチキャスト中継装置1000に対して正しく加入要求メッセージが受信されたか確認するために、IPアドレスに自装置のIPアドレスを設定した当該マルチキャストグループの問い合わせメッセージを作成し(4207)、マルチキャストルータポートに送信する(4208)。次に、マルチキャスト中継装置2000は、作成した当該エントリの中継抑止フラグをWaitに設定し(4209)、上流のマルチキャスト中継装置1000からの加入要求メッセージが応答されない場合のリトライ処理として、タイマ処理実行部に確認用メッセージ作成処理を例えば1秒後に実行されるように登録する(4210)。
マルチキャスト中継装置2000は、ステップ4202において当該エントリが存在する場合(4202:Yes)、当該エントリの生存時間を260秒に更新する(4212)。次に、マルチキャスト中継装置2000は、当該エントリの中継抑止フラグがOffであるか確認して(4213)、Offであれば(4213:Yes)マルチキャストルータポートの設定を確認する(4205)。マルチキャストルータポートが設定されていれば(4205:Yes)、マルチキャスト中継装置2000は、加入要求メッセージをマルチキャストルータポートに中継し(4206)、上流のマルチキャスト中継装置への確認処理を実行する。具体的には、マルチキャスト中継装置2000は、既に詳細に説明した通り、問い合せを作成し(4207)、作成した問合せをマルチキャストルータポートに送信し(4208)、中継抑止フラグをWaitに変更し(4209)、タイマ処理実行部2120に確認用メッセージ作成処理を登録する(4210)。
次に、マルチキャスト中継装置2000が上流のマルチキャスト中継装置1000への確認処理のための問い合わせメッセージをマルチキャストルータポートに送信したあと、上流のマルチキャスト中継装置1000からの加入要求メッセージを受信する処理を図10で説明する。マルチキャスト中継装置2000は、受信した加入要求メッセージを解析し(4200)、ソースアドレスが上流装置アドレスか確認する(4201)。受信した加入要求メッセージのソースアドレスが上流装置アドレスである場合(4201:Yes)、マルチキャスト中継装置2000は、当該加入要求メッセージが上流のマルチキャスト中継装置1000からの応答であると判断し、当該エントリの中継抑止フラグをOnにして(4214)、タイマ処理実行部2120に登録していた確認用メッセージ作成処理を削除する(4215)。
図11は、本発明の実施例1の下流のマルチキャスト中継装置2000が実行する確認用メッセージ作成処理を示すフローチャートである。
マルチキャスト中継装置2000は、登録されているマルチキャストグループアドレスに基づいて加入要求メッセージを作成し(4300)、登録されている上流装置アドレスから上流のマルチキャスト中継装置1000を接続しているマルチキャストルータポートを取得し(4301)、作成した加入要求メッセージを当該マルチキャストルータポートに送信する(4302)。
次に、マルチキャスト中継装置2000は、登録されている自装置のIPアドレスをソースアドレスに設定して、マルチキャストグループアドレスを設定した問い合わせメッセージを作成し(4303)、当該マルチキャストルータポートに送信する(4304)。次に、マルチキャスト中継装置2000は、確認用メッセージ作成処理をタイマ処理実行部に1秒後に実行されるように再登録する(4305)。
図9は、本発明の実施例1の上流のマルチキャスト中継装置1000が下流装置接続ポートから加入要求メッセージを受信したときに実行する処理を示すフローチャートである。
上流のマルチキャスト中継装置1000は、加入要求メッセージを受信した場合、加入要求メッセージを解析する(4100)。次に、マルチキャスト中継装置1000は、当該加入要求メッセージのマルチキャストグループが学習済みか、すなわち、エントリ管理表1141に当該加入要求メッセージのマルチキャストグループアドレスを含むエントリが存在するか確認する(4101)。
当該エントリが存在しない場合、上流のマルチキャスト中継装置1000は、当該エントリを作成する(4102)。例えば、図5(a)に示すエントリ1141-2がまだ生成されていない時点で、受信者11がマルチキャストグループGroup2_addrを指定する加入要求メッセージを送信し、それが下流のマルチキャスト中継装置2000によって中継されて上流のマルチキャスト中継装置1000のポート1002に到達した場合、上流のマルチキャスト中継装置1000は、マルチキャストグループGroup2_addrとポート1002とを対応付けるエントリ1141-2を生成する。
このとき、上流のマルチキャスト中継装置1000は、生成したエントリと同様のマルチキャストグループとポートとを対応付ける情報をマルチキャストパケット中継制御表1320にも追加する。上記の例では、図6(a)に示すように、マルチキャストパケット中継制御情報1320-2のマルチキャストグループGroup2_addrに対応する出力ポート1324としてポート1002が追加される。その結果、図6(a)の例では、マルチキャストグループGroup2_addrにポート1002および1003が対応付けられる。この場合に上流のマルチキャスト中継装置1000のいずれかのポートがマルチキャストグループGroup2_addrのマルチキャストデータパケットを受信すると、そのパケットはマルチキャストパケット中継制御表1320に基づいてポート1002及び1003に中継される。
次に、マルチキャスト中継装置1000は、下流装置接続ポートが指定されているか確認する(4103)。上流のマルチキャスト中継装置1000に下流装置接続ポートが指定されている場合(4103:Yes)、マルチキャスト中継装置1000は、加入要求メッセージを受信したポートと下流装置接続ポートとが一致するか確認し(4108)、一致する場合は(4108:Yes)、当該エントリの生存時間を無期限に設定する(4109)。
例えば上記のように図5(a)のエントリ1141-2が生成された場合、ポート1002が下流装置接続ポート1223に設定されているものと一致するため(図4(b)参照)、受信した加入要求メッセージが下流のマルチキャスト中継装置2000から送信されたものであると判断され、当該エントリ1141-2の生存時間1145は無期限に設定される。これによって、その後、ポート1002がマルチキャストグループGroup2_addrを設定した加入要求メッセージを受信したかにかかわらず、当該エントリ1141-2の保持が継続される。
下流装置接続ポートが指定されていない場合(4103:No)、および、加入要求メッセージを受信したポートと下流装置接続ポートとが一致しない場合は(4108:No)、マルチキャスト中継装置1000は、当該エントリの生存時間に260秒を設定する(4104)。
次に、マルチキャスト中継装置1000は、マルチキャストルータポートの設定を確認する(4105)。図1に示すように、本実施例の上流のマルチキャスト中継装置1000にはマルチキャストルータポートの設定が無いため(4105:No)、マルチキャスト中継装置1000は加入要求メッセージをどこにも中継しない。上流のマルチキャスト中継装置1000にマルチキャストルータポートの設定がある場合は(4105:Yes)、マルチキャスト中継装置1000は加入要求メッセージをマルチキャストルータポートに中継する(4106)。
ステップ4101において当該エントリが存在する場合、マルチキャスト中継装置1000は、下流装置接続ポートが指定されているか確認し(4110)、指定されていれば(4110:Yes)、加入要求メッセージを受信したポートと下流装置接続ポートとが一致するか確認する(4112)。加入要求メッセージを受信したポートと下流装置接続ポートとが一致する場合は(4112:Yes)、既に生存時間には無期限が設定されているため生存時間の更新は行わない。加入要求メッセージを受信したポートと下流装置接続ポートとが一致しない場合(4112:No)、および、当該エントリに下流装置接続ポートが指定されていない場合は(4110:No)、マルチキャスト中継装置1000は、当該エントリの生存時間を260秒に更新する(4111)。次に、マルチキャスト中継装置1000は、マルチキャストルータポートの確認を行う(4105)。図1に示すように、本実施例の上流のマルチキャスト中継装置1000にはマルチキャストルータポートの設定が無いため(4105:No)、マルチキャスト中継装置1000は加入要求メッセージをどこにも中継しない。
図12は、本発明の実施例1の上流のマルチキャスト中継装置1000が確認処理によって下流装置接続ポートから問い合わせメッセージを受信したときに実行する処理を示すフローチャートである。
上流のマルチキャスト中継装置1000は、問い合わせメッセージを受信した場合、問い合わせを解析し(4400)、ソースアドレスを確認する(4401)。ソースアドレスが下流のマルチキャスト中継装置2000のアドレスであった場合(4401:Yes)、マルチキャスト中継装置1000は、確認処理で送信された問い合わせメッセージを受信したと判断し、当該問い合わせメッセージに設定されているグループアドレスのエントリが学習済みか(すなわち当該マルチキャストグループと当該下流のマルチキャスト中継装置2000が接続されたポートとを対応付ける情報が設定されているか)を確認する(4405)。
エントリが学習済みの場合(4405:Yes)、マルチキャスト中継装置1000は、問い合わせメッセージを受信したポートが、当該エントリの加入ポートに一致するか確認する(4406)。両者が一致すれば(4406:Yes)、マルチキャスト中継装置1000は、正しくエントリが作成されていると判断する。そして、マルチキャスト中継装置1000は、当該マルチキャストグループに関する加入要求メッセージを上記の確認用メッセージに応答するメッセージとして作成し、そのソースアドレスに自装置アドレスを設定して(4407)、問い合わせメッセージを受信したポートに対して作成した加入要求メッセージを送信する(4408)。
学習済みのエントリが存在しない場合(4405:No)、および加入ポートと問い合わせメッセージを受信したポートとが一致しない場合(4406:No)、マルチキャスト中継装置1000は何もしない。
ソースアドレスが下流のマルチキャスト中継装置2000のアドレスでない場合は(4401:No)、マルチキャスト中継装置1000は当該問い合わせメッセージをVLAN内にフラッディングする。具体的には、マルチキャスト中継装置1000は、VLAN情報1210から当該VLANの所属ポートを取得し(4402)、当該問合せメッセージを受信したポート以外の所属ポートに中継する(4403)。
図14は、本発明の実施例1の下流のマルチキャスト中継装置2000がマルチキャスト受信者から離脱要求メッセージを受信したときに実行する処理を示すフローチャートである。
下流のマルチキャスト中継装置2000は、マルチキャスト受信者から離脱要求メッセージを受信した場合、離脱要求メッセージを解析し(4600)、当該離脱要求メッセージに対応するマルチキャストグループのエントリが学習済みか確認する(4601)。当該エントリが学習済みの場合(4601:Yes)、マルチキャスト中継装置2000は、当該エントリの生存時間を3秒に短縮する(4602)。
次に、マルチキャスト中継装置2000は、自装置がIGMPクエリアであるか確認する(4603)。図1の例では、下流のマルチキャスト中継装置2000はIGMPクエリアではないため(4603:No)、マルチキャストルータポートの設定を確認する(4604)。マルチキャストルータポートの設定がある場合(4604:Yes)、マルチキャスト中継装置2000は、当該離脱要求メッセージをマルチキャストルータポートに中継する(4605)。マルチキャストルータポートの設定が無い場合(4604:No)は何もしない。
下流のマルチキャスト中継装置2000がIGMPクエリアである場合(4603:Yes)、マルチキャスト中継装置2000は、当該マルチキャストグループを設定した問い合わせメッセージを作成し(4607)、当該問い合わせメッセージをVLAN内にフラッディングする(4608,4609)。このとき、下流のマルチキャスト中継装置2000は、当該エントリに中継抑止フラグがOnに設定されているか否かを判定し(4610)、設定されている場合(4610:Yes)、当該エントリの中継抑止フラグをOffに設定する(4611)。当該離脱要求メッセージに対するエントリが存在しない場合(4601:No)、マルチキャスト中継装置2000は何もしない。
マルチキャスト中継装置2000がマルチキャストルータポートに離脱要求メッセージを中継したあと、上流のマルチキャスト中継装置1000から当該マルチキャストグループが設定された問い合わせメッセージが送信される。
例えば、図1の上流のマルチキャスト中継装置1000が図5(a)に示すエントリ管理表1141および図6(a)に示すマルチキャストパケット中継制御表1320を保持しているときに、受信者11がマルチキャストグループGroup2_addrを設定した離脱要求メッセージを送信した場合、当該離脱要求メッセージは下流のマルチキャスト中継装置2000によって中継されてポート1002によって受信される。この場合、上流のマルチキャスト中継装置1000は、当該マルチキャストグループGroup2_addrとポート1002とを対応付けるエントリ1141-2の生存時間1145を3秒に設定し(4602)、当該マルチキャストグループGroup2_addrを設定した問い合わせメッセージを作成して、ポート1002を含む全所属ポートに送信する(4607~4609)。
図1の例では受信者11が離脱することによってポート1002の先に当該マルチキャストグループGroup2_addrに加入する受信者がいなくなる。このため、ポート1002は、送信した問い合わせメッセージに応答する(すなわち当該マルチキャストグループGroup2_addrのパケットの配信を要求する)加入要求メッセージを受信しない。その結果、エントリ1141-2の生存時間が尽きて、当該マルチキャストグループGroup2_addrとポート1002とを対応付けるエントリ1141-2が削除される。
さらに、これに合わせて、マルチキャストパケット中継制御表1320から当該マルチキャストグループGroup2_addrとポート1002とを対応付ける情報が削除される。具体的には、図6(a)のマルチキャストパケット中継制御情報1320-2の出力ポート1324からポート1002が削除される。その結果、上流のマルチキャスト中継装置1000は、マルチキャストグループGroup2_addrのマルチキャストデータパケットをポート1002に中継しなくなる。
なお、図1には示されていないが、仮に、下流のマルチキャスト中継装置2000に、受信者11以外に、マルチキャストグループGroup2_addrに加入している受信者が接続されている場合、ポート1002はその受信者から送信された加入要求メッセージを受信する。その場合、上流のマルチキャスト中継装置1000は、図9に示す処理を実行して、エントリ1141-2の生存時間を再び無期限に設定する。
上記のように、エントリ管理表において、マルチキャストグループとポートとを対応付けるエントリに設定されている生存時間は、当該エントリの保持を継続する時間であるだけでなく、それと同じマルチキャストグループとポートとを対応付けるマルチキャストパケット中継制御表の情報の保持を継続する時間でもある。
図13は、本発明の実施例1の下流のマルチキャスト中継装置2000が上流のマルチキャスト中継装置1000から問い合わせメッセージを受信した場合に実行する処理を示すフローチャートである。
下流のマルチキャスト中継装置2000は、受信した問い合わせメッセージを解析する(4500)。当該問い合わせメッセージが離脱要求メッセージに対して上流のマルチキャスト中継装置1000から送信された問い合せメッセージである場合、そのソースアドレスは0.0.0.0では無い(4501)。この場合、マルチキャスト中継装置2000は、当該問い合わせメッセージをVLAN内にフラッディングする(4502,4503)。
問い合わせメッセージをフラッディングして以降の、下流のマルチキャスト中継装置2000が実行するマルチキャスト受信者からの加入要求メッセージの受信処理は、前述した図10の加入要求メッセージ受信処理と同様である。
図15は、本発明の実施例1の下流のマルチキャスト中継装置2000においてエントリの生存時間が満了したときに実行される処理を示すフローチャートである。
下流のマルチキャスト中継装置2000は、生存時間の残りが3秒以下となったエントリを検知すると(4700)、マルチキャストルータポートの設定が存在するか確認する(4701)。ここで、生存時間の残りが3秒以下となったエントリが検知されたことは、当該エントリの生存時間の残りが3秒になる前に、当該エントリに対応するポートに接続された受信者から、当該エントリに対応するマルチキャストグループに関する加入要求メッセージを受信しなかったことを意味する。この場合、下流のマルチキャスト中継装置2000は、マルチキャストルータポートの設定が存在するか否かを判定する(4701)。
マルチキャストルータポートの設定が存在する場合(4701:Yes)、下流のマルチキャスト中継装置2000は、当該エントリのグループアドレスを設定した離脱要求メッセージを作成して(4702)、マルチキャストルータポートに送信する(4703)。これ以降、上流のマルチキャスト中継装置1000で離脱要求メッセージの受信処理が実行され、下流のマルチキャスト中継装置2000で当該マルチキャストグループを指定した問い合わせメッセージの受信処理が実行される。
上流のマルチキャスト中継装置1000が実行する離脱要求メッセージ受信処理は、前述した図14の離脱要求メッセージ受信処理と同様である。下流のマルチキャスト中継装置2000が実行する問い合わせメッセージの受信処理は前述した図13の問い合わせメッセージ受信処理と同様である。
図16は、本発明の実施例1の下流のマルチキャスト中継装置が障害となったときに実行される処理を示すフローチャートである。
ここでは、図8のネットワーク構成において、下流のマルチキャスト中継装置3000が障害となったときの処理を説明する。
マルチキャスト中継装置2000は、接続したマルチキャスト中継装置3000の障害に起因する接続ポートの非運用状態を検知した場合(4800)、エントリ管理表2141に当該ポートを加入先とする(すなわち当該ポートが加入ポート情報として登録されている)エントリが存在するか確認し(4801)、エントリが存在する場合は(4801:Yes)、当該エントリの生存時間を3秒に短縮する(4802)。
次に、マルチキャスト中継装置2000は、マルチキャストルータポートの設定を確認し(4803)、マルチキャストルータポートの設定が存在する場合は(4803:Yes)、当該マルチキャストグループを設定した離脱要求メッセージを作成し(4804)、当該離脱要求をマルチキャストルータポートに送信する(4805)。マルチキャストルータポートの設定が無い場合は(4803:No)、マルチキャスト中継装置2000は離脱要求メッセージを送信しない。非運用状態となったポートを出力先とするエントリが存在しない場合は(4801:No)、マルチキャスト中継装置2000は何もしない。
上流のマルチキャスト中継装置1000が実行する離脱要求メッセージ受信の処理は、図14と同様である。
図17は、本発明の実施例1の上流のマルチキャスト中継装置1000が即座にネットワーク内の全ての加入要求メッセージを収集するために実行する処理を示すフローチャートである。
上流のマルチキャスト中継装置1000は、即座にネットワーク内の全ての加入要求メッセージを収集する場合、ソースアドレスに0.0.0.0を設定し、マルチキャストグループを指定しない問い合わせメッセージを作成し(4900)、全VLANの所属ポートを取得する(4901)。次に作成した問い合わせメッセージを全VLANの全所属ポートに対して送信する(4902)。
次に、下流のマルチキャスト中継装置2000が、ソースアドレスが0.0.0.0の問い合わせメッセージを受信した場合の処理を、図13を参照して説明する。マルチキャスト中継装置2000は、受信した問い合わせメッセージを解析する(4500)。受信した問い合わせメッセージのソースアドレスが0.0.0.0であり(4501:Yes)、当該メッセージにマルチキャストグループが指定されていない場合(4505:No)、マルチキャスト中継装置2000は、エントリ管理表2141の全エントリの中継抑止フラグをOffに設定し(4506)、当該問い合わせメッセージをVLAN内にフラッディングする(4502,4503)。
受信した問い合わせメッセージのソースアドレスが0.0.0.0であり(4501:Yes)、当該メッセージにマルチキャストグループが指定されている場合(4505:Yes)の処理については後述する(実施例3参照)。
これ以降のマルチキャスト受信者からの加入要求メッセージを受信したあとの下流のマルチキャスト中継装置2000の処理は図10と同様であり、上流のマルチキャスト中継装置1000の処理は図9と同様である。
上記のとおり、下流のマルチキャスト中継装置2000の構成を図2に、上流のマルチキャスト中継装置1000の構成を図3にそれぞれ示し、それらが保持する情報及びそれらが実行する処理を図4~図17に示した。しかし、下流のマルチキャスト中継装置2000および上流のマルチキャスト中継装置1000は同一のハードウェアによって実現することができる。このため、例えば一つのマルチキャスト中継装置が、複数の他のマルチキャスト中継装置と接続されている場合において、それらの複数の他のマルチキャスト中継装置の一つとの関係においては上流のマルチキャスト中継装置として稼働し、別の一つとの関係においては下流のマルチキャスト中継装置として稼働することができる(例えば図8参照)。
具体的には、本実施例のマルチキャスト中継装置のIGMPスヌーピング処理部の制御パケット送受信処理部は、応答用メッセージ作成部1131、中継抑止解除メッセージ作成部1132、確認用メッセージ受信処理部1133、確認用メッセージ作成部2131、離脱メッセージ作成部2132、応答用メッセージ受信処理部2133および抑止解除メッセージ受信処理部2134の全てを含んでもよい。その場合、当該マルチキャスト中継装置が上流のマルチキャスト中継装置1000として稼働するときには応答用メッセージ作成部1131、中継抑止解除メッセージ作成部1132および確認用メッセージ受信処理部1133が使用され、下流のマルチキャスト中継装置2000として稼働するときには確認用メッセージ作成部2131、離脱メッセージ作成部2132、応答用メッセージ受信処理部2133および抑止解除メッセージ受信処理部2134が使用される。
また、本実施例のマルチキャスト中継装置のエントリ管理部は、削除エントリ検索部2142を含んでもよい。その場合、当該マルチキャスト中継装置が下流のマルチキャスト中継装置2000として稼働するときのみ、削除エントリ検索部2142が使用される。
また、本実施例のマルチキャスト中継装置のIGMPスヌーピング処理部1100、2100、装置構成定義部1200、2200、ポート状態検出部1400および2400の処理は、マルチキャスト中継装置内のプロセッサ(図示省略)が、マルチキャスト中継装置内のメモリ(図示省略)に格納されたプログラムに従って実行してもよい。その場合、本実施例で説明した上記の各部の処理は実際には当該プロセッサによって実行される。また、VLAN管理表1111、2111、エントリ管理表1141、2141、IGMPスヌーピング情報1220および2220は、上記のメモリ内に格納される。
マルチキャストパケット中継処理部1300および2300は、上記のようにプロセッサによって実現されてもよい(その場合、VLAN登録表1310、2310、マルチキャストパケット中継制御表1320および2320はメモリに格納される)が、一般には、高いレートでマルチキャストデータパケットを中継するため、専用のハードウェアによって実現される。その場合、VLAN登録表1310、2310、マルチキャストパケット中継制御表1320および2320は当該専用のハードウェア内の記憶領域に保持される。
以上のように、本発明の実施例1によれば、下流のマルチキャスト中継装置において、マルチキャスト受信者から送信された加入要求メッセージの上流のマルチキャスト中継装置への中継状態を管理し、マルチキャスト受信者から最初に送信された加入要求メッセージのみを上流のマルチキャスト中継装置に中継する。これにより、定期的な問い合わせメッセージ受信でマルチキャスト受信者から応答される加入要求メッセージの上流のマルチキャスト中継装置への中継は抑止される。
上流のマルチキャスト中継装置は、下流のマルチキャスト中継装置から中継された加入要求メッセージを認識し、下流のマルチキャスト中継装置から中継された加入要求メッセージで作成するマルチキャスト中継制御情報の生存時間に無期限を設定する。これにより、定期的な問い合わせメッセージ受信のたびにマルチキャスト受信者から送信される加入要求メッセージを、上流のマルチキャスト中継装置に中継する必要が無くなるため、定期的な問い合わせメッセージ送受信時の加入要求メッセージの中継処理に起因する上流および下流のマルチキャスト中継装置の高負荷状態を軽減することができる。
さらに、上記のように下流のマルチキャスト中継装置において加入要求メッセージの中継を抑止するとともに、上流のマルチキャスト中継装置においてマルチキャスト中継制御情報の生存時間を無期限または任意の時間に設定することによって懸念される問題についても、解消できる手段が提案された。
具体的には、下流のマルチキャスト中継装置が最初の加入要求メッセージだけしか上流のマルチキャスト中継装置に中継しなかったとしても、加入要求メッセージの中継後に上流のマルチキャスト中継装置に対して確認処理を行う。これにより、上流のマルチキャスト中継装置でのマルチキャスト中継制御情報の作成を保証しマルチキャスト中継を実現することができる。
上流のマルチキャスト中継装置のマルチキャスト中継制御情報の生存時間を無期限または任意の時間としたとしても、マルチキャスト受信者からの離脱要求メッセージ受信時、下流のマルチキャスト中継装置においてのマルチキャスト中継制御情報の生存時間満了(タイムアウト)時および下流のマルチキャスト中継装置の障害時に、上流のマルチキャスト中継装置に離脱情報を通知する。これにより、上流のマルチキャスト中継装置のマルチキャスト中継制御情報の生存時間が無期限または任意の生存時間内だとしても、不要となったマルチキャスト中継制御情報を削除することができる。
また、上流のマルチキャスト中継装置が、障害復旧時等で全てのマルチキャスト中継制御情報が消去されてマルチキャスト中継が停止している状態で、早急にネットワーク内の全マルチキャストグループの加入状態を把握したい場合、下流のマルチキャスト中継装置が加入要求メッセージの中継を抑止している状態だったとしても、下流のマルチキャスト中継の中継抑止状態を解除し、マルチキャスト受信者に加入要求メッセージを要求する。これにより、即座に全マルチキャストグループの加入状態を収集し、マルチキャスト中継を再開することができる。
次に、本発明の実施例2を説明する。以下に説明する相違点を除き、実施例2のシステムの各部は、図1~図17に示された実施例1の同一の符号を付された各部と同一の機能を有するため、それらの説明は省略する。
実施例1では、上流のマルチキャスト中継装置のエントリ管理表の生存時間を無期限とする手法について説明した。生存時間を無期限とした場合、実施例1では3つの離脱事象(マルチキャスト受信者からの離脱要求メッセージ受信、エントリの生存時間満了および装置障害による不要なエントリ削除)について説明した。しかし、上記の3つの事象以外の未知の事象によって生存時間が無期限のエントリが不要であるにもかかわらず残存してしまうことが考えられる。本問題を解消するために、実施例2では生存時間に無期限を設定しているエントリ管理表を任意の時間で定期的に要否判定を行い、不要なエントリを削除する手法について説明する。
図18は、本発明の実施例2の上流のマルチキャスト中継装置1000の内部構造の説明図である。
本実施例では、上流のマルチキャスト中継装置1000のIGMPスヌーピング情報1220に要否判定時間1225が追加され、エントリ管理部1140に不要エントリ判定処理部1146を追加している。要否判定時間1225は、下流のマルチキャスト中継装置2000から受信した加入要求メッセージで作成した生存時間が無期限のエントリの要否判定を定期的に行う時間(間隔)である。例えば1日に1回、不要なエントリが残存していないか確認する場合、1日の長さに相当する86400秒が設定される。不要エントリ判定処理部1146はエントリの要否判定を行う処理部である。
上流のマルチキャスト中継装置1000は、タイマ処理実行部1120に、不要エントリ判定処理を86400秒後に実行するように登録する。エントリ要否確認処理を実行するために必要な情報は、特に登録しない。
タイマ処理実行部1120によって、86400秒後に不要エントリ判定処理部1146による処理が実行される。不要エントリ判定処理部1146は、エントリ管理表1141を参照して生存時間が無期限の全てのエントリの生存時間を例えば10秒に設定する。この例では、問い合わせメッセージの最大応答時間が10秒であり、10秒間は当該エントリを保持する必要があるため10秒と設定しているが、問い合わせメッセージの最大応答時間が上記以外となる場合等には、それに応じて適切な任意の時間を設定することができる。
さらに、制御パケット送受信処理部1130の中継抑止解除メッセージ作成部1132が、ソースアドレスに0.0.0.0を設定し、マルチキャストグループアドレスを設定しない問い合わせメッセージを作成する。次に制御パケット送受信処理部1130はVLAN管理表2111から当該VLANの下流装置接続ポートを取得し、下流装置接続ポートに対して作成した問い合わせメッセージを送信する。上流のマルチキャスト中継装置1000は、この問い合わせメッセージ送信処理を全VLANに対して行う。
下流のマルチキャスト中継装置2000は、ソースアドレスに0.0.0.0が設定され、マルチキャストグループアドレスが設定されていない問い合わせメッセージを受信すると、実施例1に記述した方法と同じ方法で、全エントリの加入要求メッセージの中継抑止状態を解除し(図13のステップ4506)、当該問い合わせメッセージをVLAN内にフラッディングする(4503)。その結果、ネットワーク内の全マルチキャスト受信者は加入要求メッセージを応答する。このとき、上流のマルチキャスト中継装置1000に生存時間が無期限の不要なエントリが残っていた場合、当該エントリに対して、加入要求メッセージは応答されないため、10秒後に上流のマルチキャスト中継装置1000の不要なエントリは削除される。
上流のマルチキャスト中継装置1000は、不要エントリ判定処理を実行後、再度86400秒後に実行するように不要エントリ判定処理を登録する。これにより、86400秒間隔で不要エントリ判定処理を実行することができる。
本実施例では不要なエントリを確認するために、上流のマルチキャスト中継装置はソースアドレスに0.0.0.0を設定した問い合わせメッセージを送信しているが、下流のマルチキャスト中継装置に通知する方法は、この手法に限らない。
以上の処理を適用することによって、未知の事象によって不要なエントリが残存している場合でも、設定した時間毎にエントリ要否判定を行うことで不要なエントリを削除することができる。
図19は、本発明の実施例2の上流のマルチキャスト中継装置1000が、生存時間が無期限の不要なエントリを削除するために実行する不要エントリ判定処理を示すフローチャートである。
タイマ処理実行部によって指定した時間が経過すると不要エントリ判定処理が実行される。不要エントリ判定処理では、マルチキャスト中継装置1000は、生存時間が無期限の全てのエントリの生存時間を10秒に設定する(5000)。次にソースアドレスが0.0.0.0の問い合わせメッセージを作成し(5001)、下流装置接続ポートを取得して(5002)、作成した問い合わせメッセージを下流装置接続ポートに対して送信する(5003)。次に、不要エントリ判定処理を指定された時間(例えば86400秒)後に実行されるように、タイマ処理実行部に再登録する(5004)。
下流のマルチキャスト中継装置2000が、ソースアドレスが0.0.0.0の問い合わせメッセージを受信したときの処理は図13と同様である。
上流のマルチキャスト中継装置1000が、ソースアドレスが0.0.0.0の問い合わせメッセージを送信後、加入要求メッセージを受信する処理は図9と同様である。
上流のマルチキャスト中継装置1000が、ソースアドレスが0.0.0.0の問い合わせメッセージ送信後、加入要求を受信しなかった場合に実行する処理を図15で説明する。
不要エントリ判定処理によって、生存時間が10秒となったエントリは、その後、生存時間が3秒に減算され、検知される(4700)。上流のマルチキャスト中継装置1000にはマルチキャストルータポートの設定が無いため(4701:No)、ステップ4702および4703は実行されない。その結果、3秒後に不要なエントリは削除される。
以上のように、本発明の実施例2によれば、上流のマルチキャスト中継装置1000は、生存時間が無期限と設定されたエントリについて、所定の間隔で、中継抑止フラグの設定を解除することを示す情報を含む特殊な問い合わせメッセージ下流のマルチキャスト中継装置2000に送信する。そして、その問い合わせメッセージに応答する加入要求メッセージを受信しなかった場合、当該エントリは削除される。これによって、実施例1において想定されている受信者の離脱および回線障害のいずれとも異なる未知の事象によってマルチキャストデータパケットの配信が不要となった場合に、そのことを検出して、配信を停止することができる。
このとき、上記の特殊な問い合わせメッセージの送信間隔を、従来の問い合わせメッセージの送信間隔(例えば125秒)より十分に長い時間(例えば24時間)とすることによって、当該特殊な問い合わせメッセージに応答する加入要求メッセージの中継処理に起因するマルチキャスト中継装置の高負荷状態を軽減することができる。
次に、本発明の実施例3を説明する。以下に説明する相違点を除き、実施例3のシステムの各部は、図1~図19に示された実施例1~2の同一の符号を付された各部と同一の機能を有するため、それらの説明は省略する。
実施例1、2では上流のマルチキャスト中継装置1000で下流のマルチキャスト中継装置2000から中継された加入要求メッセージで作成したエントリ管理表の生存時間を無期限とする手法について説明した。一方、実施例3では生存時間に任意の時間を設定する手法について説明する。
図20は、本発明の実施例3の上流のマルチキャスト中継装置1000の内部構造の説明図である。
本実施例では装置構成定義部1200のIGMPスヌーピング情報1220に生存時間1226が追加されている。設定した生存時間1226はVLAN管理部1110で管理される。実施例1と同様に、上流のマルチキャスト中継装置1000は、下流装置接続ポートから受信した加入要求メッセージが下流のマルチキャスト中継装置2000から中継された加入要求メッセージであると判断し、当該加入要求メッセージに基づいて作成するエントリ管理表1141の生存時間に、VLAN管理表1111に登録されている生存時間を設定する。
マルチキャスト中継装置1000は、エントリ管理表1141作成後、生存時間を減算し、残り時間が3秒のエントリを検知したら、当該エントリの加入ポートがVLAN管理表1111に登録されている下流装置接続ポートと同じであるかを判定する。ここで、3秒とは、離脱要求メッセージ受信時の短縮時間と同じであり、3秒以外の任意の時間を設定することもできる。当該エントリの加入ポートがVLAN管理表1111に登録されている下流装置接続ポートと同じである場合、制御パケット送受信処理部1130の中継抑止解除メッセージ作成部1132が、ソースアドレス0.0.0.0および当該グループアドレスを設定した問い合わせメッセージを作成し、当該エントリ管理表に登録されている加入ポートに送信する。
次に、下流のマルチキャスト中継装置2000が問い合わせメッセージを受信する処理を、図2を用いて説明する。下流のマルチキャスト中継装置2000は、当該問い合わせメッセージを受信すると、実施例1と同様の方法で制御パケット送受信処理部2130に通知する。制御パケット送受信処理部2130が問い合わせメッセージを解析し、削除エントリ検索部2142が当該問い合わせメッセージに設定されたマルチキャストグループのエントリがエントリ管理表2141に存在するか確認する。
エントリが存在すれば、マルチキャスト中継装置2000は、当該エントリ管理表の生存時間を2秒(IGMPでのマルチキャストグループ指定の問い合わせメッセージ受信時の一般的な短縮時間)に短縮して、中継抑止フラグをOffにする。次にマルチキャスト中継装置2000は、当該VLANの全所属ポートをVLAN管理表2111より取得し、当該問い合わせメッセージをVLAN内にフラッディングする。マルチキャスト受信者からの加入要求メッセージ受信後の下流のマルチキャスト中継装置1000の処理は実施例1と同様である。
本実施例では、生存時間に任意の時間を設定したエントリが満了するときに、上流のマルチキャスト中継装置はソースアドレスに0.0.0.0を設定したグループ指定の問い合わせメッセージを送信して、下流のマルチキャスト中継装置の当該マルチキャストグループの中継抑止状態を解除している。しかし、この方法は一例であり、下流のマルチキャスト中継装置に通知する方法として上記以外の方法を使用してもよい。
以上の処理によって、設定した任意の生存時間内において定期的な問い合わせメッセージの送受信による加入要求メッセージの中継を抑止することができる。
図21は、本発明の実施例3の上流のマルチキャスト中継装置1000が、下流のマルチキャスト中継装置2000から受信した加入要求メッセージに基づいて作成するエントリ管理表の生存時間に、任意の時間を設定するために実行する処理を示すフローチャートである。
上流のマルチキャスト中継装置1000は、実施例1で説明した方法と同じ方法で加入要求メッセージを解析する(4100)。その後のステップ4101~4104および4108は実施例1と同様であるため説明を省略する(図9参照)。ステップ4108において、加入要求メッセージを受信したポートと下流装置接続ポートとが一致する場合は(4108:Yes)、マルチキャスト中継装置1000は、エントリ管理表の生存時間設定時に、生存時間の設定があるか確認する(4113)。
生存時間の設定がある場合(4113:Yes)、当該エントリ管理表の生存時間に任意の生存時間を設定する(4114)。その後、処理はステップ4105に進む。一方、生存時間の設定がない場合(4113:No)、処理はすステップ4109へ進む。これ以降の加入要求メッセージのマルチキャストルータポートへの中継処理(4105~4107)は実施例1と同様である。また、エントリ管理表1141に当該加入要求メッセージのマルチキャストグループアドレスを含むエントリが存在すると判定された場合の処理(4101:Yes、4110~4112)も実施例1と同様である。
図22は、本発明の実施例3の上流のマルチキャスト中継装置1000において、残時間が3秒のエントリを検知した場合に実行される処理を示すフローチャートである。
マルチキャスト中継装置1000は、生存時間が3秒のエントリを検出した場合(5100)、当該エントリの加入ポートが下流装置接続ポートと同じか確認する(5101)。当該エントリの加入ポートが加入装置接続ポートと同じである場合(5101:Yes)、マルチキャスト中継装置1000は、ソースアドレスが0.0.0.0の問い合わせメッセージを作成し(5102)、当該問い合わせメッセージに当該エントリのマルチキャストグループを設定する(5103)。
次に、マルチキャスト中継装置1000は、当該エントリの加入ポートを取得し(5104)、加入ポートに対して作成した問い合わせメッセージを送信する(5105)。加入ポートが下流装置接続ポートでない場合(5101:No)、マルチキャスト中継装置1000は何もしない。
次に、下流のマルチキャスト中継装置2000において、マルチキャストグループが設定され、ソースアドレスに0.0.0.0が設定された問い合わせメッセージを受信する処理を図13で説明する。
マルチキャスト中継装置2000は、実施例1と同じ方法で問い合わせメッセージを解析する(4500)。当該問い合わせメッセージのソースアドレスが0.0.0.0(4501:Yes)、マルチキャストグループ設定あり(4505:Yes)であるため、マルチキャスト中継装置2000は、当該エントリの生存時間を2秒に設定し(4507)、当該エントリの中継抑止フラグをOffに設定する(4508)。それ以降の問い合わせメッセージのVLAN内フラッディング処理(4502~4504)は実施例1と同様である。
以上のように、本発明の実施例3によれば、実施例1と異なり、上流のマルチキャスト中継装置1000では、下流のマルチキャスト中継装置2000が接続されたポートに関するエントリの生存時間として無期限ではなく所定の有限の時間が設定される。下流のマルチキャスト中継装置2000では、上記の生存時間の残りが所定の値になるまで、上流のマルチキャスト中継装置1000への加入要求メッセージの中継が抑止され、生存時間の残りが所定の値になると、加入要求メッセージの中継が再開される。上流のマルチキャスト中継装置1000では、当該生存時間が経過するまで、下流のマルチキャスト中継装置2000からの加入要求メッセージを受信したかにかかわらずエントリの保持が継続され、生存時間が経過する前に加入要求メッセージを受信した場合には当該生存時間として再び上記の所定の有限の時間が設定され、生存時間が経過したときにエントリが削除される。これによって、実施例1において想定されていない未知の事象によってマルチキャストデータパケットの配信が不要となった場合に、そのことを検出して、配信を停止することができる。このとき、エントリの生存時間を従来の生存時間(例えば260秒)より十分に長い時間(例えば数時間)とすることによって、実施例1の場合と同様に、加入要求メッセージの中継処理に起因するマルチキャスト中継装置の高負荷状態を軽減することができる。
次に、本発明の実施例4を説明する。以下に説明する相違点を除き、実施例4のシステムの各部は、図1~図22に示された実施例1~3の同一の符号を付された各部と同一の機能を有するため、それらの説明は省略する。
本発明は、図1または図8に示したものだけでなく、様々な構成のネットワークに適用することができる。実施例4では、その一例として、マルチキャスト中継装置を直列に接続した構成のネットワークについて説明する。
図23は、本発明の実施例4のネットワーク構成の説明図である。
図23の例では3台のマルチキャスト中継装置1000、3000および2000がその順に直列に接続されている。この場合、中段のマルチキャスト中継装置3000にも下流装置接続ポートおよび下流装置アドレスを設定することで本発明を適用する。
図24は、本発明の実施例4の各マルチキャスト中継装置に設定されるIGMPスヌーピング情報の説明図である。
図24(a)に示すように、マルチキャスト中継装置1000のIGMPスヌーピング情報1220では、VLAN名称1221にVLAN100が設定される。マルチキャスト中継装置1000には上流のマルチキャスト中継装置を接続していないためマルチキャストルータポート1222は設定無しとなる。下流装置接続ポート1223にマルチキャスト中継装置3000の接続ポートである1002、下流装置アドレス1224にマルチキャスト中継装置3000のIPアドレスであるIP3_addrが設定される。
図24(b)に示すように、マルチキャスト中継装置3000のIGMPスヌーピング情報3220では、VLAN名称3221にVLAN100、マルチキャストルータポート3222にマルチキャスト中継装置1000の接続ポートである3001、上流装置アドレス3223にマルチキャスト中継装置1000のIPアドレスであるIP1_addr、下流装置接続ポート3224にマルチキャスト中継装置2000の接続ポートである3002、下流装置アドレス3225にマルチキャスト中継装置2000のIPアドレスであるIP2_addrが設定される。
図24(c)に示すように、マルチキャスト中継装置2000のIGMPスヌーピング情報2220では、VLAN名称2221にVLAN100、マルチキャストルータポート2222にマルチキャスト中継装置3000の接続ポートである2001、上流装置アドレス2223にマルチキャスト中継装置3000のIPアドレスであるIP3_addrが設定される。
以上の設定によって、最下流のマルチキャスト中継装置2000が加入要求メッセージの中継抑止処理を行い、中段のマルチキャスト中継装置3000が加入要求メッセージの中継抑止処理およびエントリの生存時間を無期限に設定する処理を行い、最上流のマルチキャスト中継装置1000がエントリの生存時間を無期限に設定する処理を行う。これによって、直列に複数台、マルチキャスト中継装置を接続した場合でも、本発明を適用することができる。
次に、本発明の実施例5を説明する。以下に説明する相違点を除き、実施例5のシステムの各部は、図1~図24に示された実施例1~4の同一の符号を付された各部と同一の機能を有するため、それらの説明は省略する。
実施例5では、本発明を適用できるネットワークの別の例として、下流のマルチキャスト中継装置を並列に接続した構成のネットワークについて説明する。
図25は、本発明の実施例5のネットワーク構成の説明図である。
図25では2台の下流のマルチキャスト中継装置2000および3000が並列に接続されている。この場合、上流のマルチキャスト中継装置1000で下流装置接続ポートおよび下流装置アドレスがそれぞれ2台分設定される。
図26は、本発明の実施例5の各マルチキャスト中継装置に設定されるIGMPスヌーピング情報の説明図である。
図26(a)に示すように、マルチキャスト中継装置1000のIGMPスヌーピング情報1220では、VLAN名称1221にVLAN100が設定される。マルチキャスト中継装置1000には上流のマルチキャスト中継装置を接続していないためマルチキャストルータポート1222は設定無しとなる。
1つ目の下流装置接続ポート1223にはマルチキャスト中継装置2000の接続ポートである1002、1つ目の下流装置アドレス1224にはマルチキャスト中継装置2000のIPアドレスであるIP2_addrが設定される。2つ目の下流装置接続ポート1223にはマルチキャスト中継装置3000の接続ポートである1003、2つ目の下流装置アドレス1224にはマルチキャスト中継装置3000のIPアドレスであるIP3_addrが設定される。
図26(b)に示すように、マルチキャスト中継装置2000のIGMPスヌーピング情報2220では、VLAN名称2221にVLAN100、マルチキャストルータポート2222にマルチキャスト中継装置1000の接続ポートである2001、上流装置アドレス2223に上流のマルチキャスト中継装置1000のIPアドレスであるIP1_addrが設定される。
図26(c)に示すように、マルチキャスト中継装置3000のIGMPスヌーピング情報3220では、VLAN名称3221にVLAN100、マルチキャストルータポート3222にマルチキャスト中継装置1000の接続ポートである3001、上流装置アドレス3223に上流のマルチキャスト中継装置1000のIPアドレスであるIP1_addrが設定される。
以上の設定によって、下流のマルチキャスト中継装置2000および3000が加入要求メッセージの中継抑止処理を行い、上流のマルチキャスト中継装置1000が下流のマルチキャスト中継装置2000および3000から中継された加入要求メッセージに基づいて作成されたエントリの生存時間を無期限に設定する処理を行う。これによって、下流のマルチキャスト中継装置が並列に複数台接続された場合でも、本発明を適用することができる。
次に、本発明の実施例6を説明する。以下に説明する相違点を除き、実施例6のシステムの各部は、図1~図26に示された実施例1~5の同一の符号を付された各部と同一の機能を有するため、それらの説明は省略する。
実施例6では、本発明を適用できるネットワークの別の例として、上流のマルチキャスト中継装置を並列に接続した構成のネットワークについて説明する。
図27は、本発明の実施例6のネットワーク構成の説明図である。
図27では2台の上流のマルチキャスト中継装置1000および2000が並列に接続されている。この場合、上流のマルチキャスト中継装置1000および2000に下流装置接続ポートおよび下流装置アドレスを設定し、下流のマルチキャスト中継装置3000にマルチキャストルータポートおよび上流装置アドレスをそれぞれ2台分設定する。
図28は、本発明の実施例6の各マルチキャスト中継装置に設定されるIGMPスヌーピング情報の説明図である。
図28(a)に示すように、マルチキャスト中継装置1000のIGMPスヌーピング情報1220では、VLAN名称1221にVLAN100が設定される。マルチキャスト中継装置1000には上流のマルチキャスト中継装置を接続していないためマルチキャストルータポート1222は設定無しとなる。下流装置接続ポート1223にマルチキャスト中継装置3000の接続ポートである1002、下流装置アドレス1224にマルチキャスト中継装置3000のIPアドレスであるIP3_addrが設定される。
図28(b)に示すように、マルチキャスト中継装置2000のIGMPスヌーピング情報2220では、VLAN名称2221にVLAN100が設定される。マルチキャスト中継装置2000には上流のマルチキャスト中継装置を接続していないためマルチキャストルータポート2222は設定無しとなる。下流装置接続ポート2224にマルチキャスト中継装置3000の接続ポートである2002、下流装置アドレス2225にマルチキャスト中継装置3000のIPアドレスであるIP3_addrが設定される。
図28(c)に示すように、マルチキャスト中継装置3000のIGMPスヌーピング情報3220では、VLAN名称3221にVLAN100が設定される。さらに、マルチキャストルータポート3222および上流装置アドレス3223はそれぞれ2台分が設定される。1つ目の設定では、マルチキャストルータポート3222にマルチキャスト中継装置1000の接続ポートである3001、上流装置アドレス3223に上流のマルチキャスト中継装置1000のIPアドレスであるIP1_addrが設定される。2つ目の設定では、マルチキャストルータポート3222にマルチキャスト中継装置2000の接続ポートである3002、上流装置アドレス3223に上流のマルチキャスト中継装置2000のIPアドレスであるIP2_addrが設定される。
以上の設定によって、下流のマルチキャスト中継装置3000がマルチキャスト中継装置1000および2000に対して加入要求メッセージの中継抑止処理を行い、上流のマルチキャスト中継装置1000および2000が下流のマルチキャスト中継装置1000から中継された加入要求メッセージに基づいて作成されたエントリの生存時間を無期限に設定する処理を行う。これによって、上流のマルチキャスト中継装置が並列に複数台接続された場合でも、本発明を適用することができる。
また、上記の実施例4から実施例6に記載した直列接続及び並列接続を組み合わせたネットワークでも、それぞれの装置に上記の各実施例の手法を適用することで対応可能である。
各実施例はIGMPスヌーピングで説明したが、MLDスヌーピングも同様の手法で実現可能である。
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明のより良い理解のために詳細に説明したのであり、必ずしも説明の全ての構成を備えるものに限定されものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることが可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によってハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによってソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、不揮発性半導体メモリ、ハードディスクドライブ、SSD(Solid State Drive)等の記憶デバイス、または、ICカード、SDカード、DVD等の計算機読み取り可能な非一時的データ記憶媒体に格納することができる。
また、制御線及び情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線及び情報線を示しているとは限らない。実際にはほとんど全ての構成が相互に接続されていると考えてもよい。
10、11、12、13 マルチキャスト受信者
20 マルチキャスト送信者
100 VLAN名称
1000、2000、3000 マルチキャスト中継装置
1100、2100 IGMPスヌーピング処理部
1110、2110 VLAN管理部
1120、2120 タイマ処理実行部
1130、2130 制御パケット送受信処理部
1140、2140 エントリ管理部
1200、2200 装置構成定義部
1210、2210 VLAN情報
1220、2220 IGMPスヌーピング情報
1300、2300 マルチキャストパケット中継処理部
1310、2310 VLAN登録表
1320、2320 マルチキャストパケット中継制御表
1400、2400 ポート状態検出部

Claims (16)

  1. 複数のポートを有し、前記ポート間でマルチキャストデータパケットを中継するマルチキャスト中継装置であって、
    前記複数のポートのいずれかにマルチキャストデータパケットの送信元である上流のマルチキャスト中継装置が接続されている場合、いずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであるかを示す情報を保持し、
    前記上流のマルチキャスト中継装置からマルチキャストデータパケットの配信を要求するかを問い合わせるための問い合わせメッセージを受信すると、前記問い合わせメッセージを前記複数のポートの少なくともいずれかに中継し、
    前記複数のポートのいずれかが、いずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信した場合、当該マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであることを示す情報を保持しているかを判定し、
    当該マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであることを示す情報を保持していない場合、前記受信した加入要求メッセージを前記上流のマルチキャスト中継装置が接続されたポートに中継し、
    当該マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであることを示す情報を保持している場合、前記受信した加入要求メッセージの前記上流のマルチキャスト中継装置が接続されたポートへの中継を抑止し、
    前記複数のポートのいずれかにマルチキャストデータパケットの送信先である下流のマルチキャスト中継装置が接続され、かつ、前記下流のマルチキャスト中継装置からいずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信した場合、前記マルチキャストグループと前記下流のマルチキャスト中継装置が接続されたポートとを対応付ける中継制御情報を保持して、前記中継制御情報の保持を継続する時間を無期限と設定し
    前記複数のポートのいずれかが前記マルチキャストグループのマルチキャストデータパケットを受信した場合、前記中継制御情報に基づいて、前記マルチキャストデータパケットを前記下流のマルチキャスト中継装置が接続されたポートに中継し、
    所定の間隔で、マルチキャストデータパケットの配信を要求するかを問い合わせるための問い合わせメッセージを少なくとも前記下流のマルチキャスト中継装置に送信し、
    前記中継制御情報の保持を継続する時間が無期限と設定された場合、前記下流のマルチキャスト中継装置から前記マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信したかにかかわらず、前記マルチキャストグループと前記下流のマルチキャスト中継装置が接続されたポートとを対応付ける前記中継制御情報の保持を継続することを特徴とするマルチキャスト中継装置。
  2. 請求項1に記載のマルチキャスト中継装置であって、
    前記複数のポートのいずれかにマルチキャストデータパケットの送信先である下流のマルチキャスト中継装置が接続されている場合、前記下流のマルチキャスト中継装置が接続されているポートを識別する情報を保持し、
    前記下流のマルチキャスト中継装置が接続されているポートが受信した前記加入要求メッセージを、前記下流のマルチキャスト中継装置から受信した加入要求メッセージと判別することを特徴とするマルチキャスト中継装置。
  3. 複数のポートを有し、前記ポート間でマルチキャストデータパケットを中継するマルチキャスト中継装置であって、
    前記複数のポートのいずれかにマルチキャストデータパケットの送信元である上流のマルチキャスト中継装置が接続されている場合、いずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであるかを示す情報を保持し、
    前記上流のマルチキャスト中継装置からマルチキャストデータパケットの配信を要求するかを問い合わせるための問い合わせメッセージを受信すると、前記問い合わせメッセージを前記複数のポートの少なくともいずれかに中継し、
    前記複数のポートのいずれかが、いずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信した場合、当該マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであることを示す情報を保持しているかを判定し、
    当該マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであることを示す情報を保持していない場合、前記受信した加入要求メッセージを前記上流のマルチキャスト中継装置が接続されたポートに中継し、
    当該マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであることを示す情報を保持している場合、前記受信した加入要求メッセージの前記上流のマルチキャスト中継装置が接続されたポートへの中継を抑止し、
    前記複数のポートのいずれかにマルチキャストデータパケットの送信先である下流のマルチキャスト中継装置が接続され、かつ、前記下流のマルチキャスト中継装置からいずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信した場合、前記マルチキャストグループと前記下流のマルチキャスト中継装置が接続されたポートとを対応付ける中継制御情報を保持し、
    前記複数のポートのいずれかが前記マルチキャストグループのマルチキャストデータパケットを受信した場合、前記中継制御情報に基づいて、前記マルチキャストデータパケットを前記下流のマルチキャスト中継装置が接続されたポートに中継し、
    所定の間隔で、マルチキャストデータパケットの配信を要求するかを問い合わせるための問い合わせメッセージを少なくとも前記下流のマルチキャスト中継装置に送信し、
    前記下流のマルチキャスト中継装置から前記マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信したかにかかわらず、前記マルチキャストグループと前記下流のマルチキャスト中継装置が接続されたポートとを対応付ける前記中継制御情報の保持を継続し、
    前記複数のポートのいずれかにマルチキャストデータパケットの送信元である上流のマルチキャスト中継装置が接続され、いずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継した後に、前記加入要求メッセージに対応する情報が前記上流のマルチキャスト中継装置に設定されたことを確認するための確認用メッセージを生成し、前記確認用メッセージが自マルチキャスト中継装置から送信されたことを示す情報を前記確認用メッセージに含めて、前記上流のマルチキャスト中継装置に送信し、
    前記上流のマルチキャスト中継装置から前記確認用メッセージに応答するメッセージを受信した場合、前記加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであることを示す情報を保持し、
    所定の時間内に前記上流のマルチキャスト中継装置から前記確認用メッセージに応答するメッセージを受信しなかった場合、前記マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージ、および、前記加入要求メッセージに対応する情報が前記上流のマルチキャスト中継装置に設定されたことを確認するための確認用メッセージを生成し、前記上流のマルチキャスト中継装置から前記生成した確認用メッセージに応答するメッセージを受信するまで、前記生成した加入要求メッセージおよび前記確認用メッセージを前記上流のマルチキャスト中継装置に繰り返し送信することを特徴とするマルチキャスト中継装置。
  4. 複数のポートを有し、前記ポート間でマルチキャストデータパケットを中継するマルチキャスト中継装置であって、
    前記複数のポートのいずれかにマルチキャストデータパケットの送信元である上流のマルチキャスト中継装置が接続されている場合、いずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであるかを示す情報を保持し、
    前記上流のマルチキャスト中継装置からマルチキャストデータパケットの配信を要求するかを問い合わせるための問い合わせメッセージを受信すると、前記問い合わせメッセージを前記複数のポートの少なくともいずれかに中継し、
    前記複数のポートのいずれかが、いずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信した場合、当該マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであることを示す情報を保持しているかを判定し、
    当該マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであることを示す情報を保持していない場合、前記受信した加入要求メッセージを前記上流のマルチキャスト中継装置が接続されたポートに中継し、
    当該マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであることを示す情報を保持している場合、前記受信した加入要求メッセージの前記上流のマルチキャスト中継装置が接続されたポートへの中継を抑止し、
    前記複数のポートのいずれかにマルチキャストデータパケットの送信先である下流のマルチキャスト中継装置が接続され、かつ、前記下流のマルチキャスト中継装置からいずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信した場合、前記マルチキャストグループと前記下流のマルチキャスト中継装置が接続されたポートとを対応付ける中継制御情報を保持し、
    前記複数のポートのいずれかが前記マルチキャストグループのマルチキャストデータパケットを受信した場合、前記中継制御情報に基づいて、前記マルチキャストデータパケットを前記下流のマルチキャスト中継装置が接続されたポートに中継し、
    所定の間隔で、マルチキャストデータパケットの配信を要求するかを問い合わせるための問い合わせメッセージを少なくとも前記下流のマルチキャスト中継装置に送信し、
    前記下流のマルチキャスト中継装置から前記マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信したかにかかわらず、前記マルチキャストグループと前記下流のマルチキャスト中継装置が接続されたポートとを対応付ける前記中継制御情報の保持を継続し、
    前記複数のポートのいずれかにマルチキャストデータパケットの送信先である下流のマルチキャスト中継装置が接続され、かつ、前記下流のマルチキャスト中継装置から、前記加入要求メッセージに対応する情報が前記上流のマルチキャスト中継装置に設定されたことを確認するための確認用メッセージを受信した場合、前記受信した確認用メッセージによって指定されたマルチキャストグループと前記下流のマルチキャスト中継装置が接続されたポートとを対応付ける前記中継制御情報を保持しているかを判定し、前記指定されたマルチキャストグループと前記下流のマルチキャスト中継装置が接続されたポートとを対応付ける前記中継制御情報を保持している場合に、前記受信した確認用メッセージに応答するメッセージを生成して、自マルチキャスト中継装置の識別情報を前記応答するメッセージの送信元として設定して、前記下流のマルチキャスト中継装置に送信することを特徴とするマルチキャスト中継装置。
  5. 複数のポートを有し、前記ポート間でマルチキャストデータパケットを中継するマルチキャスト中継装置であって、
    前記複数のポートのいずれかにマルチキャストデータパケットの送信元である上流のマルチキャスト中継装置が接続されている場合、いずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであるかを示す情報を保持し、
    前記上流のマルチキャスト中継装置からマルチキャストデータパケットの配信を要求するかを問い合わせるための問い合わせメッセージを受信すると、前記問い合わせメッセージを前記複数のポートの少なくともいずれかに中継し、
    前記複数のポートのいずれかが、いずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信した場合、当該マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであることを示す情報を保持しているかを判定し、
    当該マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであることを示す情報を保持していない場合、前記受信した加入要求メッセージを前記上流のマルチキャスト中継装置が接続されたポートに中継し、
    当該マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであることを示す情報を保持している場合、前記受信した加入要求メッセージの前記上流のマルチキャスト中継装置が接続されたポートへの中継を抑止し、
    前記複数のポートのいずれかにマルチキャストデータパケットの送信先である下流のマルチキャスト中継装置が接続され、かつ、前記下流のマルチキャスト中継装置からいずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信した場合、前記マルチキャストグループと前記下流のマルチキャスト中継装置が接続されたポートとを対応付ける中継制御情報を保持し、
    前記複数のポートのいずれかが前記マルチキャストグループのマルチキャストデータパケットを受信した場合、前記中継制御情報に基づいて、前記マルチキャストデータパケットを前記下流のマルチキャスト中継装置が接続されたポートに中継し、
    所定の間隔で、マルチキャストデータパケットの配信を要求するかを問い合わせるための問い合わせメッセージを少なくとも前記下流のマルチキャスト中継装置に送信し、
    前記下流のマルチキャスト中継装置から前記マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信したかにかかわらず、前記マルチキャストグループと前記下流のマルチキャスト中継装置が接続されたポートとを対応付ける前記中継制御情報の保持を継続し、
    前記複数のポートのいずれかにマルチキャストデータパケットの送信元である上流のマルチキャスト中継装置が接続され、かつ、その他のポートのいずれかに前記マルチキャストデータパケットの受信者が接続されている場合において、前記マルチキャストデータパケットの受信者から前記マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信した場合、前記マルチキャストグループと前記マルチキャストデータパケットの受信者が接続されたポートとを対応付ける前記中継制御情報を保持し、前記中継制御情報の保持を継続する時間として所定の長さの時間を設定し、
    前記設定された時間が経過する前に、前記マルチキャストデータパケットの受信者から前記加入要求メッセージを再度受信した場合、前記中継制御情報の保持を継続する時間として前記所定の長さの時間を再度設定し、
    前記設定された時間の残りが所定の値となる前に、前記マルチキャストデータパケットの受信者から前記加入要求メッセージを受信しなかった場合、前記マルチキャストグループのマルチキャストデータパケットの配信の停止を要求する離脱要求メッセージを生成して、前記上流のマルチキャスト中継装置に送信することを特徴とするマルチキャスト中継装置。
  6. 複数のポートを有し、前記ポート間でマルチキャストデータパケットを中継するマルチキャスト中継装置であって、
    前記複数のポートのいずれかにマルチキャストデータパケットの送信元である上流のマルチキャスト中継装置が接続されている場合、いずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであるかを示す情報を保持し、
    前記上流のマルチキャスト中継装置からマルチキャストデータパケットの配信を要求するかを問い合わせるための問い合わせメッセージを受信すると、前記問い合わせメッセージを前記複数のポートの少なくともいずれかに中継し、
    前記複数のポートのいずれかが、いずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信した場合、当該マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであることを示す情報を保持しているかを判定し、
    当該マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであることを示す情報を保持していない場合、前記受信した加入要求メッセージを前記上流のマルチキャスト中継装置が接続されたポートに中継し、
    当該マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであることを示す情報を保持している場合、前記受信した加入要求メッセージの前記上流のマルチキャスト中継装置が接続されたポートへの中継を抑止し、
    前記複数のポートのいずれかにマルチキャストデータパケットの送信先である下流のマルチキャスト中継装置が接続され、かつ、前記下流のマルチキャスト中継装置からいずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信した場合、前記マルチキャストグループと前記下流のマルチキャスト中継装置が接続されたポートとを対応付ける中継制御情報を保持し、
    前記複数のポートのいずれかが前記マルチキャストグループのマルチキャストデータパケットを受信した場合、前記中継制御情報に基づいて、前記マルチキャストデータパケットを前記下流のマルチキャスト中継装置が接続されたポートに中継し、
    所定の間隔で、マルチキャストデータパケットの配信を要求するかを問い合わせるための問い合わせメッセージを少なくとも前記下流のマルチキャスト中継装置に送信し、
    前記下流のマルチキャスト中継装置から前記マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信したかにかかわらず、前記マルチキャストグループと前記下流のマルチキャスト中継装置が接続されたポートとを対応付ける前記中継制御情報の保持を継続し、
    前記複数のポートのいずれかにマルチキャストデータパケットの送信先である下流のマルチキャスト中継装置が接続され、かつ、前記マルチキャストグループと前記下流のマルチキャスト中継装置が接続されたポートとを対応付ける前記中継制御情報を保持している場合において、前記下流のマルチキャスト中継装置が接続されたポートが、前記マルチキャストグループのマルチキャストデータパケットの配信の停止を要求する離脱要求メッセージを受信した場合、前記中継制御情報の保持を継続する時間として所定の長さの時間を設定し、前記マルチキャストグループのマルチキャストデータパケットの配信を要求するかを問い合わせるための問い合わせメッセージを、少なくとも前記下流のマルチキャスト中継装置に送信し、
    前記設定された時間が経過する前に、前記マルチキャストグループのマルチキャストデータパケットの配信を要求する前記加入要求メッセージを受信した場合、その後に前記加入要求メッセージを受信したかにかかわらず、前記マルチキャストグループと前記下流のマルチキャスト中継装置が接続されたポートとを対応付ける前記中継制御情報の保持を継続し、
    前記設定された時間が経過する前に、前記マルチキャストグループのマルチキャストデータパケットの配信を要求する前記加入要求メッセージを受信しなかった場合、前記マルチキャストグループと前記下流のマルチキャスト中継装置が接続されたポートとを対応付ける前記中継制御情報を削除することを特徴とするマルチキャスト中継装置。
  7. 複数のポートを有し、前記ポート間でマルチキャストデータパケットを中継するマルチキャスト中継装置であって、
    前記複数のポートのいずれかにマルチキャストデータパケットの送信元である上流のマルチキャスト中継装置が接続されている場合、いずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであるかを示す情報を保持し、
    前記上流のマルチキャスト中継装置からマルチキャストデータパケットの配信を要求するかを問い合わせるための問い合わせメッセージを受信すると、前記問い合わせメッセージを前記複数のポートの少なくともいずれかに中継し、
    前記複数のポートのいずれかが、いずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信した場合、当該マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであることを示す情報を保持しているかを判定し、
    当該マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであることを示す情報を保持していない場合、前記受信した加入要求メッセージを前記上流のマルチキャスト中継装置が接続されたポートに中継し、
    当該マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであることを示す情報を保持している場合、前記受信した加入要求メッセージの前記上流のマルチキャスト中継装置が接続されたポートへの中継を抑止し、
    前記複数のポートのいずれかにマルチキャストデータパケットの送信先である下流のマルチキャスト中継装置が接続され、かつ、前記下流のマルチキャスト中継装置からいずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信した場合、前記マルチキャストグループと前記下流のマルチキャスト中継装置が接続されたポートとを対応付ける中継制御情報を保持し、
    前記複数のポートのいずれかが前記マルチキャストグループのマルチキャストデータパケットを受信した場合、前記中継制御情報に基づいて、前記マルチキャストデータパケットを前記下流のマルチキャスト中継装置が接続されたポートに中継し、
    所定の間隔で、マルチキャストデータパケットの配信を要求するかを問い合わせるための問い合わせメッセージを少なくとも前記下流のマルチキャスト中継装置に送信し、
    前記下流のマルチキャスト中継装置から前記マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信したかにかかわらず、前記マルチキャストグループと前記下流のマルチキャスト中継装置が接続されたポートとを対応付ける前記中継制御情報の保持を継続し、
    前記複数のポートのいずれかにマルチキャストデータパケットの送信先である下流のマルチキャスト中継装置が接続され、かつ、前記複数のポートの別のいずれかにマルチキャストデータパケットの送信元である上流のマルチキャスト中継装置が接続されている場合において、下流のマルチキャスト中継装置が接続されたポートの回線に障害が検出された場合、前記マルチキャストグループのマルチキャストデータパケットの配信の停止を要求する離脱要求メッセージを生成して、前記上流のマルチキャスト中継装置に送信することを特徴とするマルチキャスト中継装置。
  8. 複数のポートを有し、前記ポート間でマルチキャストデータパケットを中継するマルチキャスト中継装置であって、
    前記複数のポートのいずれかにマルチキャストデータパケットの送信元である上流のマルチキャスト中継装置が接続されている場合、いずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであるかを示す情報を保持し、
    前記上流のマルチキャスト中継装置からマルチキャストデータパケットの配信を要求するかを問い合わせるための問い合わせメッセージを受信すると、前記問い合わせメッセージを前記複数のポートの少なくともいずれかに中継し、
    前記複数のポートのいずれかが、いずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信した場合、当該マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであることを示す情報を保持しているかを判定し、
    当該マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであることを示す情報を保持していない場合、前記受信した加入要求メッセージを前記上流のマルチキャスト中継装置が接続されたポートに中継し、
    当該マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであることを示す情報を保持している場合、前記受信した加入要求メッセージの前記上流のマルチキャスト中継装置が接続されたポートへの中継を抑止し、
    前記複数のポートのいずれかにマルチキャストデータパケットの送信先である下流のマルチキャスト中継装置が接続され、かつ、前記下流のマルチキャスト中継装置からいずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信した場合、前記マルチキャストグループと前記下流のマルチキャスト中継装置が接続されたポートとを対応付ける中継制御情報を保持し、
    前記複数のポートのいずれかが前記マルチキャストグループのマルチキャストデータパケットを受信した場合、前記中継制御情報に基づいて、前記マルチキャストデータパケットを前記下流のマルチキャスト中継装置が接続されたポートに中継し、
    所定の間隔で、マルチキャストデータパケットの配信を要求するかを問い合わせるための問い合わせメッセージを少なくとも前記下流のマルチキャスト中継装置に送信し、
    前記下流のマルチキャスト中継装置から前記マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信したかにかかわらず、前記マルチキャストグループと前記下流のマルチキャスト中継装置が接続されたポートとを対応付ける前記中継制御情報の保持を継続し、
    前記複数のポートのいずれかにマルチキャストデータパケットの送信先である下流のマルチキャスト中継装置が接続されている場合、マルチキャストグループを指定せずに、マルチキャストデータパケットの配信を要求するかを問い合わせるための問い合わせメッセージを生成し、前記生成した問い合わせメッセージに、加入要求メッセージの中継の抑止の解除を示す情報を含めて、前記生成した問い合せメッセージを全ての前記ポートから送信することを特徴とするマルチキャスト中継装置。
  9. 複数のポートを有し、前記ポート間でマルチキャストデータパケットを中継するマルチキャスト中継装置であって、
    前記複数のポートのいずれかにマルチキャストデータパケットの送信元である上流のマルチキャスト中継装置が接続されている場合、いずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであるかを示す情報を保持し、
    前記上流のマルチキャスト中継装置からマルチキャストデータパケットの配信を要求するかを問い合わせるための問い合わせメッセージを受信すると、前記問い合わせメッセージを前記複数のポートの少なくともいずれかに中継し、
    前記複数のポートのいずれかが、いずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信した場合、当該マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであることを示す情報を保持しているかを判定し、
    当該マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであることを示す情報を保持していない場合、前記受信した加入要求メッセージを前記上流のマルチキャスト中継装置が接続されたポートに中継し、
    当該マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであることを示す情報を保持している場合、前記受信した加入要求メッセージの前記上流のマルチキャスト中継装置が接続されたポートへの中継を抑止し、
    前記複数のポートのいずれかにマルチキャストデータパケットの送信先である下流のマルチキャスト中継装置が接続され、かつ、前記下流のマルチキャスト中継装置からいずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信した場合、前記マルチキャストグループと前記下流のマルチキャスト中継装置が接続されたポートとを対応付ける中継制御情報を保持し、
    前記複数のポートのいずれかが前記マルチキャストグループのマルチキャストデータパケットを受信した場合、前記中継制御情報に基づいて、前記マルチキャストデータパケットを前記下流のマルチキャスト中継装置が接続されたポートに中継し、
    所定の間隔で、マルチキャストデータパケットの配信を要求するかを問い合わせるための問い合わせメッセージを少なくとも前記下流のマルチキャスト中継装置に送信し、
    前記下流のマルチキャスト中継装置から前記マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信したかにかかわらず、前記マルチキャストグループと前記下流のマルチキャスト中継装置が接続されたポートとを対応付ける前記中継制御情報の保持を継続し、
    前記複数のポートのいずれかにマルチキャストデータパケットの送信元である上流のマルチキャスト中継装置が接続され、かつ、前記上流のマルチキャスト中継装置から、マルチキャストグループを指定せずに、マルチキャストデータパケットの配信を要求するかを問い合わせるための問い合わせメッセージを受信した場合、前記受信した問い合わせメッセージを、前記問い合わせメッセージを受信したポート以外のポートに中継し、
    前記上流のマルチキャスト中継装置から受信した問い合わせメッセージに前記加入要求メッセージの中継の抑止の解除を示す情報が含まれ、かつ、いずれかの前記ポートからいずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信した場合、前記加入要求メッセージの中継の抑止を解除して、受信した前記加入要求メッセージを前記上流のマルチキャスト中継装置が接続されたポートに中継することを特徴とするマルチキャスト中継装置。
  10. 複数のポートを有し、前記ポート間でマルチキャストデータパケットを中継するマルチキャスト中継装置であって、
    前記複数のポートのいずれかにマルチキャストデータパケットの送信元である上流のマルチキャスト中継装置が接続されている場合、いずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであるかを示す情報を保持し、
    前記上流のマルチキャスト中継装置からマルチキャストデータパケットの配信を要求するかを問い合わせるための問い合わせメッセージを受信すると、前記問い合わせメッセージを前記複数のポートの少なくともいずれかに中継し、
    前記複数のポートのいずれかが、いずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信した場合、当該マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであることを示す情報を保持しているかを判定し、
    当該マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであることを示す情報を保持していない場合、前記受信した加入要求メッセージを前記上流のマルチキャスト中継装置が接続されたポートに中継し、
    当該マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであることを示す情報を保持している場合、前記受信した加入要求メッセージの前記上流のマルチキャスト中継装置が接続されたポートへの中継を抑止し、
    前記複数のポートのいずれかにマルチキャストデータパケットの送信先である下流のマルチキャスト中継装置が接続され、かつ、前記下流のマルチキャスト中継装置からいずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信した場合、前記マルチキャストグループと前記下流のマルチキャスト中継装置が接続されたポートとを対応付ける中継制御情報を保持し、
    前記複数のポートのいずれかが前記マルチキャストグループのマルチキャストデータパケットを受信した場合、前記中継制御情報に基づいて、前記マルチキャストデータパケットを前記下流のマルチキャスト中継装置が接続されたポートに中継し、
    所定の間隔で、マルチキャストデータパケットの配信を要求するかを問い合わせるための問い合わせメッセージを少なくとも前記下流のマルチキャスト中継装置に送信し、
    前記下流のマルチキャスト中継装置から前記マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信したかにかかわらず、前記マルチキャストグループと前記下流のマルチキャスト中継装置が接続されたポートとを対応付ける前記中継制御情報の保持を継続し、
    前記複数のポートのいずれかにマルチキャストデータパケットの送信先である下流のマルチキャスト中継装置が接続され、かつ、前記マルチキャストグループと前記下流のマルチキャスト中継装置が接続されたポートとを対応付ける中継制御情報を保持している場合、所定の間隔で、前記マルチキャストグループのマルチキャストデータパケットの配信を要求するかを問い合わせるための問い合わせメッセージを生成し、前記生成した問い合わせメッセージに、加入要求メッセージの中継の抑止の解除を示す情報を含めて、所定の間隔で、前記生成した問い合せメッセージを前記下流のマルチキャスト中継装置に送信することを特徴とするマルチキャスト中継装置。
  11. 複数のポートを有し、前記ポート間でマルチキャストデータパケットを中継するマルチキャスト中継装置であって、
    前記複数のポートのいずれかにマルチキャストデータパケットの送信元である上流のマルチキャスト中継装置が接続されている場合、いずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであるかを示す情報を保持し、
    前記上流のマルチキャスト中継装置からマルチキャストデータパケットの配信を要求するかを問い合わせるための問い合わせメッセージを受信すると、前記問い合わせメッセージを前記複数のポートの少なくともいずれかに中継し、
    前記複数のポートのいずれかが、いずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信した場合、当該マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであることを示す情報を保持しているかを判定し、
    当該マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであることを示す情報を保持していない場合、前記受信した加入要求メッセージを前記上流のマルチキャスト中継装置が接続されたポートに中継し、
    当該マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであることを示す情報を保持している場合、前記受信した加入要求メッセージの前記上流のマルチキャスト中継装置が接続されたポートへの中継を抑止し、
    前記複数のポートのいずれかにマルチキャストデータパケットの送信先である下流のマルチキャスト中継装置が接続され、かつ、前記下流のマルチキャスト中継装置からいずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信した場合、前記マルチキャストグループと前記下流のマルチキャスト中継装置が接続されたポートとを対応付ける中継制御情報を保持し、
    前記複数のポートのいずれかが前記マルチキャストグループのマルチキャストデータパケットを受信した場合、前記中継制御情報に基づいて、前記マルチキャストデータパケットを前記下流のマルチキャスト中継装置が接続されたポートに中継し、
    所定の間隔で、マルチキャストデータパケットの配信を要求するかを問い合わせるための問い合わせメッセージを少なくとも前記下流のマルチキャスト中継装置に送信し、
    前記下流のマルチキャスト中継装置から前記マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信したかにかかわらず、前記マルチキャストグループと前記下流のマルチキャスト中継装置が接続されたポートとを対応付ける前記中継制御情報の保持を継続し、
    前記複数のポートのいずれかにマルチキャストデータパケットの送信先である下流のマルチキャスト中継装置が接続され、かつ、前記下流のマルチキャスト中継装置からいずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信した場合、前記マルチキャストグループと前記下流のマルチキャスト中継装置が接続されたポートとを対応付ける前記中継制御情報を保持して、前記中継制御情報の保持を継続する時間を設定し、
    前記設定した時間の残りが所定の値になった場合、前記マルチキャストグループのマルチキャストデータパケットの配信を要求するかを問い合わせるための問い合わせメッセージを生成し、前記生成した問い合わせメッセージに、加入要求メッセージの中継の抑止の解除を示す情報を含めて、少なくとも前記下流のマルチキャスト中継装置に送信し、
    前記設定した時間が経過した場合、前記マルチキャストグループと前記下流のマルチキャスト中継装置が接続されたポートとを対応付ける前記中継制御情報を削除することを特徴とするマルチキャスト中継装置。
  12. 複数のポートを有し、前記ポート間でマルチキャストデータパケットを中継するマルチキャスト中継装置であって、
    前記複数のポートのいずれかにマルチキャストデータパケットの送信元である上流のマルチキャスト中継装置が接続されている場合、いずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであるかを示す情報を保持し、
    前記上流のマルチキャスト中継装置からマルチキャストデータパケットの配信を要求するかを問い合わせるための問い合わせメッセージを受信すると、前記問い合わせメッセージを前記複数のポートの少なくともいずれかに中継し、
    前記複数のポートのいずれかが、いずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信した場合、当該マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであることを示す情報を保持しているかを判定し、
    当該マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであることを示す情報を保持していない場合、前記受信した加入要求メッセージを前記上流のマルチキャスト中継装置が接続されたポートに中継し、
    当該マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであることを示す情報を保持している場合、前記受信した加入要求メッセージの前記上流のマルチキャスト中継装置が接続されたポートへの中継を抑止し、
    前記複数のポートのいずれかにマルチキャストデータパケットの送信先である下流のマルチキャスト中継装置が接続され、かつ、前記下流のマルチキャスト中継装置からいずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信した場合、前記マルチキャストグループと前記下流のマルチキャスト中継装置が接続されたポートとを対応付ける中継制御情報を保持し、
    前記複数のポートのいずれかが前記マルチキャストグループのマルチキャストデータパケットを受信した場合、前記中継制御情報に基づいて、前記マルチキャストデータパケットを前記下流のマルチキャスト中継装置が接続されたポートに中継し、
    所定の間隔で、マルチキャストデータパケットの配信を要求するかを問い合わせるための問い合わせメッセージを少なくとも前記下流のマルチキャスト中継装置に送信し、
    前記下流のマルチキャスト中継装置から前記マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信したかにかかわらず、前記マルチキャストグループと前記下流のマルチキャスト中継装置が接続されたポートとを対応付ける前記中継制御情報の保持を継続し、
    前記複数のポートのいずれかにマルチキャストデータパケットの送信元である上流のマルチキャスト中継装置が接続され、かつ、前記上流のマルチキャスト中継装置から、前記マルチキャストグループのマルチキャストデータパケットの配信を要求するかを問い合わせるための問い合わせメッセージを受信した場合、前記中継制御情報に基づいて、前記受信した問い合わせメッセージを、前記マルチキャストグループに対応するポートに中継し、
    前記上流のマルチキャスト中継装置から受信した問い合わせメッセージに前記加入要求メッセージの中継の抑止の解除を示す情報が含まれ、かつ、いずれかの前記ポートから前記マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信した場合、前記加入要求メッセージの中継の抑止を解除して、受信した前記加入要求メッセージを前記上流のマルチキャスト中継装置が接続されたポートに中継することを特徴とするマルチキャスト中継装置。
  13. 第1の中継装置と、マルチキャストデータパケットの受信者および前記第1の中継装置に接続され、前記第1の中継装置から受信したマルチキャストデータパケットを前記受信者に中継する第2の中継装置と、を有するマルチキャスト中継システムであって、
    前記第1の中継装置は、所定の間隔で、マルチキャストデータパケットの配信を要求するかを問い合わせるための問い合わせメッセージを前記第2の中継装置に送信し、
    前記第2の中継装置は、
    前記第1の中継装置から前記問い合わせメッセージを受信すると、前記問い合わせメッセージを前記受信者に中継し、
    前記受信者からいずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信すると、前記マルチキャストグループのマルチキャストデータパケットの配信を要求する前記加入要求メッセージを前記第1の中継装置に中継済みであることを示す情報を保持しているかを判定し、
    前記マルチキャストグループのマルチキャストデータパケットの配信を要求する前記加入要求メッセージを前記第1の中継装置に中継済みであることを示す情報を保持していない場合、前記加入要求メッセージを前記第1の中継装置に中継し、
    前記マルチキャストグループのマルチキャストデータパケットの配信を要求する前記加入要求メッセージを前記第1の中継装置に中継済みであることを示す情報を保持している場合、前記加入要求メッセージの前記第1の中継装置への中継を抑止し、
    前記第1の中継装置は、
    前記いずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信した場合、前記マルチキャストグループと、前記第2の中継装置が接続された前記第1の中継装置のポートとを対応付ける中継制御情報を保持し、
    前記マルチキャストグループのマルチキャストデータパケットを受信した場合、前記中継制御情報に基づいて、前記受信したマルチキャストデータパケットを前記マルチキャストグループに対応する前記ポートに中継し、
    前記マルチキャストグループと、前記第2の中継装置が接続された前記第1の中継装置のポートとを対応付ける中継制御情報が保持された場合、その後に、前記マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信したかにかかわらず、前記中継制御情報の保持を継続することを特徴とするマルチキャスト中継システム。
  14. 複数のポートを有し、前記ポート間でマルチキャストデータパケットを中継するマルチキャスト中継装置が実行するマルチキャスト中継方法であって、
    前記複数のポートのいずれかにマルチキャストデータパケットの送信元である上流のマルチキャスト中継装置が接続されている場合、前記マルチキャスト中継装置は、いずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであるかを示す情報を保持し、
    前記マルチキャスト中継方法は、
    前記上流のマルチキャスト中継装置からマルチキャストデータパケットの配信を要求するかを問い合わせるための問い合わせメッセージを受信すると、前記問い合わせメッセージを前記複数のポートの少なくともいずれかに中継する手順と、
    前記複数のポートのいずれかが、いずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信した場合、当該マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであることを示す情報を保持しているかを判定する手順と、
    当該マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであることを示す情報を保持していない場合、前記受信した加入要求メッセージを前記上流のマルチキャスト中継装置が接続されたポートに中継する手順と、を含み、
    当該マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであることを示す情報を保持している場合、前記受信した加入要求メッセージの前記上流のマルチキャスト中継装置が接続されたポートに中継する手順を実行せず、
    前記複数のポートのいずれかにマルチキャストデータパケットの送信先である下流のマルチキャスト中継装置が接続され、前記下流のマルチキャスト中継装置からいずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信した場合、前記マルチキャストグループと前記下流のマルチキャスト中継装置が接続されたポートとを対応付ける中継制御情報を保持して、前記中継制御情報の保持を継続する時間を無期限と設定する手順と、
    前記複数のポートのいずれかが前記マルチキャストグループのマルチキャストデータパケットを受信した場合、前記中継制御情報に基づいて、前記マルチキャストデータパケットを前記下流のマルチキャスト中継装置が接続されたポートに中継する手順と、
    所定の間隔で、マルチキャストデータパケットの配信を要求するかを問い合わせるための問い合わせメッセージを少なくとも前記下流のマルチキャスト中継装置に送信する手順と、を含み、
    前記マルチキャストグループと前記下流のマルチキャスト中継装置が接続されたポートとを対応付ける中継制御情報が保持され、かつ、前記中継制御情報の保持を継続する時間が無期限と設定された場合、その後に、前記下流のマルチキャスト中継装置から前記マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信したかにかかわらず、前記中継制御情報の保持を継続することを特徴とするマルチキャスト中継方法。
  15. 複数のポートを有し、前記ポート間でマルチキャストデータパケットを中継するマルチキャスト中継装置が実行するマルチキャスト中継方法であって、
    前記複数のポートのいずれかにマルチキャストデータパケットの送信元である上流のマルチキャスト中継装置が接続されている場合、前記マルチキャスト中継装置は、いずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであるかを示す情報を保持し、
    前記マルチキャスト中継方法は、
    前記上流のマルチキャスト中継装置からマルチキャストデータパケットの配信を要求するかを問い合わせるための問い合わせメッセージを受信すると、前記問い合わせメッセージを前記複数のポートの少なくともいずれかに中継する手順と、
    前記複数のポートのいずれかが、いずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信した場合、当該マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであることを示す情報を保持しているかを判定する手順と、
    当該マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであることを示す情報を保持していない場合、前記受信した加入要求メッセージを前記上流のマルチキャスト中継装置が接続されたポートに中継する手順と、を含み、
    当該マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであることを示す情報を保持している場合、前記受信した加入要求メッセージの前記上流のマルチキャスト中継装置が接続されたポートに中継する手順を実行せず、
    前記複数のポートのいずれかにマルチキャストデータパケットの送信先である下流のマルチキャスト中継装置が接続され、前記下流のマルチキャスト中継装置からいずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信した場合、前記マルチキャストグループと前記下流のマルチキャスト中継装置が接続されたポートとを対応付ける中継制御情報を保持する手順と、
    前記複数のポートのいずれかが前記マルチキャストグループのマルチキャストデータパケットを受信した場合、前記中継制御情報に基づいて、前記マルチキャストデータパケットを前記下流のマルチキャスト中継装置が接続されたポートに中継する手順と、
    所定の間隔で、マルチキャストデータパケットの配信を要求するかを問い合わせるための問い合わせメッセージを少なくとも前記下流のマルチキャスト中継装置に送信する手順と、を含み、
    前記マルチキャストグループと前記下流のマルチキャスト中継装置が接続されたポートとを対応付ける中継制御情報が保持された場合、その後に、前記下流のマルチキャスト中継装置から前記マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信したかにかかわらず、前記中継制御情報の保持を継続し、
    前記マルチキャスト中継方法は、さらに、
    前記複数のポートのいずれかにマルチキャストデータパケットの送信元である上流のマルチキャスト中継装置が接続され、いずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継した後に、前記加入要求メッセージに対応する情報が前記上流のマルチキャスト中継装置に設定されたことを確認するための確認用メッセージを生成し、前記確認用メッセージが自マルチキャスト中継装置から送信されたことを示す情報を前記確認用メッセージに含めて、前記上流のマルチキャスト中継装置に送信する手順と、
    前記上流のマルチキャスト中継装置から前記確認用メッセージに応答するメッセージを受信した場合、前記加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであることを示す情報を保持する手順と、
    所定の時間内に前記上流のマルチキャスト中継装置から前記確認用メッセージに応答するメッセージを受信しなかった場合、前記マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージ、および、前記加入要求メッセージに対応する情報が前記上流のマルチキャスト中継装置に設定されたことを確認するための確認用メッセージを生成し、前記上流のマルチキャスト中継装置から前記生成した確認用メッセージに応答するメッセージを受信するまで、前記生成した加入要求メッセージおよび前記確認用メッセージを前記上流のマルチキャスト中継装置に繰り返し送信する手順と、を含むことを特徴とするマルチキャスト中継方法。
  16. 複数のポートを有し、前記ポート間でマルチキャストデータパケットを中継するマルチキャスト中継装置が実行するマルチキャスト中継方法であって、
    前記複数のポートのいずれかにマルチキャストデータパケットの送信元である上流のマルチキャスト中継装置が接続されている場合、前記マルチキャスト中継装置は、いずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであるかを示す情報を保持し、
    前記マルチキャスト中継方法は、
    前記上流のマルチキャスト中継装置からマルチキャストデータパケットの配信を要求するかを問い合わせるための問い合わせメッセージを受信すると、前記問い合わせメッセージを前記複数のポートの少なくともいずれかに中継する手順と、
    前記複数のポートのいずれかが、いずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信した場合、当該マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであることを示す情報を保持しているかを判定する手順と、
    当該マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであることを示す情報を保持していない場合、前記受信した加入要求メッセージを前記上流のマルチキャスト中継装置が接続されたポートに中継する手順と、を含み、
    当該マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを前記上流のマルチキャスト中継装置に中継済みであることを示す情報を保持している場合、前記受信した加入要求メッセージの前記上流のマルチキャスト中継装置が接続されたポートに中継する手順を実行せず、
    前記複数のポートのいずれかにマルチキャストデータパケットの送信先である下流のマルチキャスト中継装置が接続され、前記下流のマルチキャスト中継装置からいずれかのマルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信した場合、前記マルチキャストグループと前記下流のマルチキャスト中継装置が接続されたポートとを対応付ける中継制御情報を保持する手順と、
    前記複数のポートのいずれかが前記マルチキャストグループのマルチキャストデータパケットを受信した場合、前記中継制御情報に基づいて、前記マルチキャストデータパケットを前記下流のマルチキャスト中継装置が接続されたポートに中継する手順と、
    所定の間隔で、マルチキャストデータパケットの配信を要求するかを問い合わせるための問い合わせメッセージを少なくとも前記下流のマルチキャスト中継装置に送信する手順と、を含み、
    前記マルチキャストグループと前記下流のマルチキャスト中継装置が接続されたポートとを対応付ける中継制御情報が保持された場合、その後に、前記下流のマルチキャスト中継装置から前記マルチキャストグループのマルチキャストデータパケットの配信を要求する加入要求メッセージを受信したかにかかわらず、前記中継制御情報の保持を継続し、
    前記マルチキャスト中継方法は、さらに、前記複数のポートのいずれかにマルチキャストデータパケットの送信先である下流のマルチキャスト中継装置が接続され、かつ、前記下流のマルチキャスト中継装置から、前記加入要求メッセージに対応する情報が前記上流のマルチキャスト中継装置に設定されたことを確認するための確認用メッセージを受信した場合、前記受信した確認用メッセージによって指定されたマルチキャストグループと前記下流のマルチキャスト中継装置が接続されたポートとを対応付ける前記中継制御情報を保持しているかを判定し、前記指定されたマルチキャストグループと前記下流のマルチキャスト中継装置が接続されたポートとを対応付ける前記中継制御情報を保持している場合に、前記受信した確認用メッセージに応答するメッセージを生成して、自マルチキャスト中継装置の識別情報を前記応答するメッセージの送信元として設定して、前記下流のマルチキャスト中継装置に送信する手順を含むことを特徴とするマルチキャスト中継方法。
JP2018003714A 2018-01-12 2018-01-12 マルチキャスト中継装置、マルチキャスト中継システムおよびマルチキャスト中継方法 Active JP6993883B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018003714A JP6993883B2 (ja) 2018-01-12 2018-01-12 マルチキャスト中継装置、マルチキャスト中継システムおよびマルチキャスト中継方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018003714A JP6993883B2 (ja) 2018-01-12 2018-01-12 マルチキャスト中継装置、マルチキャスト中継システムおよびマルチキャスト中継方法

Publications (2)

Publication Number Publication Date
JP2019125862A JP2019125862A (ja) 2019-07-25
JP6993883B2 true JP6993883B2 (ja) 2022-01-14

Family

ID=67399169

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018003714A Active JP6993883B2 (ja) 2018-01-12 2018-01-12 マルチキャスト中継装置、マルチキャスト中継システムおよびマルチキャスト中継方法

Country Status (1)

Country Link
JP (1) JP6993883B2 (ja)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004043019A1 (ja) 2002-11-05 2004-05-21 Fujitsu Limited ネットワーク中継方法及び装置
JP2004343243A (ja) 2003-05-13 2004-12-02 Mitsubishi Electric Corp Ponシステムにおけるマルチキャスト通信方法および局側装置
JP2008312095A (ja) 2007-06-18 2008-12-25 Nec Access Technica Ltd 中継装置、中継方法および中継プログラム
WO2010109542A1 (ja) 2009-03-27 2010-09-30 三菱電機株式会社 局側装置および光通信システム
JP2013131912A (ja) 2011-12-21 2013-07-04 Alaxala Networks Corp 集約装置、パケット転送装置、マルチキャストネットワークシステム及びマルチキャスト中継制御方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004043019A1 (ja) 2002-11-05 2004-05-21 Fujitsu Limited ネットワーク中継方法及び装置
JP2004343243A (ja) 2003-05-13 2004-12-02 Mitsubishi Electric Corp Ponシステムにおけるマルチキャスト通信方法および局側装置
JP2008312095A (ja) 2007-06-18 2008-12-25 Nec Access Technica Ltd 中継装置、中継方法および中継プログラム
WO2010109542A1 (ja) 2009-03-27 2010-09-30 三菱電機株式会社 局側装置および光通信システム
JP2013131912A (ja) 2011-12-21 2013-07-04 Alaxala Networks Corp 集約装置、パケット転送装置、マルチキャストネットワークシステム及びマルチキャスト中継制御方法

Also Published As

Publication number Publication date
JP2019125862A (ja) 2019-07-25

Similar Documents

Publication Publication Date Title
JP4077330B2 (ja) データ生成装置
JP4825696B2 (ja) パケット中継装置
JP4297875B2 (ja) ネットワーク中継方法及び装置
CN1816011B (zh) 数据传输装置、多播系统和程序
JP4722780B2 (ja) マルチキャストネットワーク監視方法,及びこれを適用するマルチキャストネットワークシステム
US20060155828A1 (en) Router setting method and router device
JP2006101471A (ja) マルチキャスト冗長経路ルータ、マルチキャスト冗長化方式
US8817683B2 (en) Network relay apparatus and inter-network relay method
WO2009052712A1 (fr) Procédé, système et routeur pour un transfert de flux de multidiffusion
WO2008080279A1 (fr) Procédé d'assistance et dispositifs correspondants pour la configuration des noeuds dans un groupe d'unidiffusion aléatoire
CN101521927A (zh) 一种组播转发路径收敛的方法和系统
US8611254B2 (en) Systems and methods for configuring a network for multicasting
JP2010109574A (ja) ゲートウェイ装置、サーバ装置、中継装置、およびマルチキャスト通信システム
JP2009246845A (ja) マルチキャストパケットの転送装置、転送方法及び転送制御プログラム
JP6993883B2 (ja) マルチキャスト中継装置、マルチキャスト中継システムおよびマルチキャスト中継方法
JP2006324981A (ja) マルチキャストパケット転送方式
JP2003032299A (ja) マルチキャストネットワークにおけるランデブーポイントの制御方法及び装置
JP4800916B2 (ja) データ中継装置
JP4775716B2 (ja) 中継装置、中継方法および中継プログラム
JP5893211B2 (ja) ゲートウェイ装置
JP4864735B2 (ja) Ipアドレス払い出し管理システムおよびipアドレス払い出し管理方法
WO2011044729A1 (zh) 通信网络中用于检测任意播组配置情况的方法和装置
JP5553425B2 (ja) マルチキャスト配信システム、配信ルータ、および、マルチキャスト配信方法
JP2008244822A (ja) アドレス重複回避方法、システム、ルータ
JP4554420B2 (ja) ゲートウェイ装置及びそのプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200618

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210428

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210511

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210628

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20211130

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20211210

R150 Certificate of patent or registration of utility model

Ref document number: 6993883

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150