(57)【要約】【課題】所定の認証済クライアントがマルチキャストグループから離脱を要求したときに、他の認証済クライアントがマルチキャストグループへの参加を継続していれば、上記他の認証済クライアントには、マルチキャストデータが確実に配信されるマルチキャスト通信システムを提供することを目的とする。【解決手段】上記マルチキャストグループから離脱する要求を示す離脱要求パケットを、クライアントからマルチキャストポイントが受け取ったときに、離脱を要求しているクライアント以外に、当該マルチキャストグループに参加しているクライアントの数が０であれば、上記離脱要求パケットを上記ネットワークに送出する。【選択図】　図１
2004056584.tif 000002
【特許請求の範囲】
【請求項１】
マルチキャストグループに参加しているクライアントの数を、マルチキャストグループ毎にカウントする参加者数カウント手段と；
所定の上記マルチキャストグループへ参加を要求する参加要求パケットを、上記クライアントからマルチキャストポイントが受け取ったときに、当該マルチキャストグループに参加しているクライアントの数が零であれば、上記参加要求パケットを、上記ネットワークに送出する参加要求パケット送出手段と；
上記マルチキャストグループから離脱する要求を示す離脱要求パケットを、クライアントからマルチキャストポイントが受け取ったときに、離脱を要求しているクライアント以外に、当該マルチキャストグループに参加しているクライアントの数が０であれば、上記離脱要求パケットを上記ネットワークに送出する離脱要求パケット送出手段と；
を有することを特徴とするマルチキャスト通信システムにおけるルーティング装置。
【請求項２】
マルチキャストグループに参加しているクライアントの数を、マルチキャストグループ毎にカウントする参加者数カウント段階と；
所定の上記マルチキャストグループへ参加を要求する参加要求パケットを、上記クライアントからマルチキャストポイントが受け取ったときに、当該マルチキャストグループに参加しているクライアントの数が零であれば、上記参加要求パケットを、上記ネットワークに送出する参加要求パケット送出段階と；
上記マルチキャストグループから離脱する要求を示す離脱要求パケットを、クライアントからマルチキャストポイントが受け取ったときに、離脱を要求しているクライアント以外に、当該マルチキャストグループに参加しているクライアントの数が０であれば、上記離脱要求パケットを上記ネットワークに送出する離脱要求パケット送出段階と；
を有することを特徴とするマルチキャスト通信システムにおけるルーティング方法。
【請求項３】
マルチキャストグループに参加しているクライアントの数を、マルチキャストグループ毎にカウントする参加者数カウント手順と；
所定の上記マルチキャストグループへ参加を要求する参加要求パケットを、上記クライアントからマルチキャストポイントが受け取ったときに、当該マルチキャストグループに参加しているクライアントの数が零であれば、上記参加要求パケットを、上記ネットワークに送出する参加要求パケット送出手順と；
上記マルチキャストグループから離脱する要求を示す離脱要求パケットを、クライアントからマルチキャストポイントが受け取ったときに、離脱を要求しているクライアント以外に、当該マルチキャストグループに参加しているクライアントの数が０であれば、上記離脱要求パケットを上記ネットワークに送出する離脱要求パケット送出手順と；
をコンピュータに実行させるプログラム。
【請求項４】
ＩＧＭＰパケットに認証情報を付加するために必要となる認証情報を記憶する手段と；
上記ＩＧＭＰパケットに認証情報を付加してネットワークに送信し、ネットワーク側から受信した応答を、クライアントに実装されるＩＧＭＰ＋ヘルパに送信する手段と；
を有することを特徴とするマルチキャスト通信システムにおけるルーティング装置。
【請求項５】
ＩＧＭＰパケットに認証情報を付加するために必要となる認証情報を記憶する手順と；
上記ＩＧＭＰパケットに認証情報を付加してネットワークに送信し、ネットワーク側から受信した応答を、クライアントに実装されるＩＧＭＰ＋ヘルパに送信する手順と；
をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、コンピュータやＩＰ−ＳＴＢ（ネットワークで映像を受信できる端末）等の複数のクライアント端末と、ルータやスイッチとによって構成されているネットワーク通信において、マルチキャストを利用する通信技術に関する。
【０００２】
【従来の技術】
「マルチキャスト」は、所定のグループ内で、１つのサーバからクライアントに同一の情報を送信し、また、複数のサーバから複数のクライアントに同一の情報を送信する技術である。
【０００３】
インターネット上でマルチキャストを実現する場合、特別のＩＰアドレスが付与されているパケットを用い、そのパケットを受信したルーティング装置が、そのマルチキャストグループに参加しているクライアントに、そのパケットを配信する。なお、上記「ルーティング装置」は、ルータまたはスイッチである。
【０００４】
クライアントとルーティング装置との間のインタフェースには、データ転送用のパケットとは別の、マルチキャスト制御用のＩＧＭＰ（Ｉｎｔｅｒｎｅｔ　Ｇｒｏｕｐ　Ｍａｎａｇｅｍｅｎｔ　Ｐｒｏｔｏｃｏｌ）パケットが使用され、たとえば、クライアントが、マルチキャストグループへ参加または離脱するときに、その旨を示すＩＧＭＰパケットを、ルーティング装置に送信する。
【０００５】
このＩＧＭＰパケットを拡張し、ユーザ認証情報を付加し（以下、「ＩＧＭＰ＋パケット」という）、エッジルータに送信し、認証が成功した場合にのみ、ルータ装置またはクライアントにのみ、マルチキャストデータを送信する方法が存在する。なお、「エッジルータ」は、クライアント側からネットワーク側に向かう線が集約されている部分である。
【０００６】
上記「ＩＧＭＰ＋パケット」を使用すれば、所定のマルチキャストグループにどの程度の時間、ユーザが参加していたかを知ることができ、したがって、上記参加時間に応じて、課金することができる。つまり、認証サーバが、時刻情報が格納されているデータベースを管理し、すなわち、マルチキャストグループに参加した時刻情報をクライアント毎に認識している。
【０００７】
このために、通常のＩＧＭＰの場合、クライアントが、マルチキャストグループからの離脱を要求すると、その離脱後に、当該マルチキャストグループに参加しているクライアントが、本当に存在していないことを確認する。この確認を行うために、ルータ装置は、クライアントに参加報告させる参加報告パケットを送出し、上記参加報告パケットに返答するクライアントが存在しないことを確認するために、一定時間待ち、参加報告パケットに返答するクライアントが存在しないことを確認することができれば、そのマルチキャストグループに対するマルチキャストデータ配信を停止する。
【０００８】
なお、上記「通常のＩＧＭＰ」には、ＩＧＭＰｖ１（バージョン１）と、ＩＧＭＰｖ２（バージョン２）とがあり、これらの間での大きな違いは、ｖ２では、ｌｅａｖｅ要求ができる点である。その他の部分については、それほど大きな変わりがない。基本的に、マルチキャストグループに参加したい（マルチキャストデータを受信したい）ときに、参加要求パケットを送信し、マルチキャストデータを受信し、定期的に上流ルータから送信されるＩＧＭＰ　ｑｕｅｒｙに、ＩＧＭＰ　ｊｏｉｎを返し、上流ルータに、まだマルチキャストグループに参加していることを通知する。一方、そのマルチキャストグループから離脱したいときには、ＩＧＭＰ　ｑｕｅｒｙに、反応をしなかったり、離脱要求パケットを送信することによって、上流ルータは、マルチキャストデータを、そのクライアントに対して送信しない。上記参加要求、ｑｕｅｒｙ、ｌｅａｖｅを使ってマルチキャストグループの管理を行うためのプロトコルが、「ＩＧＭＰ」である。
【０００９】
「ＩＧＭＰ＋」は、パケットフォーマットとして、ＩＧＭＰパケットに認証情報を追加したものであり、その上流ルータ（ＥｄｇｅＤｅｖｉｃｅ）で認証情報を取り出し、ＲＡＤＩＵＳサーバに問い合わせ認証が通れば、マルチキャストパケットを、要求クライアントに送信する方法である。
【００１０】
しかし、「ＩＧＭＰ＋」を用いる場合、離脱要求を受けると、直ちに配信を停止する（ｆａｓｔ　ｌｅａｖｅ機能）。これは、ルータ装置が、参加報告パケットを送出してから所定時間、クライアント端末からの返答を待つことによって、クライアント端末が離脱要求したにも関わらず、課金され続けることを避けるためである。
【００１１】
また、クライアント端末が、次々にマルチキャストグループへの参加離脱を繰り返し、マルチキャストグループを渡り歩くときに、上記参加報告パケットを待っているマルチキャストグループへマルチキャストデータを配信することによって、ネットワーク負荷が増加しないようにするための機能でもある。
【００１２】
【発明が解決しようとする課題】
しかし、上記の「ＩＧＭＰ＋」を使用するマルチキャスト通信システムにおいて、ルータ装置とクライアントとの間に、ハブ等を接続し、ルータ装置の１つのポートに、複数のクライアントを接続し、上記複数のクライアントのうちの所定の１台が、離脱要求を示すパケットを、ルータ装置に送出すると、上記ｆａｓｔ　ｌｅａｖｅ機能（離脱要求を受けると、配信を直ちに停止する機能）によって、ルーティング装置の同じポートに接続されているマルチキャストグループへの参加を継続している他のクライアントに、マルチキャストデータを配信する動作を、上記ルータが阻止するという問題がある。つまり、ハブがマルチキャストポイントになることはないので、ルーティング装置の同じポートに接続されているマルチキャストグループへの参加を継続している他のクライアントに、マルチキャストデータを配信する動作を、上記ルータが阻止する。
【００１３】
つまり、上記従来例において、上記のような「ＩＧＭＰ＋」を使用するマルチキャスト通信システムにおいて、ルータ装置とクライアントとの間に、ハブ等を接続し、ルータ装置の１つのポートに、複数のクライアントを接続し、上記複数のクライアントのうちの所定の１台が、離脱要求を示すパケットを、ルータ装置に送出すると、上記ｆａｓｔ　ｌｅａｖｅ機能によって、ルーティング装置の同じポートに接続されているマルチキャストグループへの参加を継続している他のクライアントが、ビデオデータの情報配信サービス等を受けられないという問題がある。
【００１４】
本発明は、同じポートに収容される複数のクライアントが、認証を必要とする同一のマルチキャストグループを利用することができしかも、所定の認証済クライアントがマルチキャストグループから離脱を要求したときに、、他の認証済クライアントがマルチキャストグループへの参加を継続していれば、上記他の認証済クライアントには、マルチキャストデータが確実に配信されるマルチキャスト通信システムを提供することを目的とする。
【００１５】
【課題を解決するための手段】
本発明は、マルチキャストグループに参加しているクライアントの数を、マルチキャストグループ毎にカウントする参加者数カウント手段と、所定の上記マルチキャストグループへ参加を要求する参加要求パケットを、上記クライアントからマルチキャストポイントが受け取ったときに、当該マルチキャストグループに参加しているクライアントの数が零であれば、上記参加要求パケットを、上記ネットワークに送出する参加要求パケット送出手段と、上記マルチキャストグループから離脱する要求を示す離脱要求パケットを、クライアントからマルチキャストポイントが受け取ったときに、離脱を要求しているクライアント以外に、当該マルチキャストグループに参加しているクライアントの数が０であれば、上記離脱要求パケットを上記ネットワークに送出する離脱要求パケット送出手段とを有するマルチキャスト通信システムにおけるルーティング装置である。
【００１６】
【発明の実施の形態および実施例】
図１は、本発明の一実施例であるマルチキャスト通信システム１００の基本的な構成例を示すブロック図である。
【００１７】
マルチキャスト通信システム１００は、ＩＰネットワークＮＷに接続されているエッジルータＥＲ１、ＥＲ２と、エッジルータＥＲ１、ＥＲ２のそれぞれを介して、ＩＰネットワークＮＷに接続されているルーティング装置ＲＳ１、ＲＳ２と、ルーティング装置ＲＳ１とエッジルータＥＲ１とを介して、ＩＰネットワークＮＷに接続されているクライアントＣ１１、Ｃ１２〜Ｃ１ｎと、ルーティング装置ＲＳ２とエッジルータＥＲ２とを介して、ＩＰネットワークＮＷに接続されているクライアントＣ２１、Ｃ２２〜Ｃ２ｎとを有する。
【００１８】
また、情報を配信する情報配信サーバ１１と、エッジルータＥＲ１、ＥＲ２からの要求によって、クライアントＣ１１〜Ｃ２ｎを認証する認証サーバ１３と、認証サーバ１３からの要求によって課金処理を行う課金サーバ１２とが、ＩＰネットワークＮＷに接続されている。
【００１９】
情報配信サーバ１１は、マルチキャストグループ毎に、特定のＩＰアドレスが付与されているパケットによって、ＩＰネットワークＮＷに情報を配信する。
【００２０】
エッジルータＥＲ１、ＥＲ２は、ルーティング装置ＲＳ１、ＲＳ２を介して、クライアントＣ１１〜Ｃ２ｎから送信されたマルチキャストグループ参加パケットを受け取ると、参加パケット内のユーザ情報と、参加を望む対象であるマルチキャストグループの情報とを用いて、認証サーバ１３へ認証要求する。
【００２１】
この認証が成功したときに、ルーティング装置ＲＳ１、ＲＳ２を、参加を望む対象であるマルチキャストグループである参加対象マルチキャストグループに参加させる。
【００２２】
一方、エッジルータＥＲ１、ＥＲ２が、上記参加対象マルチキャストグループに参加していない場合、さらに上位のマルチキャストポイントに参加要求し、マルチキャストグループパケットの配信を受け、ルーティング装置ＲＳ１、ＲＳ２に、マルチキャストパケットを配信する。
【００２３】
また、エッジルータＥＲ１、ＥＲ２が、認証成功を知らせるパケットを、ルーティング装置ＲＳ１、ＲＳ２に送信する。ルーティング装置ＲＳ１、ＲＳ２は、認証成功を、クライアントＣ１１〜Ｃ２ｎに伝え、また、参加を要求したクライアントＣ１１〜Ｃ２ｎに、マルチキャストグループのパケットを配信する。
【００２４】
図２は、ルーティング装置ＲＳ１の基本的な構成例を示すブロック図である。
【００２５】
ルーティング装置ＲＳ１は、ネットワークインタフェース２１と、クライアントインタフェース２２と、管理手段２３と、判定手段２４と、設定手段２５と、補償手段２６と、記憶手段２７とを有する。
【００２６】
ネットワークインタフェース２１は、ＩＰネットワークＮＷと通信するインタフェースであり、クライアントインタフェース２２は、クライアントＣ１１〜Ｃ１ｎと通信するインタフェースである。管理手段２３は、クライアントＣ１１〜Ｃ１ｎが参加しているマルチキャストグループに関するマルチキャストグループ情報表３０（図３参照）を管理する手段である。
【００２７】
判定手段２４は、マルチキャストグループに参加しているクライアントの存在を、マルチキャストグループ毎に判定し、また、マルチキャストグループへの参加要求を示すパケットと、マルチキャストグループから離脱する離脱要求を示すパケットとを、エッジルータＥＲ１へ送出するか否かを判定する手段である。
【００２８】
設定手段２５は、マルチキャストグループのデータのルーティングに関するマルチキャストルーティングテーブルを設定する手段である。
【００２９】
なお図には、陽にマルチキャストルーティングテーブルが記載されていない。つまり、通常のルータには、マルチキャストルーティングを行うために、マルチキャストルーティングテーブルが存在し、また、「ＩＧＭＰ＋」の処理とは別のパスに置かれているので、図に描く必要がない。
【００３０】
あえて描くとすれば、図２の記憶手段の中に、上記マルチキャストルーティングテーブルが格納され、このマルチキャストルーティングテーブルを参照し、ネットワークインタフェース部に到達したマルチキャストデータを、クライアントインタフェースへフォワーディングする。
【００３１】
補償手段２６は、認証情報が付いていない従来のＩＧＭＰしか用いることができないクライアントであっても、ＩＧＭＰ＋対応端末として振舞う機能の差分を補う手段である。
【００３２】
なお、「ＩＧＭＰｖ１」または「ＩＧＭＰｖ２」は、認証情報を持たないパケットを用いるが、「ＩＧＭＰ＋パケット」は、認証情報を持っている。つまり、認証情報を付加して、「ＩＧＭＰ＋パケット」とを送信できる端末が、「ＩＧＭＰ＋対応端末」であり、そうでない端末が、「ＩＧＭＰ＋非対応端末」である。
【００３３】
「ＩＧＭＰ＋非対応端末」である場合、認証情報をのせてパケットを送出しないので、クライアントからＩＧＭＰパケットを受けた場合、ネットワーク側に対して、認証情報を付加し、ＩＧＭＰパケットを、「ＩＧＭＰ＋パケット」にして補う。
【００３４】
記憶手段２７は、マルチキャストグループ情報表３０や、マルチキャストルーティングテーブル、マルチキャスト制御プロトコルの機能の差分を補償するための認証情報等を記憶する手段である。
【００３５】
なお、ルーティング装置ＲＳ２の構成も、ルーティング装置ＲＳ１の構成と同様である。
【００３６】
次に、上記実施例の動作について説明する。
【００３７】
ここでは、ルーティング装置ＲＳ１に着目して動作を説明する。
【００３８】
図１において、クライアントＣ１１〜Ｃ１ｎが、所定のマルチキャストグループに参加するためには、または、マルチキャストグループから離脱するためには、マルチキャスト制御パケットを使用して、ルーティング装置ＲＳ１に、その旨を通知する。
【００３９】
ルーティング装置ＲＳ１は、たとえばクライアントＣ１１〜Ｃ１ｎのネットワーク（ＭＡＣ）アドレス、ＩＰアドレス、物理ポート番号、ユーザＩＤ、パスワード、または、これらの組み合わせ等によって、クライアントＣ１１〜Ｃ１ｎのそれぞれを識別し、この識別されたクライアントＣ１１〜Ｃ１ｎが、どのマルチキャストグループに参加しているかを管理する。また、ルーティング装置ＲＳ１は、認証を必要とするマルチキャストグループへ参加することを、クライアントＣ１１〜Ｃ１ｎが、ルーティング装置ＲＳ１に要求すると、この参加要求を受け取ったＩＧＭＰ＋パケットを、エッジルータＥＲ１に送出する。
【００４０】
エッジルータＥＲ１は、参加要求を送出したクライアントＣ１１〜Ｃ１ｎを認証するための情報（ユーザＩＤ、パスワード、参加しようとしているマルチキャストグループアドレス等）を、認証サーバ１３に送り、この認証結果を、認証サーバ１３から受け取り、上記認証結果を、ＩＧＭＰ＋の枠組みでルーティング装置ＲＳ１に送信する。
【００４１】
マルチキャストグループへの参加が有料であれば、認証サーバ１３がクライアントＣ１１〜Ｃ１ｎのそれぞれを認証した後に、認証サーバ１３が、課金サーバ１２に課金処理を要求し、課金サーバ１２は、クライアントＣ１１〜Ｃ１ｎの１つ毎、または受信している課金対象のサービス毎に、受信データ量や受信時間に応じて、課金処理する。
【００４２】
上記動作説明において、ルーティング装置ＲＳ２に着目した場合も、ルーティング装置ＲＳ１に着目した上記動作説明と同様である。
【００４３】
次に、認証を必要とするマルチキャストグループであって、互いに同一のマルチキャストグループを、複数のクライアントが利用する場合に、マルチキャストグループへ参加する処理と、マルチキャストグループを離脱する処理とについて説明する。
【００４４】
ここでも、ルーティング装置ＲＳ１に着目して動作を説明する。
【００４５】
ルーティング装置ＲＳ１のクライアントインタフェース２２が、マルチキャストグループへの参加要求を示すマルチキャスト制御パケット（ＩＧＭＰ＋パケット）を、クライアントＣ１１〜Ｃ１ｎから受け取ると、ルーティング装置ＲＳ１の判定手段２４が、参加要求されたマルチキャストグループに参加しているクライアントが存在しているか否かを判定し、参加要求されたマルチキャストグループに参加しているクライアントが存在していない場合、ルーティング装置ＲＳ１のネットワークインタフェース２１が、マルチキャストグループへの参加要求を示すマルチキャスト制御パケット（ＩＧＭＰ＋パケット）を、エッジルータＥＲ１に送信する。
【００４６】
そして、マルチキャストグループへの参加要求を示すマルチキャスト制御パケットを、エッジルータＥＲ１に送信すると、マルチキャストグループへの参加要求を送出したルータ装置ＲＳ１とクライアントとによる参加要求が認められる。
【００４７】
基本的に、認証し、マルチキャストデータを、「送信する」または「送信しない」を決めるのは、エッジルータであり、管理の区分けである（エッジルータは網側装置であり、ルータ装置は家庭内装置である）ので、ある意味では、ルータ装置ＲＳ１とクライアント端末とは同類である。
【００４８】
「ＩＧＭＰ＋パケット」を受けたエッジルータが認証情報を抜き出し、ＲＡＤＩＵＳに問い合わせを行い、要求されたマルチキャストグループに対する正規ユーザであれば、マルチキャストデータをフォワードする。
【００４９】
また、ルーティング装置ＲＳ１のクライアントインタフェース２２が、マルチキャストグループから離脱する要求を示すマルチキャスト制御パケット（ＩＧＭＰ＋パケット）を、クライアントＣ１１〜Ｃ１ｎから受け取ると、ルーティング装置ＲＳ１の判定手段２４が、離脱要求しているクライアント以外に、離脱要求されているマルチキャストグループに参加しているクライアントが存在するか否かを判定し、離脱要求しているクライアント以外に、離脱要求されたマルチキャストグループに参加しているクライアントが存在していない場合、ルーティング装置ＲＳ１のネットワークインタフェース２１が、マルチキャストグループから離脱する要求を示すマルチキャスト制御パケット（ＩＧＭＰ＋パケット）を、エッジルータＥＲ１に送信する。
【００５０】
そして、マルチキャストグループから離脱する要求を示すマルチキャスト制御パケットをエッジルータＥＲ１に送信すると、マルチキャストグループからの離脱要求を送出したルータ装置ＲＳ１とクライアントによる離脱要求が認められる。
【００５１】
エッジルータが、クライアント端末からの離脱要求を受けた場合、要求されたマルチキャストグループのパケットを、クライアント端末にフォワーディング（送信）しないようにする方法（マルチキャストテーブルからその情報を削除するとか、実装方法はいろいろある）と、また、この部分は運用状況により大きく変わるが、ＲＡＤＩＵＳサーバ等の負荷を下げるために、離脱要求を受けた場合、直ちにパケットをフォワーディングしないようにする方法とがあり、離脱要求パケットにも、認証情報が入っているので、参加要求と同じように認証し、パケットを送信しないようにすることができる。
【００５２】
図３は、マルチキャストグループ情報表３０の一例を示す図である。
【００５３】
図３に示すマルチキャストグループ情報表３０は、マルチキャストグループ毎に、そのマルチキャストグループのアドレスと、認証が成功したユーザＩＤ・パスワードと、マルチキャストグループに参加している参加数（マルチキャストグループに参加しているクライアント数）と、マルチキャストグループに参加しているクライアントのそれぞれのＩＰアドレスとを有する。
【００５４】
次に、上記実施例において、ルーティング装置ＲＳ１が実行するマルチキャストグループへの参加と離脱との処理について説明する。
【００５５】
図４は、上記実施例におけるルーティング装置ＲＳ１が実行するマルチキャストグループへの参加と離脱との処理離脱動作を示すフローチャートである。
【００５６】
ルーティング装置ＲＳ１は、マルチキャスト制御パケット（ＩＧＭＰ＋パケット）を使用した要求を、クライアントから受信する（Ｓ１０）。
【００５７】
ルーティング装置ＲＳ１は、クライアントの要求がマルチキャストグループへの参加要求であるか否かを判定し（Ｓ１１）、マルチキャストグループへの参加要求であれば、参加要求されたマルチキャストグループが、マルチキャストグループ情報表３０に登録されているか否かを判定する（Ｓ１２）。
【００５８】
参加要求されたマルチキャストグループが、マルチキャストグループ情報表３０に未登録であれば、マルチキャストグループへの参加要求を示すマルチキャスト制御パケット（ＩＧＭＰ＋パケット）をエッジルータＥＲ１に送出する（Ｓ１３）。
【００５９】
エッジルータＥＲ１から受信した認証結果パケットに基づいて、認証が成功したか否かを判定し（Ｓ１７）、認証が失敗した場合、処理を終了する。認証が成功した場合、グループを識別するグループ情報として、マルチキャストグループアドレスを、マルチキャストグループ情報表３０に書き込み、認証情報として、そのときに用いたユーザＩＤとパスワードとを、マルチキャストグループ情報表３０に書き込む（Ｓ１５）。
【００６０】
そして、マルチキャストグループの参加数をインクリメントし、「０」から「１」にし（Ｓ１６）、参加要求したクライアントを識別するクライアント情報として、クライアントのＩＰアドレスを、マルチキャストグループ情報表３０に書き込み、マルチキャストルーティングテーブルエントリを設定する（Ｓ１７）。
【００６１】
ステップＳ１２において、参加要求されたマルチキャストグループが、マルチキャストグループ情報表３０に登録されている場合、認証情報（ユーザＩＤとパスワード）が、マルチキャストグループ情報表３０に登録されている認証情報と同じであるか否かを判定し（Ｓ１８）、同じである場合、マルチキャストグループの参加数をインクリメントし（Ｓ１６）、クライアント情報（クライアントのＩＰアドレス）を、マルチキャストグループ情報表３０に書き込み、マルチキャストルーティングテーブルを設定する（Ｓ１７）。
【００６２】
また、ルーティング装置ＲＳ１は、クライアントの要求が、マルチキャストグループからの離脱要求であるか否かを判定し（Ｓ２１）、マルチキャストグループからの離脱要求であれば、離脱要求されたマルチキャストグループが、マルチキャストグループ情報表３０に登録されているか否かを判定する（Ｓ２２）。
【００６３】
離脱要求されたマルチキャストグループが、マルチキャストグループ情報表３０に登録されている場合、認証情報（ユーザＩＤ、パスワード）が、マルチキャストグループ情報表３０に登録されている認証情報と同じであるか否かを判定し（Ｓ２３）、同じであれば、マルチキャストグループの参加数をデクリメントし、クライアント情報（クライアントのＩＰアドレス）を、マルチキャストグループ情報表３０から削除し、マルチキャストルーティングテーブルを削除する（Ｓ２７）。
【００６４】
そして、マルチキャストグループの参加数が「０」になったか否かを判定し（Ｓ２５）、マルチキャストグループの参加数が「０」になっていれば、マルチキャストグループからの離脱要求を示すマルチキャスト制御パケット（ＩＧＭＰ＋）を、エッジルータＥＲ１に送出し（Ｓ２６）、マルチキャストグループのアドレスを、マルチキャストグループ情報表３０から削除することによって、グループの登録を削除する（Ｓ２８）。
【００６５】
上記実施例においては、マルチキャストグループ毎に参加数を把握し、最後の参加者となるクライアントから離脱要求があったときに、直ちにネットワークに離脱要求を送信し、情報配信サーバまたは、上流のマルチキャストポイント（エッジルータ）からマルチキャストデータが送出されることを阻止することができる。
【００６６】
つまり、マルチキャストを考える場合、配信サーバからデータを受けるというよりも、マルチキャストポイントからデータをもらうという考え方が正しい。
【００６７】
なお、クライアントが、「ＩＧＭＰ＋パケット」を使用できることを前提に説明したが、認証付きでないマルチキャスト制御（ＩＧＭＰｖ２）しか取り扱うことができないクライアントである場合には、図１において、マルチキャストグループへの参加を示すＩＧＭＰパケットと、マルチキャストグループからの離脱を示すＩＧＭＰパケットとを、クライアントＣ１１〜Ｃ２ｎから、ルーティング装置ＲＳ１、ＲＳ２へ送信し、また、ルーティング装置ＲＳ１、エッジルータＥＲ１へ送信する際、に、認証に用いるユーザＩＤとパスワードとを、ＩＧＭＰ＋パケットで送信するには、従来の「ＩＧＭＰｖ２」の機能と「ＩＧＭＰ＋」の機能との差分を補う補償手段を設ければよい。
【００６８】
次に、上記補償手段を設けた例として、従来のＩＧＭＰｖ２を実装したクライアントＣ１１〜Ｃ１ｎから、ＩＧＭＰプラスを実装したルーティング装置ＲＳ１に、マルチキャストグループへの参加要求を送ったときにおける通信シーケンスについて説明する。
【００６９】
上記動作説明において、ルーティング装置ＲＳ２に着目した場合も、ルーティング装置ＲＳ１に着目した上記動作説明と同様である。
【００７０】
図５は、従来のＩＧＭＰｖ２を実装したクライアントＣ１１〜Ｃ２ｎから、「ＩＧＭＰ＋」を実装したルーティング装置ＲＳ１に、マルチキャストグループへの参加要求を送ったときにおける通信シーケンスを示す図である。
【００７１】
なお、この場合、ルーティング装置ＲＳ１は、「ＩＧＭＰ＋」の他に、補償動作を行うＩＧＭＰプロキシ（ＩＧＭＰ　ｐｒｏｘｙ）５０を実装し、クライアントには、「ＩＧＭＰｖ２」の他に、補償動作を補助するＩＧＭＰヘルパ４０（ＩＧＭＰ　ｈｅｌｐｅｒ）を実装している。
【００７２】
まず、クライアントのＩＧＭＰヘルパ４０が、ルーティング装置ＲＳ１のＩＧＭＰプロキシ５０に認証情報を送信する（Ｓ３１）。
【００７３】
なお、図５に示すように、本来「ＩＧＭＰｖ１」または「ＩＧＭＰｖ２」には、エッジルータから認証成功であるとか、課金開始といったメッセージが、クライアント端末にやって来ても、そのメッセージを理解できない（プロトコルにそのような概念がない）が、「ＩＧＭＰ＋端末」においては、クライアント端末は理解できる。その情報（図５では、ＩＧＭＰプロキシからの応答）を、クライアント端末の画面に表示させるためのものです。
【００７４】
「ＩＧＭＰプロキシ」は、「ＩＧＭＰｖ１」または「ＩＧＭＰｖ２」のメッセージを「ＩＧＭＰ＋」のメッセージに変換し、しかも、先に記述したエッジルータからの応答を受け取るための機能であり、「ＩＧＭＰｖ２」と「ＩＧＭＰ＋」との機能の差分を補う補償手段である。
【００７５】
認証情報には、ユーザＩＤとパスワードとが含まれている。ルーティング装置ＲＳ１のＩＧＭＰプロキシ５０は、クライアントのＩＧＭＰヘルパ４０に応答を送信する（Ｓ３２）。このように、認証情報が、クライアントからルーティング装置ＲＳ１へ送られた後に、クライアントのＩＧＭＰｖ２から、ルーティング装置ＲＳ１のＩＧＭＰプロキシ５０に、マルチキャストグループへの参加要求を示すＩＧＭＰパケットを送信する（Ｓ３３）。
【００７６】
ルーティング装置ＲＳ１のＩＧＭＰプロキシ５０は、受け取ったＩＧＭＰｖ２のパケットを、ユーザＩＤと、パスワードが含まれている認証情報付きのＩＧＭＰ＋パケットとに変換し、マルチキャストグループへの参加を要求する（Ｓ３４）。
【００７７】
ルーティング装置ＲＳ１が、エッジルータＥＲ１に、ＩＧＭＰ＋パケットを送信し、エッジルータＥＲ１から認証結果（Ｓ３５）を受信したときに、ルーティング装置ＲＳ１のＩＧＭＰ＋プロキシ５０が受信し、ＩＧＭＰヘルパ４０に応答を送信する（Ｓ３６）。
【００７８】
認証が成功した場合には、情報配信サーバから、たとえばビデオデータ等のマルチキャストデータが送られ、このマルチキャストデータが、ルーティング装置ＲＳ１を介して、クライアントに到着する（Ｓ３７）。
【００７９】
なお、上記実施例は、マルチキャストグループに参加しているクライアントの数を、マルチキャストグループ毎にカウントする参加者数カウント手段と、所定の上記マルチキャストグループへ参加を要求する参加要求パケットを、上記クライアントからマルチキャストポイントが受け取ったときに、当該マルチキャストグループに参加しているクライアントの数が零であれば、上記参加要求パケットを、上記ネットワークに送出する参加要求パケット送出手段と、上記マルチキャストグループから離脱する要求を示す離脱要求パケットを、クライアントからマルチキャストポイントが受け取ったときに、離脱を要求しているクライアント以外に、当該マルチキャストグループに参加しているクライアントの数が０であれば、上記離脱要求パケットを上記ネットワークに送出する離脱要求パケット送出手段とを有するマルチキャスト通信システムにおけるルーティング装置の例である。
【００８０】
ここで、参加要求パケットを送出することによって、上流ルータ装置は、参加要求クライアントに要求されたマルチキャストグループ宛のパケットを送出する。つまり、要求クライアントが、マルチキャストグループに参加する。
【００８１】
また、離脱要求パケットを送出することによって、上流ルータ装置は、離脱要求クライアントに要求されたマルチキャストグループ宛のパケットの送出を停止する。つまり、要求クライアントが、マルチキャストグループから離脱する。
【００８２】
また、上記実施例は、マルチキャストグループに参加しているクライアントの数を、マルチキャストグループ毎にカウントする参加者数カウント手順と、所定の上記マルチキャストグループへ参加を要求する参加要求パケットを、上記クライアントからマルチキャストポイントが受け取ったときに、当該マルチキャストグループに参加しているクライアントの数が零であれば、上記参加要求パケットを、上記ネットワークに送出する参加要求パケット送出手順と、上記マルチキャストグループから離脱する要求を示す離脱要求パケットを、クライアントからマルチキャストポイントが受け取ったときに、離脱を要求しているクライアント以外に、当該マルチキャストグループに参加しているクライアントの数が０であれば、上記離脱要求パケットを上記ネットワークに送出する離脱要求パケット送出手順とをコンピュータに実行させるプログラムの例である。
【００８３】
さらに、上記実施例は、ＩＧＭＰパケットに認証情報を付加するために必要となる認証情報を記憶する手段と、上記ＩＧＭＰパケットに認証情報を付加してネットワークに送信し、ネットワーク側から受信した応答を、クライアントに実装されるＩＧＭＰ＋ヘルパに送信する手段とを有するマルチキャスト通信システムにおけるルーティング装置の例である。
【００８４】
そして、上記実施例は、ＩＧＭＰパケットに認証情報を付加するために必要となる認証情報を記憶する手順と、上記ＩＧＭＰパケットに認証情報を付加してネットワークに送信し、ネットワーク側から受信した応答を、クライアントに実装されるＩＧＭＰ＋ヘルパに送信する手順とをコンピュータに実行させるプログラムの例である。
【００８５】
【発明の効果】
本発明によれば、認証を必要とする同一のマルチキャストグループを、複数のクライアントが利用することができるという効果を奏する。
【００８６】
また、本発明によれば、認証済クライアントが、マルチキャストグループから離脱を要求しても、マルチキャストグループへの参加を継続している認証済クライアントが存在してれば、その認証済クラインとホストは、マルチキャストデータを確実に受信することができるという効果を奏する。
【００８７】
さらに、認証済クライアントが、マルチキャストグループから離脱を要求した場合、マルチキャストグループへ参加を継続している認証済クライアントが存在しなければ、即座に配信を停止することができるという効果を奏する。
【図面の簡単な説明】
【図１】本発明の一実施例であるマルチキャスト通信システム１００の基本的な構成例を示すブロック図である。
【図２】ルーティング装置ＲＳ１の基本的な構成例を示すブロック図である。
【図３】マルチキャストグループ情報表３０の一例を示す図である。
【図４】上記実施例におけるルーティング装置ＲＳ１が実行するマルチキャストグループへの参加と離脱との処理離脱動作を示すフローチャートである。
【図５】従来のＩＧＭＰｖ２を実装したクライアントＣ１１〜Ｃ２ｎから、「ＩＧＭＰ＋」を実装したルーティング装置ＲＳ１に、マルチキャストグループへの参加要求を送ったときにおける通信シーケンスを示す図である。
【符号の説明】
１００…マルチキャスト通信システム、
１１…情報配信サーバ、
１２…課金サーバ、
１３…認証サーバ、
Ｃ１１〜Ｃ１ｎ、Ｃ２１〜Ｃ２ｎ…クライアント、
ＲＳ１、ＲＳ２…ルーティング装置、
ＥＲ１、ＥＲ２…エッジルータ、
ＮＷ…ＩＰネットワーク。
【図１】
2004056584.tif 000003
【図２】
2004056584.tif 000004
【図３】
2004056584.tif 000005
【図４】
2004056584.tif 000006
【図５】
2004056584.tif 000007