(57)【要約】【課題】複数の送信元からマルチキャストデータが入力される場合にも出力ポートを正しく短時間で決定できる中継装置を提供する。【解決手段】この中継装置は、第２送信元アドレス及び第２宛先アドレスとそれらの合計のアドレス長より短い長さの第１値とを関連付けて記憶し、複数の第２ポートの中の１つのポートを示すポート情報と第１値とを関連付けて記憶する。この中継装置は、第１ポートに入力されたマルチキャストデータの第１送信元アドレス及び第１宛先アドレスが第２送信元アドレス及び第２宛先アドレスに対応する場合、それらに対応する第１値を読み出し、第１値を用いてマルチキャストデータを書き換え、書き換え後のデータに含まれる第１値に対応するポート情報を読み出し、ポート情報が示すポートを出力ポートに決定するとともに、書き換え後のデータにおける第１値を用いて書き換えられた部分を書き換え前に戻し出力ポートから出力する。【選択図】図２
2018011210.tif 000002
【特許請求の範囲】
【請求項１】
第１送信元アドレス及び第１宛先アドレスを含むマルチキャストデータを入力する第１ポートと、
複数の第２ポートと、
前記第１ポートに入力された前記マルチキャストデータに含まれるデータを出力する出力ポートを、前記複数の第２ポートの間で切り替える切替制御部と、
第２送信元アドレス及び第２宛先アドレスと、前記第２送信元アドレス及び前記第２宛先アドレスの合計のアドレス長より短い長さの値である第１値と、を関連付けて記憶し、前記複数の第２ポートの中の１つのポートを示すポート情報と、前記第１値と、を関連付けて記憶する記憶部と、
前記第１ポートに入力された前記マルチキャストデータに含まれる前記第１送信元アドレス及び前記第１宛先アドレスが、前記第２送信元アドレス及び前記第２宛先アドレスに対応する場合、前記第２送信元アドレス及び前記第２宛先アドレスに関連付けられた前記第１値を前記記憶部から読み出し、前記第１値を用いて前記マルチキャストデータを書き換え、書き換え後のデータを前記切替制御部に与える制御部と、
を有し、
前記切替制御部は、前記書き換え後のデータに含まれる前記第１値に関連付けられた前記ポート情報を前記記憶部から読み出し、読み出された前記ポート情報が示すポートを前記出力ポートに決定するとともに、前記書き換え後のデータにおける前記第１値を用いて書き換えられた部分を書き換え前に戻し、戻したデータを前記出力ポートから出力する
ことを特徴とする中継装置。
【請求項２】
前記制御部は、
前記第２送信元アドレスとしての前記マルチキャストデータの送信元を示すアドレス及び前記第２宛先アドレスとしての前記マルチキャストデータの宛先を示すアドレスを含む、マルチキャスト送信を要求するマルチキャスト送信要求メッセージが、前記複数の第２ポートの中の１つである要求ポートに入力された場合、
前記第２送信元アドレス及び前記第２宛先アドレスと前記第１値とを関連付けて前記記憶部に記憶させ、且つ、前記１つのポートとしての前記要求ポートを示す前記ポート情報と前記第１値とを関連付けて前記記憶部に記憶させる
ことを特徴とする請求項１に記載の中継装置。
【請求項３】
前記第１値は、前記複数の第２ポートのうち少なくとも１つのポートにより構成される仮想ネットワークを識別する識別子のうち未使用の値である
ことを特徴とする請求項１又は２に記載の中継装置。
【請求項４】
前記切替制御部は、前記書き換えられた部分を削除することで前記戻したデータを生成する
ことを特徴とする請求項３に記載の中継装置。
【請求項５】
前記マルチキャストデータは、ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）マルチキャストデータであり、
前記第１値は、前記ＩＰマルチキャストデータに含まれるＩＰヘッダのＤＳＣＰ（ＤｉｆｆＳｅｒｖ  Ｃｏｄｅ  Ｐｏｉｎｔ）領域の値のうちの未使用の値である
ことを特徴とする請求項１又は２に記載の中継装置。
【請求項６】
前記制御部は、前記第１値を用いて書き換える前の値である第２値を、前記第１値に関連付けて前記記憶部に記憶させ、
前記切替制御部は、前記書き換えられた部分を前記第１値から前記第２値に戻すことで、前記戻したデータを生成する
ことを特徴とする請求項５に記載の中継装置。
【請求項７】
第１送信元アドレス及び第１宛先アドレスを含むマルチキャストデータを入力する第１ポートと、複数の第２ポートと、記憶部と、を有する中継装置における中継方法であって、
第２送信元アドレス及び第２宛先アドレスと、前記第２送信元アドレス及び前記第２宛先アドレスの合計のアドレス長より短い長さの値である第１値と、を関連付けて前記記憶部に記憶させるステップと、
前記複数の第２ポートの中の１つのポートを示すポート情報と、前記第１値と、を関連付けて前記記憶部に記憶させるステップと、
前記第１ポートに前記マルチキャストデータが入力され、且つ、前記マルチキャストデータに含まれる前記第１送信元アドレス及び前記第１宛先アドレスが、前記第２送信元アドレス及び前記第２宛先アドレスに対応する場合、前記第２送信元アドレス及び前記第２宛先アドレスに関連付けられた前記第１値を前記記憶部から読み出し、前記第１値を用いて前記マルチキャストデータを書き換え、書き換え後のデータとするステップと、
前記書き換え後のデータに含まれる前記第１値に関連付けられた前記ポート情報を前記記憶部から読み出し、読み出された前記ポート情報が示すポートを出力ポートに決定するとともに、前記書き換え後のデータにおける前記第１値を用いて書き換えられた部分を書き換え前に戻し、戻したデータを前記出力ポートから出力するステップと、
を有する
ことを特徴とする中継方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データをマルチキャストで中継する中継装置及び中継方法に関する。
【背景技術】
【０００２】
地上デジタル放送コンテンツ等をＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）放送で配信するシステムには、ＩＰマルチキャスト技術を用いることができる。ＩＰマルチキャスト技術を用いたＩＰ放送は、ＩＰマルチキャスト放送と称される。ＩＰマルチキャスト放送では、ブロードバンドルータ等の中継装置が配信事業者の配信サーバからマルチキャストデータを受信し、後段のテレビ装置又はＳＴＢ（Ｓｅｔ  Ｔｏｐ  Ｂｏｘ）等の端末装置に転送（中継）することで、ユーザがこのマルチキャストデータが示すコンテンツを視聴することができる。
【０００３】
この中継装置では、配信事業者の配信サーバから送信されたマルチキャストデータを受信し、複数あるポートに接続された複数の端末装置にそのマルチキャストデータを転送することができる。また、この中継装置では、マルチキャストスヌーピング機能を用いることで、受信されたマルチキャストデータを、複数あるポートのうちの受信許可がなされた端末装置が接続されたポートに出力することができる。
【０００４】
例えば、特許文献１は、ＩＰネットワークシステムにおけるマルチキャストデータを、受信許可がなされた特定の端末装置にのみ配信する技術を開示している。この技術では、レイヤ２スイッチ（Ｌ２ＳＷ）が、マルチキャストデータの宛先グループアドレスに対応するＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）アドレスに基づき、受信許可された端末に対応するポートを判定し、そのポートからデータを出力している。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００８−６０６３１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１に記載の技術をはじめとする従来技術では、レイヤ２スイッチに接続された複数の端末装置において、互いに異なる複数の放送サービス事業者（配信サービス事業者）の配信サーバからマルチキャストデータを受信する場合、マルチキャストデータの宛先グループアドレスで特定されるマルチキャストＭＡＣアドレスが重複し、マルチキャストデータが正しく端末装置に転送できないことがある。
【０００７】
そのため、マルチキャストデータの転送条件に、放送サービス事業者が使用する配信サーバのＩＰアドレス（送信元ＩＰアドレス）が一致する条件を加えることが考えられるが、出力先のポートを決定するために時間を要する。特に、ＩＰｖ６の場合にはＩＰアドレスの長さが１２８ビットと長く、宛先グループアドレスとしての宛先ＩＰアドレス及び送信元ＩＰアドレスの双方を検索キーとすると、検索キーの長さが２５６ビットとなるため、この検索処理を伴う出力先のポートの決定処理にはより長い時間を要する。また、検索時間を短縮するためには、高速に検索可能な大容量のメモリを搭載することも考えられるが、そのようなメモリを搭載することでコストが嵩む。
【０００８】
本発明は、上述のごとき実状に鑑みてなされたものであり、複数の送信元からマルチキャストデータが入力される場合にも出力先のポートを正しく決定でき、且つ、その決定に要する時間を短縮することが可能な中継装置及び中継方法を提供することを、その目的とする。
【課題を解決するための手段】
【０００９】
上述の課題を解決するために、本発明の一形態に係る中継装置は、第１送信元アドレス及び第１宛先アドレスを含むマルチキャストデータを入力する第１ポートと、複数の第２ポートと、前記第１ポートに入力された前記マルチキャストデータに含まれるデータを出力する出力ポートを、前記複数の第２ポートの間で切り替える切替制御部と、第２送信元アドレス及び第２宛先アドレスと、前記第２送信元アドレス及び前記第２宛先アドレスの合計のアドレス長より短い長さの値である第１値と、を関連付けて記憶し、前記複数の第２ポートの中の１つのポートを示すポート情報と、前記第１値と、を関連付けて記憶する記憶部と、前記第１ポートに入力された前記マルチキャストデータに含まれる前記第１送信元アドレス及び前記第１宛先アドレスが、前記第２送信元アドレス及び前記第２宛先アドレスに対応する場合、前記第２送信元アドレス及び前記第２宛先アドレスに関連付けられた前記第１値を前記記憶部から読み出し、前記第１値を用いて前記マルチキャストデータを書き換え、書き換え後のデータを前記切替制御部に与える制御部と、を有し、前記切替制御部は、前記書き換え後のデータに含まれる前記第１値に関連付けられた前記ポート情報を前記記憶部から読み出し、読み出された前記ポート情報が示すポートを前記出力ポートに決定するとともに、前記書き換え後のデータにおける前記第１値を用いて書き換えられた部分を書き換え前に戻し、戻したデータを前記出力ポートから出力することを特徴とする。
【００１０】
本発明の一形態に係る中継方法は、第１送信元アドレス及び第１宛先アドレスを含むマルチキャストデータを入力する第１ポートと、複数の第２ポートと、記憶部と、を有する中継装置における中継方法であって、第２送信元アドレス及び第２宛先アドレスと、前記第２送信元アドレス及び前記第２宛先アドレスの合計のアドレス長より短い長さの値である第１値と、を関連付けて前記記憶部に記憶させるステップと、前記複数の第２ポートの中の１つのポートを示すポート情報と、前記第１値と、を関連付けて前記記憶部に記憶させるステップと、前記第１ポートに前記マルチキャストデータが入力され、且つ、前記マルチキャストデータに含まれる前記第１送信元アドレス及び前記第１宛先アドレスが、前記第２送信元アドレス及び前記第２宛先アドレスに対応する場合、前記第２送信元アドレス及び前記第２宛先アドレスに関連付けられた前記第１値を前記記憶部から読み出し、前記第１値を用いて前記マルチキャストデータを書き換え、書き換え後のデータとするステップと、前記書き換え後のデータに含まれる前記第１値に関連付けられた前記ポート情報を前記記憶部から読み出し、読み出された前記ポート情報が示すポートを出力ポートに決定するとともに、前記書き換え後のデータにおける前記第１値を用いて書き換えられた部分を書き換え前に戻し、戻したデータを前記出力ポートから出力するステップと、を有することを特徴とする。
【発明の効果】
【００１１】
本発明によれば、複数の送信元からマルチキャストデータが入力される場合にも出力先のポートを正しく決定でき、且つ、その決定に要する時間を短縮することが可能になる。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施の形態１に係る中継装置を組み込むことが可能なマルチキャスト配信システムの一構成例を示す概略図である。
【図２】実施の形態１に係る中継装置の一例としてのブロードバンドルータの一構成例を示すブロック図である。
【図３】図２に示されるブロードバンドルータで使用されるＭＡＣテーブルの一例を示す図である。
【図４】図２に示されるブロードバンドルータで使用される転送時参照テーブルの一例を示す図である。
【図５】図２に示されるブロードバンドルータで使用されるＶＬＡＮ（Ｖｉｒｔｕａｌ  ＬＡＮ［Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ］）テーブルの一例を示す図である。
【図６】図２に示されるブロードバンドルータにおける中継方法の一例を示すフロー図である。
【図７】実施の形態２に係る中継装置の一例としてのブロードバンドルータの一構成例を示すブロック図である。
【図８】図７に示されるブロードバンドルータで使用される宛先ポートテーブルの一例を示す図である。
【図９】実施の形態１，２に係る中継装置の変形例の構成の一部を示すハードウェア構成図である。
【図１０】実施の形態１，２に係る中継装置の他の変形例の構成の一部を示すハードウェア構成図である。
【発明を実施するための形態】
【００１３】
以下に、本発明の実施の形態について、図面を参照しながら説明する。実施の形態では、中継装置及びその装置によりマルチキャストで送信されたデータを中継（転送）する中継方法について説明する。
【００１４】
《１》実施の形態１
実施の形態１に係る中継装置及びその装置による中継方法について、図１から図６を参照しながら説明する。図１は、実施の形態１に係る中継装置を組み込むことが可能なマルチキャスト配信システムの一構成例を示す概略図である。図１では、マルチキャスト配信システムの例として、ＩＰマルチキャストデータを送信することでＩＰマルチキャスト放送を行うＩＰマルチキャスト放送システムを挙げている。以下、実施の形態１に係る中継装置が、ＩＰマルチキャスト放送を端末装置に中継する装置である例を挙げるが、これに限ったものではない。
【００１５】
図１に示されるＩＰマルチキャスト放送システムは、放送サービス事業者ＳＡが保有する映像配信サーバ４及び放送サービス事業者ＳＢが保有する映像配信サーバ５を有し、それらが、インターネット等のＩＰネットワークＮを介して中継装置の一例であるブロードバンドルータ１に接続されている。
【００１６】
ブロードバンドルータ１は、一般家庭などのユーザの居所（ユーザ宅）に設置されており、ブロードバンドルータ１の配下には、ＳＴＢ２を経由して、デジタルテレビ受信装置３が接続されている。なお、図１に示されるＩＰマルチキャスト放送システムでは、２つの映像配信サーバ４，５がＩＰネットワークＮに接続されているが、その数は問わない。また、このＩＰマルチキャスト放送システムでは、ＳＴＢ２を備えず、ブロードバンドルータ１の配下にデジタルテレビ受信装置３を接続するような形態などを採用することもできる。
【００１７】
ユーザは、例えば放送サービス事業者ＳＡによって提供される映像コンテンツのＩＰマルチキャスト放送を視聴したい場合、ＳＴＢ２又はデジタルテレビ受信装置３を操作し、映像配信サーバ４に対するマルチキャスト送信要求メッセージを送信させる。なお、映像コンテンツのデータは、通常、映像データと音声データとを含む。また、映像コンテンツの配信について説明するが、楽曲等の音声コンテンツの配信についても同様である。
【００１８】
ブロードバンドルータ１は、ＳＴＢ２から出力されたマルチキャスト送信要求メッセージを入力し、その入力を契機として、そのマルチキャストデータをＳＴＢ２側へ転送する許可を行う設定（マルチキャストデータ転送許可設定）を行い、映像配信サーバ４にそのマルチキャスト送信要求メッセージを転送する。このマルチキャスト送信要求メッセージを受信した映像配信サーバ４は、ブロードバンドルータ１を含む配信先にマルチキャストデータの配信を開始する。映像配信サーバ４は、複数の映像コンテンツを同時に配信可能とすることもでき、その場合、配信を希望する映像コンテンツ（配信を希望する映像チャンネル）毎に、送信元ＩＰアドレスを異ならせておけばよい。なお、放送サービス事業者ＳＡによって提供されるＩＰマルチキャスト放送について説明したが、放送サービス事業者ＳＢによって映像配信サーバ５から提供されるＩＰマルチキャスト放送についても同様である。
【００１９】
次に、実施の形態１に係る中継装置の一例としてのブロードバンドルータ１の構成及び動作について、図２から図５を併せて参照しながら説明する。図２は、ブロードバンドルータ１の一構成例を示すブロック図である。図３から図５は、図２に示されるブロードバンドルータ１で使用されるテーブルの例であり、図３はＭＡＣテーブルの一例を示し、図４は転送時参照テーブルの一例を示し、図５はＶＬＡＮテーブルの一例を示している。図２及び後述する図７において、太線の矢印は、主信号となるマルチキャストデータの流れを示し、細線の矢印は、制御のための信号の流れを示している。
【００２０】
図２に示されるように、ブロードバンドルータ１は、ＳｏＣ（Ｓｙｓｔｅｍ−ｏｎ−ａ−ｃｈｉｐ）１０及びレイヤ２スイッチ（Ｌ２ＳＷ）２０を有することができる。ＳｏＣ１０は、ＩＰネットワークと接続するポートであるＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）ポート１１と、レイヤ２スイッチ２０と接続するポートであるＬ２ＳＷポート１３と、マルチキャストプロキシ制御部１４と、ＶＬＡＮ制御部１５と、を有することができる。マルチキャストプロキシ制御部１４及びＶＬＡＮ制御部１５は、ブロードバンドルータ１の全体を制御する制御部１２に含むことができる。
【００２１】
また、レイヤ２スイッチ２０は、ＳＴＢ２等の端末装置に接続するポートである第１〜第４ＬＡＮポート２１−１〜２１−４と、スイッチ制御部２２と、ＳｏＣ１０のＬ２ＳＷポート１３と接続するポートであるＳｏＣポート２３と、ＭＡＣテーブル（ＭＡＣアドレステーブル）２４及びＶＬＡＮテーブル２５を記憶する記憶部（図示せず）と、を有する。ここで、ＬＡＮポート２１−１〜２１−４は、マルチキャストデータに含まれるデータをＳＴＢ２等の端末装置側に出力する出力ポートとなり得る複数の第２ポートの一例であり、ＬＡＮポートの数はこれに限ったものではない。なお、ＭＡＣテーブル２４を記憶する記憶部とＶＬＡＮテーブル２５を記憶する記憶部とは別個に設けることもできる。
【００２２】
ＷＡＮポート１１は、マルチキャストデータを入力する第１ポートの一例である。このマルチキャストデータは、マルチキャスト送信される対象のデータ（この例では、映像コンテンツデータ）に送信元アドレス及び宛先アドレス等の付加データが付加されたデータとすることができる。付加データは主に、マルチキャストデータのヘッダ領域に付加される。以下、ＷＡＮポート１１で例示する第１ポートに入力されるマルチキャストデータに含まれる（記述された）送信元アドレスを第１送信元アドレスとも称し、同じくそのマルチキャストデータに記述された宛先アドレスを第１宛先アドレスとも称する。
【００２３】
マルチキャストプロキシ制御部１４は、ＩＧＭＰ（Ｉｎｔｅｒｎｅｔ  Ｇｒｏｕｐ  Ｍａｎａｇｅｍｅｎｔ  Ｐｒｏｔｏｃｏｌ）及びＭＬＤ（Ｍｕｌｔｉｃａｓｔ  Ｌｉｓｔｅｎｅｒ  Ｄｉｓｃｏｖｅｒｙ）の少なくとも一方に従い、ＷＡＮポート１１から入力されるマルチキャストデータのＶＬＡＮ制御部１５への転送、並びに、Ｌ２ＳＷポート１３からＶＬＡＮ制御部１５経由で入力されるマルチキャスト送信要求メッセージ等のデータのＷＡＮポート１１への転送を行う。マルチキャストプロキシ制御部１４は、ブロードバンドルータ１をＩＰｖ４に対応させる場合には、ＩＧＭＰを実装したインターネットプロトコルに従った制御を行えばよく、ＩＰｖ６に対応させる場合には、ＭＬＤを実装したＩＣＭＰｖ６（Ｉｎｔｅｒｎｅｔ  Ｃｏｎｔｒｏｌ  Ｍｅｓｓａｇｅ  Ｐｒｏｔｏｃｏｌ  ｆｏｒ  ＩＰｖ６）に従った制御を行えばよい。また、マルチキャストプロキシ制御部１４は、マルチキャストデータを、マルチキャストフレームとしてＶＬＡＮ制御部１５に転送することができる。
【００２４】
また、ブロードバンドルータ１では、ＬＡＮポート２１−１〜２１−４で例示する複数の第２ポートのうち少なくとも１つのポートを含むように、ＶＬＡＮ等の仮想ネットワークを構成することができるようになっている。さらに、ＶＬＡＮ制御部１５は、マルチキャストプロキシ制御部１４から出力されたマルチキャストデータ（例えば、ＷＡＮポート１１に入力されたマルチキャストデータに、第１宛先アドレスに対応する宛先ＭＡＣアドレスが付されるなどの変換（フレーム化）がなされたデータ。以下、同様。）に対し、そのマルチキャストデータに対応するＶＬＡＮ−ＩＤを付与し、Ｌ２ＳＷポート１３を介してレイヤ２スイッチ２０に、ＶＬＡＮ−ＩＤ付与後のデータを出力する。これにより、新たにＶＬＡＮ−ＩＤが付与されたデータについても、転送先となるポートが属するＶＬＡＮグループを、レイヤ２スイッチ２０側で判定することができる。なお、付与されるＶＬＡＮ−ＩＤに関し、マルチキャストプロキシ制御部１４は、ＶＬＡＮ−ＩＤを後述する転送条件に関連付けて記憶させておき、転送を許可するマルチキャストデータについてそれに対応するＶＬＡＮ−ＩＤをＶＬＡＮ制御部１５に伝えるように構成しておけばよい。
【００２５】
図２に示されるブロードバンドルータ１は、ＳｏＣ１０とレイヤ２スイッチ２０とを接続した構成であるため、図２に示されるブロードバンドルータ１では次のようなＶＬＡＮを構成することができる。１つのＶＬＡＮグループは、ＳｏＣポート２３とＬＡＮポート２１−１〜２１−４のうちの少なくとも１つのポート（例えば、ＬＡＮポート２１−１，２１−２）とにより構成することができ、他のＶＡＮグループも、ＳｏＣ２３とＬＡＮポート２１−１〜２１−４のうちの少なくとも１つのポート（例えば、ＬＡＮポート２１−３，２１−４）とにより構成することができる。ＶＬＡＮの数は１以上であればよい。また、ＶＬＡＮグループは、上述したＶＬＡＮ−ＩＤにより他のＶＬＡＮグループと識別させることができ、ＶＬＡＮ−ＩＤが互いに異なる２つのＶＬＡＮグループにおいて同じＬＡＮポートを含むように構成することもできる。ここでは、ＶＬＡＮとして、タグＶＬＡＮを採用した例を挙げるが、これに限ったものではない。
【００２６】
レイヤ２スイッチ２０のスイッチ制御部２２は、ＷＡＮポート１１に入力されたマルチキャストデータに含まれるデータ（この例ではコンテンツデータを含む）を出力する出力ポートを、複数の第２ポートの間（この例ではＬＡＮポート２１−１〜２１−４の間）で切り替える切替制御部の一例である。そのため、スイッチ制御部２２は、ＬＡＮポート２１−１〜２１−４及びＳｏＣポート２３に接続されている。また、ＭＡＣテーブル２４及びＶＬＡＮテーブル２５は、スイッチ制御部２２からの情報の読み書きが可能となっている。また、ＭＡＣテーブル２４はマルチキャストプロキシ制御部１４からの情報の読み出しが可能となっており、ＶＬＡＮテーブル２５はマルチキャストプロキシ制御部１４からの情報の書き込みが可能になっている。
【００２７】
そして、スイッチ制御部２２は、ＷＡＮポート１１に入力され、ＳｏＣ１０側からＳｏＣポート２３を経由して入力されたマルチキャストデータを出力させる出力ポートを、ＶＬＡＮテーブル２５を参照してＬＡＮポート２１−１〜２１−４の中から選択し、そのマルチキャストデータに係る転送対象のデータ（この例ではコンテンツデータを含む）を選択された出力ポートから出力する。具体的な選択の方法については後述する。
【００２８】
このような構成の実施の形態１に係るブロードバンドルータ１を、図１に示されるブロードバンドルータ１として組み込んだシステムにおいて、ブロードバンドルータ１がマルチキャストデータを転送する動作について説明する。ここでは、マルチキャストデータを送信するサーバとして、図１に示される映像配信サーバ４を例に挙げる。
【００２９】
まず、レイヤ２スイッチ２０は、ＳＴＢ２から出力されたマルチキャスト送信要求メッセージを、ＬＡＮポート２１−１〜２１−４のうちのＳＴＢ２に接続されたポートから受信する。図２において、このマルチキャスト送信要求メッセージは、映像コンテンツの視聴のためにマルチキャスト送信を要求するマルチキャストデータ視聴希望メッセージ（ｊｏｉｎ）である。以下では、マルチキャスト送信要求メッセージを第３ＬＡＮポート２１−３で受信した場合について説明する。
【００３０】
このマルチキャスト送信要求メッセージは、チャンネル番号（チャンネル情報）を含むことができる。このチャンネル情報は、マルチキャストデータの配信を希望する宛先ＩＰアドレス（マルチキャストデータの宛先を示すＩＰアドレス）であるマルチキャスト宛先ＩＰアドレスと、マルチキャストデータを配信する映像配信サーバ４のＩＰアドレス（送信元ＩＰアドレス）と、を含むことができる。以下、このマルチキャスト宛先ＩＰアドレスを第２宛先アドレスとも称し、送信元ＩＰアドレスを第２送信元アドレスとも称する。例えば、第２宛先アドレスは、マルチキャスト送信要求メッセージの本体（ペイロード）に記述されることができ、第２送信元アドレスは、マルチキャスト送信要求メッセージのヘッダ領域においてそのメッセージの宛先ＩＰアドレスとして記述されることができる。
【００３１】
レイヤ２スイッチ２０において、第３ＬＡＮポート２１−３に入力されたマルチキャスト送信要求メッセージは、スイッチ制御部２２に伝送される。スイッチ制御部２２は、ＭＡＣテーブル２４に、そのマルチキャスト送信要求メッセージに記述された送信元ＭＡＣアドレスを示す送信元ＭＡＣアドレス情報を、マルチキャスト送信要求メッセージを受信したＬＡＮポートである第３ＬＡＮポート２１−３を示すポート番号（例えば“３”）の情報（受信ポート情報）に関連付けて記述し、ＭＡＣテーブル２４を更新する。受信ポート情報は、マルチキャストデータの送信を要求したポート（要求ポート）を示すポート情報であり、要求ポート情報と称することもできる。このＭＡＣテーブル２４は、例えば、図３に示されるＭＡＣテーブル２４とすることができる。なお、ＭＡＣテーブル２４には、受信ポート情報の一部としてＳｏＣポート２３のポート番号（例えば“０”）の情報も関連付けて記述しておくことができる。
【００３２】
このようにして、スイッチ制御部２２は、ＭＡＣテーブル２４に送信元ＭＡＣアドレスとポート番号との対応関係を学習させる。また、スイッチ制御部２２は、このような学習を実行しつつ、ＳｏＣポート２３を介してマルチキャスト送信要求メッセージをＳｏＣ１０へ転送する。
【００３３】
ＳｏＣ１０において、Ｌ２ＳＷポート１３に入力されたマルチキャスト送信要求メッセージは、ＶＬＡＮ制御部１５を通過してマルチキャストプロキシ制御部１４に伝送される。また、マルチキャストプロキシ制御部１４は、マルチキャストＭＡＣアドレスの重複に対応させるために、マルチキャストデータ転送許可設定として次のような転送条件（マルチキャスト転送許可条件）を設定することができる。
【００３４】
この転送条件は、ＷＡＮポート１１に入力されたマルチキャストデータとマルチキャスト送信要求メッセージが指定するチャンネル情報と比較し、宛先グループアドレス同士（第１宛先アドレスと第２宛先アドレス）が一致し且つ送信元ＩＰアドレス（第１送信元アドレスと第２送信元アドレス）が一致するといった条件である。なお、第２宛先アドレス及び第２送信元アドレスとしてＭＡＣアドレスを使用して比較することもでき、その場合も考慮すると、この転送条件は、第１宛先アドレスと第２宛先アドレスとが対応し、第１送信元アドレスと第２送信元アドレスとが対応する条件となる。
【００３５】
このように、マルチキャストプロキシ制御部１４は、マルチキャスト送信要求メッセージで指定されたチャンネル情報に含まれる、マルチキャストデータを配信する映像配信サーバ４のＩＰアドレスを転送条件に追加する。ＷＡＮポート１１にマルチキャストデータが入力された場合には、マルチキャストプロキシ制御部１４は、そのマルチキャストデータがこの転送条件を満たすか否かを判定し、満たす場合に後段のレイヤ２スイッチ２０への転送を許可することができる。
【００３６】
次いで、マルチキャストプロキシ制御部１４は、映像配信サーバ４宛てに（つまり、マルチキャスト送信要求メッセージのヘッダ領域に記述された映像配信サーバ４のＩＰアドレスに）マルチキャスト送信要求メッセージを送信すると同時に、レイヤ２スイッチ２０内部のＭＡＣテーブル２４にアクセスし、マルチキャスト送信要求メッセージを受信したポートの受信ポート情報を取得する。
【００３７】
さらに、マルチキャストプロキシ制御部１４は、転送条件における比較対象とした第２宛先アドレス及び第２送信元アドレスについて、未使用のＶＬＡＮ−ＩＤを関連付けたテーブル（転送時参照テーブル）１６を生成し、例えば内部に設けた記憶部（図示せず）に記憶する。なお、転送時参照テーブル１６の記憶部は、ＶＬＡＮテーブル２５の記憶部と共通化することができる。この転送時参照テーブル１６は、第２宛先アドレスと第２送信元アドレスと未使用のＶＬＡＮ−ＩＤとを関連付けたテーブルであり、例えば、図４に示される転送時参照テーブル１６とすることができる。この未使用のＶＬＡＮ−ＩＤは、仮想ネットワークを識別する識別子（ＶＬＡＮ−ＩＤ）のうち未使用の値であり、例えばＶＬＡＮテーブル２５を参照することで取得可能な構成にしておけばよい。また、複数の未使用のＶＬＡＮ−ＩＤがある場合には、その中から昇順などの予め定められた順番で選択して使用することができる。後述するが、この未使用のＶＬＡＮ−ＩＤは、スイッチ制御部２２での出力ポートの決定に用いられる。
【００３８】
また、マルチキャストプロキシ制御部１４は、転送時参照テーブル１６において転送条件における比較対象とした第２宛先アドレス及び第２送信元アドレスに関連付けた未使用のＶＬＡＮ−ＩＤと、ＭＡＣテーブル２４から取得した受信ポート情報と、を関連付ける。そして、マルチキャストプロキシ制御部１４は、その関連付けしたデータを、ＶＬＡＮテーブル２５として記憶するか、又は既存のＶＬＡＮテーブル２５に追加することでＶＬＡＮテーブル２５を更新する。
【００３９】
例えば、マルチキャストプロキシ制御部１４は、上記未使用のＶＬＡＮ−ＩＤにＳｏＣポート２３及び第３ＬＡＮポート２１−３が属するように、ＳｏＣポート２３のポート番号及び第３ＬＡＮポート２１−３のポート番号を上記未使用のＶＬＡＮ−ＩＤに関連付けたデータを、例えば図５に示されるようなＶＬＡＮテーブル２５とする。図５に示されるＶＬＡＮテーブル２５は、未使用のＶＬＡＮ−ＩＤ“３０”を用いている。また、マルチキャストプロキシ制御部１４は、このようなデータの追加時に、ＳｏＣポート２３をｔａｇｇｉｎｇポート設定（ｔａｇｇｅｄポート設定）にし、宛先となる第３ＬＡＮポート２１−３をｕｎｔａｇｇｉｎｇポート設定（ｕｎｔａｇｇｅｄポート設定）にしておく。
【００４０】
このように未使用のＶＬＡＮ−ＩＤを設定することは、ブロードバンドルータ１が、マルチキャストデータを中継するために、要求ポート（受信ポート）である第３ＬＡＮポート２１−３を含む新たなＶＬＡＮグループを追加することを意味する。
【００４１】
このようにして、マルチキャストプロキシ制御部１４は、ＶＬＡＮ−ＩＤ（転送時参照テーブル１６において関連付けたＶＬＡＮ−ＩＤ）、ＳｏＣポート２３のポート番号の情報、及び受信ポート情報を関連付けた宛先ポート情報を、ＶＬＡＮテーブル２５に登録する。これにより、ＶＬＡＮテーブル２５は宛先ポートテーブルとして機能し、マルチキャストデータを書き換えたデータが入力された場合、スイッチ制御部２２によって出力ポート決定時に参照することができる。
【００４２】
以上に説明されるように、制御部１２は、第２送信元アドレスとしてのマルチキャストデータの送信元を示すアドレス及び第２宛先アドレスとしてのマルチキャストデータの宛先を示すアドレスを含む、マルチキャスト送信を要求するマルチキャスト送信要求メッセージが、ＬＡＮポート２１−１〜２１−４で例示した複数の第２ポートの中の１つである要求ポートに入力された場合、ＷＡＮポート１１で例示した第１ポートを介してマルチキャスト送信要求メッセージ（必要に応じて変更されたマルチキャスト送信要求メッセージ）を出力する。
【００４３】
そして、制御部１２は、このような出力処理に加えて、未使用のＶＬＡＮ−ＩＤで例示した第１値を、ブロードバンドルータ１から出力されるマルチキャスト送信要求メッセージに記述された第２送信元アドレス及び第２宛先アドレスに関連付けて、転送時参照テーブル１６の記憶部に記憶する。第１値は、第２送信元アドレス及び第２宛先アドレスの合計のアドレス長より短い長さの値である。なお、未使用のＶＬＡＮ−ＩＤは、後述する処理から分かるように、受信対象のマルチキャストデータ（送信要求しているマルチキャストデータ）に書き込み可能で且つブロードバンドルータ１で読み取り可能な識別子における未使用の値の一例である。図２に示されるブロードバンドルータ１で読み取り可能な識別子とは、スイッチ制御部２２及び制御部１２で読み取り可能な（使用される）識別子を指す。さらに、制御部１２は、未使用のＶＬＡＮ−ＩＤで例示した第１値を、受信ポート情報（要求ポート情報）に関連付けて、ＶＬＡＮテーブル２５の記憶部に記憶する。
【００４４】
一方で、放送サービス事業者ＳＡの映像配信サーバ４は、受信したマルチキャスト送信要求メッセージで指定されたマルチキャストデータ（映像コンテンツのマルチキャストデータ）の配信を開始する。
【００４５】
ブロードバンドルータ１において、このマルチキャストデータを受信する処理について説明する。ＳｏＣ１０のマルチキャストプロキシ制御部１４は、ＷＡＮポート１１を介してこのマルチキャストデータを受信し、受信したマルチキャストデータから第１宛先アドレス及び第１送信元アドレスを読み出し、上述のように転送時参照テーブル１６を参照し、それらが第２宛先アドレス及び第２送信元アドレスに対応するか否か（転送条件を満たすか否か）を判定し、この転送条件を満たす場合にそのマルチキャストデータ（例えば、入力されたマルチキャストデータをフレーム化したデータ）をＶＬＡＮ制御部１５へ転送する。このとき、マルチキャストプロキシ制御部１４は、ＶＬＡＮ制御部１５へ、転送時参照テーブル１６において第２宛先アドレス及び第２送信元アドレスに関連付けられたＶＬＡＮ−ＩＤも出力する。
【００４６】
ＶＬＡＮ制御部１５は、マルチキャストプロキシ制御部１４から入力されたＶＬＡＮ−ＩＤを用い、マルチキャストプロキシ制御部１４から入力されたデータにＩＥＥＥ８０２．１Ｑ規格に従いＶＬＡＮ−ＩＤを付与する（ＶＬＡＮ−ＩＤを含むＶＬＡＮタグを付加する）。その後、ＶＬＡＮ制御部１５は、Ｌ２ＳＷポート１３を介し、ＶＬＡＮ−ＩＤ付与後のデータ（書き換え後のデータ）をレイヤ２スイッチ２０へ転送する。
【００４７】
レイヤ２スイッチ２０のスイッチ制御部２２は、ＳｏＣ１０から出力された書き換え後のデータをＳｏＣポート２３経由で受信し、その書き換え後のデータに含まれるＶＬＡＮ−ＩＤを読み出す。そして、スイッチ制御部２２は、読み出したＶＬＡＮ−ＩＤを検索キーとし、ＶＬＡＮテーブル２５にアクセスし、そのＶＬＡＮ−ＩＤに関連付けられた受信ポート情報を得て、その書き換え後のデータの出力ポートを決定する。これにより、出力ポートとして第３ＬＡＮポート２１−３が決定される。また、スイッチ制御部２２は、その書き換え後のデータをそのまま出力するのではなく、その書き換え後のデータからＶＬＡＮ制御部１５で付与されたＶＬＡＮタグ（未使用のＶＬＡＮ−ＩＤを用いて書き換えられた部分）を削除しておくことで、ＶＬＡＮタグ削除後のデータ（この例ではコンテンツデータを含む）を出力ポート（この例では第３ＬＡＮポート２１−３）に転送することができる。
【００４８】
以上に説明されるように、制御部１２は、ＷＡＮポート１１で例示した第１ポートに入力されたマルチキャストデータに含まれる第１送信元アドレス及び第１宛先アドレスが第２送信元アドレス及び第２宛先アドレスに対応するか否かを判定する。そして、制御部１２は、判定の結果、対応すると判定された場合、第２送信元アドレス及び第２宛先アドレスに関連付けられた第１値（マルチキャスト送信要求メッセージの出力前に未使用のＶＬＡＮ−ＩＤ）を、転送時参照テーブル１６の記憶部から読み出し、第１値を用いてマルチキャストデータを書き換え、書き換え後のデータをスイッチ制御部２２に与える。なお、第１値を用いた書き換えは、フレーム化と併せて行うこともできる。
【００４９】
そして、スイッチ制御部２２は、書き換え後のデータに含まれる第１値に関連付けられた受信ポート情報（要求ポート情報）を、ＶＬＡＮテーブル２５の記憶部から読み出し、読み出された受信ポート情報が示すポートを出力ポートに決定するとともに、書き換え後のデータにおける第１値を用いて書き換えられた部分を書き換え前に戻し、戻したデータを出力ポートから出力する。上述したように、スイッチ制御部２２は、書き換えられた部分を削除することで上記戻したデータを生成することができる。
【００５０】
また、上述した制御部１２は、第１値を受信ポート情報に関連付けたＶＬＡＮテーブル２５等のテーブルを記憶部に記憶（登録）し、スイッチ制御部２２は、このテーブルを参照して出力ポートを切り替えている。但し、このようなテーブルでの登録を採用しなくても、同様の処理は実現できる。
【００５１】
以上に説明されるように、実施の形態１では、マルチキャストデータの転送条件に含まれる第２宛先アドレス及び第２送信元アドレスに未使用のＶＬＡＮ−ＩＤと関連付け、入力されたマルチキャストデータにそのＶＬＡＮ−ＩＤを含むＶＬＡＮタグを付与しておき、レイヤ２スイッチ側でそのＶＬＡＮ−ＩＤを検索キーとして出力ポートを決定している。つまり、実施の形態１では、転送条件として、複数の送信元からマルチキャストデータが入力される場合でも出力ポートを正しく決定できるように２種類のアドレスを使用するとともに、出力ポートをＶＬＡＮグループで指定している。
【００５２】
実施の形態１に係るブロードバンドルータ１は、複数の放送サービス事業者の映像サービスに加入し、マルチキャストＭＡＣアドレスが重複した場合にも対応可能なマルチキャストスヌーピング機能を、ＶＬＡＮを利用して安価に実現することができる。従来、送信元アドレス及び宛先アドレスを検索する場合の検索キーは、ＩＰｖ４対応で６４ビット、ＩＰｖ６対応で２５６ビットとなるが、実施の形態１で採用したＶＬＡＮ−ＩＤのアドレス長は、１２ビットであるため、検索処理の負荷が、従来に比べて少ない。このように、実施の形態１によれば、複数の送信元からマルチキャストデータが入力される場合にも出力先のポートを正しく決定でき、且つ、その決定に要する時間を短縮することが可能になる。また、実施の形態１によれば、高速検索が可能な大容量のＴＣＡＭを用いる必要がなくなるなど、この決定の処理に含まれる検索処理のために、メモリを大容量にする必要もなくなり、従来に比べてコストを低減できる。
【００５３】
次に、実施の形態１に係る中継装置における中継方法について、図６を参照しながら概略的に説明する。図６は、ブロードバンドルータ１における中継方法の一例を示すフロー図である。この中継方法は、ブロードバンドルータ１における処理手順からわかるように、第１ポート、複数の第２ポート、及び記憶部を有する中継装置における中継方法であって、次のようなマルチキャストデータの送信を要求するマルチキャスト送信要求メッセージが、複数の第２ポートの中の１つである要求ポートに入力された場合のステップ（ａ）と、第１ポートにマルチキャストデータが入力された場合のステップ（ｂ）と、を有することができる。なお、ステップ（ａ），ステップ（ｂ）の処理が一度完了した後は、ステップ（ｂ）の実行によりマルチキャストデータについての中継が可能である。
【００５４】
ステップ（ａ）に関し、中継装置は、マルチキャスト送信要求メッセージを要求ポートから受信し（ステップＳ１）、第１値（未使用のＶＬＡＮ−ＩＤ）を、要求ポートを示す要求ポート情報に関連付けて記憶部に記憶し、且つ、第１値をマルチキャストデータの送信元を示す第２送信元アドレス及びマルチキャストデータの宛先を示す第２宛先アドレスに関連付けて上記記憶部に記憶する（ステップＳ２）。第１値は、第２送信元アドレス及び第２宛先アドレスの合計のアドレス長より短い長さの値である。ステップＳ２の処理後又は同時進行で、中継装置は、マルチキャスト送信要求メッセージをその宛先となる上記第２送信元アドレスで示されるアドレスに送信し（ステップＳ３）、要求したマルチキャストデータの受信を待つ（ステップＳ４）。
【００５５】
ステップ（ｂ）に関し、中継装置は、マルチキャストデータを受信した場合（ステップＳ４でＹＥＳとなった場合）、受信したマルチキャストデータから第１送信元アドレス及び第１宛先アドレスを読み出し（ステップＳ５）、転送条件を満たすか（第１送信元アドレス及び第１宛先アドレスが第２送信元アドレス及び第２宛先アドレスに対応するか）否かを判定する（ステップＳ６）。ステップＳ６でＹＥＳの場合、中継装置は、第２送信元アドレス及び第２宛先アドレスに関連付けられた第１値を上記記憶部から読み出し、第１値を用いてマルチキャストデータを書き換える（ステップＳ７）。次いで、中継装置は、書き換え後のデータに含まれる第１値に関連付けられた要求ポート情報を上記記憶部から読み出し（ステップＳ８）、上記複数の第２ポートのうち読み出された要求ポート情報が示すポートを出力ポートに決定するとともに、ＶＬＡＮタグを削除することで書き換え後のデータにおける第１値を用いて書き換えられた部分を書き換え前に戻し、戻したデータをその出力ポートから出力し（ステップＳ９）、処理を終了する。なお、ステップＳ６でＮＯの場合、中継装置は、例えば受信したマルチキャストデータを破棄し（ステップＳ１０）、処理を終了する。
【００５６】
《２》実施の形態２
実施の形態２について、図７及び図８を併せて参照しながら説明する。図７は、実施の形態２に係る中継装置の一例としてのブロードバンドルータの一構成例を示すブロック図である。図８は、図７に示されるブロードバンドルータ１ａで使用される宛先ポートテーブルの一例を示す図である。実施の形態２について、実施の形態１との相違点を中心に簡略化して説明するが、実施の形態２では実施の形態１で説明した様々な例が適用できる。また、図７において、図２に示される構成要素と同一又は対応する要素については、図２に示される符号と同一の符号又は同一の符号に添え字を追加した符号を付している。
【００５７】
図７に示されるように、ブロードバンドルータ１ａは、ＳｏＣ１０ａ及びレイヤ２スイッチ２０ａを有することができる。なお、例えば、図１に示されるマルチキャスト配信システムにおけるブロードバンドルータ１を、図７に示されるブロードバンドルータ１ａに置き換えることで、実施の形態２に係るマルチキャスト配信システムを構築することができる。
【００５８】
ＳｏＣ１０ａは、ＷＡＮポート１１、Ｌ２ＳＷポート１３、マルチキャストプロキシ制御部１４ａ、及び優先制御部１７を有することができる。マルチキャストプロキシ制御部１４ａ及び優先制御部１７は、ブロードバンドルータ１ａの全体を制御する制御部１２ａに含むことができる。
【００５９】
また、レイヤ２スイッチ２０ａは、第１〜第４ＬＡＮポート２１−１〜２１−４、スイッチ制御部２２ａ、ＳｏＣポート２３、ＭＡＣテーブル２４を記憶する記憶部（図示せず）、及び、宛先ポートテーブル２６ａを記憶する記憶部の一例としてのＴＣＡＭ（Ｔｅｒｎａｒｙ  Ｃｏｎｔｅｎｔ  Ａｄｄｒｅｓｓａｂｌｅ  Ｍｅｍｏｒｙ）２６を有する。このように、レイヤ２スイッチ２０ａは、スイッチ制御部２２ａから高速にデータを検索できるＴＣＡＭ２６を搭載したデバイスとする。なお、ＭＡＣテーブル２４を記憶する記憶部と宛先ポートテーブル２６ａを記憶する記憶部は、共通化することができる。
【００６０】
マルチキャストプロキシ制御部１４ａは、ＩＧＭＰ及びＭＬＤの少なくとも一方に従い、ＷＡＮポート１１から入力されるマルチキャストデータ（ＩＰマルチキャストデータ）の優先制御部１７への転送、並びに、Ｌ２ＳＷポート１３から優先制御部１７経由で入力されるマルチキャスト送信要求メッセージ等のデータのＷＡＮポート１１への転送を行う。また、マルチキャストプロキシ制御部１４ａは、入力されるマルチキャストデータを、マルチキャストフレームとして優先制御部１７に転送することができる。
【００６１】
ブロードバンドルータ１ａでは、優先度に応じたデータの転送が可能になっている。つまり、優先制御部１７は、マルチキャストプロキシ制御部１４ａから出力されたマルチキャストデータ（例えば、フレーム化後のデータ）について、そのマルチキャストデータのＩＰヘッダのＤＳＣＰ（ＤｉｆｆＳｅｒｖ  Ｃｏｄｅ  Ｐｏｉｎｔ）領域の値を読み出し、その値が示す優先度に応じた順序で、データを転送する優先制御機能を有する。
【００６２】
さらに、優先制御部１７は、マルチキャストプロキシ制御部１４ａから出力されたマルチキャストデータに対し、そのマルチキャストデータのＩＰヘッダのＤＳＣＰ領域を、そのマルチキャストデータに予め関連付けられた未使用値に書き換える。そして、優先制御部１７は、Ｌ２ＳＷポート１３を介してレイヤ２スイッチ２０ａに、書き換え後のデータを出力する。これにより、レイヤ２スイッチ２０ａが入力された書き換え後のデータのＤＳＣＰ領域の値を読み出すことができる。なお、書き換える未使用値について後述するが、マルチキャストプロキシ制御部１４ａは、この未使用値を後述する転送条件に関連付けて記憶させておき、転送を許可するマルチキャストデータについてそれに対応する未使用値を優先制御部１７に伝えるように構成しておけばよい。ＤＳＣＰ領域の未使用値は、実施の形態１において説明した、第２送信元アドレス及び第２宛先アドレスの合計のアドレス長より短い長さの値である第１値の他の例に相当する。
【００６３】
レイヤ２スイッチ２０ａのスイッチ制御部２２ａは、図２に示されるスイッチ制御部２２と同様に、ＷＡＮポート１１で例示した第１ポートに入力されたマルチキャストデータに含まれるデータ（この例ではコンテンツデータを含む）を出力する出力ポートを、ＬＡＮポート２１−１〜２１−４で例示した複数の第２ポートの間で切り替える切替制御部の一例である。また、ＭＡＣテーブル２４及び宛先ポートテーブル２６ａは、スイッチ制御部２２ａからの情報の読み書きが可能となっている。また、ＭＡＣテーブル２４はマルチキャストプロキシ制御部１４ａからの情報の読み出しが可能となっており、宛先ポートテーブル２６ａはマルチキャストプロキシ制御部１４ａからの情報の書き込みが可能になっている。
【００６４】
このような構成の実施の形態２に係るブロードバンドルータ１ａを、図１に示されるブロードバンドルータ１として組み込んだシステムにおいて、ブロードバンドルータ１ａがマルチキャストデータを転送する動作について説明する。ここでは、マルチキャストデータを送信するサーバとして、図１に示される映像配信サーバ４を例に挙げる。
【００６５】
まず、レイヤ２スイッチ２０ａは、ＳＴＢ２から出力されたマルチキャスト送信要求メッセージ（マルチキャストデータ視聴希望メッセージ）を、ＬＡＮポート２１−１〜２１−４のうちのＳＴＢ２に接続されたポートから受信する。以下では、マルチキャスト送信要求メッセージを第３ＬＡＮポート２１−３で受信した場合について説明する。また、このマルチキャスト送信要求メッセージは、実施の形態１で説明したように、チャンネル番号（チャンネル情報）が含まれ、ここでは、このチャンネル情報に配信先のサーバとして図１に示される映像配信サーバ４のアドレスが記述されている場合について説明する。
【００６６】
レイヤ２スイッチ２０ａにおいて、第３ＬＡＮポート２１−３に入力されたマルチキャスト送信要求メッセージは、スイッチ制御部２２ａに伝送される。スイッチ制御部２２ａは、図２に示されるスイッチ制御部２２と同様に、送信元ＭＡＣアドレス情報を受信ポート情報（要求ポート情報）に関連付けて記述し、ＭＡＣテーブル２４を更新する。このようにして、スイッチ制御部２２ａは、ＭＡＣテーブル２４に送信元ＭＡＣアドレスとポート番号との対応関係を学習させる。また、スイッチ制御部２２ａは、このような学習を実行しつつ、ＳｏＣポート２３を介してマルチキャスト送信要求メッセージをＳｏＣ１０ａへ転送する。
【００６７】
ＳｏＣ１０ａにおいて、Ｌ２ＳＷポート１３に入力されたマルチキャスト送信要求メッセージは、優先制御部１７を通過してマルチキャストプロキシ制御部１４ａに伝送される。また、マルチキャストプロキシ制御部１４ａは、マルチキャストＭＡＣアドレスの重複に対応させるために、マルチキャストデータ転送許可設定として、実施の形態１で説明した転送条件（マルチキャスト転送許可条件）を設定することができる。
【００６８】
次いで、マルチキャストプロキシ制御部１４ａは、映像配信サーバ４宛てにマルチキャスト送信要求メッセージを送信するとともに、ＭＡＣテーブル２４にアクセスし、マルチキャスト送信要求メッセージを受信したポートの受信ポート情報を取得する。さらに、マルチキャストプロキシ制御部１４ａは、転送条件とした宛先グループアドレス及び送信元ＩＰアドレスについて、ＤＳＣＰ領域の値のうちの未使用値を関連付けたテーブル（転送時参照テーブル）１６ａを生成し、例えば内部に設けた記憶部（図示せず）に記憶する。なお、転送時参照テーブル１６ａの記憶部は、宛先ポートテーブル２６ａの記憶部と共通化することができる。この転送時参照テーブル１６ａは、第２宛先アドレスと第２送信元アドレスと上記未使用値とを関連付けたテーブルであり、例えば、図４に示される転送時参照テーブル１６において未使用のＶＬＡＮ−ＩＤの代わりに上記未使用値を記述したものとすることができる。この未使用値は、ＤＳＣＰ領域の値のうち、例えばブロードバンドルータ１ａ及びそれを含むマルチキャスト配信システムにおいて使用しない値を予め登録しておき、その中から昇順などの予め定められた順番で選択して使用すればよい。後述するが、この未使用値は、スイッチ制御部２２ａでの出力ポートの決定に用いられる。
【００６９】
また、マルチキャストプロキシ制御部１４ａは、転送時参照テーブル１６ａにおいて転送条件における比較対象とした第２宛先アドレス及び第２送信元アドレスに関連付けた未使用値と、ＭＡＣテーブル２４から取得した受信ポート情報と、を関連付け、その関連付けしたデータを、宛先ポートテーブル２６ａとしてＴＣＡＭ２６に記憶する。例えば、マルチキャストプロキシ制御部１４ａは、上記未使用値に第３ＬＡＮポート２１−３のポート番号を関連付けたデータを、宛先ポートテーブル２６ａとしてＴＣＡＭ２６に記憶する。既に他の放送配信サービスについて宛先ポートテーブル２６ａが生成されているのであれば、生成済みの宛先ポートテーブル２６ａを更新すればよい。この宛先ポートテーブル２６ａは、例えば、図８に示される宛先ポートテーブル２６ａとすることができる。
【００７０】
このようにして、マルチキャストプロキシ制御部１４ａは、ＤＳＣＰ領域の未使用値（転送時参照テーブル１６ａにおいて関連付けた値）と受信ポート情報とを関連付けた宛先ポート情報を、宛先ポートテーブル２６ａとして登録する。これにより、スイッチ制御部２２ａは、マルチキャストデータを書き換えたデータが入力され、出力ポートを決定するに際し、宛先ポートテーブル２６ａを参照することができる。
【００７１】
以上に説明されるように、制御部１２ａは、マルチキャスト送信を要求するマルチキャスト送信要求メッセージが、ＬＡＮポート２１−１〜２１−４で例示した複数の第２ポートの中の１つである要求ポートに入力された場合、ＷＡＮポート１１で例示した第１ポートを介してマルチキャスト送信要求メッセージ（必要に応じて変更されたマルチキャスト送信要求メッセージ）を出力する。
【００７２】
そして、制御部１２ａは、このような出力処理に加えて、第１値の例としてのＤＳＣＰ領域の未使用値を、ブロードバンドルータ１ａから出力されるマルチキャスト送信要求メッセージに記述された第２送信元アドレス及び第２宛先アドレスに関連付けて、転送時参照テーブル１６ａの記憶部に記憶する。第１値は、実施の形態１で説明したように、第２送信元アドレス及び第２宛先アドレスの合計のアドレス長より短い長さの値である。なお、ＤＳＣＰ領域の未使用値は、受信対象のマルチキャストデータ（送信要求しているＩＰマルチキャストデータ）に書き込み可能で且つブロードバンドルータ１ａで読み取り可能な識別子における未使用の値の一例である。さらに、制御部１２ａは、第１値の例としてのＤＳＣＰ領域の未使用値を、受信ポート情報（要求ポート情報）に関連付けて、ＴＣＡＭ２６で例示した記憶部に記憶する。このように、実施の形態１では、転送条件に示される２種類のアドレスをＶＬＡＮタグに関連付けたが、実施の形態２では、転送条件に示される２種類のアドレスを、ＩＰヘッダのＤＳＣＰ領域の未使用値に関連付ける。
【００７３】
一方で、放送サービス事業者ＳＡの映像配信サーバ４は、受信したマルチキャスト送信要求メッセージで指定されたマルチキャストデータの配信を開始する。ブロードバンドルータ１ａにおいて、このマルチキャストデータを受信する処理について説明する。
【００７４】
ＳｏＣ１０ａのマルチキャストプロキシ制御部１４ａは、ＷＡＮポート１１を介してこのマルチキャストデータを受信し、受信したマルチキャストデータから第１宛先アドレス及び第１送信元アドレスを読み出し、転送時参照テーブル１６ａを参照し、それらが第２宛先アドレス及び第２送信元アドレスに対応するか否か（転送条件を満たすか否か）を判定し、この転送条件を満たす場合にそのマルチキャストデータ（例えば、入力されたマルチキャストデータをフレーム化したデータ）を優先制御部１７へ転送する。このとき、マルチキャストプロキシ制御部１４ａは、優先制御部１７へ、転送時参照テーブル１６ａにおいて第２宛先アドレス及び第２送信元アドレスに関連付けられたＤＳＣＰ領域の未使用値も出力する。
【００７５】
このときさらに、マルチキャストプロキシ制御部１４ａは、受信したマルチキャストデータからＤＳＣＰ領域の値を読み出し、ＴＣＡＭ２６の宛先ポートテーブル２６ａにアクセスし、転送時参照テーブル１６ａにおいて第２宛先アドレス及び第２送信元アドレスに関連付けられたＤＳＣＰ領域の未使用値を検索キーとして、宛先ポートテーブル２６ａの受信ポート情報を検索し、読み出したＤＳＣＰ領域の値を、その未使用値を含む受信ポート情報に関連付けるように、宛先ポートテーブル２６ａを更新する。
【００７６】
上述の読み出したＤＳＣＰ領域の値は、第１値を用いて書き換える前の値である第２値の一例であって、後述する優先制御部１７によって書き換えられた後のデータを元に戻す際に使用される付け戻し用ＤＳＣＰ値であり、以下、付け戻し値と称す。上述のような宛先ポートテーブル２６ａの更新により、例えば、図８に示されるように、宛先ポートテーブル２６ａには付け戻し用ＤＳＣＰ値が関連付けられる。映像配信サーバ４がマルチキャストデータを送信する際のＤＳＣＰ領域の値が既知である場合には、この付け戻し値は、受信ポート情報の登録時に同時に未使用値と関連付けて宛先ポートテーブル２６ａを生成しておけばよい。
【００７７】
優先制御部１７は、マルチキャストプロキシ制御部１４ａから入力された上記未使用値を用い、マルチキャストプロキシ制御部１４ａから入力されたデータのＩＰヘッダのＤＳＣＰ領域の値を書き換え（付け替え）、Ｌ２ＳＷポート１３を介し、書き換え後のデータをレイヤ２スイッチ２０ａへ転送する。
【００７８】
レイヤ２スイッチ２０ａのスイッチ制御部２２ａは、ＳｏＣ１０ａから出力された書き換え後のデータをＳｏＣポート２３経由で受信し、その書き換え後のデータのＤＳＣＰ領域の値を読み出す。そして、スイッチ制御部２２ａは、読み出した値を検索キーとし、図８に示されるような宛先ポートテーブル２６ａにアクセスし、その値に関連付けられた受信ポート情報を得て、その書き換え後のデータの出力ポートを決定する。これにより、出力ポートとして第３ＬＡＮポート２１−３が決定される。また、スイッチ制御部２２ａは、書き換え後のデータをそのまま出力するのではなく、宛先ポートテーブル２６ａにアクセスした際に、受信ポート情報に関連付けられた付け戻し値を得ておき、その付け戻し値でその書き換え後のデータのＤＳＣＰ領域の値を元に戻すことで、ＤＳＣＰ領域の値を元に戻したデータ（この例ではコンテンツデータを含む）を出力ポート（この例では第３ＬＡＮポート２１−３）に転送することができる。
【００７９】
以上に説明されるように、制御部１２ａは、ＷＡＮポート１１で例示した第１ポートにマルチキャストデータに含まれる第１送信元アドレス及び第１宛先アドレスが第２送信元アドレス及び第２宛先アドレスに対応するか否かを判定する。そして、制御部１２ａは、判定の結果、対応すると判定された場合、第２送信元アドレス及び第２宛先アドレスに関連付けられたＤＳＣＰ領域の未使用値（マルチキャスト送信要求メッセージの出力前に未使用の値）を、転送時参照テーブル１６ａの記憶部から読み出し、上記未使用値を用いてマルチキャストデータを書き換え、書き換え後のデータをスイッチ制御部２２ａに与える。このとき、制御部１２ａは、入力されたマルチキャストデータから付け戻し値（第２値）を読み出し、その付け戻し値を、読み出した上記未使用値が含まれる受信ポート情報に関連付けて記憶するように、宛先ポートテーブル２６ａを更新する。なお、マルチキャストデータの書き換えは、フレーム化と併せて行うこともできる。上述のように、映像配信サーバ４がマルチキャストデータを送信する際のＤＳＣＰ領域の値が既知である場合には、この付け戻し値は、受信ポート情報の登録時に同時に未使用値と関連付けて宛先ポートテーブル２６ａを生成しておけばよい。
【００８０】
そして、スイッチ制御部２２ａは、書き換え後のデータに含まれる上記未使用値に関連付けられた受信ポート情報（要求ポート情報）及び付け戻し値（書き換え前のＤＳＣＰ領域の値）を、ＴＣＡＭ２６で例示した記憶部から読み出し、読み出された要求ポート情報が示すポートを出力ポートに決定するとともに、書き換え後のデータにおける第１値を用いて書き換えられた部分を第１値から付け戻し値に戻し、戻したデータを決定された出力ポートから出力する。
【００８１】
また、上述した制御部１２ａは、第１値を要求ポート情報に関連付けた宛先ポートテーブル２６ａ等のテーブルを記憶部に記憶（登録）し、スイッチ制御部２２ａは、このテーブルを参照して出力ポートを切り替えている。但し、このようなテーブルでの登録を採用しなくても、同様の処理は実現できる。
【００８２】
以上に説明されるように、実施の形態２では、マルチキャストデータの転送条件に含まれる第２宛先アドレス及び第２送信元アドレスにＩＰヘッダのＤＳＣＰ領域の未使用値と関連付け、入力されたマルチキャストデータをその値で書き換えておき、レイヤ２スイッチ側でその値を検索キーとして出力ポートを決定している。つまり、実施の形態２では、転送条件として、複数の送信元からマルチキャストデータが入力される場合でも出力ポートを正しく決定できるように２種類のアドレスを使用するとともに、出力ポートをＤＳＣＰ領域の値で指定している。
【００８３】
実施の形態２に係るブロードバンドルータ１ａは、複数の放送サービス事業者の映像サービスに加入してマルチキャストＭＡＣアドレスが重複した場合にも対応可能なマルチキャストスヌーピング機能を、ＤＳＣＰ領域の未使用値を利用して安価に実現することができる。実際、一般的にレイヤ２スイッチに搭載されるＴＣＡＭにはＩＰヘッダのＤＳＣＰ領域を書き換える機能が実装されていることが多いことから、実施の形態２では、このＤＳＣＰ領域の未使用値を利用して、検索キーを短くすることでレイヤ２スイッチ２０ａが内蔵するＴＣＡＭ２６で必要な容量を小さくし、それによってコストダウンを実現することができる。実際、ＤＳＣＰ値のアドレス長（ＤＳＣＰ領域のアドレス長）は、６ビットであり、検索処理の負荷が従来に比べて少ない。このように、実施の形態２によれば、実施の形態１による効果と同様の効果を、ＶＬＡＮを利用しなくても得ることができる。
【００８４】
なお、実施の形態２に係る中継方法は、その詳細な説明を省略するが、図６を参照して説明した実施の形態１に係る中継方法と比較し、次の点が主に異なる。まず、実施の形態２では、第１値として、ＶＬＡＮ−ＩＤの代わりに、ＩＰヘッダのＤＳＣＰ領域の値のうちの未使用の値を用いている。また、実施の形態２では、ＶＬＡＮタグを削除する処理の代わりに、ＤＳＣＰ値を元に戻すことで、出力ポートに出力するデータを生成している。
【００８５】
《３》変形例
図９は、実施の形態１及び２に係る中継装置の変形例の構成の一部を示すハードウェア構成図である。図２に示されるブロードバンドルータ１及び図７に示されるブロードバンドルータ１ａはいずれも、例えば、図９に示される処理回路６１により構成することができる。処理回路６１は、複数のポートを有していれば、専用のハードウェアであっても、メモリに格納されるプログラムを実行するＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサ、ＤＳＰ［Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ］とも称する）であってもよい。
【００８６】
処理回路６１が専用のハードウェアである場合、処理回路６１は、例えば、単一回路、ブロードバンドルータ１におけるＳｏＣ１０及びレイヤ２スイッチ２０又はブロードバンドルータ１ａにおけるＳｏＣ１０ａ及びレイヤ２スイッチ２０ａで例示したような複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）、ＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）、又はこれらを組み合わせたものが該当する。図２又は図７で示されるようなマルチキャストプロキシ制御部、ＶＬＡＮ制御部又は優先制御部、及びスイッチ制御部の各部の機能をそれぞれ処理回路で実現してもよいし、各部の機能をまとめて処理回路で実現すること（つまり、制御部１２又は制御部１２ａを１つの処理回路とすること）もできる。
【００８７】
処理回路６１がＣＰＵを含む場合について、ＣＰＵがプロセッサである場合を例に挙げ、図１０を参照しながら説明する。図１０は、実施の形態１及び２に係る中継装置の他の変形例の構成の一部を示すハードウェア構成図である。例えば、図２に示されるブロードバンドルータ１及び図７に示されるブロードバンドルータ１ａはいずれも、図１０に示されるようにメモリ７１及びプロセッサ７２を用いて構成することができる。より具体的には、図２又は図７で示されるようなマルチキャストプロキシ制御部、ＶＬＡＮ制御部又は優先制御部、及びスイッチ制御部の各部の機能は、ファームウェアにより実現される。ファームウェアは、プログラムとして記述され、メモリ７１に格納される。プロセッサ７２は、メモリ７１に記憶されたプログラムを読み出して実行することにより、各部の機能を実現する。すなわち、図２又は図７で示されるブロードバンドルータのような中継装置は、プロセッサ７２により実行されるときに、上述したステップ（ａ）及びステップ（ｂ）が結果的に実行されることになるプログラムを格納するためのメモリ７１を外部又は内部に備える。
【００８８】
ここで、メモリ７１とは、例えば、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、フラッシュメモリ、ＥＰＲＯＭ（Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  ＲＯＭ）、ＥＥＰＲＯＭ（Ｅｌｅｃｔｒｉｃａｌｌｙ  Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  ＲＯＭ）等の不揮発性又は揮発性の半導体メモリ、磁気ディスク等が該当する。
【００８９】
なお、図２又は図７で示されるようなマルチキャストプロキシ制御部、ＶＬＡＮ制御部又は優先制御部、及びスイッチ制御部の各部の機能について、一部を専用のハードウェアとしての処理回路で実現し、一部をファームウェアの少なくとも一方で実現するようにしてもよい。このように、処理回路６１は、ハードウェア、ファームウェア、又はこれらの組み合わせによって、上述の各機能を実現することができる。また、ファームウェアは、ネットワークを介して提供されてもよいし、非一時的な記録媒体に記録されて提供されてもよい。
【符号の説明】
【００９０】
１，１ａ  ブロードバンドルータ、  ２  ＳＴＢ、  ３  デジタルテレビ受信装置、  ４，５  映像配信サーバ、  １１  ＷＡＮポート、  １２，１２ａ  制御部、  １３  Ｌ２ＳＷポート、  １４，１４ａ  マルチキャストプロキシ制御部、  １５  ＶＬＡＮ制御部、  １６，１６ａ  転送時参照テーブル、  １７  優先制御部、  ２０，２０ａ  レイヤ２スイッチ、  ２１−１，２１−２，２１−３，２１−４  ＬＡＮポート、  ２２，２２ａ  スイッチ制御部、  ２３  ＳｏＣポート、  ２４  ＭＡＣテーブル、  ２５  ＶＬＡＮテーブル、  ２６  ＴＣＡＭ、  ２６ａ  宛先ポートテーブル、  ６１  処理回路、  ７１  メモリ、  ７２  プロセッサ。
【図１】
2018011210.tif 000003
【図２】
2018011210.tif 000004
【図３】
2018011210.tif 000005
【図４】
2018011210.tif 000006
【図５】
2018011210.tif 000007
【図６】
2018011210.tif 000008
【図７】
2018011210.tif 000009
【図８】
2018011210.tif 000010
【図９】
2018011210.tif 000011
【図１０】
2018011210.tif 000012