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

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

Info

Publication number
JP2011259147A
JP2011259147A JP2010131106A JP2010131106A JP2011259147A JP 2011259147 A JP2011259147 A JP 2011259147A JP 2010131106 A JP2010131106 A JP 2010131106A JP 2010131106 A JP2010131106 A JP 2010131106A JP 2011259147 A JP2011259147 A JP 2011259147A
Authority
JP
Japan
Prior art keywords
distribution
router
flow
data
shared segment
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.)
Granted
Application number
JP2010131106A
Other languages
English (en)
Other versions
JP5553425B2 (ja
Inventor
Masakazu Miyamoto
正和 宮本
Shinya Kono
伸也 河野
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2010131106A priority Critical patent/JP5553425B2/ja
Publication of JP2011259147A publication Critical patent/JP2011259147A/ja
Application granted granted Critical
Publication of JP5553425B2 publication Critical patent/JP5553425B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】ルータおよび経路パスが冗長化された配信アクセス系において、同時に配信可能なマルチキャストフロー数および配信フローの総帯域量を増加させつつ、ホスト装置への二重配信を防止すること。
【解決手段】配信サーバ1から配信ルータ4を介してホスト6にマルチキャストのフローを配信するマルチキャスト配信システムであって、配信ルータ4の転送制御部20は、配信サーバ1からフローの配信データを受信すると、受信した配信データの属するフローの特定情報を検索キーとして配信制御テーブル22aを検索することで、検索したフローの配信担当となる配信ルータ4を取得し、取得した配信ルータ4が自装置であるときには、共有セグメント5を介して受信したフローの配信データをホスト6に転送し、取得した配信ルータ4が他装置であるときには、受信したフローの配信データを廃棄する。
【選択図】図2

Description

本発明は、マルチキャスト配信システム、配信ルータ、および、マルチキャスト配信方法に関する。
マルチキャスト(Multicast)は、配信サーバから送信される配信データを、配信ルータが複数台のホスト装置に対して同報配信する通信形態であり、一対多通信とも呼ばれる。これにより、一対一通信であるユニキャストに比べ、配信サーバおよび配信ネットワークが受信ホスト毎にパケットを重複転送する必要がなくなるため、サーバ処理負荷とネットワーク負荷(帯域)を軽減することができる。
IPマルチキャスト通信を実現するためには、まず、配信サーバからIPネットワーク内に送信されるIPパケットに対して、IPネットワークのコア区間における配信経路(配信ツリー)を決定する必要がある。この経路決定のためのプロトコルとして、DVMRP(Distance Vector Multicast Routing Protocol)や(非特許文献1)、PIM−SM(Protocol Independent Multicast - Sparse Mode)(非特許文献2)、PIM−SSM(Protocol Independent Multicast - Source Specific Mode)などが利用される(非特許文献3)。
さらに、IPネットワークのエッジルータからホストまでのアクセス区間においては、エッジルータの個々のアクセス側インタフェースに対して、マルチキャストフロー毎にフローを配信するかを決定するため、マルチキャストのグループ管理(グループ参加・グループ離脱)のためのプロトコルとして、IPv4におけるIGMP(Internet Group Management Protocol)や(非特許文献4)、IPv6におけるMLD(Multicast Listener Discovery)などが利用される(非特許文献5)。
ホスト装置は、接続するネットワークを介して配信ルータから配信データを受信するが、接続するネットワーク(共有セグメント)に複数台の配信ルータが接続されることもある。そのときには、ホスト装置は、同一の配信データを、共有セグメントに属する(接続される)複数台の配信ルータからそれぞれ二重配信されるため、ネットワーク資源(ルータのコピー処理とリンク帯域)の利用効率が低下するとともに、同一フローを重複受信しても動作に問題が生じないようなホスト側の対応が必要となる。
そこで、IGMPv2とIGMPv3およびMLDv2からは、共有セグメントに属する複数台の配信ルータの中から、1台だけをクエリア(Querier)として代表選出する仕組みが導入された。ここで、クエリアは、共有セグメントに属する複数台の配信ルータのうち、IPアドレスが最小となる配信ルータが選出される。
これにより、ホスト装置へクエリを送信してその応答をリポート(Membership Report)として受信したクエリアは、共有セグメントに属する複数台の配信ルータの中で、唯一ホスト装置へのデータ配信を行うことができる。よって、クエリアを1台選出することにより、セグメント内(ホスト装置)への同一フローの二重配信を防止することができる。
IETF、"Distance Vector Multicast Routing Protocol"、[online]、[平成22年6月8日検索]、インターネット(URL:http://www.rfc-editor.org/rfc/rfc1075.txt) IETF、"Protocol Independent Multicast - Sparse Mode (PIM-SM)"、[online]、[平成22年6月8日検索]、インターネット(URL:http://www.rfc-editor.org/rfc/rfc4602.txt) IETF、"Source-Specific Multicast for IP"、[online]、[平成22年6月8日検索]、インターネット(URL:http://www.rfc-editor.org/rfc/rfc4607.txt) IETF、"Internet Group Management Protocol, Version 3"、[online]、[平成22年5月31日検索]、インターネット(URL:http://www.rfc-editor.org/rfc/rfc3376.txt) IETF、"Multicast Listener Discovery Version 2 (MLDv2) for IPv6"、[online]、[平成22年5月31日検索]、インターネット(URL:http://www.rfc-editor.org/rfc/rfc3810.txt)
前述したように、共有セグメントに属する複数台の配信ルータから、1台のクエリアに配信処理を専任させる従来の方式では、クエリアおよびそのリンクに配信負荷が集中する。そのため、クエリア以外の配信ルータは配信処理を行わず、それらの配信ルータのルータ処理性能および冗長化された配信パス(上位/下位の接続リンク)帯域は、有効活用されない。なお、ルータ処理性能の指標としては、単位時間あたりにおけるマルチキャストパケットのコピー数上限値や、ホスト装置からのリポートに対する応答処理数などが挙げられる。
また、共有セグメントに属する複数台の配信ルータから、単に複数台のクエリアを選出するだけでは、同じ配信データをホスト装置へ二重配信してしまう。同一マルチキャストフローの二重配信により、配信パス(ルータの上位/下位接続リンクおよびLAN)帯域を重複消費する無駄が発生するだけでなく、ホスト装置や、ホームゲートウェイなどが同一フローの二重受信に対応する必要がある。よって、ネットワークシステム全体としての配信可能なマルチキャストフロー数およびマルチキャスト配信可能な総帯域量を向上させつつ、従来技術と同様に同一フローの二重配信を防止のする必要がある。
そこで、本発明は、前記した問題を解決し、ルータおよび経路パスが冗長化された配信アクセス系において、同時に配信可能なマルチキャストフロー数および配信フローの総帯域量を増加させつつ、ホスト装置への二重配信を防止することを、主な目的とする。
前記課題を解決するために、本発明は、配信サーバから配信ルータを介してホストにマルチキャストのフローを配信するマルチキャスト配信システムであって、複数台の前記配信ルータと1台以上の前記ホストとが共有セグメントに接続され、その共有セグメントに送信されるパケットが、前記共有セグメントに接続される各装置が受信可能であり、前記配信ルータが、転送制御部と記憶手段とを有しており、前記配信ルータの記憶手段には、前記共有セグメントに接続される複数台の前記配信ルータのうちの配信担当となる1台の前記配信ルータを、配信対象のフローごとに格納する配信制御用データが記憶されており、前記共有セグメントに接続される各前記配信ルータの転送制御部が、前記配信サーバからフローの配信データを受信すると、受信した配信データの属するフローの特定情報を検索キーとして前記配信制御用データを検索することで、検索したフローの配信担当となる前記配信ルータを取得し、取得した前記配信ルータが自装置であるときには、前記共有セグメントを介して受信したフローの配信データを前記ホストに転送し、取得した前記配信ルータが他装置であるときには、受信したフローの配信データを廃棄することを特徴とする。
これにより、同じ共有セグメントに接続される複数の配信ルータそれぞれについて、フローごとに1台の配信担当を割り当てることで、フロー配信処理の負荷分散を実現する。よって、配信可能なマルチキャストフロー数および配信フローの総帯域量を増加させつつ、ホスト装置への二重配信を防止することができる。
本発明は、前記共有セグメントに接続される各前記配信ルータの転送制御部が、前記共有セグメントに接続される前記配信ルータのリストを格納するルータ管理用データを記憶手段に格納し、自装置のルータアドレスを前記ルータ管理用データに登録するとともに、他装置の前記配信ルータから受信したパケットから他装置のルータアドレスを取得して、前記ルータ管理用データに登録し、前記ルータ管理用データに登録されるルータアドレスを、前記配信制御用データに登録される配信担当の前記配信ルータの特定情報とすることを特徴とする。
これにより、配信担当となる配信ルータの候補を、自動でルータ管理テーブルに登録することができる。
本発明は、前記共有セグメントに接続される各前記配信ルータの転送制御部が、受信した配信データの属するフローの特定情報と、前記ルータ管理用データに登録されるルータアドレスの数と、を引数とする所定関数を計算し、その所定関数の計算結果から一意に決定される前記配信ルータを、所定関数の計算に用いたフローの特定情報に対する配信担当として決定し、決定した配信担当の前記配信ルータとフローの特定情報とを対応づけて前記配信制御用データに格納することを特徴とする。
これにより、フローごとに配信担当となる配信ルータを計算することで、配信ルータ数の増減に対して、最適な配信担当を逐次決定することができる。
本発明は、本発明は、前記共有セグメントに接続される各前記配信ルータの転送制御部が、前記ホストから前記共有セグメントを介して配信対象のフローの特定情報と、そのフローへの配信可否を示す配信中状態情報とをリポートとして受信すると、そのフローの特定情報と前記配信中状態情報とを対応づけて記憶手段に格納し、前記共有セグメントを介して前記ホストに転送するフローの配信データが、前記配信中状態情報において配信不可であるときには、受信したフローの配信データを廃棄することを特徴とする。
さらに、本発明は、前記したマルチキャスト配信システムに用いられる配信ルータ、および、本発明はマルチキャスト配信システムが実行するマルチキャスト配信方法である。
これにより、ホストから希望されるフローの配信データを適切にホストに転送するとともに、ホストが希望しないフローの配信データの転送を抑制することができる。
本発明によれば、ルータおよび経路パスが冗長化された配信アクセス系において、同時に配信可能なマルチキャストフロー数および配信フローの総帯域量を増加させつつ、ホスト装置への二重配信を防止することができる。
本発明の一実施形態に関するマルチキャスト配信システムを示す構成図である。 本発明の一実施形態に関するマルチキャスト配信システムの配信ルータを示す構成図である。 本発明の一実施形態に関する配信フィルタリストを示す構成図である。 本発明の一実施形態に関するマルチキャスト配信システムのデータ配信処理の概要を示すフローチャートである。 本発明の一実施形態に関するルータ管理テーブルの新規生成処理を示すフローチャートである。 本発明の一実施形態に関するルータ管理テーブルのエントリ追加および削除処理を示すフローチャートである。 本発明の一実施形態に関する配信データの転送処理を示すフローチャートである。
以下、本発明の一実施形態を、図面を参照して詳細に説明する。
図1は、マルチキャストフロー(以下、単にフローとする)を配信するマルチキャスト配信システムを示す構成図である。
マルチキャスト配信システムは、配信サーバ1(1a、1b)と配信ルータ4(4a、4b、4c)とがマルチキャスト配信網2で接続されるとともに、配信ルータ4(4a、4b、4c)とホスト6(6a、6b、6c)とが共有セグメント5で接続されて構成される。
これらのマルチキャスト配信システムの各装置は、CPUとメモリとハードディスク(記憶手段)とネットワークインタフェースを有するコンピュータとして構成され、このコンピュータは、CPUが、メモリ上に読み込んだプログラムを実行することにより、各処理部を動作させる。
マルチキャスト配信網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に接続される他装置へも伝送される特性を有する。例えば、配信ルータ4aからホスト6aへ送信されるメッセージは、ホスト6aだけでなく、他の各装置(配信ルータ4b、配信ルータ4c、ホスト6b、ホスト6c)も受信することができる。共有セグメント5は、例えば、イーサネット(登録商標)により構成される。
配信サーバ1は、フローの配信元となるサーバであり、図1では、4つのフロー(M1〜M4)が配信対象のフローとして例示されている。なお、フローの特定情報としては、フローのグループだけを特定情報とする(*,g)指定型であるASM(Any Source Multicast)と、フローのグループとフローの送信元の配信サーバ1のアドレスの組を特定情報とする(s,g)指定型であるSSM(Source Specific Multicast)とが挙げられる。
以下、本実施形態では、フローの特定情報を(s,g)指定型として説明するが、(*,g)指定型にも本実施形態を応用することができる。ここで、(s,g)とは、(Source,Group)の略であり、最初のSourceが送信元の配信サーバ1のアドレスを示し、次のGroupがフローのグループを示す。
配信ルータ4は、マルチキャストのグループ管理プロトコル(IGMPおよびMLDのプロトコルなど)が動作するルータであり、配信サーバ1からの配信データを、ホスト6に転送する。配信ルータ4は、リンク3(3a、3b、3c)を介して、マルチキャスト配信網2と接続されている。
ホスト6は、配信ルータ4から配信データを受信する端末であり、リスナ(listener)とも呼ばれる。ホスト6は、配信ルータ4からのクエリを受信すると、自装置が希望するフローの情報を含めたリポートを作成し、配信ルータ4に返信する。
図2は、マルチキャスト配信システムの配信ルータ4を示す構成図である。配信ルータ4は、フローの上流側(マルチキャスト配信網2の側)から順に、サーバ側インタフェース11、サーバ側フレーム処理部12、転送制御部20、ホスト側フレーム処理部13、ホスト側インタフェース14が接続されて構成される。
インタフェース(サーバ側インタフェース11、ホスト側インタフェース14)は、ネットワークが接続される端点となる箇所であり、外部の網からデータを受信するインタフェース(受信インタフェース部31、受信インタフェース部41)と、外部の網にデータを送信するインタフェース(送信インタフェース部34、送信インタフェース部44)とから構成される。
フレーム処理部(サーバ側フレーム処理部12、ホスト側フレーム処理部13)は、インタフェースが送受信するデータの信号をフレーム単位に変換する処理部であり、受信インタフェースからの通信信号からフレームを構築する受信部(フレーム受信部42、フレーム受信部32)と、構築されたフレームから送信インタフェースを介して送信する通信信号へとデコードする送信部(フレーム送信部33、フレーム送信部43)とから構成される。
上流(配信サーバ1)から下流(ホスト6)に流れる下りのパケット(配信データなど)は、受信インタフェース部31→フレーム受信部32→配信フィルタ部21→フレーム送信部33→送信インタフェース部34の順に、配信ルータ4内を通過する。
下流(ホスト6)から上流(配信サーバ1)に流れる上りのパケット(リポートなど)は、受信インタフェース部41→フレーム受信部42→配信管理部22→フレーム送信部43→送信インタフェース部44の順に、配信ルータ4内を通過する。
転送制御部20は、フレーム受信部32,42からのフレームを受信して、そのフレーム内容に応じて転送制御を行い、その結果をフレーム送信部33,43に出力する。
転送制御部20は、配信フィルタ部21、配信フィルタリスト21a、配信管理部22、配信制御テーブル22a(配信制御用データ)、フロー判定部23、ルータ管理部24、ルータ管理テーブル24a(ルータ管理用データ)から構成される。
配信フィルタ部21は、フレーム受信部32からパケットを受信すると、フロー判定部23および配信管理部22が決定したパケットの転送または廃棄の決定に従い、フレーム送信部33へのパケットの転送またはパケットの廃棄を実行する。つまり、配信フィルタ部21は、マルチキャストパケットの透過廃棄を実行する。
配信管理部22は、IGMPおよびMLDのルータとして動作し、ホスト6側から送信されるリポートを読み取ることにより、配信フィルタリスト21aを作成する(詳細は図3で後記する)。リポートは、例えば、以下の内容を含んでいる。
・指定したマルチキャストグループへの参加(配信希望)を示す「join」
・指定したマルチキャストグループからの離脱(配信停止希望)を示す「leave」
・指定したソースのアドレスからの受信を許可する「INCLUDE」
・指定したソースのアドレスからの受信を不許可とする「EXCLUDE」
さらに、配信管理部22は、配信フィルタリスト21a内の配信中フラグを参照して、フレーム受信部32からのパケットの転送または廃棄を決定する。
フロー判定部23は、フレーム受信部32から受信したマルチキャストパケットについて、配信制御テーブル22aを参照することにより、パケットの転送または廃棄を決定する。
ルータ管理部24は、共有セグメント5に接続される各配信ルータ4(自ルータおよび他ルータ)のエントリをルータ管理テーブル24aに記憶する。さらに、ルータ管理部24は、ルータ管理テーブル24aに格納される配信ルータ4の情報と、配信フィルタリスト21aに格納されるフローの情報とから、配信ルータ4ごとの配信担当となるフローを特定するための配信制御テーブル22aを作成する。
Figure 2011259147
表1は、ルータ管理部24が生成および管理するルータ管理テーブル24aの一例を示す。この例では、3台の配信ルータ4a,4b,4cが登録されている。ルータ管理テーブル24aは、配信ルータ4ごとに、その配信ルータのルータアドレス(ルータに割り当てられたIPアドレス)と、共有セグメント5におけるその配信ルータの順位とを対応づけて記憶する。
ルータ管理部24は、ルータ管理テーブル24aのルータアドレスとして、自ルータのIPアドレスを登録するとともに、他ルータから受信したパケットから特定できる他ルータのIPアドレスを登録する。他ルータのIPアドレスは、例えば、IGMPおよびMLDにおける他ルータから共有セグメント5に定期的に送信されるGQ(General Query)メッセージなどのクエリの送信元アドレスである。
なお、ルータエントリの登録用のメッセージは、送信元ルータのIPアドレスを検出可能であれば、GQだけに限定されず、任意のメッセージを用いてもよい。
・IPv4マルチキャストの場合は、GQとGSQ(Group-Specific Query)とGSSQ(Group-and-Source-Specific Query)の3種類のクエリが規定されている(非特許文献4の4.1.11節)。
・IPv6マルチキャストの場合は、GQとMASQ(Multicast Address Specific Query)とMASSQ(Multicast Address and Source Specific Query)の3種類のクエリが規定されている(非特許文献5の5.1.13節)。
・マルチキャスト以外のメッセージを用いる場合は、ping(ICMP)パケットや独自パケットなど。
ルータ管理部24は、ルータ管理テーブル24aのルータアドレスが登録されると、ルータ管理テーブル24a内の全エントリのルータアドレスの大小比較を行い、ルータアドレスの小さい順に、配信ルータの順位をルータ管理テーブル24aに書き出す。
Figure 2011259147
表2は、3台の配信ルータ4a,4b,4c内の配信制御テーブル22aの例を示す。配信制御テーブル22aは、配信フィルタリスト21aのフローごとに、そのフローの配信担当となる配信ルータ4を特定するために、用いられる。配信制御テーブル22aは、フローの特定情報(Source,Group)と、自ルータが配信担当か否かを示す判定値C-flagと、その判定値C-flagを計算するための計算過程パラメータ(関数値H,関数値M,補正値F)とが対応づけて記憶されている。
表2では、フローM1の配信担当が配信ルータ4bであり、フローM2,M3の配信担当が配信ルータ4aであり、フローM4の配信担当が配信ルータ4cであるので、1つのフローに対して配信担当となる配信ルータ4が1台に特定される。これにより、複数の配信ルータ4が同じフローを重複して配信することを防止する。
以下に示すように、ルータ管理部24は、フローの特定情報(Source,Group)から、判定値C-flagを計算する。以下、(Source,Group)=(s,g)とする。
(手順1):IGMPv3およびMLDv2の場合は、(s,g)指定型のフローを扱うので、関数値H=s+gとする。一方、IGMPv2およびMLDv1の場合は、(*,g)指定型のフローを扱うので、関数値H=gとしてもよい。
(手順2):ハッシュ関数値M=mod[H,n]。ここで、n=ルータ管理テーブル24a内のルータ総数(表1では「3」)である。関数mod[H,n]は、割られる数Hを、割る数nで割ったときの余り(剰余)である。
(手順3):補正値F=M(M≠0の場合)またはn(M=0の場合)。つまり、補正値Fは、1〜nのいずれかの値を取る。
(手順4):C-flag=1(F=ルータ順位の場合)または0(F≠ルータ順位の場合)。例えば、フローM1の補正値は「2」なので、ルータ管理テーブル24a内のルータ順位=2である配信ルータ4bだけが、配信担当としてC-flag=1が設定される。
なお、フラグ値「C-flag」の計算式として、各ルータが同じ計算ルール(ハッシュ関数)で制御すればよいので、様々な変形例(値域が1〜nのいずれかの値を取る任意の関数)が適用できる。これにより、マルチキャストフローの配信漏れや二重配信を防止できる。
図3は、配信フィルタリスト21aを示す構成図である。
配信フィルタリスト21aは、フローの特定情報(Source,Group)と、そのフローが配信されるホスト側インタフェース14の識別子と、そのフローが配信中の状態か否かを示す配信中フラグとを対応づけて管理する。
例えば、図3(a)のリポート受信前において、フローM1は、配信サーバ1a(IPアドレス=1)から送信される、グループ番号=1のフローであり、インタフェースIF1への配信中の状態(配信中フラグ=1)である。一方、フローM3は配信中の状態ではない。
ここで、インタフェースIF3から「M3を配信希望、M4は離脱希望」のリポートを受信すると、配信管理部22は、図3(b)のように配信中フラグを更新する。
つまり、配信管理部22は、受信したリポートの中身から要求対象となるマルチキャストフローの識別情報である(S,G)を識別して、該当するマルチキャストフローのリポートを受信したインタフェースに対して配信開始および配信停止の制御を行う。なお、1つのリポートに複数の配信フローの指定がなされていることもある。
なお、前記したように「配信中の状態」は、受信したリポートの結果を反映したものであって、現在時刻において実際にフローのパケット転送をしているか否かとは関係ない。
図4は、マルチキャスト配信システムのデータ配信処理の概要を示すフローチャートである。共有セグメント5内のルータ情報の取得方法と、各配信ルータ4へのフローの分配方法を説明する。
S11は、ルータ管理テーブルの作成処理である。配信ルータ4aがクエリを送信すると、共有セグメント5内の各装置(ホスト6a、配信ルータ4b、配信ルータ4c)はそれぞれクエリを受信する。
自ルータ(配信ルータ4a)は、自装置のIPアドレスを自装置内のルータ管理テーブル24aのルータアドレスに登録する。
他ルータ(配信ルータ4b、配信ルータ4c)は、受信したクエリの送信元アドレス(配信ルータ4aのアドレス)を自装置内のルータ管理テーブル24aのルータアドレスに登録する。
S12は、配信フィルタリストの作成処理である。ホスト6aは、S11のクエリへの応答としてのリポートを共有セグメント5に返信する。
各配信ルータ4は、それぞれ受信したリポートを、配信フィルタリスト21aに登録する(詳細は、図3で説明した)。
S13は、配信担当の計算処理である。
各配信ルータ4は、それぞれS11のルータ管理テーブル24aと、S12の配信制御テーブル22aとを参照して、配信制御テーブル22aを作成する(詳細は、表2で説明した)。これにより、フローごとに配信担当の配信ルータ4が一意に決定する(例えば、フローM1の配信担当は配信ルータ4bである)。
以上、S11〜S13の処理が、データ配信のための前処理である。
S21において、配信サーバ1aは、フローM1をマルチキャスト配信網2にデータ配信すると、そのデータは、各配信ルータ4によって受信される。そして、各配信ルータ4は、自装置が受信した配信データの配信担当か否かを配信制御テーブル22aから特定する。
S22において、フローM1の配信担当である配信ルータ4bは、ホスト6aに対してデータ配信するとともに、フローM1の配信担当でない他ルータ(配信ルータ4a、配信ルータ4c)は、S21で受信したデータを破棄する。これにより、配信データの二重配信を防止する。
一方、S23において、配信サーバ1aは、フローM2をマルチキャスト配信網2にデータ配信すると、そのフローの配信担当は配信ルータ4aであるので、S24で、配信ルータ4aがフローM2をホスト6aに対してデータ配信する。
図5は、ルータ管理テーブル24aの新規生成処理を示すフローチャートである。この処理は、図4のS11のルータ管理テーブルの作成処理のうちの新規に(初回の)作成する処理である。
以下、図5の各処理の動作主体を配信ルータ4aのルータ管理部24とし、他ルータを配信ルータ4b、配信ルータ4cとして説明するが、この図5の処理は、各配信ルータ4にて、それぞれ実行される。
S101として、自装置のIPアドレス(表1の「#a」)をルータ管理テーブル24a内の新規生成したレコードエントリに登録する(S101)。この自装置のIPアドレス「#a」は、S11で送信するクエリ(GQ)の送信元アドレス(Sアドレス)にも設定される。
S102として、未登録の他ルータ(配信ルータ4b、配信ルータ4c)からクエリ(GQ)を受信すると、そのクエリの送信元アドレス(Sアドレス)を抽出して(「#b」、「#c」)、それぞれルータ管理テーブル24aにエントリ登録する。
S103として、共有セグメント5に接続されている配信ルータ4のうちのルータ管理テーブル24aに未登録のルータが存在するか否かを判定する。S103でYesならS104へ進み、S103でNoならS106へ進む。
S104として、所定時間(想定されるGQ受信時間)だけ、未登録ルータからのGQを受信待機する。
S105として、S104の所定時間内に未登録ルータからのGQを受信したか否かを判定する。S105でYesならS102へ戻り、S105でNoならS106へ進む。
S106として、ルータ管理テーブル24a内の全エントリのルータアドレスをIPアドレスにより大小比較し、その結果得られた順位を各エントリのルータ順位フィールドに追加する。
S107として、S106で登録された順位にしたがって、ルータ管理テーブル24a内の全エントリをIPアドレスの大小順に並び変える。
なお、S103〜S105において、未登録ルータが存在するか否かの判定処理として、所定時間だけ待機する方式を例示したが、以下の(方式1)または(方式2)に置き換えてもよい。
(方式1)管理者は、あらかじめ配信ルータ4内の記憶手段に共有セグメント5内の全配信ルータ4のルータメンバリストを設定しておく。そして、ルータ管理部24は、ルータ管理テーブル24a内のエントリとして、ルータメンバリストのエントリが全て揃ったときに、未登録ルータが存在しない(S103,No)と判定する。
(方式2)各配信ルータ4にタイマとそのタイムアウト値を設定し、転送制御部20の起動時にそのタイマを起動する。配信ルータ4は、クエリを受信したときに、そのクエリが受信したことがないルータからのクエリであるときにはタイマリセットし、受信したことがあるルータからのクエリであるときにはタイマリセットせずにタイマの更新を継続する。そして、配信ルータ4は、タイマ値がタイムアウト値を超過したときに、未登録ルータが存在しない(S103,No)と判定する。
図6は、ルータ管理テーブル24aのエントリ追加およびエントリ削除処理を示すフローチャートである。この処理は、図4のS11のルータ管理テーブルの作成処理のうちの、図5の新規生成処理の後に、共有セグメント5内の配信ルータ4が、追加(増設など)および削除(故障や撤去など)された場合に実行される。
以下、図6の各処理の動作主体を配信ルータ4aのルータ管理部24とし、他ルータを配信ルータ4b、配信ルータ4cとして説明するが、この図6の処理は、各配信ルータ4にて、それぞれ実行される。
ルータ管理テーブル24aに登録されていないルータアドレスの配信ルータ4から、新たにGQを受信したときには(S111,Yes)、受信したGQのSアドレスをルータ管理テーブル24aにエントリ追加し(S112)、処理をS130へ進める。
ルータ管理テーブル24aに登録済みルータからのGQが、あらかじめ設定した所定時間を超過して未受信となったときには(S121,Yes)、ルータ管理テーブル24aから超過したエントリのSアドレスを削除し(S122)、処理をS130へ進める。
一方、ルータ管理テーブル24aに登録済みルータからのGQから所定時間内にGQを受信できたときには(S121,No)、処理をS111へ戻す。
S130として、S112またはS122で更新されたルータ管理テーブル24a内の全エントリを、IPアドレスの大小順に並び変える。
S131として、ルータ管理テーブル24a内のルータ順位フィールドに、S130で並び替えたIPアドレス順位を再登録(上書き)する。
S132として、配信制御テーブル22a内の全エントリを削除する(エントリ・フラッシュ処理)。そして、図6の処理で更新されたルータ管理テーブル24aを参照して、S13(配信担当の計算処理)を再計算することで、配信制御テーブル22aの全エントリを更新する。
図7は、配信データの転送処理を示すフローチャートである。この図7は、図4の配信ルータ4によるデータ配信処理(S22、S24)を詳細に説明するものである。以下、配信ルータ4aがフローM2を配信するS24の場合を例示する。
S201として、配信ルータ4aの受信インタフェース部31は、マルチキャスト配信網2から下り方向のパケットを受信する。
S202として、S201で受信したパケットがマルチキャストか否かを判定する。この判定は、例えば、パケットのアドレスがクラスD(224.0.0.0〜239.255.255.255)のアドレスの場合をマルチキャストとすることで実現される。マルチキャストでないパケットの場合(S202,No)、S201で受信したパケットを、通常のパケット(ユニキャスト、ブロードキャストなどの非マルチキャストパケット)として転送する(S203)。
S204として、フロー判定部23は、S201で受信したパケットのフロー特定情報(Source,Group)=(1,2)が、配信制御テーブル22a内に該当するエントリが存在するか否かを判定する。該当するエントリがないときには(S204,No)、S201で受信したパケットのフロー特定情報と、ルータ管理テーブル24aの自ルータ順位とから判定値C-flagや、その判定値C-flagを計算するための各パラメータ(H,M,F)を計算し、それらの計算結果を新規エントリとして、ルータ管理テーブル24aに登録する(S205)。
S206として、フロー判定部23は、配信制御テーブル22a内のフロー特定情報(1,2)に対応する判定値C-flagをもとに、判定式「判定値C-flag=1」により、自装置がS201で受信したパケットの配信担当か否かを判定する。S201で受信したパケットが自装置の配信担当でないときには(S206,No)、そのパケットを廃棄する(S209)。
S207として、配信フィルタ部21は、配信フィルタリスト21a内のフロー特定情報(1,2)に対応する配信中フラグを参照することにより、S201で受信したパケットが配信中(配信希望中という意味)か否かを判定する。配信中でないときには(S207,No)、そのパケットを廃棄する(S209)。
一方、配信中であるときには(S207,Yes)、配信フィルタ部21は、S201で受信したパケットを該当する(配信フィルタリスト21aのインタフェース列で特定される)ホスト側インタフェース14を介して、共有セグメント5へ転送する。そして、配信データの受信待ち状態へと戻すため、処理をS201へ戻す。
以上説明した本実施形態は、同じ共有セグメント5に接続される複数の配信ルータ4それぞれについて、フローごとに1台の配信担当を割り当てることで、フロー配信処理の負荷分散を実現する。よって、複数の配信ルータ4をクエリアとして複数同時に動作できるようすることで、ルータ処理負荷が平滑化され、負荷分散による配信効率の向上が期待できる。
さらに、同じフローを複数台の配信ルータ4で多重配信することを防止できるので、配信ルータ4の安定性を高めつつ、配信可能な最大マルチキャストストリーム数および総帯域量が増加する。
1(1a,1b) 配信サーバ
2 マルチキャスト配信網
3(3a〜3c) リンク
4(4a〜4c) 配信ルータ
5 共有セグメント
6(6a〜6c) ホスト
11 サーバ側インタフェース
12 サーバ側フレーム処理部
13 ホスト側フレーム処理部
14 ホスト側インタフェース
31 受信インタフェース部
32 フレーム受信部
33 フレーム送信部
34 送信インタフェース部
41 受信インタフェース部
42 フレーム受信部
43 フレーム送信部
44 送信インタフェース部
20 転送制御部
21 配信フィルタ部
21a 配信フィルタリスト
22 配信管理部
22a 配信制御テーブル(配信制御用データ)
23 フロー判定部
24 ルータ管理部
24a ルータ管理テーブル(ルータ管理用データ)

Claims (9)

  1. 配信サーバから配信ルータを介してホストにマルチキャストのフローを配信するマルチキャスト配信システムであって、
    複数台の前記配信ルータと1台以上の前記ホストとが共有セグメントに接続され、その共有セグメントに送信されるパケットは、前記共有セグメントに接続される各装置が受信可能であり、
    前記配信ルータは、転送制御部と記憶手段とを有しており、
    前記配信ルータの記憶手段には、前記共有セグメントに接続される複数台の前記配信ルータのうちの配信担当となる1台の前記配信ルータを、配信対象のフローごとに格納する配信制御用データが記憶されており、
    前記共有セグメントに接続される各前記配信ルータの転送制御部は、
    前記配信サーバからフローの配信データを受信すると、受信した配信データの属するフローの特定情報を検索キーとして前記配信制御用データを検索することで、検索したフローの配信担当となる前記配信ルータを取得し、
    取得した前記配信ルータが自装置であるときには、前記共有セグメントを介して受信したフローの配信データを前記ホストに転送し、
    取得した前記配信ルータが他装置であるときには、受信したフローの配信データを廃棄することを特徴とする
    マルチキャスト配信システム。
  2. 前記共有セグメントに接続される各前記配信ルータの転送制御部は、
    前記共有セグメントに接続される前記配信ルータのリストを格納するルータ管理用データを前記配信ルータの記憶手段に格納し、
    自装置のルータアドレスを前記ルータ管理用データに登録するとともに、他装置の前記配信ルータから受信したパケットから他装置のルータアドレスを取得して、前記ルータ管理用データに登録し、
    前記ルータ管理用データに登録されるルータアドレスを、前記配信制御用データに登録される配信担当の前記配信ルータの特定情報とすることを特徴とする
    請求項1に記載のマルチキャスト配信システム。
  3. 前記共有セグメントに接続される各前記配信ルータの転送制御部は、
    受信した配信データの属するフローの特定情報と、前記ルータ管理用データに登録されるルータアドレスの数と、を引数とする所定関数を計算し、その所定関数の計算結果から一意に決定される前記配信ルータを、所定関数の計算に用いたフローの特定情報に対する配信担当として決定し、決定した配信担当の前記配信ルータとフローの特定情報とを対応づけて前記配信制御用データに格納することを特徴とする
    請求項2に記載のマルチキャスト配信システム。
  4. 前記共有セグメントに接続される各前記配信ルータの転送制御部は、
    前記ホストから前記共有セグメントを介して配信対象のフローの特定情報と、そのフローへの配信可否を示す配信中状態情報とをリポートとして受信すると、そのフローの特定情報と前記配信中状態情報とを対応づけて前記配信ルータの記憶手段に格納し、
    前記共有セグメントを介して前記ホストに転送するフローの配信データが、前記配信中状態情報において配信不可であるときには、受信したフローの配信データを廃棄することを特徴とする
    請求項1ないし請求項3のいずれか1項に記載のマルチキャスト配信システム。
  5. 配信サーバから配信ルータを介してホストにマルチキャストのフローを配信するマルチキャスト配信システムに用いられる配信ルータであって、
    複数台の前記配信ルータと1台以上の前記ホストとが共有セグメントに接続され、その共有セグメントに送信されるパケットは、前記共有セグメントに接続される各装置が受信可能であり、
    前記配信ルータは、転送制御部と記憶手段とを有しており、
    前記配信ルータの記憶手段には、前記共有セグメントに接続される複数台の前記配信ルータのうちの配信担当となる1台の前記配信ルータを、配信対象のフローごとに格納する配信制御用データが記憶されており、
    前記共有セグメントに接続される各前記配信ルータの転送制御部は、
    前記配信サーバからフローの配信データを受信すると、受信した配信データの属するフローの特定情報を検索キーとして前記配信制御用データを検索することで、検索したフローの配信担当となる前記配信ルータを取得し、
    取得した前記配信ルータが自装置であるときには、前記共有セグメントを介して受信したフローの配信データを前記ホストに転送し、
    取得した前記配信ルータが他装置であるときには、受信したフローの配信データを廃棄することを特徴とする
    配信ルータ。
  6. 前記共有セグメントに接続される各前記配信ルータの転送制御部は、
    前記共有セグメントに接続される前記配信ルータのリストを格納するルータ管理用データを前記配信ルータの記憶手段に格納し、
    自装置のルータアドレスを前記ルータ管理用データに登録するとともに、他装置の前記配信ルータから受信したパケットから他装置のルータアドレスを取得して、前記ルータ管理用データに登録し、
    前記ルータ管理用データに登録されるルータアドレスを、前記配信制御用データに登録される配信担当の前記配信ルータの特定情報とすることを特徴とする
    請求項5に記載の配信ルータ。
  7. 前記共有セグメントに接続される各前記配信ルータの転送制御部は、
    受信した配信データの属するフローの特定情報と、前記ルータ管理用データに登録されるルータアドレスの数と、を引数とする所定関数を計算し、その所定関数の計算結果から一意に決定される前記配信ルータを、所定関数の計算に用いたフローの特定情報に対する配信担当として決定し、決定した配信担当の前記配信ルータとフローの特定情報とを対応づけて前記配信制御用データに格納することを特徴とする
    請求項6に記載の配信ルータ。
  8. 前記共有セグメントに接続される各前記配信ルータの転送制御部は、
    前記ホストから前記共有セグメントを介して配信対象のフローの特定情報と、そのフローへの配信可否を示す配信中状態情報とをリポートとして受信すると、そのフローの特定情報と前記配信中状態情報とを対応づけて前記配信ルータの記憶手段に格納し、
    前記共有セグメントを介して前記ホストに転送するフローの配信データが、前記配信中状態情報において配信不可であるときには、受信したフローの配信データを廃棄することを特徴とする
    請求項5ないし請求項7のいずれか1項に記載の配信ルータ。
  9. 配信サーバから配信ルータを介してホストにマルチキャストのフローを配信するマルチキャスト配信システムによるマルチキャスト配信システム方法であって、
    複数台の前記配信ルータと1台以上の前記ホストとが共有セグメントに接続され、その共有セグメントに送信されるパケットは、前記共有セグメントに接続される各装置が受信可能であり、
    前記配信ルータは、転送制御部と記憶手段とを有しており、
    前記配信ルータの記憶手段には、前記共有セグメントに接続される複数台の前記配信ルータのうちの配信担当となる1台の前記配信ルータを、配信対象のフローごとに格納する配信制御用データが記憶されており、
    前記共有セグメントに接続される各前記配信ルータの転送制御部は、
    前記配信サーバからフローの配信データを受信すると、受信した配信データの属するフローの特定情報を検索キーとして前記配信制御用データを検索することで、検索したフローの配信担当となる前記配信ルータを取得し、
    取得した前記配信ルータが自装置であるときには、前記共有セグメントを介して受信したフローの配信データを前記ホストに転送し、
    取得した前記配信ルータが他装置であるときには、受信したフローの配信データを廃棄することを特徴とする
    マルチキャスト配信システム方法。
JP2010131106A 2010-06-08 2010-06-08 マルチキャスト配信システム、配信ルータ、および、マルチキャスト配信方法 Expired - Fee Related JP5553425B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010131106A JP5553425B2 (ja) 2010-06-08 2010-06-08 マルチキャスト配信システム、配信ルータ、および、マルチキャスト配信方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010131106A JP5553425B2 (ja) 2010-06-08 2010-06-08 マルチキャスト配信システム、配信ルータ、および、マルチキャスト配信方法

Publications (2)

Publication Number Publication Date
JP2011259147A true JP2011259147A (ja) 2011-12-22
JP5553425B2 JP5553425B2 (ja) 2014-07-16

Family

ID=45474851

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010131106A Expired - Fee Related JP5553425B2 (ja) 2010-06-08 2010-06-08 マルチキャスト配信システム、配信ルータ、および、マルチキャスト配信方法

Country Status (1)

Country Link
JP (1) JP5553425B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012253549A (ja) * 2011-06-02 2012-12-20 Nippon Telegr & Teleph Corp <Ntt> マルチキャスト配信システム、帯域管理サーバ、および、マルチキャスト配信方法
JP2021034913A (ja) * 2019-08-26 2021-03-01 沖電気工業株式会社 処理装置、処理プログラムおよび処理方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06224911A (ja) * 1993-01-27 1994-08-12 Fuji Xerox Co Ltd ネットワークシステム
JP2003517221A (ja) * 1998-11-20 2003-05-20 ネットワーク アルケミー インク. ネットワークにおける負荷分配のための方法および装置
JP2006101471A (ja) * 2004-09-06 2006-04-13 Hitachi Communication Technologies Ltd マルチキャスト冗長経路ルータ、マルチキャスト冗長化方式
JPWO2005081473A1 (ja) * 2004-02-25 2008-01-17 日本電気株式会社 通信処理システム、パケット処理負荷分散装置及びそれに用いるパケット処理負荷分散方法
JPWO2008004569A1 (ja) * 2006-07-06 2009-12-03 日本電気株式会社 クラスタシステム、サーバクラスタ、クラスタメンバ、クラスタメンバの冗長化方法、負荷分散方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06224911A (ja) * 1993-01-27 1994-08-12 Fuji Xerox Co Ltd ネットワークシステム
JP2003517221A (ja) * 1998-11-20 2003-05-20 ネットワーク アルケミー インク. ネットワークにおける負荷分配のための方法および装置
JPWO2005081473A1 (ja) * 2004-02-25 2008-01-17 日本電気株式会社 通信処理システム、パケット処理負荷分散装置及びそれに用いるパケット処理負荷分散方法
JP2006101471A (ja) * 2004-09-06 2006-04-13 Hitachi Communication Technologies Ltd マルチキャスト冗長経路ルータ、マルチキャスト冗長化方式
JPWO2008004569A1 (ja) * 2006-07-06 2009-12-03 日本電気株式会社 クラスタシステム、サーバクラスタ、クラスタメンバ、クラスタメンバの冗長化方法、負荷分散方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012253549A (ja) * 2011-06-02 2012-12-20 Nippon Telegr & Teleph Corp <Ntt> マルチキャスト配信システム、帯域管理サーバ、および、マルチキャスト配信方法
JP2021034913A (ja) * 2019-08-26 2021-03-01 沖電気工業株式会社 処理装置、処理プログラムおよび処理方法
JP7331554B2 (ja) 2019-08-26 2023-08-23 沖電気工業株式会社 処理装置、処理プログラムおよび処理方法

Also Published As

Publication number Publication date
JP5553425B2 (ja) 2014-07-16

Similar Documents

Publication Publication Date Title
US11206148B2 (en) Bit indexed explicit replication
US11240053B2 (en) Overlay signaling for bit indexed explicit replication
JP4464766B2 (ja) マルチキャスト配信制御装置
US7627690B2 (en) Data generating device
US10218524B2 (en) Bit indexed explicit replication for layer 2 networking
US7936752B2 (en) Source specific multicast group to source mapping
US7443851B2 (en) Device and system for multicast communication
US20090161670A1 (en) Fast multicast convergence at secondary designated router or designated forwarder
JP2013543687A (ja) マルチキャストブランチ、プロトコルインデペンデントマルチキャストルータおよびレイヤ2交換機のプルーニング方法
US20150023347A1 (en) Management of a multicast system in a software-defined network
US11825534B2 (en) Multicast replication in 5G networks
WO2008138248A1 (fr) Procédé, carte d&#39;interface et routeur destinés à transmettre un message
JP5553425B2 (ja) マルチキャスト配信システム、配信ルータ、および、マルチキャスト配信方法
JP5572052B2 (ja) マルチキャスト配信システム、配信ルータ、および、マルチキャスト配信方法
JP3759527B2 (ja) マルチキャストデータ通信システム及び方法、クライアント側ゲートウェイ、サーバ側ゲートウェイ、コンピュータプログラム、ならびに、コンピュータプログラムを記録した記録媒体
JP5486547B2 (ja) マルチキャスト配信システム、配信ルータ、および、マルチキャスト配信方法
US20100135298A1 (en) Method and system for providing source specific multicast service on ethernet network
WO2014059864A1 (en) Network switching apparatus
WO2021171364A1 (ja) 通信装置、受信側通信装置、通信方法、及びプログラム
JP5713499B2 (ja) 多地点配信方法及び多地点配信システム
JP2017151618A (ja) 情報配信システム、情報配信装置、情報配信プログラム、及び情報配信方法
CN102271081B (zh) 一种发送数据报文的方法和装置
JP5758858B2 (ja) マルチキャスト配信制御方法、および、配信ルータ
JP2008048449A (ja) パケット中継装置
JP2014042219A (ja) 配信制御システム及び方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120828

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20130201

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130531

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130618

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130802

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140311

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20140415

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140424

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: 20140520

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20140522

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140524

R150 Certificate of patent or registration of utility model

Ref document number: 5553425

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees