説明

マルチキャスト配信システム、配信ルータ、および、マルチキャスト配信方法

【課題】共有セグメントに複数のマルチキャスト配信ルータが接続される構成において、クエリアの障害時にも安定したフロー配信を継続しつつ、障害フローの救済復旧を実現すること。
【解決手段】共有セグメント5に接続される各配信ルータ4は、障害ルータとして他装置の配信ルータ4を検出した後、フローの特定情報を検索キーとして、正常制御テーブル433aと障害制御テーブル433bとをそれぞれ検索することで、検索したフローの配信担当ルータおよび配信代行ルータをそれぞれ取得し、取得した配信担当ルータまたは配信代行ルータが自装置であるときには、共有セグメント5を介して受信したフローの配信データをホスト6に転送する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、マルチキャスト配信システム、配信ルータ、および、マルチキャスト配信方法に関する。
【背景技術】
【0002】
IP(Internet Protocol)ルータとIPホスト区間のIPマルチキャストの配信制御を行うプロトコルとして、IPv4(Internet Protocol version 4)を利用する場合のIGMP(Internet Group Management Protocol)や、IPv6(Internet Protocol version 6)を利用する場合のMLD(Multicast Listener Discovery)が存在する。
【0003】
また、IPマルチキャストの配信制御の中でも、IPマルチキャストの配信フローの送信元IPアドレス(以下、Sourceを示す「Sアドレス」)と、宛先IPアドレス(以下、Groupを示す「Gアドレス」)と、の両方(以下、(S,G))を指定して制御を行うSSM(Source-Specific Multicast)方式に対応したプロトコルとして、非特許文献1が示すIGMPv3(IPv4)や、非特許文献2が示すMLDv2(IPv6)が存在する。
【0004】
IGMPv3/MLDv2では、ホストからフローの(S,G)アドレスと配信状態(join/leave)を示すレポートメッセージを送信し、ルータが本レポートメッセージを受信する度に当該フローの配信を開始(join)/停止(leave)するのが配信制御における基本的な動作となる。
【0005】
IPルータがIGMP/MLDプロトコルを用いてIPマルチキャストの配信制御を行うにあたり、同じ1つの共有セグメントに複数ルータが冗長接続されることもある。共有セグメントに複数のルータが存在する場合、全てのルータがレポートメッセージを受信することになるため、各ルータが独立して自律的に配信制御を行うと、同一フローを重複して配信する状況に陥る。これは、配信系の帯域利用効率を低下させ、一度に配信可能なフロー種別((S,G))の数が減少する点や、同一パケットを重複受信するホスト処理に悪影響を及ぼす可能性がある点が懸念される。
【0006】
このような懸念を回避するため、IGMPv3/MLDv2には、クエリア選択メカニズム(Querier election mechanism)が備わっている。すなわち、共有セグメントに複数のルータが存在する場合、その中の1台を代表ルータ(以下、クエリアと呼ぶ)として選択し、クエリアだけがGQ(General Query、以下適宜クエリと略す)の送信制御やホストから受信するIGMP/MLDレポートの応答処理、マルチキャストフローの配信制御を行う。
【0007】
クエリア選択方法としては、例えば、各ルータが他ルータから受信するクエリパケットの送信元IPアドレスと自IPアドレスを大小比較し、自アドレスの方が小さいルータは配信制御を継続する。逆に、自アドレスの方が大きいルータは配信制御を停止する。この判定動作を反復することにより、最終的にはアドレス最小となる1台のルータだけが配信制御を行う状態に収束する。
【先行技術文献】
【非特許文献】
【0008】
【非特許文献1】IETF、“Internet Group Management Protocol, Version 3”、[online]、[平成22年5月31日検索]、インターネット(URL:http://www.rfc-editor.org/rfc/rfc3376.txt)
【非特許文献2】IETF、“Multicast Listener Discovery Version 2 (MLDv2) for IPv6”、[online]、[平成22年5月31日検索]、インターネット(URL:http://www.rfc-editor.org/rfc/rfc3810.txt)
【発明の概要】
【発明が解決しようとする課題】
【0009】
しかし、共有セグメントに接続される複数のルータから、1台のクエリアを選択する手法では、そのクエリアに障害が発生したときに、マルチキャストのフロー配信が不安定になってしまう。
ここで、不安定とは、複数のルータから同一フローが二重配信されたり、フローの配信漏れが生じた状態を指す。
不安定の要因は、例えば、障害が発生したクエリアの代替となるクエリアが一時的に複数台決定されると、その複数台の代替クエリアからフローの重複配信が行われることである。
別の要因としては、例えば、障害が発生したクエリアの代替となるクエリアが選択されない期間には、フロー配信が途切れてしまうことである。
【0010】
そこで、本発明は、共有セグメントに複数のマルチキャスト配信ルータが接続される構成において、クエリアの障害時にも安定したフロー配信を継続しつつ、障害フローの救済復旧を実現することを、主な目的とする。
【課題を解決するための手段】
【0011】
前記課題を解決するために、本発明は、配信サーバから配信ルータを介してホストにマルチキャストのフローを配信するマルチキャスト配信システムであって、複数台の前記配信ルータと1台以上の前記ホストとが共有セグメントに接続され、その共有セグメントに送信されるパケットが、前記共有セグメントに接続される各装置が受信可能であり、前記配信ルータが、転送制御部と記憶手段とを有しており、前記配信ルータの記憶手段には、正常制御用データと障害制御用データとが記憶されており、前記正常制御用データが、前記共有セグメントを介して配信される1つのフローごとに1台の前記配信ルータを配信担当ルータとして割り当てるデータであり、前記障害制御用データが、前記1台以上の配信担当ルータを障害ルータとしたときに、前記障害ルータに割り当てられていた障害フローに対して、前記障害ルータとは別の前記配信ルータを、配信代行ルータとして割り当てるデータであり、前記共有セグメントに接続される各前記配信ルータの転送制御部が、前記障害ルータとして他装置の前記配信ルータを検出した後、前記配信サーバからフローの配信データを受信すると、受信した配信データの属するフローの特定情報を検索キーとして、前記正常制御用データと前記障害制御用データとをそれぞれ検索することで、検索したフローの前記配信担当ルータおよび前記配信代行ルータをそれぞれ取得し、取得した前記配信担当ルータまたは前記配信代行ルータが自装置であるときには、前記共有セグメントを介して受信したフローの配信データを前記ホストに転送し、取得した前記配信担当ルータおよび前記配信代行ルータが他装置であるときには、受信したフローの配信データを廃棄することを特徴とする。
さらに、本発明は、前記マルチキャスト配信システムに用いられる配信ルータ、および、前記マルチキャスト配信システムが実行するマルチキャスト配信方法である。
【0012】
これにより、配信担当ルータの障害時には、配信代行ルータがフローの配信を円滑に代行することで、共有セグメントに複数のマルチキャスト配信ルータが接続される構成において、配信担当ルータの障害時にも安定したフロー配信を実現することができる。
【0013】
本発明は、前記共有セグメントに接続される各前記配信ルータの転送制御部が、前記正常制御用データを前記記憶手段に格納するときに、受信した配信データの属するフローの特定情報と、前記共有セグメントに接続される前記配信ルータの数と、を引数とする所定関数を計算し、その所定関数の計算結果から一意に決定される前記配信ルータを、前記所定関数の計算に用いたフローに対する配信担当ルータとして決定し、前記障害制御用データを前記記憶手段に格納するときに、前記1台以上の配信ルータから選択した前記1台以上の障害ルータの組み合わせごとに、受信した配信データの属するフローの特定情報と、前記共有セグメントに接続される前記配信ルータの数から前記障害ルータの数を減じたルータの数と、を引数とする前記所定関数を計算し、その所定関数の計算結果から一意に決定される前記配信ルータを、前記所定関数の計算に用いたフローに対する配信代行ルータとして決定することを特徴とする。
【0014】
これにより、障害ルータの組み合わせに応じて、配信担当ルータおよび配信代行ルータそれぞれが計算されるので、共有セグメントの配信ルータの構成を柔軟に設計することができる。
【発明の効果】
【0015】
本発明によれば、共有セグメントに複数のマルチキャスト配信ルータが接続される構成において、クエリアの障害時にも安定したフロー配信を継続しつつ、障害フローの救済復旧を実現することができる。
【図面の簡単な説明】
【0016】
【図1】本発明の一実施形態に関するマルチキャスト配信システムを示す構成図である。
【図2】本発明の一実施形態に関するマルチキャスト配信システムの処理概要(1台障害)を示す説明図である。
【図3】本発明の一実施形態に関するマルチキャスト配信システムの処理概要(2台障害)を示す説明図である。
【図4】本発明の一実施形態に関する配信ルータを示す構成図である。
【図5】本発明の一実施形態に関するフロー配信処理を示すフローチャートである。
【図6】本発明の一実施形態に関する障害制御テーブルの生成処理を示すフローチャートである。
【図7】本発明の一実施形態に関するルータ障害が発生した際における配信障害の復旧処理を示すフローチャートである。
【図8】本発明の一実施形態に関するルータ障害からの配信切替え後に配信要求を受信した際において、配信制御テーブルの更新処理を示すフローチャートである。
【図9】本発明の一実施形態に関するルータ障害からの配信切替え後に配信要求を受信した際において、要求に対するフロー配信処理を示すフローチャートである。
【発明を実施するための形態】
【0017】
以下、本発明の一実施形態について、図面を参照して詳細に説明する。
【0018】
図1は、マルチキャスト配信システムを示す構成図である。マルチキャストフロー(以下、単にフローとする)は、配信サーバ1から送信されて、マルチキャスト配信網2、リンク3、各配信ルータ4(R1,R2,R3)、共有セグメント5を経由して、ホスト6に配信される。
これらのマルチキャスト配信システムの各装置は、CPUとメモリとハードディスク(記憶手段)とネットワークインタフェースを有するコンピュータとして構成され、このコンピュータは、CPUが、メモリ上に読み込んだプログラムを実行することにより、各処理部を動作させる。
【0019】
マルチキャスト配信網2は、例えば、インターネット網であり、配信サーバ1から配信ルータ4への経路決定のためのプロトコルとして、DVMRP(Distance Vector Multicast Routing Protocol)や、PIM−SM(Protocol Independent Multicast - Sparse Mode)、PIM−SSM(Protocol Independent Multicast - Source Specific Mode)などが動作することを想定する。
共有セグメント5は、その共有セグメント5に接続される装置から送信されるパケットが、そのパケットの送信先だけでなく、同じ共有セグメント5に接続される他装置へも伝送される特性を有する。例えば、配信ルータ4(R1)からホスト6へ送信されるメッセージは、ホスト6だけでなく、他の各配信ルータ4(R2,R3)も受信することができる。共有セグメント5は、例えば、イーサネット(登録商標)のLAN(Local Area Network)やアクセス集線スイッチ内のVLAN(Virtual LAN)、スイッチ間を跨いだネットワークVLAN(IEEE802.1adやIEEE802.1ahによるタグVLAN)等により構成される。
【0020】
配信サーバ1は、フローの配信元となるサーバである。なお、フローの特定情報としては、フローのグループだけを特定情報とする(*,g)指定型であるASM(Any Source Multicast)と、フローのグループとフローの送信元の配信サーバ1のアドレスの組を特定情報とする(s,g)指定型であるSSMとが挙げられる。
以下、本実施形態では、フローの特定情報を(s,g)指定型として説明するが、(*,g)指定型にも本実施形態を応用することができる。ここで、(s,g)とは、(Source,Group)の略であり、最初のSourceが送信元の配信サーバ1のアドレスを示し、次のGroupがフローのグループを示す。
【0021】
配信ルータ4は、マルチキャストのグループ管理プロトコル(IGMPおよびMLDのプロトコルなど)が動作するルータであり、配信サーバ1からの配信データを、ホスト6に転送する。配信ルータ4は、リンク3を介して、マルチキャスト配信網2と接続されている。
ホスト6は、配信ルータ4から配信データを受信する端末であり、リスナ(listener)とも呼ばれる。ホスト6は、配信ルータ4からのクエリを受信すると、自装置が希望するフローの情報を含めたリポートを作成し、配信ルータ4に返信する。
【0022】
以下、図2,図3を参照して、図1のマルチキャスト配信システムの処理概要を説明する。なお、各処理や各処理で使用されるデータ構造の詳細は、図4以降で説明する。図2,図3では、ルータ障害時における障害フローの救済方法を説明している。
・図2(a)は、3台の配信ルータ4(R1,R2,R3)が全て正常動作している状態である。
・図2(b)は、2台の配信ルータ4(R2,R3)が正常動作し、1台の配信ルータ4(R1)に障害が発生している状態である。
・図3は、1台の配信ルータ4(R2)が正常動作し、2台の配信ルータ4(R1,R3)に障害が発生している状態(二重障害)である。
【0023】
図2(a)では、共有セグメント5内に3台の配信ルータ4が、4つのフロー(F1〜F4)をそれぞれ配信している。ここで、各配信ルータ4内の記憶手段には、4つのフローそれぞれについて、自ルータが配信担当か否かを特定する情報が格納されており、その特定情報をもとに、それぞれ配信するフローを重複や漏れがないように、分担して配信する。例えば、配信ルータ4(R1)は、2つのフロー(F1,F4)の配信を担当する。
これにより、共有セグメント5内の配信ルータ4のうち、1台の配信ルータ4だけをクエリアとして用いる従来のIGMP/MLD方式に比べ、フロー単位での負荷分散が実現でき、スループットを向上させることができる。
【0024】
図2(b)は、配信ルータ4(R1)に障害が発生したときの障害フローの救済方法を示す。配信ルータ4(R1)の障害により、配信ルータ4(R1)が担当していた障害フローF1,F4を、配信ルータ4(R1)が配信することが困難な状況にある。
このとき、他の配信ルータ4(R2,R3)は、図2(a)で自ルータが配信担当であるフローF3,F2の配信を継続しつつ、障害フローF1,F4の配信を配信ルータ4(R1)からそれぞれ代行して配信する。
ここで、各配信ルータ4内の記憶手段には、共有セグメント5内の各配信ルータ4のうちの障害が発生した配信ルータ4の組み合わせに応じて、その障害が発生した配信ルータ4が配信担当であったフローの代行担当を特定する情報が格納されており、その特定情報をもとに、それぞれ代行配信するフローを重複や漏れがないように、分担して配信する。
これにより、障害が発生したときでも、各配信ルータ4が代行配信を分担することで、フロー単位での負荷分散が実現でき、スループットを向上させることができる。
さらに、正常な配信ルータ4(R2,R3)がフローF1,F4を代行配信する契機を、配信ルータ4(R1)の障害を検知したこととすることで、フローF1,F4の通信切断を抑制することができる。
【0025】
図3は、二重障害の例として、配信ルータ4(R1、R3)が故障した場合を示す。この場合は、唯一正常である配信ルータ4(R2)が、4つのフロー(F1〜F4)の配信を担当する。
ここで、配信ルータ4(R2)内の記憶手段には、2台の配信ルータ4(R1,R3)に障害が発生したときに、その障害が発生した配信ルータ4が配信担当であったフローの代行担当を特定する情報が格納されており、その特定情報をもとに、フローF1,F2,F4を代行配信する。
【0026】
図4は、配信ルータ4を示す構成図である。
配信ルータ4は、フローの上流側(マルチキャスト配信網2の側)から順に、MC配信網接続インタフェース41、MC配信網フレーム転送部42、転送制御回路43、共有セグメントフレーム転送部44、共有セグメント接続インタフェース45が接続されて構成される。
【0027】
インタフェース(MC配信網接続インタフェース41、共有セグメント接続インタフェース45)は、ネットワークが接続される端点となる箇所であり、外部の網からデータを受信するインタフェース(受信IF部411,452)と、外部の網にデータを送信するインタフェース(送信IF部451,412)とから構成される。
フレーム転送部(MC配信網フレーム転送部42、共有セグメントフレーム転送部44)は、インタフェースが送受信するデータの信号をフレーム単位に変換する処理部であり、受信インタフェースからの通信信号からフレームを構築する受信部(フレーム受信部442,421)と、構築されたフレームから送信インタフェースを介して送信する通信信号へとデコードする送信部(フレーム送信部441,422)とから構成される。
【0028】
上流(配信サーバ1)から下流(ホスト6)に流れる下りのパケット(マルチキャストフローなど)は、受信IF部411→フレーム受信部421→配信フィルタ部431→フレーム送信部441→送信IF部451の順に、配信ルータ4内を通過する。
下流(ホスト6)から上流(配信サーバ1)に流れる上りのパケット(配信要求(join/leave)など)は、受信IF部452→フレーム受信部442→配信管理部437→上位連携部439→フレーム送信部422→送信IF部412の順に、配信ルータ4内を通過する。
【0029】
転送制御回路43は、受信部からのフレームを受信して、そのフレーム内容に応じて転送制御を行い、その結果を送信部に出力する。
例えば、転送制御回路43は、フレーム受信部421を介してマルチキャストパケットを受信すると、自ルータが配信制御を行うフローかを判定し、自ルータが配信するフローの場合、フレーム送信部441に当該マルチキャストフローを転送する。一方、転送制御回路43は、共有セグメント内の他の配信ルータ4が配信制御を行うフローの場合、当該マルチキャストパケットを廃棄する。
なお、転送制御回路43は、自ルータが配信するストリームの配信契機を、フレーム受信部442を介してホストから配信要求(join/leaveレポート)を受信したときとする。
【0030】
転送制御回路43は、配信フィルタ部431、フロー判定部432、配信制御テーブル433(正常制御テーブル433a、障害制御テーブル433b)、ルータ管理部434、ルータ管理テーブル435、配信障害検出部436、配信管理部437、配信フィルタリスト438、上位連携部439から構成される。以下、転送制御回路43の各構成要素について、詳細に説明する。
【0031】
配信フィルタ部431は、マルチキャストパケットの透過/廃棄を実行する。つまり、配信フィルタ部431がパケットを受信すると、フロー判定部432に対してパケットの透過/廃棄の判定結果を問い合わせ、他のルータが配信制御を行うパケットであれば廃棄する。
一方、自ルータが配信制御を行うパケットであれば、当該フローが配信中の状態かを配信管理部437に問い合わせ、配信中状態であれば、パケットを透過処理して共有セグメントフレーム転送部44のフレーム送信部441へ転送する。
【0032】
フロー判定部432は、フレーム受信部421から受信したマルチキャストパケットについて、配信制御テーブル433を参照することにより、パケットの転送(透過)または廃棄を決定する。
例えば、フロー判定部432は、配信制御テーブル433内の正常制御テーブル433aを参照して、共有セグメント5内の全配信ルータ4が正常な状態におけるフローの配信制御を実行するか否かを判定する。
フロー判定部432は、ルータ管理部434から共有セグメント5におけるルータ総数およびルータ順位を情報取得し、受信パケットの情報((S,G)アドレス)との組み合わせにより、自ルータが制御するフローを識別し、共有セグメント5内の配信ルータ4間における同一フローの二重配信およびルータ間の配信漏れを抑止する。
【0033】
配信障害検出部436は、共有セグメント5内の他の配信ルータ4の状態を管理する。例えば、共有セグメント5などの外部から障害発生および障害ルータの情報の通知を受信し、これを配信管理部437へと通知するとともに、これらの障害情報を内部管理する。また、障害回復時の切戻し制御に備えて、ルータ障害の回復情報も併せて管理する。
【0034】
配信管理部437は、IGMP/MLDを実行することにより、自ルータをIGMP/MLDルータとして動作させ、ホスト6側から送信される配信要求(join/leaveレポート)を処理し、共有セグメント接続インタフェース45に対するフローごとの配信状態を配信フィルタリスト438として管理する。
なお、配信フィルタリスト438は、フローごとにそのフローをホスト6に配信するか否かを示す配信状態を対応づけたデータ構造である。
配信管理部437は、配信フィルタリスト438を参照して、フレーム受信部421からのパケットの転送または廃棄を決定する。
上位連携部439は、例えば、PIM−SSM等のマルチキャストルーティングプロトコルを動作させることにより、配信管理部437から受信した配信要求を、上流側へと送信して、マルチキャスト配信網2の配信制御と連携動作する。
【0035】
配信管理部437は、ルータ障害時におけるフロー配信制御を行う。すなわち、共有セグメント5内の各配信ルータ4が故障した状況に備え、障害パタン毎の配信フロー割当てを手動設定もしくは自動計算する。なお、本処理は障害前もしくは障害後に実行することが可能であるが、障害前に実施することにより高速な切替えを実現することが可能となる。
【0036】
配信管理部437は、配信フローの割当てを、障害ルータに割当てられているフローに限定する。すなわち、正常ルータでは、フロー判定部432で正常系において自ルータに割り付けられるフローを配信するともに、配信管理部437で障害系において自ルータへ割り付けられるフローの配信を障害ルータから引き継ぐ。
これにより、系切替え制御に伴う正常フローの配信中断を伴うことなく、障害フローを救済することが可能となる。
【0037】
ルータ管理部434は、共有セグメント5に接続される各配信ルータ4(自ルータおよび他ルータ)のエントリをルータ管理テーブル435に記憶する。さらに、フロー判定部432は、ルータ管理テーブル435に格納される配信ルータ4の情報と、配信フィルタリスト438に格納されるフローの情報とから、配信ルータ4ごとの配信担当となるフローを特定するための配信制御テーブル433を作成する。
【0038】
【表1】

【0039】
表1は、ルータ管理部434が生成および管理するルータ管理テーブル435の一例を示す。この例では、3台の配信ルータ4(R1,R2,R3)が登録されている。ルータ管理テーブル435は、共有セグメント5内の配信ルータ4の障害状況(障害発生した配信ルータ4の組み合わせ)ごとに、共有セグメント5内の各配信ルータ4の順位を対応づけて記憶する。この順位は、後記するように、配信制御テーブル433の作成に使用される(表2参照)。
【0040】
ルータ管理部434は、ルータ管理テーブル435の各配信ルータ4の順位を決定するためのルータアドレス(例えば、アドレスの小さい順に順位を決定する)として、自ルータのIPアドレスと、他ルータから受信したパケットから特定できる他ルータのIPアドレスとを参照する。他ルータのIPアドレスは、例えば、IGMPおよびMLDにおける他ルータから共有セグメント5に定期的に送信されるGQ(General Query)メッセージなどのクエリの送信元アドレスである。
なお、ルータエントリの登録用のメッセージは、送信元ルータのIPアドレスを検出可能であれば、GQだけに限定されず、任意のメッセージを用いてもよい。
・IPv4マルチキャストの場合は、GQとGSQ(Group-Specific Query)とGSSQ(Group-and-Source-Specific Query)の3種類のクエリが規定されている。
・IPv6マルチキャストの場合は、GQとMASQ(Multicast Address Specific Query)とMASSQ(Multicast Address and Source Specific Query)の3種類のクエリが規定されている。
・マルチキャスト以外のメッセージを用いる場合は、ping(ICMP)パケットや独自パケットなど。
【0041】
ルータ管理部434は、3台の配信ルータ4(R1,R2,R3)のルータアドレスの小さい順が「R3,R2,R1」であるときに、障害ルータを除外した配信ルータ4の集合に対して、ルータアドレスの小さい順に順位を割り当てる。例えば、障害ルータがないときには、配信ルータ4(R2)は配信ルータ4(R3)の次の順位(2位)であるが(表の1行目)、配信ルータ4(R3)に障害が発生したときには、繰り上がって1位となる(表の2行目)。
【0042】
【表2】

【0043】
表2は、配信制御テーブル433(正常制御テーブル433a、障害制御テーブル433b)を示す。
配信制御テーブル433は、正常制御テーブル433aと障害制御テーブル433bとから構成されており、その2つのテーブルを1つに統合した形式が、表2の一番上の配信制御テーブル433である。つまり、配信制御テーブル433の左側の列(フロー,S,G,S+G)は、正常制御テーブル433aと障害制御テーブル433bとで共通し、配信制御テーブル433の右側の列「正常時」から正常制御テーブル433aを生成するとともに、配信制御テーブル433の右側の列「1台障害」から障害制御テーブル433bを生成することができる(データベースの表分離演算)。
配信制御テーブル433の左側の列(フロー,S,G,S+G)について、フロー列、S列、G列は、フローの特定情報が(S,G)であることを示している。「S+G」列は、ハッシュ値Modの計算用パラメータの一例であり、SとGとの和である。
【0044】
正常制御テーブル433aには、共有セグメント5内の全配信ルータ4が正常な状態における、フローごとの配信ルータ割当ての情報が格納されており、必要に応じてフロー判定部432を介して読み出される。
正常制御テーブル433aの「正常時」列は、ハッシュ値を示すMod3と、そのハッシュ値からフローの配信担当として決定された配信ルータ4の識別子(R1〜R3)とが対応づけられている。Mod3とは、「S+G」列の値を、ルータ数(3)で除算した余り(mod演算)である。
例えば、正常制御テーブル433aの1行目(フローF1)は、「S+G」列「3」÷全ルータ数「3」=商が1で余りが0なので、「Mod3」列が「0」である。
そして、表1のルータ管理テーブル435の1行目(3台正常時)の配信ルータごとの順位では、R3(1位)→R2(2位)→R3(3位)となっている。ここで、「Mod3」列からルータ順位への変換処理は、「Mod3」列が0でないときには、「Mod3」列の値をそのままルータ順位とし、「Mod3」列が0であるときには、ルータ順位が最下位のルータ順位とする。よって、「Mod3」列が「0」から、ルータ順位が最下位のルータ「R1」へと変換され、正常制御テーブル433aのR(配信担当)列として、「R1」が書き込まれる。
【0045】
以上説明したように、フロー情報(S,G)からハッシュ値(mod[(S+G),ルータ数])を計算し、ハッシュ値とクエリア順位とを1:1に対応させ、クエリア順位から配信ルータ4の識別子(R1〜R3)へ変換することにより、フローごとの配信担当を決定する。
これにより、共有セグメント内に複数のフローが配信されるときに、そのフローごとの配信担当となるクエリアが負荷分散されるので、フローの配信漏れや重複配信を抑制しつつ、共有セグメント全体のフローのスループットを向上させることができる。
【0046】
障害制御テーブル433bには、共有セグメント5内の全配信ルータ4のうちの1台以上の配信ルータ4が障害状態における、フローごとの配信ルータ割当ての情報が格納されており、必要に応じて配信管理部437を介して読み出される。
障害制御テーブル433bの「1台障害」列の作成方法は、正常制御テーブル433aの「正常時」列の作成方法と、以下の違いがある。
・正常制御テーブル433aの配信担当を示す「R」列を、障害制御テーブル433bでは、障害が発生した配信ルータ4(R1に障害が発生したとき、R3に障害が発生したとき)ごとにする。
・正常制御テーブル433aのハッシュ値「Mod3」を、障害制御テーブル433bでは「Mod2」とする。これは、共有セグメント5内の全ルータ数「3」から、障害が発生したルータ数「1」を減じた結果、共有セグメント5内の正常動作するルータ数「2」となるためである。
・障害制御テーブル433bでは、「1台障害」列の計算対象となるレコードを、障害ルータが正常制御テーブル433aにおいて配信担当となっていたフローに限定する。例えば、「R1障害」列では、障害ルータ「R1」が正常制御テーブル433aの「R」列で「R1」となっているフローF1,F4だけを障害制御テーブル433bでの計算対象とし、それ以外のフローF2,F3は、計算対象外を示す「−」を「R1障害」列に記載する。
【0047】
以下、障害制御テーブル433bの「1台障害」列の作成方法を、例示する。例えば、全3台の配信ルータ4のうちの、障害ルータがR1の1台であり、残りの2台が生存しているとする。
例えば、障害制御テーブル433bの1行目(フローF1)は、「S+G」列「3」÷障害時の全生存ルータ数「2」=商が1で余りが1なので、「Mod2」列が「1」である。
そして、表1のルータ管理テーブル435の4行目(「R1(1台障害時)」)の配信ルータごとの順位では、R3(1位)→R2(2位)となっている。
ここで、「Mod2」列からルータ順位への変換処理は、「Mod2」列が0でないときには、「Mod2」列の値をそのままルータ順位とし、「Mod2」列が0であるときには、ルータ順位が最下位のルータ順位とする。
よって、「Mod2」列が「1」から、ルータ順位が1位ルータ「R3」へと変換され、障害制御テーブル433bの1行目のR1障害列として、「R3」が書き込まれる。
【0048】
以上説明した配信制御テーブル433の作成処理では、共有セグメント5に3台の配信ルータ4が接続されている例を説明したが、共有セグメント5に接続される配信ルータ4の台数は、任意の台数でもよい。例えば、共有セグメント5にn台の配信ルータ4が接続されているときには、各テーブルには、以下の内容が書き込まれる。
・ルータ管理テーブル435には、n台正常時のレコード、1台障害時のレコード、2台障害時のレコード、…(n−1)台障害時のレコードが書き込まれる。
・正常制御テーブル433aには、n台正常時のレコードが書き込まれる。
・障害制御テーブル433bには、n台正常時のレコード、1台障害時のレコード、2台障害時のレコード、…(n−1)台障害時のレコードが書き込まれる。なお、(n−1)台障害時には、残った1台が全てのフローを配信することが明らかなため(図3参照)、障害制御テーブル433bから(n−1)台障害時のレコードを省略してもよい。
【0049】
さらに、ルータ管理テーブル435、障害制御テーブル433bに格納される2台以上の障害時のレコード(多重障害のレコード)は、あらかじめ作成してもよいし、必要時に作成してもよい。必要時とは、例えば、k台障害が実際に発生したときに、(k+1)台障害時のレコードを作成する旨である。これにより、ルータ管理テーブル435、障害制御テーブル433bの記憶容量を節約できる。
【0050】
図5は、フロー配信処理を示すフローチャートである。
S11として、受信IF部411は、マルチキャスト配信網2から下り方向のパケットを受信する。S11でYesならS12に進む。
S12として、配信フィルタ部431は、S11で受信したパケットがマルチキャストか否かを判定する。この判定は、例えば、IPv4の場合には、パケットのアドレスがクラスD(224.0.0.0〜239.255.255.255)のアドレスの場合をマルチキャストとすることで実現される。S12でYesならS14に進み、NoならS13に進む。
S13として、配信フィルタ部431は、S11で受信したパケットを、通常のパケット(ユニキャスト、ブロードキャストなどの非マルチキャストパケット)として転送する。
【0051】
S14として、フロー判定部432は、S11で受信したパケットのフロー特定情報(S,G)を正常制御テーブル433aから検索し、検索されたレコードの配信担当ルータ(R)列を参照することにより、自ルータが配信担当ルータか否かを判定する。S14でYesならS17に進み、NoならS15に進む。
S15として、配信障害検出部436(または、ルータ管理部434)は、自ルータと同じ共有セグメント5に接続される他の配信ルータ4に障害が発生したか否かを判定する。この判定は、後記する配信障害検出部436(または、ルータ管理部434)の障害検出処理(図7のS201)の結果を記憶手段から読み取ることにより、実現される。S15でYesならS16に進み、NoならS19に進む。
【0052】
S16として、フロー判定部432は、S11で受信したパケットのフロー特定情報(S,G)を障害制御テーブル433bから検索し、検索されたレコードの該当する障害時の配信代行ルータ(R1障害列など)を参照することで、自ルータが配信代行ルータか否かを判定する。S16でYesならS17に進み、NoならS19に進む。
【0053】
S17として、配信管理部437は、S11で受信したパケットのフローに対して、配信フィルタリスト438において配信中状態(Join)が対応づけられているか否かを参照することにより、そのフローが配信中か否かを判定する。S17でYesならS18に進み、NoならS19に進む。
【0054】
S18として、配信フィルタ部431は、共有セグメント接続インタフェース45を介して、S11のパケットを該当する(配信先のホスト6が存在する)共有セグメント5へ転送する。
S19として、配信フィルタ部431は、S11で受信したパケットを廃棄する。
【0055】
図6は、障害制御テーブル433bの生成処理を示すフローチャートである。
S101として、フロー判定部432は、正常制御テーブル433a内のレコード(正常系配信エントリ)を生成または更新する。
S102として、フロー判定部432は、障害制御テーブル433bに登録するレコード内容の設定方法をユーザに選択させる。手動設定ならS111へ進み、自動計算ならS103へ進む。
S111として、フロー判定部432は、障害制御テーブル433bの内容について、管理者から入力されたデータをそのまま障害制御テーブル433bに書き出す。つまり、ルータごと、もしくは(S,G)フローごとに管理者が配信代行ルータを選定し、障害制御テーブル433bに登録する。
【0056】
S103として、ルータ管理部434は、障害時における全正常ルータの数を計算する。例えば、3台のルータのうちの1台に障害が発生したときには、全正常ルータは、2台である。
S104として、フロー判定部432は、正常制御テーブル433aに登録されている全ての(S,G)フローに対し、障害系におけるハッシュ値Mod2を計算する。
S105として、ルータ管理部434は、ルータ管理テーブル435における障害時におけるクエリア順位から、配信代行ルータを計算する。
S106として、フロー判定部432は、配信代行ルータ(S105)とハッシュ値(S104)とを対応づけて、障害制御テーブル433bに登録(新規レコードを追加)する。
【0057】
図7は、ルータ障害が発生した際における配信障害の復旧処理を示すフローチャートである。
S201として、配信障害検出部436(または、ルータ管理部434)は、自ルータと同じ共有セグメント5に接続される他の配信ルータ4に発生した障害を検出する。障害検出方法は、例えば、以下の2通りのいずれかである。
(検出1)配信障害検出部436が外部のネットワークから障害通知(障害ルータIPアドレス等)を受信してルータ管理部434へルータ障害発生を通知する。
(検出2)ルータ管理部434が共有セグメント5から受信するクエリの未受信を契機に、ルータ障害を検出する。
【0058】
S202として、フロー判定部432は、障害制御テーブル433bを参照することで、S201で検出した障害ルータに割り当てられていたフローを障害フローとして特定する。
S203として、配信管理部437は、配信フィルタリスト438を参照して、障害フローのうちの配信中状態(Join)であるフローを1つずつ選択し、選択するフローが存在しないとき(S203,No)には、図7の処理を終了し、存在するとき(S203,Yes)には、S204に進む。
S204として、フロー判定部432は、S16と同様に、自ルータが配信代行か否かを判定し、YesならS205へ進み、NoならS203に戻る。
S205として、配信フィルタ部431は、S203で選択されたフローについて、配信フィルタリスト438の状態を配信中状態(Join)に変更することで、当該フローを配信制御する。そして、S203へ戻る。
【0059】
図8は、ルータ障害からの配信切替え後に配信要求を受信した際において、配信制御テーブル433の更新処理を示すフローチャートである。
S301として、配信管理部437は、配信要求(join/leave)を受信し、その対象となるフローの特定情報を、該当(S,G)として抽出する。以下のS302〜S313の処理は、配信制御テーブル433に未登録の該当(S,G)を、配信制御テーブル433に登録する処理である。
【0060】
S302として、フロー判定部432は、該当(S,G)が正常制御テーブル433aに登録されているか否かを判定し、YesならS303へ進み、NoならS305へ進む。
S305として、フロー判定部432は、該当(S,G)フローに対し、ハッシュ値(Mod3)と配信担当ルータ(R)とを計算し、その結果を正常制御テーブル433aに登録(新規レコード追加)する。そして、S311へ進む。
【0061】
S303として、フロー判定部432は、S14と同様に、自ルータが配信担当か否かを判定し、Yesなら図8の処理を終了し、NoならS304へ進む。
S304として、フロー判定部432は、該当(S,G)が障害制御テーブル433bに登録されているか否かを判定し、Yesなら図8の処理を終了し、NoならS311へ進む。
S311〜S313は、図6のS104〜S106と同じ処理であるが、登録対象がS104での全ての(S,G)から、S311の該当(S,G)へと変更されている。
なお、図8のフローチャートが終了したら、S301の該当(S,G)を引数として、図9のフローチャートを起動させる。
【0062】
図9は、ルータ障害からの配信切替え後に配信要求を受信した際において、要求に対するフロー配信処理を示すフローチャートである。
S401として、フロー判定部432は、S14と同様に、該当(S,G)が自ルータの配信担当か否かを判定し、YesならS402に進み、NoならS404へ進む。
S402として、配信管理部437は、S17と同様に、該当(S,G)が配信中状態(Join)か否かを判定し、Yesなら図9の処理を終了し、NoならS403へ進む。
S403として、配信フィルタ部431は、S205と同様に、当該フローを配信制御する。
【0063】
S404として、配信障害検出部436(または、ルータ管理部434)は、S15と同様に、障害時か否かを判定し、YesならS405へ進み、Noなら図9の処理を終了する。
S405として、フロー判定部432は、S16と同様に、該当(S,G)が自ルータの配信代行か否かを判定し、YesならS403に進み、Noなら図9の処理を終了する。
【0064】
以上説明した本実施形態では、あらかじめクエリア障害を想定した配信設定を準備しておくことにより、障害検出後に即時切替え可能とし、また、正常なクエリアに割当てされているフローに関しては、配信ルータを変更しないように、正常時と障害パタン毎の複数の配信設定を併用することを特徴とする。
【0065】
これにより、IPルータがIGMP/MLDプロトコルを用いてIPマルチキャストの配信制御を行うときに、共有セグメントに複数ルータが冗長接続される構成で、ルータ障害が発生したときでも、フローの配信漏れや重複配信を抑制することで、安定したフロー配信を実現するとともに、複数ルータそれぞれに配信担当となるフローが割り当てられることで、共有セグメント内の系全体としての帯域利用効率(配信収容効率)を向上させることができる。
【0066】
以下、本実施形態の効果を説明するために、以下の2つの比較例と比較する。
(比較例1)非特許文献1,2で示されるIGMPv3/MLDv2のクエリア選択メカニズム
(比較例2)共有セグメントに複数ルータが冗長接続されるときに、複数ルータそれぞれに配信担当となるフローを計算して割り当てるが、障害発生時には、共有セグメント内の全ルータそれぞれに対して配信担当となるフローを再計算する構成
【0067】
以下、(比較例1)、(比較例2)、および、本実施形態の構成それぞれについて、4つの課題を解決するか否かを比較説明する。
【0068】
第1の課題として、IGMPv3/MLDv2では、セグメントに3台以上のルータが存在する場合、クエリアに障害が生じると、一時的に同一フローの二重配信が生じる可能性があることが挙げられる。
(比較例1)では、非クエリアは、クエリア障害が生じるとGQパケットを受信しなくなり、GQ受信タイマがOQPTタイムアウト値に到達した場合には、非クエリアは現クエリアに障害が発生したと仮定したと判定してクエリア状態へ遷移する。ここで、IGMP/MLDホストからjoinレポートを受信すると、クエリア状態へと遷移した全てのクエリアがこれに応答して配信を行うため、同一フローの二重配信が生じる。
(比較例1)では、OQPTタイムアウトして非クエリアからクエリアへ遷移する制御動作が、ルータごとに独立しているため、系全体として新しいクエリアが一つに収束するまで所定時間が必要となる。
【0069】
第2の課題として、(比較例2)は、全ルータが正常な状態においてフロー単位に配信ルータを分散する技術であり、クエリア障害が生じた状態における制御動作については規定していないとすると、何らか障害復旧の技術を導入しない限り、障害ルータに割当てられるフローが配信断したままとなる。
よって、障害検出と障害フローの救済は何らか別の方法が必要となる。ここで、障害の検出に関しては、どのような手段を用いても構わないが、例えば、従来のIGMPv3/MLDv2と同様に、OQPTタイムアウトの仕組みを流用する方法などが考えられる。これに対して、障害検出後のフロー救済方法については、例えば、障害クエリアを除外した系において負荷分散の設定を再構成し直す方法が考えられる。
すなわち、障害系において、クエリア順位を再設定し、(S,G)フロー単位のハッシュ値の再計算を行い、ルータとフローの対応関係を変更することにより、障害フローの救済が可能となる。
【0070】
しかし、第3の課題として、(比較例2)では、正常なクエリアで配信していたフローについても、配信ルータが切り替る可能性があるため、系切替えに伴う正常フローの配信断(瞬断等)を伴う。
また、第4の課題として、(比較例2)では、切替え後のルータとフローの対応関係の再計算が完了し、新旧の配信テーブルを切り替えるまでは、障害クエリアが制御するフロー配信を救済できないため、サービス断時間が長期化する。
【0071】
一方、本実施形態の構成では、障害検出後の処理として、(比較例1)のような各自ルータの独自判断による代替クエリアへの変更でもなく、(比較例2)のようなフロー配信担当の再計算でもなく、障害ルータの担当分のフローだけをあらかじめクエリア障害を想定した配信設定に即時切替を行うことにより、前記した第1の課題〜第4の課題の発生を防止する。
【0072】
つまり、本実施形態では、複数のIGMP/MLDルータでフローの配信制御を負荷分散している系でルータ障害が発生した場合において、当該ルータで配信していたフローの制御を復旧する救済手段を提供可能なため、高信頼なIPマルチキャストサービスが実現可能となる。また、任意のルータ障害を想定した配信設定を事前準備が可能なため、迅速なサービス復旧が実現可能となる。さらに、正常なフロー配信には影響がないため、品質の安定性が高いサービスが実現可能となる。
【符号の説明】
【0073】
1 配信サーバ
2 マルチキャスト配信網
3 リンク
4 配信ルータ
5 共有セグメント
6 ホスト
41 MC配信網接続インタフェース
42 MC配信網フレーム転送部
43 転送制御回路
44 共有セグメントフレーム転送部
45 共有セグメント接続インタフェース
411 受信IF部
412 送信IF部
421 フレーム受信部
422 フレーム送信部
441 フレーム送信部
442 フレーム受信部
451 送信IF部
452 受信IF部
431 配信フィルタ部
432 フロー判定部
433 配信制御テーブル
433a 正常制御テーブル(正常制御用データ)
433b 障害制御テーブル(障害制御用データ)
434 ルータ管理部
435 ルータ管理テーブル
436 配信障害検出部
437 配信管理部
438 配信フィルタリスト
439 上位連携部

【特許請求の範囲】
【請求項1】
配信サーバから配信ルータを介してホストにマルチキャストのフローを配信するマルチキャスト配信システムであって、
複数台の前記配信ルータと1台以上の前記ホストとが共有セグメントに接続され、その共有セグメントに送信されるパケットは、前記共有セグメントに接続される各装置が受信可能であり、
前記配信ルータは、転送制御部と記憶手段とを有しており、
前記配信ルータの記憶手段には、正常制御用データと障害制御用データとが記憶されており、
前記正常制御用データは、前記共有セグメントを介して配信される1つのフローごとに1台の前記配信ルータを配信担当ルータとして割り当てるデータであり、
前記障害制御用データは、前記1台以上の配信担当ルータを障害ルータとしたときに、前記障害ルータに割り当てられていた障害フローに対して、前記障害ルータとは別の前記配信ルータを、配信代行ルータとして割り当てるデータであり、
前記共有セグメントに接続される各前記配信ルータの転送制御部は、
前記障害ルータとして他装置の前記配信ルータを検出した後、
前記配信サーバからフローの配信データを受信すると、受信した配信データの属するフローの特定情報を検索キーとして、前記正常制御用データと前記障害制御用データとをそれぞれ検索することで、検索したフローの前記配信担当ルータおよび前記配信代行ルータをそれぞれ取得し、
取得した前記配信担当ルータまたは前記配信代行ルータが自装置であるときには、前記共有セグメントを介して受信したフローの配信データを前記ホストに転送し、
取得した前記配信担当ルータおよび前記配信代行ルータが他装置であるときには、受信したフローの配信データを廃棄することを特徴とする
マルチキャスト配信システム。
【請求項2】
前記共有セグメントに接続される各前記配信ルータの転送制御部は、
前記正常制御用データを前記記憶手段に格納するときに、受信した配信データの属するフローの特定情報と、前記共有セグメントに接続される前記配信ルータの数と、を引数とする所定関数を計算し、その所定関数の計算結果から一意に決定される前記配信ルータを、前記所定関数の計算に用いたフローに対する配信担当ルータとして決定し、
前記障害制御用データを前記記憶手段に格納するときに、前記1台以上の配信ルータから選択した前記1台以上の障害ルータの組み合わせごとに、受信した配信データの属するフローの特定情報と、前記共有セグメントに接続される前記配信ルータの数から前記障害ルータの数を減じたルータの数と、を引数とする前記所定関数を計算し、その所定関数の計算結果から一意に決定される前記配信ルータを、前記所定関数の計算に用いたフローに対する配信代行ルータとして決定することを特徴とする
請求項1に記載のマルチキャスト配信システム。
【請求項3】
配信サーバから配信ルータを介してホストにマルチキャストのフローを配信するマルチキャスト配信システムに用いられる配信ルータであって、
複数台の前記配信ルータと1台以上の前記ホストとが共有セグメントに接続され、その共有セグメントに送信されるパケットは、前記共有セグメントに接続される各装置が受信可能であり、
前記配信ルータは、転送制御部と記憶手段とを有しており、
前記配信ルータの記憶手段には、正常制御用データと障害制御用データとが記憶されており、
前記正常制御用データは、前記共有セグメントを介して配信される1つのフローごとに1台の前記配信ルータを配信担当ルータとして割り当てるデータであり、
前記障害制御用データは、前記1台以上の配信担当ルータを障害ルータとしたときに、前記障害ルータに割り当てられていた障害フローに対して、前記障害ルータとは別の前記配信ルータを、配信代行ルータとして割り当てるデータであり、
前記共有セグメントに接続される各前記配信ルータの転送制御部は、
前記障害ルータとして他装置の前記配信ルータを検出した後、
前記配信サーバからフローの配信データを受信すると、受信した配信データの属するフローの特定情報を検索キーとして、前記正常制御用データと前記障害制御用データとをそれぞれ検索することで、検索したフローの前記配信担当ルータおよび前記配信代行ルータをそれぞれ取得し、
取得した前記配信担当ルータまたは前記配信代行ルータが自装置であるときには、前記共有セグメントを介して受信したフローの配信データを前記ホストに転送し、
取得した前記配信担当ルータおよび前記配信代行ルータが他装置であるときには、受信したフローの配信データを廃棄することを特徴とする
配信ルータ。
【請求項4】
前記共有セグメントに接続される各前記配信ルータの転送制御部は、
前記正常制御用データを前記記憶手段に格納するときに、受信した配信データの属するフローの特定情報と、前記共有セグメントに接続される前記配信ルータの数と、を引数とする所定関数を計算し、その所定関数の計算結果から一意に決定される前記配信ルータを、前記所定関数の計算に用いたフローに対する配信担当ルータとして決定し、
前記障害制御用データを前記記憶手段に格納するときに、前記1台以上の配信ルータから選択した前記1台以上の障害ルータの組み合わせごとに、受信した配信データの属するフローの特定情報と、前記共有セグメントに接続される前記配信ルータの数から前記障害ルータの数を減じたルータの数と、を引数とする前記所定関数を計算し、その所定関数の計算結果から一意に決定される前記配信ルータを、前記所定関数の計算に用いたフローに対する配信代行ルータとして決定することを特徴とする
請求項3に記載の配信ルータ。
【請求項5】
配信サーバから配信ルータを介してホストにマルチキャストのフローを配信するマルチキャスト配信方法であって、
複数台の前記配信ルータと1台以上の前記ホストとが共有セグメントに接続され、その共有セグメントに送信されるパケットは、前記共有セグメントに接続される各装置が受信可能であり、
前記配信ルータは、転送制御部と記憶手段とを有しており、
前記配信ルータの記憶手段には、正常制御用データと障害制御用データとが記憶されており、
前記正常制御用データは、前記共有セグメントを介して配信される1つのフローごとに1台の前記配信ルータを配信担当ルータとして割り当てるデータであり、
前記障害制御用データは、前記1台以上の配信担当ルータを障害ルータとしたときに、前記障害ルータに割り当てられていた障害フローに対して、前記障害ルータとは別の前記配信ルータを、配信代行ルータとして割り当てるデータであり、
前記共有セグメントに接続される各前記配信ルータの転送制御部は、
前記障害ルータとして他装置の前記配信ルータを検出した後、
前記配信サーバからフローの配信データを受信すると、受信した配信データの属するフローの特定情報を検索キーとして、前記正常制御用データと前記障害制御用データとをそれぞれ検索することで、検索したフローの前記配信担当ルータおよび前記配信代行ルータをそれぞれ取得し、
取得した前記配信担当ルータまたは前記配信代行ルータが自装置であるときには、前記共有セグメントを介して受信したフローの配信データを前記ホストに転送し、
取得した前記配信担当ルータおよび前記配信代行ルータが他装置であるときには、受信したフローの配信データを廃棄することを特徴とする
マルチキャスト配信方法。
【請求項6】
前記共有セグメントに接続される各前記配信ルータの転送制御部は、
前記正常制御用データを前記記憶手段に格納するときに、受信した配信データの属するフローの特定情報と、前記共有セグメントに接続される前記配信ルータの数と、を引数とする所定関数を計算し、その所定関数の計算結果から一意に決定される前記配信ルータを、前記所定関数の計算に用いたフローに対する配信担当ルータとして決定し、
前記障害制御用データを前記記憶手段に格納するときに、前記1台以上の配信ルータから選択した前記1台以上の障害ルータの組み合わせごとに、受信した配信データの属するフローの特定情報と、前記共有セグメントに接続される前記配信ルータの数から前記障害ルータの数を減じたルータの数と、を引数とする前記所定関数を計算し、その所定関数の計算結果から一意に決定される前記配信ルータを、前記所定関数の計算に用いたフローに対する配信代行ルータとして決定することを特徴とする
請求項5に記載のマルチキャスト配信方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate