(57)【要約】【課題】  ＩＧＭＰをサポートしていない端末へマルチキャストのデータパケットを配信する場合に、端末が接続しているポートを移動しても、移動した端末へデータを効率よく配信することができる中継機器を提供すること。【解決手段】  本発明にかかる中継機器は、ルータ１１０と、端末１３０ａとの通信を中継するレイヤ２スイッチ１２０であって、配信先アドレスリストと、学習アドレスリストと、配信識別子リストとを格納する記憶部と、学習アドレスリストを設定する中継部と、配信識別子リストを設定する制御部とを備え、中継部は、ルータ１１０からパケットを受信した場合に、配信識別子リストに基づいて、該当するインタフェースから当該パケットを端末１３０ａへ送信するものである。【選択図】  図１
2005286681.tif 000002
【特許請求の範囲】
【請求項１】
マルチキャストアドレスを含むパケットを送信可能な配信装置と、端末識別アドレスを含むパケットを送受信し、前記端末識別アドレスにより識別される端末との通信を中継する中継機器であって、
マルチキャストアドレスと前記端末の端末識別アドレスを対応付ける配信先アドレスリストと、
前記端末の端末識別アドレス及び端末へ送信する前記中継機器のインタフェースの識別子を対応付ける学習アドレスリストと、
前記マルチキャストアドレス、前記インタフェースの識別子及び前記端末の端末識別アドレスを対応付ける配信識別子リストとを格納する記憶部と、
前記端末から受信したパケットに含まれる端末識別アドレス及び当該パケットを受信した前記インタフェースの識別子に基づき、前記学習アドレスリストを設定する中継部と、
前記配信先アドレスリスト及び前記学習アドレスリストに基づき、前記配信識別子リストを設定する制御部とを備え、
前記中継部は、前記配信装置からマルチキャストアドレスを含むパケットを受信した場合に、前記配信識別子リストに基づいて、対応するインタフェースから当該パケットを端末へ送信する中継機器。
【請求項２】
前記中継部は、前記端末から受信したパケットに含まれる端末識別アドレスが、前記学習アドレスリストに存在しない場合に、当該端末識別アドレス及び当該パケットを受信したインタフェースの識別子を前記学習アドレスリストに追加し、
前記制御部は、前記追加された端末識別アドレスが、前記配信先アドレスリストに存在する場合に、該当するマルチキャストアドレス、当該インタフェースの識別子及び前記端末の端末識別アドレスを前記配信識別子リストに追加することを特徴とする請求項１に記載の中継機器。
【請求項３】
前記中継部は、前記学習アドレスリストに設定されている端末識別アドレスを含むパケットを、一定時間、受信しない場合に、当該端末識別アドレス及び当該インタフェースの識別子を前記学習アドレスリストから削除し、
前記制御部は、前記削除された端末識別アドレスが、前記配信先アドレスリストに存在する場合に、該当するマルチキャストアドレス、当該インタフェースの識別子及び前記端末の端末識別アドレスを前記配信識別子リストから削除することを特徴とする請求項１に記載の中継機器。
【請求項４】
前記中継部は、前記端末から受信したパケットに含まれる端末識別アドレスが、前記学習アドレスリストに存在し、かつ、当該パケットを受信したインタフェースの識別子が、前記学習アドレスリストに設定されている識別子と一致しない場合に、前記学習アドレスリストに設定されている識別子を当該パケットを受信したインタフェースの識別子に変更し、
前記制御部は、前記変更されたインタフェースの識別子の端末識別アドレスが、前記配信先アドレスリストに存在する場合に、前記配信識別子リストに設定されているインタフェースの識別子を当該パケットを受信したインタフェースの識別子に変更することを特徴とする請求項１に記載の中継機器。
【請求項５】
マルチキャストアドレスを含むパケットを送信可能な配信装置と、端末識別アドレスを含むパケットを送受信し、前記端末識別アドレスにより識別される端末との通信を中継する中継機器であって、
マルチキャストアドレスと前記端末の端末識別アドレスを対応付ける配信先アドレスリストを格納する記憶部と、
前記端末から受信したパケットに含まれる端末識別アドレス、前記パケットを受信した前記中継機器のインタフェースの識別子及び前記配信先アドレスリストに基づき、前記端末へ送信するインタフェースを特定する制御部と、
前記配信装置から受信したパケットを、前記制御部において特定されたインタフェースから、前記端末へ送信する中継部とを備える中継機器。
【請求項６】
マルチキャストアドレスを含むパケットを送信可能な配信装置と、端末識別アドレスを含むパケットを送受信し、前記端末識別アドレスにより識別される端末との通信を中継する中継機器であって、
マルチキャストアドレスと、端末識別アドレスと、中継機器のインタフェースの識別子を互いに関連付けて格納する記憶部と、
前記端末から受信したパケットに含まれる端末識別アドレスと、当該パケットを受信したインタフェースの識別子に基づいて、前記記憶部の端末識別アドレスとインタフェースの識別子を設定する手段と、
前記配信装置からマルチキャストアドレスを含むパケットを受信した場合に、前記記憶部に格納された情報に基づいて、当該端末識別アドレスに対応するインタフェースを介して、当該パケットを端末に対して送信する手段を有する中継装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、中継機器に関するものであり、特に、パケットをマルチキャストアドレスで送信する配信装置と、パケットをマルチキャストアドレスで受信、端末識別アドレスで送受信する端末との通信を中継する中継機器に関する。
【背景技術】
【０００２】
インターネットに代表されるネットワークは、電子メールやＷｅｂデータ、音声、映像など様々なデータの通信に利用されている。ピアツーピア通信などのように単一の相手を指定して通信することをユニキャスト通信といい、映像の配信等のように、マルチキャストアドレスによりマルチキャストグループの複数の相手を指定して通信することをマルチキャスト通信という。マルチキャスト通信では、特定多数の通信相手へ、通信回線を圧迫することなく効率よく転送することができる。また、マルチキャスト通信を実現するためのプロトコルとして、ＩＧＭＰ（Internet Group Management Protocol）が知られている。
【０００３】
図８に、マルチキャスト通信を行うことができる、従来の通信システム８００の一例を示す。この通信システム８００は、図に示されるように、ルータ８１０、レイヤ２スイッチ８２０、ＩＧＭＰ端末８３０ａ、８３０ｂ及び８３０ｃを備えている。ルータ８１０は、ＬＡＮケーブル等により、レイヤ２スイッチ８２０のポート４に接続されており、ＩＧＭＰ端末８３０ａ、８３０ｂ及び８３０ｃは、同様に、レイヤ２スイッチ８２０のポート１、ポート２及びポート３にそれぞれ接続されている。また、マルチキャストアドレスが「０１ＡＢ」のマルチキャストグループには、ＩＧＭＰ端末８３０ａ及び８３０ｂが属している。
【０００４】
ＩＧＭＰ端末８３０ａ、８３０ｂ及び８３０ｃは、ＩＧＭＰをサポートしている端末であり、ＩＧＭＰの制御パケットをルータ８１０と送受信し、ルータ８１０から配信されるマルチキャストのデータパケットを受信することができる。
【０００５】
ここで、図９を用いて、ＩＧＭＰの制御パケットやデータパケットに用いられるパケットのフォーマットの一例について説明する。このパケットは、図に示されるように、”宛先アドレス”、”送信元アドレス”、”プロトコルタイプ”、”メッセージタイプ”及び”データ”から構成されている。この”宛先アドレス”及び”送信元アドレス”は、ここでは、ＭＡＣアドレスを示している。例えば、ＩＧＭＰの制御パケットの場合には、”プロトコルタイプ”にＩＧＭＰの識別子、”メッセージタイプ”にＩＧＭＰの制御パケットである「クエリー」や、「レポート」、「リーブ」等の識別子が格納される。また、マルチキャストのデータパケットの場合には、”宛先アドレス”にマルチキャストアドレス、”送信元アドレス”に送信機器の端末識別アドレス（単にアドレスともいう）、”データ”に送信するデータが格納され、ユニキャストのデータパケットの場合には、”宛先アドレス”に受信機器のアドレス、”送信元アドレス”に送信機器のアドレス、”データ”に送信するデータが格納される。
【０００６】
図８において、ルータ８１０がマルチキャストのデータパケットを送信する場合、まず、ルータ８１０は、ＩＧＭＰ端末８３０ａ、８３０ｂ及び８３０ｃへ、「クエリー」パケットを送信する。そして、ＩＧＭＰ端末８３０ａ及８３０ｂは、マルチキャストアドレス「０１ＡＢ」をデータに含む「レポート」メッセージを、ルータ８１０へ送信する。これにより、ルータ８１０は、マルチキャストアドレス「０１ＡＢ」のマルチキャストグループを認識し、マルチキャストアドレスが「０１ＡＢ」のデータパケットをレイヤ２スイッチ８２０を介して送信する。
【０００７】
また、レイヤ２スイッチ８２０は、中継するパケットの宛先アドレス及び送信元アドレスを監視し、送信するポートの制御を行っている。例えば、レイヤ２スイッチ８２０は、送信元アドレスがＩＧＭＰ端末８３０ａのアドレスであるパケットをポート１から受信すると、その後、宛先アドレスがＩＧＭＰ端末８３０ａのアドレスであるパケットを他のポートから受信した場合に、当該パケットを他のポートには送信せずに、ポート１のみから送信する。
【０００８】
しかしながら、レイヤ２スイッチ８２０は、一般に、中継するパケットの宛先アドレス及び送信元アドレスのみしか監視していないため、マルチキャストアドレスが「０１ＡＢ」のデータパケットを送信すべきポートの特定をすることができない。したがって、マルチキャストアドレスのデータパケットをポート１、２及び３の全てのポートから送信してしまい、帯域幅を無駄に消費してしまうという問題がある。
【０００９】
このような問題を解決する方法の１つにＩＧＭＰスヌーピングが知られている。ＩＧＭＰスヌーピングとは、ＩＧＭＰの制御パケットを監視し、マルチキャストのデータパケットを送信するポートを制御することをいう。例えば、レイヤ２スイッチ８２０は、ＩＧＭＰスヌーピングを行うことにより、「クエリー」パケットや、「レポート」パケット等を監視し、マルチキャストアドレスが「０１ＡＢ」のマルチキャストグループに属するＩＧＭＰ端末８３０ａ及び８３０ｂが、ポート１及び２に接続されていることを検出することができる。これにより、ルータ８１０から送信されたマルチキャストアドレスが「０１ＡＢ」のパケットを、ポート３からは送信せずに、ポート１及び２からのみ送信することができる。また、この方法では、例えば、ＩＧＭＰ端末８３０ａをポート１からポート３へ接続し直した場合にも、ＩＧＭＰの制御パケットを監視しているため、ポート１ではなくポート３へ送信することができる。
【００１０】
一方、ＩＧＭＰ等のマルチキャストをサポートしていない端末も数多く存在しいる。このような端末においては、マルチキャスト通信を利用できず、さらに、端末が接続されたレイヤ２スイッチ８２０では、ＩＧＭＰスヌーピングを行うことができないため、上述と同様に、全てのポートにマルチキャストのパケットを送信してしまうという問題がある。
【００１１】
ＩＧＭＰをサポートしていない端末に、効率よく、マルチキャストデータを配信する方法の１つとして、レイヤ２スイッチ８２０に、マルチキャストアドレスと配信するポートの対応付けをあらかじめ登録しておく方法が知られている。
【００１２】
図１０に、マルチキャストアドレスと配信するポートとを対応付ける配信ポートリストを示す。例えば、図に示すように、マルチキャストアドレス「０１ＡＢ」とポート１及び２を対応付けておく。レイヤ２スイッチ８２０は、ルータ８１０からマルチキャストアドレスが「０１ＡＢ」のパケットを受信した場合、この配信ポートリストを参照し、当該パケットをポート１及び２から送信する。
【００１３】
しかしながら、この方法では、ポート１に接続していた端末を、ポート３へ移動した場合にも、マルチキャストアドレスが「０１ＡＢ」のパケットをポート１及び２から送信してしまうという問題がある。
【００１４】
尚、従来のマルチキャストパケットの通信制御方法として特許文献１が知られている。
【特許文献１】特開２００２−４４１４３号公報
【発明の開示】
【発明が解決しようとする課題】
【００１５】
このように、従来の中継機器では、マルチキャストアドレスに対応するポートの固定的な設定しか行えなかったため、マルチキャストのデータパケットを配信する場合に、端末が接続されているポートを移動すると、移動した端末へデータを配信することができないという問題点があった。
【００１６】
本発明は、このような問題点を解決するためになされたもので、端末へマルチキャストのデータパケットを配信する場合に、端末が接続されているポートを移動しても、移動した端末へデータを配信することができる中継機器を提供することを目的とする。
【課題を解決するための手段】
【００１７】
本発明にかかる中継機器は、マルチキャストアドレスを含むパケットを送信可能な配信装置と、端末識別アドレスを含むパケットを送受信し、前記端末識別アドレスにより識別される端末との通信を中継する中継機器であって、マルチキャストアドレスと前記端末の端末識別アドレスを対応付ける配信先アドレスリストと、前記端末の端末識別アドレス及び端末へ送信する前記中継機器のインタフェースの識別子（例えば、本実施形態におけるレイヤ２スイッチのポート）を対応付ける学習アドレスリストと、前記マルチキャストアドレス、前記インタフェースの識別子及び前記端末の端末識別アドレスを対応付ける配信識別子リストとを格納する記憶部と、前記端末から受信したパケットに含まれる端末識別アドレス及び当該パケットを受信した前記インタフェースの識別子に基づき、前記学習アドレスリストを設定する中継部と、前記配信先アドレスリスト及び前記学習アドレスリストに基づき、前記配信識別子リストを設定する制御部とを備え、前記中継部は、前記配信装置からマルチキャストアドレスを含むパケットを受信した場合に、前記配信識別子リストに基づいて、対応するインタフェースから当該パケットを端末へ送信するものである。これにより、マルチキャストのデータパケットを効率よく配信でき、さらに、端末が接続されるインタフェースをあらかじめ特定せずに配信することができる。
【００１８】
上述の中継機器において、前記中継部は、前記端末から受信したパケットに含まれる端末識別アドレスが、前記学習アドレスリストに存在しない場合に、当該端末識別アドレス及び当該パケットを受信したインタフェースの識別子を前記学習アドレスリストに追加し、前記制御部は、前記追加された端末識別アドレスが、前記配信先アドレスリストに存在する場合に、該当するマルチキャストアドレス、当該インタフェースの識別子及び前記端末の端末識別アドレスを前記配信識別子リストに追加してもよい。これにより、接続された端末を自動的に検出し、当該端末へマルチキャストのパケットの転送を開始することができる。
【００１９】
上述の中継機器において、前記中継部は、前記学習アドレスリストに設定されている端末識別アドレスを含むパケットを、一定時間、受信しない場合に、当該端末識別アドレス及び当該インタフェースの識別子を前記学習アドレスリストから削除し、前記制御部は、前記削除された端末識別アドレスが、前記配信先アドレスリストに存在する場合に、該当するマルチキャストアドレス、当該インタフェースの識別子及び前記端末の端末識別アドレスを前記配信識別子リストから削除してもよい。これにより、切断された端末を自動的に検出し、当該端末へマルチキャストのパケットの転送を停止することができる。
【００２０】
上述の中継機器において、前記中継部は、前記端末から受信したパケットに含まれる端末識別アドレスが、前記学習アドレスリストに存在し、かつ、当該パケットを受信したインタフェースの識別子が、前記学習アドレスリストに設定されている識別子と一致しない場合に、前記学習アドレスリストに設定されている識別子を当該パケットを受信したインタフェースの識別子に変更し、前記制御部は、前記変更されたインタフェースの識別子の端末識別アドレスが、前記配信先アドレスリストに存在する場合に、前記配信識別子リストに設定されているインタフェースの識別子を当該パケットを受信したインタフェースの識別子に変更してもよい。これにより、接続されているインタフェースが変更された端末を自動的に検出し、当該端末へマルチキャストのパケットの適切なインタフェースから転送できる。
【００２１】
また、本発明にかかる中継機器は、マルチキャストアドレスを含むパケットを送信可能な配信装置と、端末識別アドレスを含むパケットを送受信し、前記端末識別アドレスにより識別される端末との通信を中継する中継機器であって、マルチキャストアドレスと前記端末の端末識別アドレスを対応付ける配信先アドレスリストを格納する記憶部と、前記端末から受信したパケットに含まれる端末識別アドレス、前記パケットを受信した前記中継機器のインタフェースの識別子及び前記配信先アドレスリストに基づき、前記端末へ送信するインタフェースを特定する制御部と、前記配信装置から受信したパケットを、前記制御部において特定されたインタフェースから、前記端末へ送信する中継部とを備えるものである。これにより、マルチキャストのデータパケットを効率よく配信でき、さらに、端末が接続されるインタフェースをあらかじめ特定せずに配信することができる。
【００２２】
また、本発明にかかる中継機器は、マルチキャストアドレスを含むパケットを送信可能な配信装置と、端末識別アドレスを含むパケットを送受信し、前記端末識別アドレスにより識別される端末との通信を中継する中継機器であって、マルチキャストアドレスと、端末識別アドレスと、中継機器のインタフェースの識別子を互いに関連付けて格納する記憶部と、前記端末から受信したパケットに含まれる端末識別アドレスと、当該パケットを受信したインタフェースの識別子に基づいて、前記記憶部の端末識別アドレスとインタフェースの識別子を設定する手段と、前記配信装置からマルチキャストアドレスを含むパケットを受信した場合に、前記記憶部に格納された情報に基づいて、当該端末識別アドレスに対応するインタフェースを介して、当該パケットを端末に対して送信するものである。これにより、マルチキャストのデータパケットを効率よく配信でき、さらに、端末が接続されるインタフェースをあらかじめ特定せずに配信することができる。
【発明の効果】
【００２３】
本発明によれば、端末へマルチキャストのデータパケットを配信する場合に、端末が接続しているポートを移動しても、移動した端末へデータを効率よく配信することができる中継機器を提供することができる。
【発明を実施するための最良の形態】
【００２４】
まず、図１を用いて、本実施形態にかかる通信システム１００の構成について説明する。この通信システム１００は、図に示されるように、ルータ１１０、レイヤ２スイッチ１２０、端末１３０ａ、１３０ｂ及び１３０ｃを備えている。ルータ１１０は、ＬＡＮケーブル等により、レイヤ２スイッチのポート４に接続されており、端末１３０ａ、１３０ｂ及び１３０ｃは、同様に、レイヤ２スイッチ１２０のポート１、ポート２及びポート３にそれぞれ接続されている。また、マルチキャストアドレスが「０１ＡＢ」のマルチキャストグループには、端末１３０ａ及び１３０ｂが属している。端末１３０ａ、１３０ｂ及び１３０ｃのユニキャストのアドレスは、それぞれの「Ａ」、「Ｂ」及び「Ｃ」である。
【００２５】
通信システム１００は、ＩＧＭＰ等のマルチキャストのプロトコルをサポートしていない端末１３０ａ、１３０ｂ及び１３０ｃに対し、レイヤ２スイッチ１２０によって、マルチキャストのデータパケットを効率よく配信することができる。また、端末１３０ａと１３０ｃの間や、その他の通信機器間でユニキャストのデータパケットを、レイヤ２スイッチ１２０を介して送受信することもできる。尚、通信システム１００において、送受信されるパケットのフォーマットは、例えば、図９に示されるフォーマットである。
【００２６】
例えば、ルータ１１０には、図示しない、マルチキャストのデータパケットを配信する配信サーバやインターネット等の他のネットワークが接続されている。配信サーバから受信したマルチキャストのデータパケットを、ルータ１１０が受信し、レイヤ２スイッチ１２０を介して、マルチキャストグループに属する端末１３０ａ及び１３０ｂへ配信する。
【００２７】
ルータ１１０は、他のネットワークから受信したマルチキャストのデータパケットを中継することができる中継機器である。ルータ１１０は、他のネットワークからのマルチキャストのデータパケットを中継できれば、ルータに限らず、レイヤ３スイッチ、ゲートウェイ等でもよい。ルータ１１０は、他のネットワークからマルチキャストのデータパケットを受信するために、ＤＶＭＲＰ（Distance Vector Multicast Routing Protocol）やＰＩＭ−ＤＭ（Protocol Independent Multicast-Dense Mode）等のマルチキャストルーティングプロトコルをサポートしていることが好ましい。また、ルータ１１０は、マルチキャストアドレスが「０１ＡＢ」のマルチキャストグループにデータパケットを転送するために、あらかじめルータ１１０内のルーティングテーブル等にマルチキャストアドレスを設定してもよい。
【００２８】
例えば、ルータ１１０は、他のネットワークからパケットを受信すると、宛先アドレス等とルーティングテーブルを参照し、アドレスがマルチキャストグループのアドレスであれば、レイヤ２スイッチ１２０へ当該パケットを送信する。このとき、参照するパケットのアドレスは、ルータ１１０の機能やルーティングテーブルの条件に応じて、ＭＡＣアドレスやＩＰアドレス、その他の識別子であってもよい。
【００２９】
レイヤ２スイッチ１２０は、ルータ１１０から受信したマルチキャストのデータパケットを中継することができる中継機器である。レイヤ２スイッチ１２０は、ルータ１１０からのマルチキャストのデータパケットを中継できれば、レイヤ２スイッチに限らず、ハブ、レイヤ３スイッチ、ルータ、ゲートウェイ等でもよい。レイヤ２スイッチ１２０は、ポート１、２、３及び４の他、後述するように中継部２１０、制御部２２０及び記憶部２３０を備えている。レイヤ２スイッチ１２０は、効率よくパケットの転送を行うために、各ポートから受信するパケットを監視し、ポートに接続されている端末のアドレスを学習する。また、レイヤ２スイッチ１２０には、マルチキャストをサポートしていない端末にマルチキャストのデータパケットを転送するために、あらかじめ、マルチキャストグループに属している端末のアドレスを登録しておき、マルチキャストアドレスを端末のアドレスへ変換し、端末が接続されているポートからパケットを送信する。
【００３０】
例えば、レイヤ２スイッチ１２０は、ルータ１１０から受信したパケットの宛先アドレスを参照し、アドレスが「Ａ」の場合、ポート１から当該バケットをそのまま送信し、アドレスがマルチキャストアドレスの「０１ＡＢ」の場合、マルチキャストパケットを、ポート１、ポート２から送信する。
【００３１】
例えば、端末１３０ａは、宛先アドレスが「Ａ」のパケットをレイヤ２スイッチ１２０から受信し、また、送信元アドレスが「Ａ」のパケットをレイヤ２スイッチ１２０へ送信する。
【００３２】
次に、図２を用いて、本実施形態にかかるレイヤ２スイッチ１２０の構成について説明する。このレイヤ２スイッチ１２０は、図に示されるように、中継部２１０、制御部２２０、記憶部２３０、ポート１、２、３及び４を備えている。また、中継部２１０は、ポート１、２、３、４及び制御部４４０と接続されており、制御部２２０は、さらに、記憶部２３０と接続されている。レイヤ２スイッチ１２０は、その他にも、電源部や表示部、設定用の端末を直接接続するＲＳ−２３２Ｃのポート等を備えていてもよい。
【００３３】
例えば、ポート４において、ルータ１１０から宛先アドレス「Ａ」のパケットを受信すると、中継部２１０において、当該パケットの宛先アドレス等を参照し、当該パケットがポート１から送信される。また、パケットの宛先アドレスや送信元アドレス等に基づいて、制御部２２０において、記憶部２３０を参照し、中継部２１０へマルチキャストアドレス等が設定される。
【００３４】
ポート１、２、３及び４は、ルータ１１０や端末１３０ａ等と通信するための通信ケーブルを接続する通信ポートである。例えば、ポート１、２、３及び４には、ＬＡＮケーブルや光ファイバ等が接続される。ポート１、２、３及び４は、全て同じ形状、機能でもよいし、例えば、ルータ１１０と接続されるポート４のみ、他のポートよりも広帯域なものとしてもよい。
【００３５】
中継部２１０は、パケットの中継処理を行う専用の回路であり、例えば、スイッチチップ等の半導体集積回路である。中継部２１０は、その内部に記憶部を有しており、後述する学習アドレスリストや配信ポート・アドレスリストを格納している。また、中継部２１０は、各ポートから受信されるパケットを解析してアドレスを学習し、学習アドレスリストの更新や、制御部２２０へ学習アドレスの通知を行う。また中継部２１０は、学習アドレスリストや配信ポート・アドレスリストに基づいて、受信したパケットを該当するポートから送信する。
【００３６】
制御部２２０は、中継部２１０の設定や、各種の制御処理を行う制御回路であり、例えば、ＣＰＵ等である。制御部２２０は、後述する記憶部２３０の配信先アドレスリストの設定や、中継部２１０から学習アドレスの通知が入力されると、配信先アドレスリストに基づき、中継部２１０の配信ポート・アドレスリストの設定を行う。
【００３７】
記憶部２３０は、後述する配信先アドレスリストや各種制御プログラム等を格納する記憶装置である。記憶部２３０は、電源を落としても情報が消えないように、フラッシュメモリやＥＥＰＲＯＭ等としてもよいし、ハードディスクやメモリカード等の外部記憶装置としてもよい。
【００３８】
次に、図３及び図４を用いて、本実施形態にかかる配信先アドレスリスト、学習アドレスリスト及び配信ポート・アドレスリストについて説明する。これらのリストは、アドレスやポート等を対応付けるテーブル構造のデータである。
【００３９】
図３は、記憶部２３０に格納される配信先アドレスリストの一例を示している。配信先アドレスリストには、図に示されるように、マルチキャストアドレスと、マルチキャストアドレスに対応する配信先の端末のアドレスが登録されている。ここでは、マルチキャストアドレス「０１ＡＢ」には、配信先アドレス「Ａ」及び「Ｂ」が登録されている。このリストに基づき、配信ポート・アドレスリストを設定することにより、マルチキャストアドレス「０１ＡＢ」のパケットは、接続されているポートに依存せずにアドレス「Ａ」及び「Ｂ」の端末へ送信することができる。
【００４０】
配信先アドレスリストの設定は、例えば、設定用の端末を、ＲＳ−２３２Ｃ経由で直接接続したり、ポート１乃至４を介して接続して行われる。コンソールやｔｅｌｎｅｔ、ブラウザプログラムにより、マルチキャストアドレス及び配信先アドレスを指定し登録用のコマンドが入力され、制御部２２０によって、記憶部２３０の配信先アドレスリストに当該マルチキャストアドレス及び配信先アドレスが設定される。
【００４１】
また、設定用の端末で配信先アドレスリストの設定を行う場合には、端末１３０ａや１３０ｂのアドレスをあらかじめ調べておく必要がある。また、設定用の端末に限らず、端末１３０ａ、１３０ｂあるいは１３０ｃにより設定してもよい。端末１３０ａや１３０ｂにおいて登録する場合には、その場でアドレスがわかるため、あらかじめアドレスを調べておく必要はない。例えば、設定専用のアプリケーションプログラムにより、自動的に端末のアドレスを検出し、マルチキャストアドレスを入力するだけで登録したり、マルチキャストアドレスに関連する配信コンテンツの名称を入力するだけで登録してもよい。
【００４２】
図４（ａ）は学習アドレスリスト、図４（ｂ）は、配信ポート・アドレスリストの一例を示している。これらのリストは、中継部２１０の内部に格納されているが、中継部２１０が参照、更新できれば、記憶部２３０に格納してもよい。
【００４３】
図４（ａ）の学習アドレスリストには、中継したパケットのアドレスから学習した端末のアドレスと、そのアドレスに対応するポートが登録されている。ここでは、学習アドレスの「Ａ」、「Ｂ」、「Ｃ」に、学習ポートがそれぞれ「１」、「２」、「３」が登録されている。このリストにより、宛先アドレスが「Ａ」、「Ｂ」、「Ｃ」のパケットは、それぞれポート１、２、３から送信される。
【００４４】
例えば、中継部２１０は、送信元アドレスが「Ａ」のパケットをポート１から受信すると、学習アドレスリストに当該アドレスとポートを設定する。中継部２１０は、その後、宛先アドレスが「Ａ」のアドレスのパケットを受信すると、アドレス「Ａ」をキーとして学習アドレスリスト検索してポートを決定し、ポート１から当該パケットを送信する。
【００４５】
図４（ｂ）の配信ポート・アドレスリストには、マルチキャストアドレスと、マルチキャストアドレスに対応する配信ポート及び配信先アドレスが登録されている。ここでは、マルチキャストアドレス「０１ＡＢ」に、配信ポート「１」及び「２」、配信先アドレス「Ａ」及び「Ｂ」が登録されている。ここでは、１つの配信ポート及び配信先アドレスの欄に、複数設定しているが、配信ポートと配信先のアドレスの数に応じて、欄を分けてもよい。このリストにより、マルチキャストアドレス「０１ＡＢ」のパケットは、ポート１及び２から、送信することができる。
【００４６】
また、配信ポート・アドレスリストの配信先アドレスの欄を使用しなくてもよく、学習アドレスリストの学習ポートから、配信する端末のアドレスを検索してもよい。配信先アドレスの欄を使用した場合には、学習アドレスリストを検索する必要がないため、転送処理を高速に行うことができ、配信先アドレスの欄を使用しない場合には、配信先アドレスの欄のメモリが不要のため、少ないメモリで転送処理を実現することができる。
【００４７】
例えば、中継部２１０は、宛先アドレスが「０１ＡＢ」のパケットを受信すると、アドレス「０１ＡＢ」をキーとして配信ポート・アドレスリストを検索して、配信ポート及び配信先アドレスを決定し、ポート１、ポート２から送信する。
【００４８】
次に、図５乃至図７を用いて、本実施形態にかかる配信先の追加、削除及び変更の処理について説明する。本実施形態では、効率よくマルチキャストアドレスのパケットを転送するために、前述の配信先アドレスリスト、学習アドレスリスト及び配信ポート・アドレスリストを用いて、転送するポート及びアドレスを追加、削除及び変更することができる。
【００４９】
図５は、本実施形態にかかる配信先の追加の処理を示すフローチャートである。本実施形態では、ポートに接続された端末のアドレスを検出し、配信先へ追加され、その後、転送が行われる。ここでは、一例として、ポート１に端末１３０ａを接続し、通信を開始した場合について説明する。学習アドレスリストに、端末１３０ａのアドレス「Ａ」が設定されておらず、配信先アドレスリストに、マルチキャストアドレス「０１ＡＢ」と配信先アドレス「Ａ」が設定された状態で、この処理が開始される。
【００５０】
まず、ポート１に端末１３０ａを接続すると、パケットがポート１から受信される。そして、受信したパケットから新アドレスを検出する（Ｓ５０１）。この処理は、例えば、中継部２１０において、ポート１から受信したパケットを解析し、当該パケットの送信元アドレスを参照する。そして、中継部２１０は、アドレス「Ａ」をキーとして学習アドレスリストの学習アドレスを検索する。ここでは、当該アドレスが設定されていないため、新しいアドレスとして、学習アドレスリストに、受信したアドレス「Ａ」とポート１を設定する。さらに、中継部２１０は、このアドレス「Ａ」とポート１を制御部２２０へ通知する。
【００５１】
続いて、当該アドレスが配信先アドレスリストにあるか判定する（Ｓ５０２）。この処理は、例えば、制御部２２０において、中継部２１０からアドレス「Ａ」とポート１が入力されると、当該アドレスをキーとして、配信先アドレスリストの配信先アドレスを検索する。ここでは、アドレス「Ａ」にはマルチキャストアドレス「０１ＡＢ」が設定されているため、当該アドレスありと判定される。
【００５２】
Ｓ５０２において、当該アドレスが配信先アドレスリストにあると判定された場合、当該アドレスを配信ポート・アドレスリストに追加する（Ｓ５０３）。この処理は、例えば、制御部２２０において、配信先アドレスリストを検索して得られた、マルチキャストアドレス「０１ＡＢ」、アドレス「Ａ」、さらに、当該アドレスのポート１を、中継部２１０へ出力する。そして、中継部２１０において、配信先ポート・アドレスリストを検索し、ここでは、当該アドレス等がまだ設定されていないため、マルチキャストアドレス、ポート、アドレスを配信ポート・アドレスリストへ設定する。
【００５３】
こうして、配信ポート・アドレスリストが設定され、マルチキャストアドレスが「０１ＡＢ」のパケットが、ポート１から送信される。このように、ポートに端末が接続されたことを自動的に検出することにより、接続されたポートのみにパケットを転送することができる。
【００５４】
図６は、本実施形態にかかる配信先の削除の処理を示すフローチャートである。本実施形態では、ポートから切断された端末のアドレスを検出し、配信先から削除され、その後、転送が行われない。ここでは、一例として、ポート１から端末１３０ａのケーブルを抜く等により、通信が途絶えた場合について説明する。学習アドレスリストに、端末１３０ａのアドレス「Ａ」とポート１が設定されており、配信先アドレスリストに、マルチキャストアドレス「０１ＡＢ」と配信先アドレス「Ａ」が設定された状態で、この処理が開始される。
【００５５】
まず、ポート１から端末１３０ａのケーブルを抜くと、パケットがポート１から全く受信されなくなり、無通信のアドレスを検出する（Ｓ６０１）。この処理は、例えば、中継部２１０において、学習アドレスリストに登録されているアドレス及びポートから該当するパケットを受信しているか、タイマーにより監視している。このタイマーの間に、該当するパケットを受信しない場合、無通信であることを検出する。このタイマーは、例えば、３００秒であるが、その他の値でもよい。尚、端末を接続していてもパケットを受信しないと無通信としてしまうが、一般的には定期的に端末からパケットが送信されているため、正常に、無通信を検出することができる。例えば、より確実に無通信を検出するために、レイヤ２スイッチ１２０から端末１３０ａへ、定期的に、ＩＣＭＰ（Internet Control Message Protocol）のＥＣＨＯパケットを送信してもよい。この他、端末１３０ａの無通信を、ポートのリンクの状態により検出してもよい。中継部２１０は、無通信を検出した場合、学習アドレスリストから、無通信となったアドレス「Ａ」とポート１を削除する。さらに、中継部２１０は、このアドレス「Ａ」とポート１を制御部２２０へ通知する。
【００５６】
続いて、当該アドレスが配信先アドレスリストにあるか判定する（Ｓ６０２）。この処理は、Ｓ５０２と同様に、制御部２２０において、配信先アドレスリストを検索し、ここでは、アドレス「Ａ」にはマルチキャストアドレス「０１ＡＢ」が登録されているため、当該アドレスありと判定される。
【００５７】
Ｓ６２０において、当該アドレスが配信先アドレスリストにあると判定された場合、当該アドレスを配信ポート・アドレスリストから削除する（Ｓ６０３）。この処理は、例えば、制御部２２０において、配信先アドレスリストを検索して得られた、マルチキャストアドレス「０１ＡＢ」、アドレス「Ａ」、さらに、当該アドレスのポート１を、中継部２１０へ出力する。そして、中継部２１０において、配信先ポート・アドレスリストを検索し、ここでは、当該アドレス等がすでに設定されているため、マルチキャストアドレス、ポート、アドレスを配信ポート・アドレスリストから削除する。
【００５８】
こうして、配信ポート・アドレスリストから削除され、マルチキャストアドレスが「０１ＡＢ」のパケットは、転送されなくなる。このように、ポートから端末が切断されたことを自動的に検出することにより、接続されていないポートにはパケットを転送しないようにすることができる。
【００５９】
図７は、本実施形態にかかる配信先の変更の処理を示すフローチャートである。本実施形態では、接続されているポートが変更された端末のアドレスを検出し、配信先が変更され、その後、変更されたポートへ転送が行われる。ここでは、一例として、端末１３０ａのケーブルをポート１からポート３へ差し替えた場合について説明する。学習アドレスリストに端末１３０ａのアドレス「Ａ」とポート１が設定されており、配信先アドレスリストに、マルチキャストアドレス「０１ＡＢ」と配信先アドレス「Ａ」が設定された状態で、この処理が開始される。
【００６０】
まず、端末１３０ａのケーブルをポート１からポート３へ差し替えると、パケットがポート３から受信される。そして、受信したパケットからポートの変更を検出する（Ｓ７０１）。この処理は、例えば、中継部２１０において、ポート３から受信したパケットを解析し、当該パケットの送信元アドレスを参照する。そして、中継部２１０は、学習アドレスリストの学習アドレスを検索する。ここでは、アドレス「Ａ」がポート１として登録されているため、ポート変更が検出され、学習アドレスリストのアドレス「Ａ」の学習ポートをポート３に変更する。さらに、中継部２１０は、このアドレス「Ａ」とポート３を制御部２２０へ通知する。
【００６１】
続いて、当該アドレスが配信先アドレスリストにあるか判定する（Ｓ７０２）。この処理は、Ｓ５０２と同様に、制御部２２０において、配信先アドレスリストを検索し、ここでは、アドレス「Ａ」にはマルチキャストアドレス「０１ＡＢ」が登録されているため、当該アドレスありと判定される。
【００６２】
Ｓ７０２において、当該アドレスが配信先アドレスリストにあると判定された場合、当該アドレスを配信ポート・アドレスリストを変更する（Ｓ７０３）。この処理は、例えば、制御部２２０において、配信先アドレスリストを検索して得られた、マルチキャストアドレス「０１ＡＢ」と、アドレス「Ａ」と、さらに、当該アドレスのポート３を、中継部２１０へ出力する。そして、中継部２１０において、配信先ポート・アドレスリストを検索し、ここでは、当該アドレス等が設定されているため、該当する配信ポートを変更する。
【００６３】
こうして、配信ポート・アドレスリストが変更され、マルチキャストアドレスが「０１ＡＢ」のパケットが、ポート３から送信される。このように、端末が接続されているポートの変更を自動的に検出することにより、変更されたポートのみにパケットを転送することができる。
【００６４】
上述のように、あらかじめ、マルチキャストアドレスと配信先のアドレスを登録しておくことにより、ＩＧＭＰ等のマルチキャストを使えない環境においても、マルチキャストのパケットを効率よく配信することができる。また、配信するポートは登録しないため、物理的なネットワーク構成を意識せずに、マルチキャストアドレスと配信先の登録が可能である。さらに、配信先の端末がレイヤ２スイッチのポートから切断されたり、端末が故障し通信不能となった場合には、自動的に配信を停止することができる。
【００６５】
尚、上述の例では、配信先アドレスリストをあらかじめ設定する方法について説明したが、これに限らず、配信先アドレスリストを自動的に設定してもよい。例えば、マルチキャストアドレスは、あらかじめ設定されており、ポートに接続された端末を検出し、当該端末のアドレスを無条件、あるいは一定の条件で、マルチキャストアドレスに対応付けてもよい。設定されているマルチキャストアドレスのパケットのみを接続されている端末へ配信することができる。
【００６６】
また、上述の例では、レイヤ２スイッチに接続されている端末や接続している回線を特定するための識別子として、ＭＡＣアドレスとレイヤ２スイッチのポートの番号を用いたが、これに限らず、他の識別子でもよい。例えば、ＩＰアドレス、仮想ポートの番号、ＶＬＡＮの識別子、ＶＰＮの識別子、その他の仮想的なリンクの識別子、電話番号、ホスト名称、回線名称でもよい。
【図面の簡単な説明】
【００６７】
【図１】本発明の実施の形態にかかる通信システムの構成図である。
【図２】本発明の実施の形態にかかる中継機器の構成図である。
【図３】本発明の実施の形態にかかるアドレスリストを示す図である。
【図４】本発明の実施の形態にかかるアドレスリストを示す図である。
【図５】本発明の実施の形態にかかる配信先の追加の処理を示すフローチャートである。
【図６】本発明の実施の形態にかかる配信先の削除の処理を示すフローチャートである。
【図７】本発明の実施の形態にかかる配信先の変更の処理を示すフローチャートである。
【図８】従来の通信システムの構成図である。
【図９】パケットのフォーマットの一例を示す図である。
【図１０】従来の配信リストを示す図である。
【符号の説明】
【００６８】
１００  通信システム
１１０  ルータ
１２０  レイヤ２スイッチ
１３０ａ〜ｃ  端末
２１０  中継部
２２０  制御部
２３０  記憶部
【図１】
2005286681.tif 000003
【図２】
2005286681.tif 000004
【図３】
2005286681.tif 000005
【図４】
2005286681.tif 000006
【図５】
2005286681.tif 000007
【図６】
2005286681.tif 000008
【図７】
2005286681.tif 000009
【図８】
2005286681.tif 000010
【図９】
2005286681.tif 000011
【図１０】
2005286681.tif 000012