(57)【要約】【課題】      中継経路上のすべてのルータをマルチキャスト対応にしたり、マルチキャスト・ルーティング情報を交換するプロトコルをすべてのルータに実装したりすることなく、簡易にマルチキャストネットワークを構築すること。【解決手段】  受信者端末（Ｒｉ）を配下に有する受信側ゲートウェイ装置ＨＧＷ（Ｂ）がマルチキャストパケット配信元の送信者端末（Ｓ）を配下に持つ送信側ゲートウェイ装置ＨＧＷ（Ａ）に対してトンネル接続要求メッセージを送信する。一方、トンネル接続要求メッセージを受けた送信側ゲートウェイ装置ＨＧＷ（Ａ）はマルチキャストパケットを受信側ゲートウェイ装置ＨＧＷ（Ｂ）へ転送するための仮想的な通信路を確立する。【選択図】    図３
2006074132.tif 000002
【特許請求の範囲】
【請求項１】
受信者端末を配下に有する受信側ゲートウェイ装置がマルチキャストパケット配信元の送信者端末を配下に持つ送信側ゲートウェイ装置に対してトンネル接続要求メッセージを送信するステップと、トンネル接続要求メッセージを受けて送信側ゲートウェイ装置がマルチキャストパケットを受信側ゲートウェイ装置へ転送するための仮想的な通信路を確立するステップと、を具備するマルチキャスト通信方法。
【請求項２】
前記受信側ゲートウェイ装置が配下の受信者端末からマルチキャスト受信要求を受信するステップと、マルチキャスト受信要求を受信したインターフェイス部の受信者情報リストに同一エントリが存在しないことを条件にマルチキャストアドレスと送信者端末を特定したエントリを登録するステップとを具備し、マルチキャスト受信要求を受信したら全てのインターフェイス部の受信者情報リストを検索して同一エントリが存在しなければ前記トンネル接続要求メッセージを送信する請求項１記載のマルチキャスト通信方法。
【請求項３】
トンネル接続要求メッセージを受信した送信側ゲートウェイ装置がメッセージ送信元の受信側ゲートウェイ装置を宛先とするトンネルインターフェイスを作成するステップと、前記送信者端末を送信元アドレスとしマルチキャストアドレスを送信先アドレスとするマルチキャストパケットを前記受信側ゲートウェイ装置へも送信するエントリをマルチキャストルーティングテーブルに追加するステップと、を具備する請求項１又は請求項２記載のマルチキャスト通信方法。
【請求項４】
受信者端末を配下に有する受信側ゲートウェイ装置がマルチキャストパケット配信元の送信者端末を配下に持つ送信側ゲートウェイ装置に対してトンネル解除要求メッセージを送信するステップと、トンネル解除要求メッセージを受けて送信側ゲートウェイ装置がマルチキャストパケットを受信側ゲートウェイ装置へ転送するための仮想的な通信路を消滅するステップと、を具備するマルチキャスト通信方法。
【請求項５】
前記受信側ゲートウェイ装置が配下の受信者端末からマルチキャスト停止要求を受信するステップと、マルチキャスト停止要求を受信したインターフェイス部上に同一エントリの参加者が存在しないことを条件に当該エントリを削除するステップとを具備し、マルチキャスト停止要求を受信したら全てのインターフェイス部の受信者情報リストを検索して同一エントリが存在しなければ前記トンネル解除要求メッセージを送信する請求項４記載のマルチキャスト通信方法。
【請求項６】
トンネル解除要求メッセージを受信した送信側ゲートウェイ装置がメッセージ送信元の受信側ゲートウェイ装置を宛先とするトンネルインターフェイスを削除するステップと、前記送信者端末を送信元アドレスとしマルチキャストアドレスを送信先アドレスとするマルチキャストパケットを前記受信側ゲートウェイ装置へも送信するエントリをマルチキャストルーティングテーブルから削除するステップと、を具備する請求項４又は請求項５記載のマルチキャスト通信方法。
【請求項７】
前記仮想的な通信路は、マルチキャストパケットをユニキャストパケットでカプセル化して受信側ゲートウェイ装置へ送信するものであることを特徴とする請求項１から請求項６のいずれかに記載のマルチキャスト通信方法。
【請求項８】
制御プログラムが格納されたメモリと、前記メモリから制御プログラムを読み込んで実行するプロセッサと、配下の受信者端末が属するセグメント及び外部ネットワークが接続される複数のインターフェイス部とを備えたゲートウェイ装置であって、前記プロセッサは配下の受信者端末からマルチキャスト受信要求を受信すると、マルチキャスト受信要求を受信したインターフェイス部の受信者情報リストに同一エントリが存在しないことを条件にマルチキャストアドレスと送信者端末を特定したエントリを登録し、全てのインターフェイス部の受信者情報リストを検索して同一エントリが存在しなければトンネル接続要求メッセージを、前記送信者端末を配下に持つ送信側ゲートウェイ装置に送信するゲートウェイ装置。
【請求項９】
制御プログラムが格納されたメモリと、前記メモリから制御プログラムを読み込んで実行するプロセッサと、配下の受信者端末が属するセグメント及び外部ネットワークが接続される複数のインターフェイス部とを備えたゲートウェイ装置であって、前記プロセッサは配下の受信者端末からマルチキャスト停止要求を受信すると、マルチキャスト停止要求を受信したインターフェイス部上に同一エントリの参加者が存在しないことを条件に当該エントリを削除し、全てのインターフェイス部の受信者情報リストを検索して同一エントリが存在しなければトンネル解除要求メッセージを、マルチキャスト配信元の送信者端末を配下に持つ送信側ゲートウェイ装置へ送信するゲートウェイ装置。
【請求項１０】
制御プログラムが格納されたメモリと、前記メモリから制御プログラムを読み込んで実行するプロセッサと、配下の送信者端末が属するセグメント及び外部ネットワークが接続される複数のインターフェイス部とを備えたゲートウェイ装置であって、前記プロセッサはトンネル接続要求メッセージを受信すると、メッセージ送信元の受信側ゲートウェイ装置を宛先とするトンネルインターフェイスを作成し、前記送信者端末を送信元アドレスとしマルチキャストアドレスを送信先アドレスとするマルチキャストパケットを前記受信側ゲートウェイ装置へも送信するエントリをマルチキャストルーティングテーブルに追加するゲートウェイ装置。
【請求項１１】
制御プログラムが格納されたメモリと、前記メモリから制御プログラムを読み込んで実行するプロセッサと、配下の送信者端末が属するセグメント及び外部ネットワークが接続される複数のインターフェイス部とを備えたゲートウェイ装置であって、前記プロセッサはトンネル解除要求メッセージを受信すると、メッセージ送信元の受信側ゲートウェイ装置を宛先とするトンネルインターフェイスを削除し、前記送信者端末を送信元アドレスとしマルチキャストアドレスを送信先アドレスとするマルチキャストパケットを前記受信側ゲートウェイ装置へも送信するエントリをマルチキャストルーティングテーブルから削除するゲートウェイ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワーク上で１：ｎ型の通信形態であるマルチキャスト通信を可能にするマルチキャスト通信方法及びゲートウェイ装置に関する。
【背景技術】
【０００２】
特定のグループに属するホストにだけ情報を送信する１：ｎ型の通信形態を実現する手法としてマルチキャスト通信がある。マルチキャスト通信は、マルチメディアコンテンツの同報配信やグループコミュニケーションの手段として有望視されている。また、マルチキャスト通信を利用してグループコミュニケーションのためのアプリケーションも開発されている（例えば、特許文献１参照）。
【特許文献１】特開２００３−０６９５４７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、マルチキャストパケットの配信にあたり、中継経路上のすべてのルータをマルチキャスト対応にする必要があり、さらにマルチキャスト・ルーティング情報を交換するプロトコルも実装する必要があるため、現実にマルチキャストネットワークを構築するのは困難であった。
【０００４】
本発明は、以上のような実情に鑑みてなされたもので、中継経路上のすべてのルータをマルチキャスト対応にしたり、マルチキャスト・ルーティング情報を交換するプロトコルをすべてのルータに実装したりする必要がなく、簡易にマルチキャストネットワークを構築可能なマルチキャスト通信方法及びゲートウェイ装置を提供することを目的とする。
【課題を解決するための手段】
【０００５】
本発明は、受信者端末を配下に有する受信側ゲートウェイ装置がマルチキャストパケット配信元の送信者端末を配下に持つ送信側ゲートウェイ装置に対してトンネル接続要求メッセージを送信する。一方、トンネル接続要求メッセージを受けた送信側ゲートウェイ装置はマルチキャストパケットを受信側ゲートウェイ装置へ転送するための仮想的な通信路を確立する。
【発明の効果】
【０００６】
本発明によれば、中継経路上のすべてのルータをマルチキャスト対応にしたり、マルチキャスト・ルーティング情報を交換するプロトコルをすべてのルータに実装したりする必要がなく、簡易にマルチキャストネットワークを構築可能なマルチキャスト通信方法及びゲートウェイ装置を提供できる。
【発明を実施するための最良の形態】
【０００７】
本発明の第１の態様は、受信者端末を配下に有する受信側ゲートウェイ装置がマルチキャストパケット配信元の送信者端末を配下に持つ送信側ゲートウェイ装置に対してトンネル接続要求メッセージを送信するステップと、トンネル接続要求メッセージを受けて送信側ゲートウェイ装置がマルチキャストパケットを受信側ゲートウェイ装置へ転送するための仮想的な通信路を確立するステップと、を具備するマルチキャスト通信方法である。
【０００８】
このように構成されたマルチキャスト通信方法によれば、受信者端末を配下に有する受信側ゲートウェイ装置が、送信者端末を配下に持つ送信側ゲートウェイ装置に対してトンネル接続要求メッセージを送信することにより、送信側ゲートウェイ装置においてマルチキャストパケットを受信側ゲートウェイ装置へ転送するための仮想的な通信路を確立することができ、中継経路上のすべてのルータをマルチキャスト対応にしたり、マルチキャスト・ルーティング情報を交換するプロトコルをすべてのルータに実装したりする必要がなく、簡易にマルチキャストネットワークを構築できる。
【０００９】
本発明の第２の態様は、第１の態様のマルチキャスト通信方法において、前記受信側ゲートウェイ装置が配下の受信者端末からマルチキャスト受信要求を受信するステップと、マルチキャスト受信要求を受信したインターフェイス部の受信者情報リストに同一エントリが存在しないことを条件にマルチキャストアドレスと送信者端末を特定したエントリを登録するステップとを具備し、マルチキャスト受信要求を受信したら全てのインターフェイス部の受信者情報リストを検索して同一エントリが存在しなければ前記トンネル接続要求メッセージを送信するものとした。
【００１０】
これにより、マルチキャスト受信要求を受信したら全てのインターフェイス部の受信者情報リストを検索して同一エントリが存在しなければトンネル接続要求メッセージを送信するので、同一メッセージを重複して送信することを防止できる。
【００１１】
本発明の第３の態様は、第１又は第２の態様のマルチキャスト通信方法において、トンネル接続要求メッセージを受信した送信側ゲートウェイ装置がメッセージ送信元の受信側ゲートウェイ装置を宛先とするトンネルインターフェイスを作成するステップと、前記送信者端末を送信元アドレスとしマルチキャストアドレスを送信先アドレスとするマルチキャストパケットを前記受信側ゲートウェイ装置へも送信するエントリをマルチキャストルーティングテーブルに追加するステップと、を具備するものとした。
【００１２】
これにより、送信側ゲートウェイ装置において、配下の送信者端末から送信されたマルチキャストパケットはマルチキャストルーティングテーブルを参照することにより受信側ゲートウェイ装置が送信相手であることが判り、受信側ゲートウェイ装置との間で確立している仮想的な通信路を介してマルチキャストパケットが転送される。
【００１３】
本発明の第４の態様は、受信者端末を配下に有する受信側ゲートウェイ装置がマルチキャストパケット配信元の送信者端末を配下に持つ送信側ゲートウェイ装置に対してトンネル解除要求メッセージを送信するステップと、トンネル解除要求メッセージを受けて送信側ゲートウェイ装置がマルチキャストパケットを受信側ゲートウェイ装置へ転送するための仮想的な通信路を消滅するステップと、を具備するマルチキャスト通信方法である。
【００１４】
このように構成されたマルチキャスト通信方法によれば、受信者端末を配下に有する受信側ゲートウェイ装置が、送信者端末を配下に持つ送信側ゲートウェイ装置に対してトンネル解除要求メッセージを送信することにより、送信側ゲートウェイ装置においてマルチキャストパケットを受信側ゲートウェイ装置へ転送するための仮想的な通信路を解除することができ、構築したマルチキャストネットワークを簡易に解除することができる。
【００１５】
本発明の第５の態様は、第４の態様のマルチキャスト通信方法において、前記受信側ゲートウェイ装置が配下の受信者端末からマルチキャスト停止要求を受信するステップと、マルチキャスト停止要求を受信したインターフェイス部上に同一エントリの参加者が存在しないことを条件に当該エントリを削除するステップとを具備し、マルチキャスト停止要求を受信したら全てのインターフェイス部の受信者情報リストを検索して同一エントリが存在しなければ前記トンネル解除要求メッセージを送信するものとした。
【００１６】
これにより、マルチキャスト停止要求を受信したら全てのインターフェイス部の受信者情報リストを検索して同一エントリが存在しなければ前記トンネル解除要求メッセージを送信するので、他の受信者端末が存在しないことを確認した上で当該マルチキャストデータの転送を停止することができる。
【００１７】
本発明の第６の態様は、第４又は第５の態様のマルチキャスト通信方法において、トンネル解除要求メッセージを受信した送信側ゲートウェイ装置がメッセージ送信元の受信側ゲートウェイ装置を宛先とするトンネルインターフェイスを削除するステップと、前記送信者端末を送信元アドレスとしマルチキャストアドレスを送信先アドレスとするマルチキャストパケットを前記受信側ゲートウェイ装置へも送信するエントリをマルチキャストルーティングテーブルから削除するステップと、を具備するものとした。
【００１８】
これにより、トンネル解除要求メッセージを受けて該当するトンネルインターフェイスを削除するとともに、該当するエントリをマルチキャストルーティングテーブルから削除するので、受信側ゲートウェイ装置に対するマルチキャストデータの転送を停止することができる。
【００１９】
本発明の第７の態様は、第１から第６のいずれかの態様のマルチキャスト通信方法において、前記仮想的な通信路は、マルチキャストパケットをユニキャストパケットでカプセル化して受信側ゲートウェイ装置へ送信するものとした。
【００２０】
これにより、送信側ゲートウェイ装置と受信側ゲートウェイ装置の間はマルチキャストデータがユニキャストされるので、中継経路上のすべてのルータをマルチキャスト対応にしたり、マルチキャスト・ルーティング情報を交換するプロトコルをすべてのルータに実装したりする必要がない。
【００２１】
本発明の第８の態様は、制御プログラムが格納されたメモリと、前記メモリから制御プログラムを読み込んで実行するプロセッサと、配下の受信者端末が属するセグメント及び外部ネットワークが接続される複数のインターフェイス部とを備えたゲートウェイ装置であって、前記プロセッサは配下の受信者端末からマルチキャスト受信要求を受信すると、マルチキャスト受信要求を受信したインターフェイス部の受信者情報リストに同一エントリが存在しないことを条件にマルチキャストアドレスと送信者端末を特定したエントリを登録し、全てのインターフェイス部の受信者情報リストを検索して同一エントリが存在しなければトンネル接続要求メッセージを、前記送信者端末を配下に持つ送信側ゲートウェイ装置に送信するゲートウェイ装置である。
【００２２】
このように構成されたゲートウェイ装置によれば、マルチキャスト受信要求を受信したら全てのインターフェイス部の受信者情報リストを検索して同一エントリが存在しなければトンネル接続要求メッセージを送信するので、同一メッセージを重複して送信することを防止できる。
【００２３】
本発明の第９の態様は、制御プログラムが格納されたメモリと、前記メモリから制御プログラムを読み込んで実行するプロセッサと、配下の受信者端末が属するセグメント及び外部ネットワークが接続される複数のインターフェイス部とを備えたゲートウェイ装置であって、前記プロセッサは配下の受信者端末からマルチキャスト停止要求を受信すると、マルチキャスト停止要求を受信したインターフェイス部上に同一エントリの参加者が存在しないことを条件に当該エントリを削除し、全てのインターフェイス部の受信者情報リストを検索して同一エントリが存在しなければトンネル解除要求メッセージを、マルチキャスト配信元の送信者端末を配下に持つ送信側ゲートウェイ装置へ送信するゲートウェイ装置である。
【００２４】
このように構成されたゲートウェイ装置によれば、マルチキャスト停止要求を受信したら全てのインターフェイス部の受信者情報リストを検索して同一エントリが存在しなければ前記トンネル解除要求メッセージを送信するので、他の受信者端末が存在しないことを確認した上で当該マルチキャストデータの転送を停止することができる。
【００２５】
本発明の第１０の態様は、制御プログラムが格納されたメモリと、前記メモリから制御プログラムを読み込んで実行するプロセッサと、配下の送信者端末が属するセグメント及び外部ネットワークが接続される複数のインターフェイス部とを備えたゲートウェイ装置であって、前記プロセッサはトンネル接続要求メッセージを受信すると、メッセージ送信元の受信側ゲートウェイ装置を宛先とするトンネルインターフェイスを作成し、前記送信者端末を送信元アドレスとしマルチキャストアドレスを送信先アドレスとするマルチキャストパケットを前記受信側ゲートウェイ装置へも送信するエントリをマルチキャストルーティングテーブルに追加するゲートウェイ装置である。
【００２６】
このように構成されたゲートウェイ装置によれば、配下の送信者端末から送信されたマルチキャストパケットはマルチキャストルーティングテーブルを参照することにより受信側ゲートウェイ装置が送信相手であることが判り、受信側ゲートウェイ装置との間で確立している仮想的な通信路を介してマルチキャストパケットが転送される。
【００２７】
本発明の第１１の態様は、制御プログラムが格納されたメモリと、前記メモリから制御プログラムを読み込んで実行するプロセッサと、配下の送信者端末が属するセグメント及び外部ネットワークが接続される複数のインターフェイス部とを備えたゲートウェイ装置であって、前記プロセッサはトンネル解除要求メッセージを受信すると、メッセージ送信元の受信側ゲートウェイ装置を宛先とするトンネルインターフェイスを削除し、前記送信者端末を送信元アドレスとしマルチキャストアドレスを送信先アドレスとするマルチキャストパケットを前記受信側ゲートウェイ装置へも送信するエントリをマルチキャストルーティングテーブルから削除するゲートウェイ装置である。
【００２８】
このように構成されたゲートウェイ装置によれば、トンネル解除要求メッセージを受けて該当するトンネルインターフェイスを削除するとともに、該当するエントリをマルチキャストルーティングテーブルから削除するので、受信側ゲートウェイ装置に対するマルチキャストデータの転送を停止することができる。
【００２９】
以下、本発明の一実施の形態にかかるマルチキャスト通信方法及びゲートウェイ装置を適用したシステムについて説明する。
【００３０】
図１は本実施の形態に係るネットワーク構成図である。ゲートウェイ装置（以下、ＨＧＷと呼ぶ）（Ａ）の配下に送信者端末（Ｓ）があり、ＨＧＷ（Ｂ）の配下に受信者端末（Ｒ１）〜（Ｒ４）がある。受信者端末（Ｒ１）（Ｒ２）はセグメント（１）に属し、受信者端末（Ｒ３）（Ｒ４）はセグメント（２）に属している。なお、送信者端末（Ｓ）も受信者端末（Ｒ１）〜（Ｒ４）も共にパーソナルコンピュータ等で構成される通信端末であるが、本例ではマルチキャスト通信における送信側と受信側を区別するために便宜的に呼称を変えている。
【００３１】
ＨＧＷ（Ａ）とＨＧＷ（Ｂ）との間の通信路は複数のルータで構築されたインターネットで構成される。本実施の形態では、ＨＧＷ（Ａ）とＨＧＷ（Ｂ）との間に存在するルータをマルチキャスト対応にすることなく、送信者端末（Ｓ）が受信者端末（Ｒ１）〜（Ｒ４）に対してマルチキャスト可能にする。具体的には、ＩＳＰのエッジルータであるＨＧＷ（Ａ）とＨＧＷ（Ｂ）にＭＬＤ（Multicast Listener Discovery）プロトコルを転送する機能である「ＭＬＤプロキシ」を応用し、ＨＧＷ（Ａ）とＨＧＷ（Ｂ）との間でＩＰｖ６マルチキャストデータ転送を可能にする仮想的な通信路（トンネル）を確立し、当該トンネルを通してＩＰｖ６マルチキャストデータを転送するものとした。
【００３２】
図２はＨＧＷ（Ａ）又は（Ｂ）のハードウエア構成図である。ＨＧＷ（Ａ）はＣＰＵ１０１がシステムバス１０２を介してメモリ１０３、ＬＡＮコントローラ１０４に接続している。ＣＰＵ１０１はメモリ１０３に格納した制御プログラムを読み込んで実行することにより、トンネルの確立、マルチキャスト通信、トンネルの解除の各制御を実行する。メモリ１０３はプログラムを格納するＲＯＭ、作業エリア等として使用するＲＡＭ等の記憶媒体で構成される。後述するトンネル制御情報テーブルはメモリ１０３に記憶させておく。また、受信者端末を配下に持つＨＧＷ（Ｂ）のメモリ１０３にはインターフェイス受信者情報リストが構築される。ＬＡＮコントローラ１０４は、いくつかのインターフェイス部Ｉ／Ｆ（１）〜Ｉ／Ｆ（４）からなるＬＡＮインターフェースモジュール１０５を制御する。各インターフェイス部Ｉ／Ｆ（１）〜Ｉ／Ｆ（４）に各セグメント又は外部ネットワークの終端部が接続される。ＨＧＷ（Ａ）は送信者端末（Ｓ）が属するＩＳＰのエッジルータとなる。ＨＧＷ（Ｂ）の基本的な構成はＨＧＷ（Ａ）と同じである。
【００３３】
次に、以上のように構成された本実施の形態の動作について具体的に説明する。
【００３４】
本実施の形態は、トンネル接続要求メッセージ（Register）とトンネル解除要求メッセージ（Deregister）を定義し、ＨＧＷ（Ａ）（Ｂ）間でこの２つの制御メッセージを交換することにより、トンネル接続の確立と解除を実現する。「Register」は、ＨＧＷ（Ｂ）配下の受信者端末（Ｒｉ）からマルチキャスト受信要求メッセージ（Join）を受信した際に、ＨＧＷ（Ｂ）から送信者端末（Ｓ）を配下に持つＨＧＷ（Ａ）に対して送信するメッセージである。ＨＧＷ（Ａ）（Ｂ）間で「Register」をやり取りすることで、トンネル接続を確立しＩＰｖ６マルチキャストデータの転送が可能になる。一方、「Deregister」は、配下の受信者端末（Ｒｉ）からマルチキャスト停止要求メッセージ（Leave）をＨＧＷ（Ｂ）が受信した時に送信されるメッセージである。ＨＧＷ（Ａ）（Ｂ）間で「Deregister」をやり取りすることで、トンネル接続を解除しＩＰｖ６マルチキャストデータの転送を停止する。以上がトンネル接続確立方式の概略である。
【００３５】
図３はＨＧＷ（Ｂ）からＨＧＷ（Ａ）に対して「Register」を送信してＩＰｖ６マルチキャストデータの転送を行うシーケンスである。送信者端末（Ｓ）が送出したマルチキャストパケットはＨＧＷ（Ａ）が取り込んで経路選択するが、初期段階ではＨＧＷ（Ａ）（Ｂ）間で仮想的な通信路（トンネル）が確立されていないので、ＨＧＷ（Ｂ）へ転送されない。
【００３６】
一方、受信者端末（Ｒ１）が、送信者端末（Ｓ）を送信元としマルチキャストアドレス（Ｇ）のマルチキャストデータの配信を受ける場合、Join（Ｓ，Ｇ）をＨＧＷ（Ｂ）へ送信する。Join（Ｓ，Ｇ）は、マルチキャストアドレス（Ｇ）で送信元が送信者端末（Ｓ）のマルチキャストデータの受信を要求するメッセージである。
【００３７】
図４はJoin（Ｓ，Ｇ）を受信したＨＧＷ（Ｂ）の動作内容を示すフロー図である。ＨＧＷ（Ｂ）は、配下の受信者端末（Ｒｉ）からJoin（Ｓ，Ｇ）を受信すると、すべてのインターフェイスについてインターフェイス受信者情報リストを検索してRegister（ＨＧＷ  Ｂ，Ｓ，Ｇ）を送信するか否か判断している。
【００３８】
ここで、インターフェイス受信者情報リストについて説明する。インターフェイス受信者情報リストは、インターフェイス部Ｉ／Ｆ（１）〜（４）毎に作成される。図５はインターフェイス受信者情報リストの概念図である。同図に示すように、インターフェイスＩ／Ｆ部毎にインターフェイス受信者情報リストが作成されている。インターフェイス受信者情報リストは、「マルチキャストグループリスト」と各マルチキャストグループに対する「ソースリスト」とから構成されている。マルチキャストグループはマルチキャストアドレスで特定し、ソースリストは送信者端末（Ｓ）のＩＰアドレスで特定する。また、１つの受信者端末は複数のマルチキャストグループに属することも可能である。参加するマルチキャストグループの数だけエントリが作成されるが、１つのインターフェイス部Ｉ／Ｆ（ｉ）に対して同じ内容のエントリは重複登録しない。
【００３９】
Join（Ｓ，Ｇ）を受信したＨＧＷ（Ｂ）は、インターフェイス部Ｉ／Ｆ（１）からインターフェイス部Ｉ／Ｆ（４）にかけて順番にインターフェイス受信者情報リストを検索する（Ｓ１０１）。
【００４０】
今、インターフェイス部Ｉ／Ｆ（ｉ）でJoin（Ｓ，Ｇ）を受信したものとする。Ｓ１０１で検索対象となったインターフェイスがJoin（Ｓ，Ｇ）を受信したインターフェイス部Ｉ／Ｆ（ｉ）であれば（Ｓ１０２）、インターフェイス部Ｉ／Ｆ（ｉ）上に登録されたインターフェイス受信者情報リストを順番にチェックする（Ｓ１０３）。その結果、いずれのインターフェイス受信者情報リストにも（Ｓ，Ｇ）のエントリが存在しなければ（Ｓ１０４）、当該インターフェイス部Ｉ／Ｆ（ｉ）に（Ｓ，Ｇ）のエントリを追加する（Ｓ１０５）。既にいずれかのインターフェイス受信者情報リストに（Ｓ，Ｇ）のエントリが存在すればエントリの追加は行わない。
【００４１】
一方、Ｓ１０２での判断の結果、Join（Ｓ，Ｇ）を受信したインターフェイス以外であれば、当該インターフェイス部Ｉ／Ｆ上に登録しているインターフェイス受信者情報リストを順番にチェックする（Ｓ１０６）。いずれかのインターフェイス受信者情報リストに（Ｓ，Ｇ）のエントリが登録されていれば（Ｓ１０７）、検出フラグ（found）に１をセットする（Ｓ１０８）。Join（Ｓ，Ｇ）を受信したインターフェイス以外の全てのインターフェイス部Ｉ／Ｆについて上記処理を繰り返す。
【００４２】
全てのインターフェイス部Ｉ／Ｆ（１）〜（４）について上記処理が完了したら、検出フラグに１がセットされているか否か判断し（Ｓ１０９）、検出フラグに１がセットされていない場合にだけRegister（ＨＧＷ  Ｂ，Ｓ，Ｇ）を送信する（Ｓ１１０）。
【００４３】
インターフェイス受信者情報リストに既に同じエントリ（Ｓ，Ｇ）が存在するということは、ＨＧＷ（Ｂ）がＨＧＷ（Ａ）との間に（Ｓ，Ｇ）に関する仮想的な通信路であるトンネル接続を確立していることを意味する。よって、新たにトンネルを確立しなくても、ＨＧＷ（Ａ）から送信元が送信者端末（Ｓ）で、送信先がマルチキャストアドレス（Ｇ）であるマルチキャストデータをＨＧＷ（Ｂ）が受信することができる。具体的には、図３のシーケンスに示すように、最初に受信者端末（Ｒ１）が発したJoin（Ｓ，Ｇ）によりＨＧＷ（Ａ）−ＨＧＷ（Ｂ）間に（Ｓ，Ｇ）に関するトンネル接続が確立している。その後、受信者端末（Ｒ２）（Ｒ３）（Ｒ４）がJoin（Ｓ，Ｇ）をＨＧＷ（Ｂ）に送信しているが、これらの要求を受けてRegister（ＨＧＷ  Ｂ，Ｓ，Ｇ）を発することは無い。
【００４４】
一方、Register（ＨＧＷ  Ｂ，Ｓ，Ｇ）を受信したＨＧＷ（Ａ）は、ＨＧＷ（Ｂ）との間にトンネル接続を確立する。
【００４５】
図７はＨＧＷ（Ａ）がRegister（ＨＧＷ  Ｂ，Ｓ，Ｇ）を受信した際の動作内容を示すフロー図である。同図に示すように、ＨＧＷ（Ａ）はトンネル制御情報テーブルを検索する（Ｓ２０１）。
【００４６】
ここで、トンネル制御情報テーブルの構成について説明する。図６に示すように、トンネル制御情報テーブルは、マルチキャストデータの転送先となるゲートウェイ装置の識別情報を示す「ＨＧＷ  ＩＤ」、マルチキャストデータの送信元を示す送信者端末（Ｓ）のＩＰアドレス及び送信先を示すマルチキャストアドレス（Ｇ）の組合せからなる「チャネル」、当該エントリ作成契機となる「Register」を受信したインターフェイス部を示す「受信インターフェイス」、確立したトンネルを所定の形式で表現した「トンネルインターフェイス」の項目で１エントリを構成している。
【００４７】
トンネル制御情報テーブルを検索した結果、エントリ（ＨＧＷ  Ｂ，Ｓ，Ｇ）が存在する場合は、既に今回のRegister（ＨＧＷ  Ｂ，Ｓ，Ｇ）で要求されたトンネル接続は確立しているので受信処理を終了する。
【００４８】
一方、エントリ（ＨＧＷ  Ｂ，Ｓ，Ｇ）が存在しなかった場合（Ｓ２０２）、トンネル接続を確立する作業に入る。先ず、Register（ＨＧＷ  Ｂ，Ｓ，Ｇ）を受信したインターフェイス部Ｉ／Ｆ（ｉ）上にＨＧＷ（Ｂ）を宛先とするトンネルインターフェイスを作成する（Ｓ２０３）。具体的には、図６に示すように、「ＨＧＷ  ＩＤ」＝Ｂ、「チャネル」＝（Ｓ，Ｇ）、「受信インターフェイス」＝Ｉ／Ｆ（１）（ＨＧＷ（Ａ）のインターフェイス部Ｉ／Ｆ（１）でRegister（ＨＧＷ  Ｂ，Ｓ，Ｇ）を受信した場合）、「トンネルインターフェイス」＝tunnel A over I/F1といったことを内容としたエントリをトンネル制御情報テーブルに書き込む。
【００４９】
次に、マルチキャストルーティングテーブルに送信元アドレスがＳ、送信先アドレスがＧであるマルチキャストパケットをトンネルデバイス（受信側ゲートウェイ装置としてのＨＧＷ（Ｂ））へ送信するようにエントリを追加する（Ｓ２０４）。トンネルインターフェイスの作成及びマルチキャストルーティングテーブルのエントリ追加によりトンネル接続が確立する（Ｓ２０５）。
【００５０】
以上のようにして、ＨＧＷ（Ｂ）には受信者端末（Ｒ１）から受信したJoin（Ｓ，Ｇ）に基づいてインターフェイス受信者情報リストにエントリ（Ｓ，Ｇ）が書き込まれ、ＨＧＷ（Ａ）にはトンネル制御情報テーブル上にＨＧＷ（Ｂ）を宛先とするトンネルインターフェイスが作成されると共に、マルチキャストルーティングテーブルに特定のマルチキャストデータをＨＧＷ（Ｂ））へ転送するエントリが追加される。
【００５１】
図８にトンネル接続が確立したＨＧＷ（Ａ）−ＨＧＷ（Ｂ）間で、送信者端末（Ｓ）が送信するマルチキャストデータを、ＨＧＷ（Ｂ）に接続されたセグメント１，２上の受信者端末（Ｒ１）〜（Ｒ４）で受信する状況を示している。同図に示すように、送信者端末（Ｓ）は送信元アドレスに「Ｓ」、送信先アドレスにマルチキャストアドレスである「Ｇ」を設定したパケットを生成して自己の属するセグメントのネットワーク上に送出する。ＨＧＷ（Ａ）は上記パケットを取り込み、パケットのヘッダの送信先をみてマルチキャストデータであると認識する。マルチキャストルーティングテーブルを参照し、送信元アドレスがＳ、送信先アドレスがＧであるパケットはトンネルデバイスにも送信するように指定したエントリにしたがって、ＨＧＷ（Ｂ）へも転送されるように制御される。すなわち、当該マルチキャストパケットにＨＧＷ（Ｂ）を宛先としたトンネルヘッダ（ユニキャストヘッダ）を付けてカプセル化し、当該カプセル化したマルチキャストデータをインターフェイス部Ｉ／Ｆ（１）からネットワーク上へ送出する。
【００５２】
ここで、トンネルヘッダはユニキャスト用ヘッダであり、送信元にＨＧＷ（Ａ）のＩＰアドレスが設定され、宛先アドレスにＨＧＷ（Ｂ）のＩＰアドレスが設定されている。これにより、ＨＧＷ（Ａ）からＨＧＷ（Ｂ）までトンネルヘッダによりマルチキャストデータはカプセル化されてユニキャストされる。これにより、ＨＧＷ（Ａ）からＨＧＷ（Ｂ）に至る経路上のルータをマルチキャスト対応にすることなく、マルチキャストデータ（ユニキャストヘッダ付）をインターネット経由でＨＧＷ（Ｂ）へ伝えることができる。
【００５３】
ＨＧＷ（Ｂ）は、マルチキャスト対応である。インターネットから取り込んだ受信パケットからマルチキャストアドレス（Ｇ）を検出すると、マルチキャストルーティングテーブルを参照して転送先のセグメントを決定する。すなわち、マルチキャストルーティングテーブルにマルチキャストアドレス（Ｇ）が設定してあるインターフェイス部Ｉ／Ｆ（ｉ）を検出して、そのインターフェイス部Ｉ／Ｆ（ｉ）に受信パケットを送出する。
【００５４】
図３に示すシーケンスを例に具体的に説明する。受信者端末（Ｒ１）の属するセグメント１がＨＧＷ（Ｂ）のインターフェイス部Ｉ／Ｆ（１）に接続し、セグメント２がＨＧＷ（Ｂ）のインターフェイス部Ｉ／Ｆ（２）に接続しているものとする。ＨＧＷ（Ｂ）が過去に受信者端末（Ｒ１）からJoin（Ｓ，Ｇ）を受信してマルチキャストルーティングテーブルに、マルチキャストアドレス（Ｇ）の受信パケットはインターフェイス部Ｉ／Ｆ（１）へ送出するように設定がなされている。この場合、図３に示すようにマルチキャストアドレス（Ｇ）の受信パケットはインターフェイス部Ｉ／Ｆ（１）へ送出するので、セグメント１に属する受信者端末（Ｒ１）（Ｒ２）へマルチキャストアドレス（Ｇ）の受信パケットが送信される。
【００５５】
この時点でセグメント２に属する受信者端末（Ｒ３）はJoin（Ｓ，Ｇ）をＨＧＷ（Ｂ）へ通知していない。このため、セグメント２へはマルチキャストアドレス（Ｇ）の受信パケットは送出されない。図３に示すシーケンスでは、その後にセグメント２に属する受信者端末（Ｒ３）がJoin（Ｓ，Ｇ）をＨＧＷ（Ｂ）へ通知している。ＨＧＷ（Ｂ）が受信者端末（Ｒ３）からJoin（Ｓ，Ｇ）を受信した時点では、既にJoin（Ｓ，Ｇ）に対応したトンネル接続が確立しているのでRegister（ＨＧＷ  Ｂ，Ｓ，Ｇ）をＨＧＷ（Ａ）へ通知すると同一メッセージを送信することとなり好ましくない。一方、セグメント２へマルチキャストアドレス（Ｇ）の受信パケットが送出されるように、ＨＧＷ（Ｂ）のマルチキャストルーティングテーブルを設定する必要はある。図３に示すように、ＨＧＷ（Ｂ）のマルチキャストルーティングテーブルをそのように設定した結果、セグメント２上の受信者端末（Ｒ３）（Ｒ４）へマルチキャストアドレス（Ｇ）の受信パケットが送出されている。
【００５６】
次に、ＨＧＷ（Ａ）−ＨＧＷ（Ｂ）間で確立しているトンネル接続を解除する場合の動作について説明する。本実施の形態は、受信者端末からマルチキャスト停止要求メッセージ（Leave）を受信したＨＧＷ（Ｂ）が、DeregisterをＨＧＷ（Ａ）へ送信する。ＨＧＷ（Ａ）−ＨＧＷ（Ｂ）間でDeregisterがやり取りされると、トンネル接続を解除してＩＰｖ６マルチキャストデータの転送を中止するようにしている。
【００５７】
図９はＨＧＷ（Ａ）−ＨＧＷ（Ｂ）間で確立しているトンネル接続を解除する場合のシーケンスの一例である。ＨＧＷ（Ａ）−ＨＧＷ（Ｂ）間で（Ｓ，Ｇ）に関するトンネル接続が確立している状況で、受信者端末（Ｒ３）がLeave（Ｓ，Ｇ）をＨＧＷ（Ｂ）へ通知している。
【００５８】
図１０はLeave（Ｓ，Ｇ）を受信したＨＧＷ（Ｂ）のフロー図である。ＨＧＷ（Ｂ）は、Leave（Ｓ，Ｇ）を受信すると、当該マルチキャスト（Ｓ，Ｇ）に参加している他の受信者端末が存在するか否か判断し、参加している他の受信者端末が存在する場合には「Deregister」は通知しない。また、他の受信者端末が存在しなければDeregister（ＨＧＷ  Ｂ，Ｓ，Ｇ）をＨＧＥ（Ａ）へ通知して（Ｓ，Ｇ）に関するトンネル接続を解除する。
【００５９】
Leave（Ｓ，Ｇ）を受信したＨＧＷ（Ｂ）は、インターフェイス部Ｉ／Ｆ（１）から順番にインターフェイス受信者情報リストを検索する（Ｓ３０１）。
【００６０】
今、インターフェイス部Ｉ／Ｆ（ｉ）でLeave（Ｓ，Ｇ）を受信したものとする。Ｓ３０１で検索対象となったインターフェイスがLeave（Ｓ，Ｇ）を受信したインターフェイス部Ｉ／Ｆ（ｉ）であれば（Ｓ３０２）、インターフェイス部Ｉ／Ｆ（ｉ）上に登録されたインターフェイス受信者情報リストを順番にチェックする（Ｓ３０３）。その結果、いずれかのインターフェイス受信者情報リストに（Ｓ，Ｇ）のエントリが存在すれば（Ｓ３０４）、当該インターフェイス部Ｉ／Ｆ（ｉ）から（Ｓ，Ｇ）のエントリを削除する（Ｓ３０５）。
【００６１】
一方、Ｓ３０２での判断の結果、Leave（Ｓ，Ｇ）を受信したインターフェイス以外であれば、当該インターフェイス部Ｉ／Ｆ上に登録しているインターフェイス受信者情報リストを順番にチェックする（Ｓ３０６）。いずれかのインターフェイス受信者情報リストに（Ｓ，Ｇ）のエントリが登録されていれば（Ｓ３０７）、検出フラグ（found）に１をセットする（Ｓ３０８）。Leave（Ｓ，Ｇ）を受信したインターフェイス以外の全てのインターフェイス部Ｉ／Ｆについて上記処理を繰り返す。
【００６２】
全てのインターフェイス部Ｉ／Ｆ（１）〜（４）について上記処理が完了したら、検出フラグに１がセットされているか否か判断し（Ｓ３０９）、検出フラグ（found）に１がセットされていない場合にだけDeregister（ＨＧＷ  Ｂ，Ｓ，Ｇ）を送信する（Ｓ３１０）。
【００６３】
このように、受信者端末（Ｒ３）はマルチキャスト停止要求を発したが、ＨＧＷ（Ａ）−ＨＧＷ（Ｂ）間のトンネル接続を利用してマルチキャスト通信している他の受信者端末が存在する場合は、トンネル接続を維持しておく。そして、（Ｓ，Ｇ）に関して最後まで参加していた受信者端末がマルチキャスト停止要求（Leave）を発したときに（Ｓ，Ｇ）に関するトンネル接続を解除する。これにより、他の受信者端末がマルチキャスト通信中であるにも拘わらず、トンネル接続を解除することにより、マルチキャストデータの転送が停止される不具合を防止できる。
【００６４】
図１１はDeregister（ＨＧＷ  Ｂ，Ｓ，Ｇ）を受信したＨＧＷ（Ａ）でトンネル接続を解除するフロー図である。
【００６５】
ＨＧＷ（Ａ）は、Deregister（ＨＧＷ  Ｂ，Ｓ，Ｇ）を受信すると、トンネル制御情報テーブルを検索する（Ｓ４０１）。トンネル制御情報テーブルに（ＨＧＷ  Ｂ，Ｓ，Ｇ）のエントリが存在するか否か判断する（Ｓ４０２）。トンネル制御情報テーブルの「ＨＧＷ  ＩＤ」と「チャネル」との組合せから同一エントリの有無を判断できる。Ｓ４０２での判断の結果、（ＨＧＷ  Ｂ，Ｓ，Ｇ）のエントリが存在した場合、ＨＧＷ（Ａ）のマルチキャストルーティングテーブルから、送信元アドレスがＳ、送信先アドレスがＧであるパケットをＨＧＷ（Ｂ）へも送信するというエントリを削除する（Ｓ４０３）。次に（ＨＧＷ  Ｂ，Ｓ，Ｇ）に対応したトンネルインターフェイスを削除する（Ｓ４０４）。これはトンネル制御情報テーブルから、Deregister（ＨＧＷ  Ｂ，Ｓ，Ｇ）を受信した受信インターフェイス部Ｉ／Ｆ（ｉ）であって、ＨＧＷ（Ｂ）を宛先とするトンネルインターフェイスが登録されたエントリを削除することにより実現される。このようにしてトンネル接続を解除し（Ｓ４０５）、Deregister受信処理を終了する。
【００６６】
この結果、ＨＧＷ（Ａ）−ＨＧＷ（Ｂ）間に確立していた（Ｓ，Ｇ）に関するトンネル接続が解消したため、図９に示すようにカプセル化したマルチキャストデータＧはＨＧＷ（Ｂ）へ転送されなくなる。
【産業上の利用可能性】
【００６７】
本発明は、中継経路上のすべてのルータをマルチキャスト対応にしたり、マルチキャスト・ルーティング情報を交換するプロトコルをすべてのルータに実装したりする必要がなく、簡易にマルチキャストネットワークを構築可能で、マルチキャスト通信方法及びゲートウェイ装置に適用できる。
【図面の簡単な説明】
【００６８】
【図１】本発明の一実施の形態のネットワーク構成図
【図２】上記実施の形態におけるＨＧＷ（Ａ）／（Ｂ）のハードウエア構成図
【図３】上記実施の形態におけるトンネル接続確立に関わるシーケンス図
【図４】上記実施の形態におけるＨＧＷ（Ｂ）のJoin（Ｓ，Ｇ）受信処理のフロー図
【図５】上記実施の形態におけるインターフェイス受信者情報リストの概念図
【図６】上記実施の形態におけるトンネル制御情報テーブルの構成図
【図７】上記実施の形態におけるＨＧＷ（Ａ）のRegister（ＨＧＷ  Ｂ，Ｓ，Ｇ）受信処理のフロー図
【図８】上記実施の形態におけるマルチキャスト通信時のトンネルヘッダ及びユニキャストヘッダの状況を示す図
【図９】上記実施の形態におけるトンネル接続解除に関わるシーケンス図
【図１０】上記実施の形態におけるＨＧＷ（Ｂ）のLeave（Ｓ，Ｇ）受信処理のフロー図
【図１１】上記実施の形態におけるＨＧＷ（Ａ）のDeregister（ＨＧＷ  Ｂ，Ｓ，Ｇ）受信処理のフロー図
【符号の説明】
【００６９】
Ｓ  送信者端末
Ｒ１〜Ｒ４  受信者端末
１０１  ＣＰＵ
１０２  システムバス
１０３  メモリ
１０４  ＬＡＮコントローラ  
【図１】
2006074132.tif 000003
【図２】
2006074132.tif 000004
【図３】
2006074132.tif 000005
【図４】
2006074132.tif 000006
【図５】
2006074132.tif 000007
【図６】
2006074132.tif 000008
【図７】
2006074132.tif 000009
【図８】
2006074132.tif 000010
【図９】
2006074132.tif 000011
【図１０】
2006074132.tif 000012
【図１１】
2006074132.tif 000013