(57)【要約】【課題】再生装置に搭載されたハードウェアやソフトウェアを変更せず、通信装置において、マルチキャスト配信されるコンテンツの視聴状況を監視する。【解決手段】通信装置１は、配信装置３ａ，３ｂから再生装置４ａ，４ｂ，４ｃへ至る経路上に位置する。転送テーブル１ａは、マルチキャストアドレスと転送先アドレスとを対応付ける。転送テーブル管理手段１ｂは、マルチキャストアドレスを指定した転送要求の送信元を転送テーブル１ａに登録すると共に、継続的に転送要求を受信している間、転送テーブル１ａの登録を維持する（ステップＳ１）。転送状況監視手段１ｄは、転送テーブル１ａに基づいて、マルチキャストアドレス毎の現在の転送先数を計算し、転送先数を示す転送情報を管理装置２に対して継続的に報告する（ステップＳ２）。【選択図】図１
2008177719.tif 000002
【特許請求の範囲】
【請求項１】
マルチキャスト配信されるコンテンツに対応するパケットを生成する配信装置から前記コンテンツを再生する１以上の再生装置へ至る経路上に位置する通信装置において実行される前記コンテンツの視聴状況を監視する視聴状況監視方法において、
前記コンテンツを識別するマルチキャストアドレスを指定した転送要求を受信すると、前記転送要求の送信元を、前記マルチキャストアドレスと前記パケットを転送すべき転送先装置を識別する転送先アドレスとを対応付ける転送テーブルに、前記転送先装置として登録すると共に、前記転送先装置から継続的に前記転送要求を受信している間、前記転送テーブルの登録を維持する管理ステップと、
前記転送テーブルを監視して、前記マルチキャストアドレス毎の現在の転送先数を計算し、前記転送先数を示す転送情報を、前記パケットを受信している前記再生装置の数を示す視聴情報を管理する管理装置に対して、ネットワーク経由で継続的に送信する監視ステップと、
を有することを特徴とする視聴状況監視方法。
【請求項２】
前記監視ステップにおいて、前記通信装置は、前記マルチキャストアドレスを有する前記パケットの転送先を制御可能な他の通信装置が前記転送先装置として前記転送テーブルに登録されている場合に、前記他の通信装置を除外して前記転送先数を計算することを特徴とする請求項１記載の視聴状況監視方法。
【請求項３】
前記監視ステップにおいて、前記通信装置は、個々の前記転送先アドレスが前記転送テーブルに登録されている経過時間に基づいて、前記マルチキャストアドレス毎の延べ転送時間を更に計算し、前記転送情報に前記延べ転送時間を含めて、前記管理装置に対して前記転送情報を送信することを特徴とする請求項１記載の視聴状況監視方法。
【請求項４】
マルチキャスト配信されるコンテンツに対応するパケットを生成する配信装置から前記コンテンツを再生する１以上の再生装置へ至る経路上に位置し、前記コンテンツの視聴状況を監視する視聴状況監視装置において、
前記コンテンツを識別するマルチキャストアドレスと、前記パケットを転送すべき転送先装置を識別する転送先アドレスとを対応付ける転送テーブルと、
前記マルチキャストアドレスを指定した転送要求を受信すると、前記転送要求の送信元を前記転送先装置として前記転送テーブルに登録すると共に、前記転送先装置から継続的に前記転送要求を受信している間、前記転送テーブルの登録を維持する転送テーブル管理手段と、
前記転送テーブルを監視して、前記マルチキャストアドレス毎の現在の転送先数を計算し、前記転送先数を示す転送情報を、前記パケットを受信している前記再生装置の数を示す視聴情報を管理する管理装置に対して、ネットワーク経由で継続的に送信する転送状況監視手段と、
を有することを特徴とする視聴状況監視装置。
【請求項５】
マルチキャスト配信されるコンテンツに対応するパケットを生成する配信装置から前記コンテンツを再生する１以上の再生装置へ至る経路上に位置するコンピュータに、前記コンテンツの視聴状況を監視する処理を実行させる視聴状況監視プログラムにおいて、前記コンピュータを、
前記コンテンツを識別するマルチキャストアドレスと、前記パケットを転送すべき転送先装置を識別する転送先アドレスとを対応付ける転送テーブルを記憶する転送テーブル記憶手段、
前記マルチキャストアドレスを指定した転送要求を受信すると、前記転送要求の送信元を前記転送先装置として前記転送テーブルに登録すると共に、前記転送先装置から継続的に前記転送要求を受信している間、前記転送テーブルの登録を維持する転送テーブル管理手段、
前記転送テーブルを監視して、前記マルチキャストアドレス毎の現在の転送先数を計算し、前記転送先数を示す転送情報を、前記パケットを受信している前記再生装置の数を示す視聴情報を管理する管理装置に対して、ネットワーク経由で継続的に送信する転送状況監視手段、
として機能させることを特徴とする視聴状況監視プログラム。
【請求項６】
マルチキャスト配信されるコンテンツに対応するパケットを生成する配信装置から前記コンテンツを再生する１以上の再生装置へ至る経路上で前記コンテンツの視聴状況を監視する視聴状況監視システムにおいて、
前記コンテンツを識別するマルチキャストアドレスと、前記パケットを転送すべき転送先装置を識別する転送先アドレスとを対応付ける転送テーブルと、
前記マルチキャストアドレスを指定した転送要求を受信すると、前記転送要求の送信元を前記転送先装置として前記転送テーブルに登録すると共に、前記転送先装置から継続的に前記転送要求を受信している間、前記転送テーブルの登録を維持する転送テーブル管理手段と、
前記転送テーブルを監視して、前記マルチキャストアドレス毎の現在の転送先数を計算する転送状況監視手段と、
を備える複数の通信装置と、
前記マルチキャストアドレス毎に、前記パケットを受信している前記再生装置の数を示す視聴情報を時系列に記憶する視聴情報記憶手段と、
前記複数の通信装置から、前記転送先数を示す転送情報をネットワーク経由で継続的に収集する転送情報収集手段と、
前記転送情報収集手段が収集した前記転送情報を集計して前記視聴情報を生成し、集計時刻と対応付けて、生成した前記視聴情報を前記視聴情報記憶手段に格納する視聴状況集計手段と、
を備える視聴情報管理装置と、
を有することを特徴とする視聴状況監視システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は視聴状況監視方法、視聴状況監視装置、視聴状況監視プログラムおよび視聴状況監視システムに関し、特にマルチキャスト配信されるコンテンツの視聴状況を監視する視聴状況監視方法、視聴状況監視装置、視聴状況監視プログラムおよび視聴状況監視システムに関する。
【背景技術】
【０００２】
現在、情報通信技術の発展に伴い、音声や動画などのコンテンツをネットワーク経由で配信することが行われている。コンテンツを配信する配信装置は、ネットワークでの伝送に適した形式にコンテンツを符号化（エンコード）し、所定のデータ単位（パケット）に分割して出力する。コンテンツを再生する再生装置は、配信装置が出力したパケットをネットワーク経由で受信し、復号（デコード）してコンテンツを再生する。
【０００３】
ところで、ネットワーク経由でコンテンツを配信する方法として、ユニキャスト配信とマルチキャスト配信とがある。ユニキャスト配信は、配信装置が再生装置から配信要求を受け付け、再生装置に対して個別にパケットを送信する配信方法である。ユニキャスト配信では、配信装置と再生装置とが直接通信を行うため、コンテンツの視聴状況を配信装置側で集中管理することが容易であるという利点がある（例えば、特許文献１参照）。
【０００４】
一方、マルチキャスト配信は、配信装置から再生装置へ至る経路上に位置する通信装置が転送要求を受け付け、転送要求の送信元にパケットの複製を送信する配信方法である。マルチキャスト配信では、経路上の通信装置で適宜パケットが複製されるため、ネットワーク全体の通信量を抑制できるという利点がある。
【０００５】
例えば、再生装置Ａが通信装置ａ−ｂ−ｃ１という経路で、再生装置Ｂが通信装置ａ−ｂ−ｃ２という経路でパケットを受信しているとする。このとき、ユニキャスト配信では、通信装置ａ−ｂ間で宛先が異なる２つのパケットが伝送されるが、マルチキャスト配信では、通信装置ａ−ｂ間で１つのパケットのみが伝送され、通信装置ｂでパケットが複製される。
【０００６】
ここで、ネットワーク経由でのコンテンツ配信が増加するに伴い、今後はマルチキャスト配信の一層の普及が期待される。しかしながら、従来のマルチキャスト配信では、配信装置側でコンテンツの視聴状況を管理することが困難であるという問題があった。
【０００７】
これに対し、コンテンツを暗号化して配信することで、配信装置と再生装置とが直接通信を行う機会を設けるようにする配信方法が知られている（例えば、特許文献２参照）。すなわち、配信装置が定期的に暗号鍵を変更して暗号化したコンテンツを配信し、再生装置は暗号鍵が変更される毎に配信装置から復号鍵を取得してコンテンツを復号する。これにより、配信装置は再生装置によるコンテンツの視聴状況を把握することができる。また、配信装置と再生装置との間では復号鍵のみが伝送されるため、通信量を抑制できるというマルチキャスト配信の利点を維持できる。
【特許文献１】特開２００３−３２４７５８号公報
【特許文献２】特開平１０−１６４０４６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかし、上記特許文献２に記載の技術では、再生装置が上記処理に対応した専用のハードウェアまたはソフトウェアを搭載しなければならないという問題がある。これは、マルチキャスト配信の規約（通信プロトコル）は、再生装置が配信装置と直接通信を行うことを想定していないためである。すなわち、特許文献２に記載の技術は、マルチキャスト配信の通信方法を拡張するものであり、拡張された通信方法に対応した再生装置でなければコンテンツを視聴することができない。このことは、マルチキャスト配信の普及という観点から好ましくない。
【０００９】
本発明はこのような点に鑑みてなされたものであり、再生装置に搭載されたハードウェアやソフトウェアを変更することなく、マルチキャスト配信されるコンテンツの視聴状況を監視できる視聴状況監視方法、視聴状況監視装置、視聴状況監視プログラムおよび視聴状況監視システムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
本発明では上記課題を解決するために、図１に示すような視聴状況監視方法が提供される。本発明に係る視聴状況監視方法は、マルチキャスト配信されるコンテンツの視聴状況を監視するものであり、コンテンツに対応するパケットを生成する配信装置３ａ，３ｂからコンテンツを再生する再生装置４ａ，４ｂ，４ｃへ至る経路上に位置する通信装置１によって実行される。
【００１１】
通信装置１は、コンテンツを識別するマルチキャストアドレスを指定した転送要求を受信すると、転送要求の送信元を、マルチキャストアドレスとパケットを転送すべき転送先装置を識別する転送先アドレスとを対応付ける転送テーブル１ａに、転送先装置として登録すると共に、転送先装置から継続的に転送要求を受信している間、転送テーブル１ａの登録を維持する（ステップＳ１）。そして、通信装置１は、転送テーブル１ａを監視して、マルチキャストアドレス毎の現在の転送先数を計算し、転送先数を示す転送情報を、パケットを受信している再生装置４ａ，４ｂ，４ｃの数を示す視聴情報を管理する管理装置２に対して、ネットワーク経由で継続的に送信する（ステップＳ２）。
【００１２】
このような視聴状況監視方法によれば、通信装置１により、マルチキャストアドレスを指定した転送要求の送信元が転送先装置として転送テーブル１ａに登録されると共に、継続的に転送要求が受信されている間、転送テーブル１ａの登録が維持される。そして、通信装置１により、転送テーブル１ａに基づいて、マルチキャストアドレス毎の現在の転送先数が計算され、転送先数を示す転送情報が管理装置２に対して継続的に送信される。
【００１３】
また、上記課題を解決するために、マルチキャスト配信されるコンテンツに対応するパケットを生成する配信装置からコンテンツを再生する１以上の再生装置へ至る経路上に位置し、コンテンツの視聴状況を監視する視聴状況監視装置において、コンテンツを識別するマルチキャストアドレスと、パケットを転送すべき転送先装置を識別する転送先アドレスとを対応付ける転送テーブルと、マルチキャストアドレスを指定した転送要求を受信すると、転送要求の送信元を転送先装置として転送テーブルに登録すると共に、転送先装置から継続的に転送要求を受信している間、転送テーブルの登録を維持する転送テーブル管理手段と、転送テーブルを監視して、マルチキャストアドレス毎の現在の転送先数を計算し、転送先数を示す転送情報を、パケットを受信している再生装置の数を示す視聴情報を管理する管理装置に対して、ネットワーク経由で継続的に送信する転送状況監視手段と、を有することを特徴とする視聴状況監視装置が提供される。
【００１４】
このような視聴状況監視装置によれば、転送テーブル管理手段により、マルチキャストアドレスを指定した転送要求の送信元が転送先装置として転送テーブルに登録されると共に、継続的に転送要求が受信されている間、転送テーブルの登録が維持される。そして、転送状況監視手段により、転送テーブルに基づいて、マルチキャストアドレス毎の現在の転送先数が計算され、転送先数を示す転送情報が管理装置に対して継続的に送信される。
【００１５】
また、上記課題を解決するために、マルチキャスト配信されるコンテンツに対応するパケットを生成する配信装置からコンテンツを再生する１以上の再生装置へ至る経路上に位置するコンピュータに、コンテンツの視聴状況を監視する処理を実行させる視聴状況監視プログラムにおいて、コンピュータを、コンテンツを識別するマルチキャストアドレスと、パケットを転送すべき転送先装置を識別する転送先アドレスとを対応付ける転送テーブルを記憶する転送テーブル記憶手段、マルチキャストアドレスを指定した転送要求を受信すると、転送要求の送信元を転送先装置として転送テーブルに登録すると共に、転送先装置から継続的に転送要求を受信している間、転送テーブルの登録を維持する転送テーブル管理手段、転送テーブルを監視して、マルチキャストアドレス毎の現在の転送先数を計算し、転送先数を示す転送情報を、パケットを受信している再生装置の数を示す視聴情報を管理する管理装置に対して、ネットワーク経由で継続的に送信する転送状況監視手段、として機能させることを特徴とする視聴状況監視プログラムが提供される。
【００１６】
このような視聴状況監視プログラムを実行するコンピュータによれば、転送テーブル管理手段により、マルチキャストアドレスを指定した転送要求の送信元が転送先装置として転送テーブルに登録されると共に、継続的に転送要求が受信されている間、転送テーブルの登録が維持される。そして、転送状況監視手段により、転送テーブルに基づいて、マルチキャストアドレス毎の現在の転送先数が計算され、転送先数を示す転送情報が管理装置に対して継続的に送信される。
【００１７】
また、上記課題を解決するために、マルチキャスト配信されるコンテンツに対応するパケットを生成する配信装置からコンテンツを再生する１以上の再生装置へ至る経路上でコンテンツの視聴状況を監視する視聴状況監視システムにおいて、コンテンツを識別するマルチキャストアドレスと、パケットを転送すべき転送先装置を識別する転送先アドレスとを対応付ける転送テーブルと、マルチキャストアドレスを指定した転送要求を受信すると、転送要求の送信元を転送先装置として転送テーブルに登録すると共に、転送先装置から継続的に転送要求を受信している間、転送テーブルの登録を維持する転送テーブル管理手段と、転送テーブルを監視して、マルチキャストアドレス毎の現在の転送先数を計算する転送状況監視手段と、を備える複数の通信装置と、マルチキャストアドレス毎に、パケットを受信している再生装置の数を示す視聴情報を時系列に記憶する視聴情報記憶手段と、複数の通信装置から、転送先数を示す転送情報をネットワーク経由で継続的に収集する転送情報収集手段と、転送情報収集手段が収集した転送情報を集計して視聴情報を生成し、集計時刻と対応付けて、生成した視聴情報を視聴情報記憶手段に格納する視聴状況集計手段と、を備える視聴情報管理装置と、を有することを特徴とする視聴状況監視システムが提供される。
【００１８】
このような視聴状況監視システムによれば、個々の通信装置において、転送テーブル管理手段により、マルチキャストアドレスを指定した転送要求の送信元が転送先装置として転送テーブルに登録されると共に、継続的に転送要求が受信されている間、転送テーブルの登録が維持される。そして、転送状況監視手段により、転送テーブルに基づいて、マルチキャストアドレス毎の現在の転送先数が計算される。一方、管理装置において、転送情報収集手段により、複数の通信装置から転送先数を示す転送情報が継続的に収集される。そして、視聴状況集計手段により、転送情報が集計されて、パケットを受信している再生装置の数を示す視聴情報が生成される。
【発明の効果】
【００１９】
本発明では、配信装置から再生装置へ至る経路上の通信装置が、マルチキャストアドレスを有するパケットの転送先を定義する転送テーブルを監視して現在の転送先数を計算し、管理装置に継続的に報告するようにした。これにより、配信装置および再生装置に変更を加えることなく、マルチキャスト配信されるコンテンツの視聴状況を的確に把握することができる。従って、管理者などは、コンテンツの視聴状況に応じて、配信システムの増強や課金方法などを検討することができる。また、マルチキャスト配信の利用が一層促進されると期待できる。
【発明を実施するための最良の形態】
【００２０】
以下、本発明の実施の形態を図面を参照して説明する。まず、本実施の形態の概要について説明し、その後、本実施の形態の具体的な内容を説明する。
図１は、本実施の形態の概要を示す図である。図１に示す視聴状況監視システムは、マルチキャスト配信されるコンテンツの視聴状況を監視することが可能なシステムである。図１に示す視聴状況監視システムは、通信装置１、管理装置２、配信装置３ａ，３ｂおよび再生装置４ａ，４ｂ，４ｃを有する。
【００２１】
通信装置１は、コンテンツに対応するマルチキャストパケットを送信する配信装置３ａ，３ｂから、マルチキャストパケットを受信してコンテンツを再生する再生装置４ａ，４ｂ，４ｃへ至る経路上に位置する。通信装置１は、転送テーブル１ａ、転送テーブル管理手段１ｂ、パケット転送手段１ｃおよび転送状況監視手段１ｄを有する。
【００２２】
転送テーブル１ａは、マルチキャストアドレスと転送先アドレスとを対応付けて記憶する。マルチキャストアドレスは、コンテンツを識別するためのＩＰ（Internet Protocol）アドレスである。転送先アドレスは、通信装置１が受信したマルチキャストパケットを次に転送すべき転送先装置を識別するＩＰアドレスである。転送先装置としては、再生装置および他の通信装置が考えられる。
【００２３】
転送テーブル管理手段１ｂは、マルチキャストアドレスを指定した転送要求を受信する。ここで、転送要求の送信元が転送テーブル１ａに登録されていない場合、転送テーブル管理手段１ｂは、転送要求の送信元を新たに登録する。また、転送要求の送信元が転送テーブル１ａに登録されている場合、転送テーブル１ａの登録を維持する。一方、転送テーブル管理手段１ｂは、転送テーブル１ａに登録された転送先装置のうち、所定時間以上連続して転送要求を送信していない転送先装置を、転送テーブル１ａから削除する。
【００２４】
パケット転送手段１ｃは、配信装置３ａ，３ｂが送信したマルチキャストパケットを受信する。ここで、パケット転送手段１ｃは、転送テーブル１ａを参照して、受信したマルチキャストパケットに対応する転送先装置を特定する。このとき、対応する転送先装置がない場合、受信したマルチキャストパケットを破棄する。一方、対応する転送先装置が２以上ある場合、受信したマルチキャストパケットの複製を作成する。そして、パケット転送手段１ｃは、マルチキャストパケットを転送先装置に対して送信する。
【００２５】
転送状況監視手段１ｄは、転送テーブル１ａを監視し、マルチキャストアドレス毎の現在の転送先数を計算する。そして、転送状況監視手段１ｄは、転送先数を示す転送情報を、管理装置２に対して送信する。なお、転送情報の送信は、例えば、管理装置２からの報告要求に応答して送信する方法と、転送先数が変化する毎に管理装置２に対して送信する方法とが考えられる。
【００２６】
管理装置２は、通信装置１とネットワークで接続されている。管理装置２は、視聴情報記憶手段２ａ、転送情報収集手段２ｂおよび視聴状況集計手段２ｃを有する。
視聴情報記憶手段２ａは、マルチキャストアドレス毎の視聴情報を時系列に記憶する。視聴情報は、ある時点でマルチキャストパケットを受信している再生装置の数を示す情報である。
【００２７】
転送情報収集手段２ｂは、通信装置１から転送情報を継続的に収集する。転送情報の収集は、例えば、所定の時間間隔で通信装置１に対して報告要求を送信する方法と、通信装置１が転送情報を送信するのを待つ方法とが考えられる。なお、転送情報収集手段２ｂは、通信装置１と同様の機能を有する他の通信装置がある場合、他の通信装置からも転送情報を収集する。
【００２８】
視聴状況集計手段２ｃは、転送情報収集手段２ｂが収集した転送情報を集計して、視聴情報を生成する。そして、視聴状況集計手段２ｃは、集計時刻と対応付けて、生成した視聴情報を視聴情報記憶手段２ａに格納する。
【００２９】
ここで、配信装置３ａがコンテンツＸ、配信装置３ｂがコンテンツＹをマルチキャスト配信しており、再生装置４ａ，４ｂがコンテンツＸ、再生装置４ｃがコンテンツＹを視聴するものとする。また、再生装置４ａ，４ｂ，４ｃが、他の通信装置を介さずに通信装置１と接続されているものとする。
【００３０】
このとき、再生装置４ａ，４ｂ，４ｃは、視聴するコンテンツに対応するマルチキャストアドレスを指定して、通信装置１に継続的に転送要求を送信する。通信装置１は、転送要求を受信し、コンテンツＸと再生装置４ａ，４ｂ、コンテンツＹと再生装置４ｃをそれぞれ対応付けて、転送テーブル１ａに登録し、これを維持する。
【００３１】
そして、通信装置１は、配信装置３ａが送信するマルチキャストパケットを再生装置４ａ，４ｂに、配信装置３ｂが送信するマルチキャストパケットを再生装置４ｃにそれぞれ転送する。更に、通信装置１は、転送テーブル１ａを監視し、コンテンツＸの転送先数が２、コンテンツＹの転送先数が１である旨の転送情報を、管理装置２に対して送信する。
【００３２】
このような視聴状況監視システムによれば、通信装置１により、マルチキャストアドレスを指定した転送要求の送信元が転送先装置として転送テーブル１ａに登録されると共に、継続的に転送要求が受信されている間、転送テーブル１ａの登録が維持される。次に、転送テーブル１ａに登録されたマルチキャストアドレスを有するマルチキャストパケットが、対応する全ての転送先装置に対して転送される。そして、転送テーブル１ａに基づいて、マルチキャストアドレス毎の現在の転送先数が計算され、転送先数を示す転送情報が管理装置２に対して送信される。一方、管理装置２により、通信装置１および他の通信装置から転送情報が継続的に収集され、転送情報が集計されて、コンテンツの視聴状況を示す視聴情報が生成される。
【００３３】
これにより、配信装置３ａ，３ｂおよび再生装置４ａ，４ｂ，４ｃに変更を加えることなく、マルチキャスト配信されるコンテンツの視聴状況を把握することができる。特に、管理者は、管理装置２に蓄積された時系列の視聴情報を閲覧することで、コンテンツ毎の視聴状況の時系列変化を知ることができる。従って、管理者は、配信装置および通信装置の増強や、コンテンツ視聴時の課金の方法などを適切に検討することができ、より安定したコンテンツ配信を実現できるようになる。
【００３４】
以下、本実施の形態を図面を参照して詳細に説明する。
［第１の実施の形態］
図２は、本実施の形態のシステム構成を示す図である。第１の実施の形態に係るコンテンツ配信システムは、カメラで撮影した映像を、リアルタイムにマルチキャスト配信するシステムである。
【００３５】
図２に示すコンテンツ配信システムは、ネットワーク２１，２２、カメラ３１，３２、配信サーバ４１，４２、クライアント５１，５２，５３，５４、ルータ１００，２００、Ｌ２（Layer 2）スイッチ３００，４００、映像名サーバ５００および視聴率サーバ６００を有する。
【００３６】
ネットワーク２１には、配信サーバ４１，４２、ルータ２００、映像名サーバ５００および視聴率サーバ６００が接続されている。ルータ２００は、ネットワーク２１の外側と内側との境界に位置する。カメラ３１が配信サーバ４１に接続されている。カメラ３２が配信サーバ４２に接続されている。
【００３７】
ネットワーク２２には、ルータ１００およびＬ２スイッチ３００，４００が接続されている。ルータ１００は、ネットワーク２２の外側と内側との境界に位置する。ルータ１００はルータ２００と接続されている。クライアント５１，５２がＬ２スイッチ３００に接続されている。クライアント５３，５４がＬ２スイッチ４００に接続されている。
【００３８】
カメラ３１は、所定の位置の映像を撮影する。配信サーバ４１は、カメラ３１が撮影した映像を所定のデータ形式にエンコードする。そして、配信サーバ４１は、エンコードした映像データを、リアルタイムにマルチキャスト配信する。すなわち、配信サーバ４１は、映像データに対応するマルチキャストパケットを、ネットワーク２１へ出力する。同様に、配信サーバ４２は、カメラ３２が撮影した映像を取得し、エンコードした映像データをリアルタイムにマルチキャスト配信する。
【００３９】
クライアント５１，５２，５３，５４は、配信サーバ４１，４２が出力するマルチキャストパケットを受信して、カメラ３１，３２が撮影した映像を再生することができる。例えば、クライアント５１は、利用者の操作入力によって再生する映像が選択されると、選択された映像に対応するマルチキャストアドレスを指定して、Ｊｏｉｎ要求を出力する。これにより、クライアント５１へのマルチキャストパケットの転送が開始される。
【００４０】
また、クライアント５１は、映像の再生を継続する間、Ｊｏｉｎ要求を定期的に出力する。例えば、クライアント５１は、３０秒間隔でＪｏｉｎ要求を出力する。そして、利用者の操作入力によって再生停止が指示されると、Ｌｅａｖｅ要求を出力する。これにより、クライアント５１へのマルチキャストパケットの転送が停止される。クライアント５２，５３，５４も、同様の処理を行うことで映像を再生できる。
【００４１】
ルータ１００，２００は、第３層（ネットワーク層）の通信処理を行う通信装置である。従って、ルータ１００，２００は、宛先アドレスに応じて、通常のＩＰパケット（ユニキャストパケット）の転送先を制御する。
【００４２】
更に、ルータ１００，２００は、マルチキャストパケットの転送先を制御する。すなわち、ルータ１００，２００は、Ｊｏｉｎ要求を送信しているクライアントまたは通信装置のＩＰアドレスをテーブルに登録し、登録された転送先に対して受信したマルチキャストパケットを転送する。登録された転送先がない場合、受信したマルチキャストパケットを破棄する。
【００４３】
なお、ルータ１００は、マルチキャストパケットを受信するために、少なくとも１つの転送先がテーブルに登録されている間、配信サーバ４１，４２に近い通信装置であるルータ２００に対して、継続的にＪｏｉｎ要求を送信する。
【００４４】
Ｌ２スイッチ３００は、第２層（データリンク層）の通信処理を行う通信装置である。従って、Ｌ２スイッチ３００は、マルチキャストパケットの転送先を制御することができない。このため、Ｌ２スイッチ３００は、クライアント５１，５２からＪｏｉｎ要求およびＬｅａｖｅ要求を受信すると、そのままルータ１００に転送する。また、ルータ１００からマルチキャストパケットを受信すると、クライアント５１とクライアント５２の両方にマルチキャストパケットを転送する。
【００４５】
Ｌ２スイッチ４００は、Ｌ２スイッチ３００と同様に、レイヤ２の通信処理を行う通信装置である。ただし、Ｌ２スイッチ４００は、ＩＧＭＰ（Internet Group Management Protocol）  ｓｎｏｏｐｉｎｇの機能を有している。ＩＧＭＰ  ｓｎｏｏｐｉｎｇとは、Ｌ２スイッチにおいて、マルチキャストパケットの内容に応じた処理を行うことをいう。すなわち、Ｌ２スイッチ４００は、マルチキャストパケットについては、ルータ１００，２００と同様の通信処理を行うことができる。
【００４６】
映像名サーバ５００は、カメラ３１，３２が撮影する映像の名称と、映像に割り当てられたマルチキャストアドレスとの対応関係を管理するコンピュータである。クライアント５１，５２，５３，５４は、映像名サーバ５００を利用することで、映像の名称からマルチキャストアドレスを特定することができる。
【００４７】
視聴率サーバ６００は、ルータ１００，２００およびＬ２スイッチ４００から、マルチキャストパケットの転送状況の情報を収集し、定期的に集計する。そして、視聴率サーバ６００は、集計結果を視聴情報として保持する。なお、視聴率サーバ６００がルータ１００，２００およびＬ２スイッチ４００から情報を収集するのは、これらの通信装置が、マルチキャストパケットの転送に用いられるテーブルを保持しているからである。
【００４８】
ここで、本実施の形態では、クライアント５１，５２，５３，５４のＩＰアドレスが、それぞれ、アドレスＣ１，Ｃ２，Ｃ３，Ｃ４であるとする。また、ルータ１００，２００およびＬ２スイッチ３００，４００のＩＰアドレスが、それぞれ、アドレスＲ１，Ｒ２，Ｒ３，Ｒ４であるとする。
【００４９】
図３は、視聴率サーバのハードウェア構成を示す図である。視聴率サーバ６００は、ＣＰＵ（Central Processing Unit）６０１によって装置全体が制御されている。ＣＰＵ６０１には、バス６０７を介してＲＡＭ（Random Access Memory）６０２、ハードディスクドライブ（ＨＤＤ:Hard Disk Drive）６０３、グラフィック処理装置６０４、入力インタフェース６０５および通信インタフェース６０６が接続されている。
【００５０】
ＲＡＭ６０２には、ＣＰＵ６０１に実行させるＯＳ（Operating System）プログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、ＲＡＭ６０２には、ＣＰＵ６０１による処理に必要な各種データが格納される。ＨＤＤ６０３には、ＯＳやアプリケーションプログラムが格納される。
【００５１】
グラフィック処理装置６０４には、モニタ１１が接続されている。グラフィック処理装置６０４は、ＣＰＵ６０１からの命令に従って、画像をモニタ１１の画面に表示させる。入力インタフェース６０５には、キーボード１２とマウス１３とが接続されている。入力インタフェース６０５は、キーボード１２やマウス１３から送られてくる信号を、バス６０７を介してＣＰＵ６０１に送信する。通信インタフェース６０６は、ネットワーク２１に接続されている。通信インタフェース６０６は、ネットワーク２１を介して、他のコンピュータとの間でデータの送受信を行う。
【００５２】
なお、配信サーバ４１，４２、クライアント５１，５２，５３，５４および映像名サーバ５００は、視聴率サーバ６００と同様のハードウェア構成によって実現できる。また、ルータ１００，２００およびＬ２スイッチ３００，４００は、コンピュータを用いて実現することもできる。この場合、ルータ１００，２００およびＬ２スイッチ３００，４００も、視聴率サーバ６００と同様のハードウェア構成によって実現できる。
【００５３】
以上のようなハードウェア構成によって、本実施の形態の処理機能を実現することができる。
次に、ルータ１００および視聴率サーバ６００のモジュール構成について説明する。
【００５４】
図４は、第１の実施の形態のルータの機能を示すブロック図である。ルータ１００は、ルーティング情報記憶部１１０、マルチキャスト情報記憶部１２０、転送情報記憶部１３０、入力制御部１４０、経路判定部１５０、マルチキャスト処理部１６０、転送状況監視部１７０および出力制御部１８０を有する。
【００５５】
ルーティング情報記憶部１１０には、パケットの宛先とパケットを次に転送する転送先との対応関係を定義したルーティングテーブルが格納される。ルーティングテーブルでは、１つの宛先アドレスに対して、１つの転送先アドレスが特定される。
【００５６】
マルチキャスト情報記憶部１２０には、マルチキャストアドレスとＪｏｉｎ要求を送信しているクライアントまたは通信装置との対応関係を定義したマルチキャストテーブルが格納される。マルチキャストテーブルでは、１つのマルチキャストアドレスに対して、０個以上のクライアントまたは通信装置のＩＰアドレスが特定される。
【００５７】
転送情報記憶部１３０には、マルチキャストアドレス毎に、現在の転送先数を示す転送情報が格納される。ただし、転送先数は、マルチキャストパケットの転送制御機能を有する他の通信装置を除外して計算される。従って、ルータ２００およびＬ２スイッチ４００が除外されて、転送先数が計算される。
【００５８】
入力制御部１４０は、パケットを一時的に格納するキューを備えている。入力制御部１４０は、ルータ２００またはＬ２スイッチ３００，４００から転送されたパケットを受信し、受信したパケットをキューの最後尾に追加する。また、入力制御部１４０は、キューに格納されたパケットを先頭から順に取り出し、パケットの種類に応じて、経路判定部１５０、マルチキャスト処理部１６０、転送状況監視部１７０のいずれかに送る。
【００５９】
具体的には、宛先アドレスとしてマルチキャストアドレスが設定されたパケットは、マルチキャスト処理部１６０に送られる。マルチキャストアドレスが設定されたパケットには、Ｊｏｉｎ要求およびＬｅａｖｅ要求を示すパケットが含まれる。
【００６０】
また、ルータ１００宛てのパケットは、転送状況監視部１７０に送られる。ルータ１００宛てのパケットは、視聴率サーバ６００が送信することが想定される。そして、上記に該当しないパケットは、経路判定部１５０に送られる。
【００６１】
経路判定部１５０は、入力制御部１４０、マルチキャスト処理部１６０または転送状況監視部１７０からパケットを取得すると、ルーティング情報記憶部１１０に格納されたルーティングテーブルを参照して、指定された宛先に対応する転送先を特定する。そして、経路判定部１５０は、特定した転送先に対応する通信インタフェースを指定して、パケットを出力制御部１８０に送る。
【００６２】
マルチキャスト処理部１６０は、入力制御部１４０からＪｏｉｎ要求のパケットを取得すると、マルチキャスト情報記憶部１２０に格納されたマルチキャストテーブルを更新する。ここで、指定されたマルチキャストアドレスについてＪｏｉｎ要求の送信元が登録されていない場合、マルチキャスト処理部１６０は、新たに登録を行う。
【００６３】
更に、マルチキャスト処理部１６０は、指定されたマルチキャストアドレスについて他に登録済みの転送先がなかった場合、対応するマルチキャストパケットを出力している配信サーバに近い通信装置に対してＪｏｉｎ要求のパケットを送信するよう、経路判定部１５０に指示する。なお、経路判定部１５０は、マルチキャストパケットを出力している配信サーバに近い通信装置がルータ２００であることを、ルーティングテーブルを参照することで知ることができる。
【００６４】
また、マルチキャスト処理部１６０は、入力制御部１４０からＬｅａｖｅ要求のパケットを取得すると、指定されたマルチキャストアドレスについて、マルチキャストテーブルからＬｅａｖｅ要求の送信元を削除する。更に、マルチキャスト処理部１６０は、指定されたマルチキャストアドレスについて他の転送先がなくなった場合、対応するマルチキャストパケットを出力している配信サーバに近い通信装置に対してＬｅａｖｅ要求のパケットを送信するよう、経路判定部１５０に指示する。
【００６５】
また、マルチキャスト処理部１６０は、マルチキャストテーブルを監視し、最後にＪｏｉｎ要求を取得してから所定時間以上経過した転送先を、マルチキャストテーブルから削除する。これは、クライアント５１，５２，５３，５４が、Ｌｅａｖｅ要求を出力せずにシャットダウンしてしまう場合が考えられるからである。
【００６６】
また、マルチキャスト処理部１６０は、入力制御部１４０から配信サーバ４１，４２が出力したマルチキャストパケットを取得すると、マルチキャストテーブルを参照して、対応する転送先を特定する。ここで、対応する転送先がない場合、マルチキャスト処理部１６０は、取得したマルチキャストパケットを破棄する。対応する転送先が２つ以上ある場合、必要な数だけマルチキャストパケットを複製する。そして、マルチキャスト処理部１６０は、特定した個々の転送先に対してマルチキャストパケットを送信するよう、経路判定部１５０に指示する。
【００６７】
転送状況監視部１７０は、マルチキャスト情報記憶部１２０に格納されたマルチキャストテーブルを監視する。ここで、転送状況監視部１７０は、転送先の登録状況が変化する毎に、マルチキャストアドレス毎の転送先数を計算する。ただし、前述の通り、ルータ２００およびＬ２スイッチ４００は除外して計算する。そして、転送状況監視部１７０は、計算した転送先数を示す転送情報を転送情報記憶部１３０に格納する。
【００６８】
なお、ルータ２００およびＬ２スイッチ４００がマルチキャストパケットの転送制御機能を有する通信装置であることは、経路判定部１５０が処理するパケットを監視することで知ることが可能である。例えば、転送状況監視部１７０は、特定の通信プロトコルに従ったパケットの送信元となっている装置を、マルチキャストパケットの転送制御機能を有する通信装置と判定できる。
【００６９】
また、転送状況監視部１７０は、転送情報記憶部１３０から転送情報を取得し、視聴率サーバ６００宛てのパケットとして経路判定部１５０に送る。ここで、視聴率サーバ６００に対して転送情報を送信する方法として、以下の２つの方法がある。管理者は、いずれの方法を採用するか、予め転送状況監視部１７０に設定しておく。
【００７０】
第１の方法は、視聴率サーバ６００が定期的に出力する報告要求に応答して、転送情報を送信する方法である。すなわち、転送状況監視部１７０は、入力制御部１４０から報告要求を示すパケットを取得すると、転送情報のパケットを生成する。第２の方法は、転送先数が増減する毎に、視聴率サーバ６００に対して転送情報を送信する方法である。なお、第１の方法と第２の方法とを組み合わせるようにしてもよい。
【００７１】
出力制御部１８０は、通信インタフェース毎に、パケットを一時的に格納するキューを備えている。具体的には、出力制御部１８０は、ネットワーク２２の外側向けと内側向けの２つのキューを備えている。出力制御部１８０は、経路判定部１５０からパケットを取得すると、取得したパケットを、指定された通信インタフェースに対応するキューの最後尾に追加する。また、出力制御部１８０は、それぞれのキューに格納されたパケットを先頭から順に取り出し、対応する通信インタフェースからパケットを出力する。
【００７２】
図５は、第１の実施の形態の視聴率サーバの機能を示すブロック図である。視聴率サーバ６００は、転送情報収集部６１０、転送情報記憶部６２０、視聴状況集計部６３０および視聴情報記憶部６４０を有する。
【００７３】
転送情報収集部６１０は、ルータ１００，２００およびＬ２スイッチ４００から、継続的に転送情報を収集する。そして、転送情報収集部６１０は、個々の通信装置から取得した転送情報を、転送情報記憶部６２０に順次格納する。
【００７４】
ここで、管理者は、ルータ１００，２００およびＬ２スイッチ４００に設定した転送情報の送信方法に合わせて、転送情報の収集方法を予め設定する。すなわち、転送情報の送信方法として上記第１の方法が採用された場合、転送情報収集部６１０は、ルータ１００，２００およびＬ２スイッチ４００に対して定期的に報告要求を出力する。例えば、転送情報収集部６１０は、１０分間隔で報告要求を出力する。一方、転送情報の送信方法として上記第２の方法が採用された場合、転送情報収集部６１０は、ルータ１００，２００およびＬ２スイッチ４００から転送情報が送信されるのを待つ。
【００７５】
なお、上記第１の方法を採用した場合、管理者は、通信プロトコルとしてＵＤＰ（User Datagram Protocol）とＴＣＰ（Transmission Control Protocol）のいずれかを選択できる。ＵＤＰは、転送速度は高いが信頼性が低い。一方、ＴＣＰは、信頼性は高いが転送速度が低い。従って、ネットワークの混雑度やパケット損失率などを考慮して、使用する通信プロトコルを選択することが好ましい。
【００７６】
視聴状況集計部６３０は、転送情報記憶部６２０に格納された転送情報に基づいて、マルチキャストパケットを受信しているクライアントの数をマルチキャストアドレス毎に集計する。例えば、視聴状況集計部６３０は、１０分毎に集計を行う。また、転送情報収集部６１０が一部の通信装置から転送情報を取得できなかった場合、その通信装置については、最後に正常に取得された転送情報を用いて集計を行う。
【００７７】
そして、視聴状況集計部６３０は、マルチキャストアドレス毎のクライアント数と集計時刻とを対応付けて、視聴情報として視聴情報記憶部６４０に格納する。これにより、視聴情報記憶部６４０には、コンテンツの視聴状況を示す情報が時系列に蓄積される。
【００７８】
なお、ルータ２００も、ルータ１００と同様のモジュール構成によって実現できる。また、Ｌ２スイッチ４００も、マルチキャストパケットの処理に関しては、ルータ１００と同様のモジュール構成によって実現できる。
【００７９】
次に、映像名サーバ５００、ルータ１００および視聴率サーバ６００が保持するデータのデータ構造について説明する。
図６は、映像名テーブルのデータ構造を示す図である。図６に示す映像名テーブル５１１は、映像名サーバ５００によって管理される。映像名テーブル５１１には、映像名を示す項目およびマルチキャストアドレスを示す項目が設けられている。各項目の横方向に並べられた情報同士が互いに関連付けられている。
【００８０】
映像名の項目には、配信サーバ４１，４２が配信する映像の名称が設定される。例えば、配信サーバ４１が配信する映像の映像名が“地点Ａの映像”、配信サーバ４２が配信する映像の映像名が“地点Ｂの映像”と設定される。
【００８１】
マルチキャストアドレスの項目には、個々の映像に割り当てられたマルチキャストアドレスが設定される。例えば、配信サーバ４１が配信する映像に対して“２３９．１９９．７５．１１”（図２のアドレスＭ１に相当）、配信サーバ４２が配信する映像に対して“２３９．１９９．７５．１２”（図２のアドレスＭ２に相当）が設定される。
【００８２】
映像名テーブル５１１に格納される情報は、映像の配信を開始する前に、予め管理者によって登録される。映像名サーバ５００は、映像名が入力されると、映像名テーブル５１１を参照して、対応するマルチキャストアドレスを出力する。このため、クライアント５１，５２，５３，５４は、映像を視聴するためにマルチキャストアドレスを記憶しておく必要がない。
【００８３】
図７は、ルーティングテーブルのデータ構造を示す図である。図７に示すルーティングテーブル１１１は、ルータ１００のルーティング情報記憶部１１０に格納される。ルーティングテーブル１１１には、宛先ネットワークを示す項目、ネットマスクを示す項目、ゲートウェイを示す項目およびインタフェースを示す項目が設けられている。各項目の横方向に並べられた情報同士が互いに関連付けられている。
【００８４】
宛先ネットワークの項目には、ネットワークを識別するネットワークアドレスか、または、装置を識別するＩＰアドレスが設定される。例えば、クライアント５１について“１０．７４．１０．２１”（図２のアドレスＣ１に相当）、ネットワーク２１について“１０．７４．３０．０”が設定される。
【００８５】
ネットマスクの項目には、宛先ネットワークに設定されたアドレスのネットワーク部とホスト部とを区別するためのビット列が設定される。例えば、“２５５．２５５．２５５．２５５”は、宛先ネットワークに設定されたアドレスが装置を識別するＩＰアドレスであることを意味する。“２５５．２５５．２５５．０”は、宛先ネットワークに設定されたアドレスの上位２４ビットが、ネットワークを識別する部分であることを意味する。
【００８６】
ゲートウェイの項目には、宛先ネットワークおよびネットマスクによって特定されるアドレス範囲に該当するパケットを、次に転送する転送先のＩＰアドレスが設定される。例えば、ネットワーク２１に属する装置宛てのパケットに対して、ルータ２００のＩＰアドレス“１０．７４．３０．１”（図２のアドレスＲ２に相当）が設定される。
【００８７】
インタフェースの項目には、ゲートウェイに対してパケットを送信するために使用する通信インタフェースを識別する文字列が設定される。例えば、ゲートウェイがルータ２００である場合に、ネットワーク２２の外側向けの通信インタフェースを示す“ｎｅｔ１”が設定される。
【００８８】
ルーティングテーブル１１１に格納される情報は、予め管理者によって登録される。なお、ルータ１００が、ＲＩＰ（Routing Information Protocol）などのルーティングプロトコルに従って他の通信装置と通信を行い、ルーティングテーブル１１１を動的に更新するようにしてもよい。この場合、ネットワーク構成が変更されると、ルーティングテーブル１１１の登録内容が自動的に変更される。
【００８９】
図８は、マルチキャストテーブルのデータ構造を示す図である。図８に示すマルチキャストテーブル１２１は、ルータ１００のマルチキャスト情報記憶部１２０に格納される。マルチキャストテーブル１２１には、マルチキャストアドレスを示す項目、受信者アドレスを示す項目および更新時刻を示す項目が設けられている。各項目の横方向に並べられた情報同士が互いに関連付けられている。
【００９０】
マルチキャストアドレスの項目には、映像を識別するマルチキャストアドレスが設定される。受信者アドレスの項目には、マルチキャストパケットの転送先のクライアントまたは通信装置のＩＰアドレスが設定される。１つのマルチキャストアドレスに対して、０個以上の受信者アドレスが設定される。更新時刻の項目には、ルータ１００が最後にＪｏｉｎ要求を受信した時刻が設定される。更新時刻より所定時間以上経過した受信者アドレスは、マルチキャストテーブル１２１から削除されることになる。
【００９１】
マルチキャストテーブル１２１に格納される情報は、マルチキャスト処理部１６０によって適宜更新される。ここで、Ｌ２スイッチ３００はマルチキャストアドレスの転送先制御を行わないため、Ｌ２スイッチ３００に接続されたクライアント５１，５２については、そのＩＰアドレスが直接登録される。一方、Ｌ２スイッチ４００はマルチキャストアドレスの転送先制御を行うため、Ｌ２スイッチ４００に接続されたクライアント５３，５４については、Ｌ２スイッチ４００のＩＰアドレスが登録されることになる。
【００９２】
なお、視聴率サーバ６００の転送情報記憶部６２０にも、転送情報テーブル１３１と同様のテーブルが、通信装置毎に格納される。
図９は、第１の実施の形態の転送情報テーブルのデータ構造を示す図である。図９に示す転送情報テーブル１３１は、ルータ１００の転送情報記憶部１３０に格納される。転送情報テーブル１３１には、マルチキャストアドレスを示す項目および転送先数を示す項目が設けられている。各項目の横方向に並べられた情報同士が互いに関連付けられている。
【００９３】
マルチキャストアドレスの項目には、映像を識別するマルチキャストアドレスが設定される。転送先数の項目には、マルチキャストパケットの現在の転送先の数が設定される。前述の通り、転送先数は、ルータ２００およびＬ２スイッチ４００が除外されて計算される。転送情報テーブル１３１に格納される情報は、転送状況監視部１７０によって適宜更新される。
【００９４】
図１０は、第１の実施の形態の視聴情報テーブルのデータ構造を示す図である。図１０に示す視聴情報テーブル６４１は、視聴率サーバ６００の視聴情報記憶部６４０に格納される。視聴情報テーブル６４１には、日時を示す項目、マルチキャストアドレスを示す項目および視聴数を示す項目が設けられている。各項目の横方向に並べられた情報同士が互いに関連付けられている。
【００９５】
日時の項目には、視聴状況集計部６３０が集計処理を行った日時が設定される。マルチキャストアドレスの項目には、映像を識別するマルチキャストアドレスが設定される。視聴数の項目には、全ての通信装置における転送先数の合計値が設定される。視聴情報テーブル６４１に格納される情報は、視聴状況集計部６３０によって定期的に追加される。
【００９６】
次に、以上のような構成およびデータ構造のシステムにおいて実行される処理の詳細を説明する。
図１１は、マルチキャスト配信の流れを示す第１のシーケンス図である。図１１に示すシーケンス図は、クライアント５１が“地点Ａの映像”を視聴する場合であって、転送情報の収集方法として上記第１の方法（視聴率サーバ６００が定期的に報告要求を出力する方法）を採用した場合の例である。以下、図１１に示す処理をステップ番号に沿って説明する。
【００９７】
［ステップＳ１１］配信サーバ４１は、カメラ３１が撮影した映像を取得し、アドレスＭ１を有するマルチキャストパケットをネットワーク２１に対して出力する。出力されたマルチキャストパケットは、ルータ２００に到達する。ただし、ルータ２００は、転送先が未登録であるため、受信したマルチキャストパケットを破棄する。
【００９８】
［ステップＳ１２］クライアント５１は、映像名サーバ５００に対して、映像名“地点Ａの映像”を指定した検索要求を送信する。
［ステップＳ１３］映像名サーバ５００は、クライアント５１に対して、指定された映像名に対応するアドレスＭ１（“２３９．１９９．７５．１１”）を回答する。
【００９９】
［ステップＳ１４］クライアント５１は、宛先アドレスをアドレスＭ１、送信元アドレスをアドレスＣ１とするＪｏｉｎ要求を出力する。出力されたＪｏｉｎ要求は、Ｌ２スイッチ３００に到達する。Ｌ２スイッチ３００は、受信したＪｏｉｎ要求を、そのままルータ１００に転送する。
【０１００】
［ステップＳ１５］ルータ１００は、クライアント５１からのＪｏｉｎ要求を受信する。そして、ルータ１００は、アドレスＭ１と対応付けて、クライアント５１のアドレスＣ１をマルチキャストテーブルに登録する。
【０１０１】
［ステップＳ１６］ルータ１００は、宛先アドレスをアドレスＭ１、送信元アドレスをアドレスＲ１とするＪｏｉｎ要求を、ルータ２００に対して送信する。
［ステップＳ１７］ルータ２００は、ルータ１００からのＪｏｉｎ要求を受信する。そして、ルータ２００は、アドレスＭ１と対応付けて、ルータ１００のアドレスＲ１をマルチキャストテーブルに登録する。
【０１０２】
［ステップＳ１８］ルータ２００は、アドレスＭ１を有するマルチキャストパケットのルータ１００への転送を開始する。
［ステップＳ１９］ルータ１００は、ルータ２００からアドレスＭ１を有するマルチキャストパケットを受信する。そして、ルータ１００は、受信したマルチキャストパケットをネットワーク２２に対して出力する。出力されたマルチキャストパケットは、Ｌ２スイッチ３００に到達する。Ｌ２スイッチ３００は、受信したマルチキャストパケットを、そのままクライアント５１，５２の両方に転送する。なお、クライアント５２では、転送したマルチキャストパケットは破棄される。
【０１０３】
［ステップＳ２０］クライアント５１は、ステップＳ１４から所定時間経過後、ステップＳ１４と同様のＪｏｉｎ要求を出力する。出力されたＪｏｉｎ要求は、Ｌ２スイッチ３００を経由して、ルータ１００に到達する。
【０１０４】
［ステップＳ２１］ルータ１００は、マルチキャストテーブル内のクライアント５１に対応する更新時刻を変更する。
［ステップＳ２２］ルータ１００は、ステップＳ１６から所定時間経過後、ステップＳ１６と同様のＪｏｉｎ要求を、ルータ２００に対して送信する。
【０１０５】
［ステップＳ２３］ルータ２００は、マルチキャストテーブル内のルータ１００に対応する更新時刻を変更する。
［ステップＳ２４ａ］視聴率サーバ６００は、ルータ２００に対して報告要求を送信する。
【０１０６】
［ステップＳ２５ａ］ルータ２００は、報告要求に応答して、最新の転送情報を視聴率サーバ６００に対して送信する。なお、ここでのアドレスＭ１に対する転送先数は０である。視聴率サーバ６００は、受信した転送情報を保持する。
【０１０７】
［ステップＳ２４ｂ］視聴率サーバ６００は、ルータ１００に対して報告要求を送信する。なお、視聴率サーバ６００は、ステップＳ１５ａの応答を待って報告要求を送信する必要はない。
【０１０８】
［ステップＳ２５ｂ］ルータ１００は、報告要求に応答して、最新の転送情報を視聴率サーバ６００に対して送信する。なお、ここでのアドレスＭ１に対する転送先数は１である。視聴率サーバ６００は、受信した転送情報を保持する。
【０１０９】
［ステップＳ２６］クライアント５１は、利用者による視聴終了の指示があると、宛先アドレスをアドレスＭ１、送信元アドレスをアドレスＣ１とするＬｅａｖｅ要求を出力する。出力されたＬｅａｖｅ要求は、Ｌ２スイッチ３００に到達する。Ｌ２スイッチ３００は、受信したＬｅａｖｅ要求を、そのままルータ１００に転送する。
【０１１０】
［ステップＳ２７］ルータ１００は、クライアント５１からのＬｅａｖｅ要求を受信する。そして、ルータ１００は、アドレスＭ１に対するクライアント５１の登録をマルチキャストテーブルから削除する。これにより、クライアント５１へのマルチキャストパケットの転送が停止する。
【０１１１】
［ステップＳ２８］ルータ１００は、ステップＳ２７の削除処理によってアドレスＭ１に対する転送先が０個になると、宛先アドレスをアドレスＭ１、送信元アドレスをアドレスＲ１とするＬｅａｖｅ要求を、ルータ２００に対して送信する。
【０１１２】
［ステップＳ２９］ルータ２００は、ルータ１００からのＬｅａｖｅ要求を受信する。そして、ルータ２００は、アドレスＭ１に対するルータ１００の登録をマルチキャストテーブルから削除する。これにより、ルータ１００へのマルチキャストパケットの転送が停止する。
【０１１３】
このようにして、クライアント５１は、視聴開始時にＪｏｉｎ要求を出力する。すると、ルータ１００はクライアント５１をマルチキャストテーブルに登録し、ルータ２００はルータ１００をマルチキャストテーブルに登録する。これにより、配信サーバ４１からルータ２００、ルータ１００、クライアント５１へとマルチキャストパケットが中継される。このとき、視聴率サーバ６００は、ルータ１００，２００から転送情報を定期的に収集し、集計して視聴情報を生成する。
【０１１４】
図１２は、マルチキャスト配信の流れを示す第２のシーケンス図である。図１２に示すシーケンス図は、クライアント５１が“地点Ａの映像”を視聴する場合であって、転送情報の収集方法として上記第２の方法（通信装置が転送情報を視聴率サーバ６００に適宜送信する方法）を採用した場合の例である。以下、図１２に示す処理をステップ番号に沿って説明する。
【０１１５】
［ステップＳ３１］配信サーバ４１は、カメラ３１が撮影した映像を取得し、アドレスＭ１を有するマルチキャストパケットをネットワーク２１に対して出力する。出力されたマルチキャストパケットは、ルータ２００に到達する。
【０１１６】
［ステップＳ３２］クライアント５１は、映像名サーバ５００に対して、映像名“地点Ａの映像”を指定した検索要求を送信する。
［ステップＳ３３］映像名サーバ５００は、クライアント５１に対して、指定された映像名に対応するアドレスＭ１を回答する。
【０１１７】
［ステップＳ３４］クライアント５１は、宛先アドレスをアドレスＭ１、送信元アドレスをアドレスＣ１とするＪｏｉｎ要求を出力する。出力されたＪｏｉｎ要求は、Ｌ２スイッチ３００を経由して、ルータ１００に到達する。
【０１１８】
［ステップＳ３５］ルータ１００は、クライアント５１からのＪｏｉｎ要求を受信する。そして、ルータ１００は、アドレスＭ１と対応付けて、クライアント５１のアドレスＣ１をマルチキャストテーブルに登録する。
【０１１９】
［ステップＳ３６］ルータ１００は、ステップＳ２５の登録処理によって転送先数が増加するため、最新の転送情報を視聴率サーバ６００に対して送信する。
［ステップＳ３７］ルータ１００は、宛先アドレスをアドレスＭ１、送信元アドレスをアドレスＲ１とするＪｏｉｎ要求を、ルータ２００に対して送信する。
【０１２０】
［ステップＳ３８］ルータ２００は、ルータ１００からのＪｏｉｎ要求を受信する。そして、ルータ２００は、アドレスＭ１と対応付けて、ルータ１００のアドレスＲ１をマルチキャストテーブルに登録する。なお、ルータ１００は転送先数の計算の際に除外されるため、転送先数は登録処理の前後で変化しない。このため、ルータ２００は、視聴率サーバ６００に対して転送情報を送信しない。
【０１２１】
［ステップＳ３９］ルータ２００は、アドレスＭ１を有するマルチキャストパケットのルータ１００への転送を開始する。
［ステップＳ４０］ルータ１００は、ルータ２００からアドレスＭ１を有するマルチキャストパケットを受信する。そして、ルータ１００は、受信したマルチキャストパケットをネットワーク２２に対して出力する。出力されたマルチキャストパケットは、Ｌ２スイッチ３００を経由して、クライアント５１，５２に到達する。
【０１２２】
［ステップＳ４１］クライアント５１は、ステップＳ３４から所定時間経過後、ステップＳ３４と同様のＪｏｉｎ要求を出力する。出力されたＪｏｉｎ要求は、Ｌ２スイッチ３００を経由して、ルータ１００に到達する。
【０１２３】
［ステップＳ４２］ルータ１００は、マルチキャストテーブル内のクライアント５１に対応する更新時刻を変更する。
［ステップＳ４３］ルータ１００は、ステップＳ３７から所定時間経過後、ステップＳ３７と同様のＪｏｉｎ要求を、ルータ２００に対して送信する。
【０１２４】
［ステップＳ４４］ルータ２００は、マルチキャストテーブル内のルータ１００に対応する更新時刻を変更する。
［ステップＳ４５］クライアント５１は、利用者による視聴終了の指示があると、宛先アドレスをアドレスＭ１、送信元アドレスをアドレスＣ１とするＬｅａｖｅ要求を出力する。出力されたＬｅａｖｅ要求は、Ｌ２スイッチ３００を経由して、ルータ１００に送達する。
【０１２５】
［ステップＳ４６］ルータ１００は、クライアント５１からのＬｅａｖｅ要求を受信する。そして、ルータ１００は、アドレスＭ１に対するクライアント５１の登録をマルチキャストテーブルから削除する。
【０１２６】
［ステップＳ４７］ルータ１００は、ステップＳ４６の削除処理によって転送先数が減少するため、最新の転送情報を視聴率サーバ６００に対して送信する。
［ステップＳ４８］ルータ１００は、ステップＳ４６の削除処理によってアドレスＭ１に対する転送先が０個になると、宛先アドレスをアドレスＭ１、送信元アドレスをアドレスＲ１とするＬｅａｖｅ要求を、ルータ２００に対して送信する。
【０１２７】
［ステップＳ４９］ルータ２００は、ルータ１００からのＬｅａｖｅ要求を受信する。そして、ルータ２００は、アドレスＭ１に対するルータ１００の登録をマルチキャストテーブルから削除する。
【０１２８】
このようにして、クライアント５１は、視聴開始時にＪｏｉｎ要求を出力する。すると、ルータ１００はクライアント５１をマルチキャストテーブルに登録し、ルータ２００はルータ１００をマルチキャストテーブルに登録する。これにより、配信サーバ４１からルータ２００、ルータ１００、クライアント５１へとマルチキャストパケットが中継される。ここで、ルータ１００は、クライアント５１の登録時に、転送情報を視聴率サーバ６００に対して送信する。
【０１２９】
図１３は、マルチキャスト配信の流れを示す第３のシーケンス図である。図１３に示すシーケンス図は、クライアント５３が“地点Ａの映像”を視聴する場合であって、転送情報の収集方法として上記第１の方法（視聴率サーバ６００が定期的に報告要求を出力する方法）を採用した場合の例である。ただし、図１１の場合と異なり、継続的なＪｏｉｎ要求の送信については記載を省略している。以下、図１３に示す処理をステップ番号に沿って説明する。
【０１３０】
［ステップＳ５１］配信サーバ４１は、カメラ３１が撮影した映像を取得し、アドレスＭ１を有するマルチキャストパケットをネットワーク２１に対して出力する。出力されたマルチキャストパケットは、ルータ２００に到達する。
【０１３１】
［ステップＳ５２］クライアント５３は、映像名サーバ５００に対して、映像名“地点Ａの映像”を指定した検索要求を送信する。
［ステップＳ５３］映像名サーバ５００は、クライアント５３に対して、指定された映像名に対応するアドレスＭ１を回答する。
【０１３２】
［ステップＳ５４］クライアント５３は、宛先アドレスをアドレスＭ１、送信元アドレスをアドレスＣ３とするＪｏｉｎ要求を出力する。出力されたＪｏｉｎ要求は、Ｌ２スイッチ４００に到達する。
【０１３３】
［ステップＳ５５］Ｌ２スイッチ４００は、クライアント５３からのＪｏｉｎ要求を受信する。そして、Ｌ２スイッチ４００は、アドレスＭ１と対応付けて、クライアント５３のアドレスＣ３をマルチキャストテーブルに登録する。
【０１３４】
［ステップＳ５６］Ｌ２スイッチ４００は、宛先アドレスをアドレスＭ１、送信元アドレスをアドレスＲ４とするＪｏｉｎ要求を、ルータ１００に対して送信する。
［ステップＳ５７］ルータ１００は、Ｌ２スイッチ４００からのＪｏｉｎ要求を受信する。そして、ルータ１００は、アドレスＭ１と対応付けて、Ｌ２スイッチ４００のアドレスＲ４をマルチキャストテーブルに登録する。
【０１３５】
［ステップＳ５８］ルータ１００は、宛先アドレスをアドレスＭ１、送信元アドレスをアドレスＲ１とするＪｏｉｎ要求を、ルータ２００に対して送信する。
［ステップＳ５９］ルータ２００は、ルータ１００からのＪｏｉｎ要求を受信する。そして、ルータ２００は、アドレスＭ１と対応付けて、ルータ１００のアドレスＲ１をマルチキャストテーブルに登録する。
【０１３６】
［ステップＳ６０］ルータ２００は、アドレスＭ１を有するマルチキャストパケットのルータ１００への転送を開始する。
［ステップＳ６１］ルータ１００は、ルータ２００からアドレスＭ１を有するマルチキャストパケットを受信する。そして、ルータ１００は、受信したマルチキャストパケットをネットワーク２２に対して出力する。出力されたマルチキャストパケットは、Ｌ２スイッチ４００に到達する。
【０１３７】
［ステップＳ６２］Ｌ２スイッチ４００は、ルータ１００からアドレスＭ１を有するマルチキャストパケットを受信する。そして、Ｌ２スイッチ４００は、受信したマルチキャストパケットをクライアント５３に対して送信する。
【０１３８】
［ステップＳ６３ａ］視聴率サーバ６００は、ルータ２００に対して報告要求を送信する。
［ステップＳ６４ａ］ルータ２００は、報告要求に応答して、最新の転送情報を視聴率サーバ６００に対して送信する。なお、ここでのアドレスＭ１に対する転送先数は０である。
【０１３９】
［ステップＳ６３ｂ］視聴率サーバ６００は、ルータ１００に対して報告要求を送信する。なお、視聴率サーバ６００は、ステップＳ６４ａの応答を待って報告要求を送信する必要はない。
【０１４０】
［ステップＳ６４ｂ］ルータ１００は、報告要求に応答して、最新の転送情報を視聴率サーバ６００に対して送信する。なお、ここでのアドレスＭ１に対する転送先数は０である。
【０１４１】
［ステップＳ６３ｃ］視聴率サーバ６００は、Ｌ２スイッチ４００に対して報告要求を送信する。なお、視聴率サーバ６００は、ステップＳ６４ｂの応答を待って報告要求を送信する必要はない。
【０１４２】
［ステップＳ６４ｃ］Ｌ２スイッチ４００は、報告要求に応答して、最新の転送情報を視聴率サーバ６００に対して送信する。なお、ここでのアドレスＭ１に対する転送先数は１である。
【０１４３】
［ステップＳ６５］クライアント５３は、利用者による視聴終了の指示があると、宛先アドレスをアドレスＭ１、送信元アドレスをアドレスＣ３とするＬｅａｖｅ要求を出力する。出力されたＬｅａｖｅ要求は、Ｌ２スイッチ４００に到達する。
【０１４４】
［ステップＳ６６］Ｌ２スイッチ４００は、クライアント５３からのＬｅａｖｅ要求を受信する。そして、Ｌ２スイッチ４００は、アドレスＭ１に対するクライアント５３の登録をマルチキャストテーブルから削除する。
【０１４５】
［ステップＳ６７］Ｌ２スイッチ４００は、ステップＳ６６の削除処理によってアドレスＭ１に対する転送先が０個になると、宛先アドレスをアドレスＭ１、送信元アドレスをアドレスＲ４とするＬｅａｖｅ要求を、ルータ１００に対して送信する。
【０１４６】
［ステップＳ６８］ルータ１００は、Ｌ２スイッチ４００からのＬｅａｖｅ要求を受信する。そして、ルータ１００は、アドレスＭ１に対するＬ２スイッチ４００の登録をマルチキャストテーブルから削除する。
【０１４７】
［ステップＳ６９］ルータ１００は、ステップＳ６８の削除処理によってアドレスＭ１に対する転送先が０個になると、宛先アドレスをアドレスＭ１、送信元アドレスをアドレスＲ１とするＬｅａｖｅ要求を、ルータ２００に対して送信する。
【０１４８】
［ステップＳ７０］ルータ２００は、ルータ１００からのＬｅａｖｅ要求を受信する。そして、ルータ２００は、アドレスＭ１に対するルータ１００の登録をマルチキャストテーブルから削除する。
【０１４９】
このようにして、クライアント５３は、視聴開始時にＪｏｉｎ要求を出力する。すると、Ｌ２スイッチ４００はクライアント５３をマルチキャストテーブルに登録し、ルータ１００はＬ２スイッチ４００をマルチキャストテーブルに登録し、ルータ２００はルータ１００をマルチキャストテーブルに登録する。これにより、配信サーバ４１からルータ２００、ルータ１００、Ｌ２スイッチ４００、クライアント５１へとマルチキャストパケットが中継される。このとき、視聴率サーバ６００は、Ｌ２スイッチ４００およびルータ１００，２００から転送情報を定期的に収集し、集計して視聴情報を生成する。
【０１５０】
図１４は、マルチキャスト配信の流れを示す第４のシーケンス図である。図１４に示すシーケンス図は、クライアント５３が“地点Ａの映像”を視聴する場合であって、転送情報の収集方法として上記第２の方法（通信装置が転送情報を視聴率サーバ６００に適宜送信する方法）を採用した場合の例である。ただし、図１２の場合と異なり、継続的なＪｏｉｎ要求の送信については記載を省略している。以下、図１４に示す処理をステップ番号に沿って説明する。
【０１５１】
［ステップＳ７１］配信サーバ４１は、カメラ３１が撮影した映像を取得し、アドレスＭ１を有するマルチキャストパケットをネットワーク２１に対して出力する。出力されたマルチキャストパケットは、ルータ２００に到達する。
【０１５２】
［ステップＳ７２］クライアント５３は、映像名サーバ５００に対して、映像名“地点Ａの映像”を指定した検索要求を送信する。
［ステップＳ７３］映像名サーバ５００は、クライアント５３に対して、指定された映像名に対応するアドレスＭ１を回答する。
【０１５３】
［ステップＳ７４］クライアント５３は、宛先アドレスをアドレスＭ１、送信元アドレスをアドレスＣ３とするＪｏｉｎ要求を出力する。出力されたＪｏｉｎ要求は、Ｌ２スイッチ４００に到達する。
【０１５４】
［ステップＳ７５］Ｌ２スイッチ４００は、クライアント５３からのＪｏｉｎ要求を受信する。そして、Ｌ２スイッチ４００は、アドレスＭ１と対応付けて、クライアント５３のアドレスＣ３をマルチキャストテーブルに登録する。
【０１５５】
［ステップＳ７６］Ｌ２スイッチ４００は、ステップＳ７５の登録処理によって転送先数が増加するため、最新の転送情報を視聴率サーバ６００に対して送信する。
［ステップＳ７７］Ｌ２スイッチ４００は、宛先アドレスをアドレスＭ１、送信元アドレスをアドレスＲ４とするＪｏｉｎ要求を、ルータ１００に対して送信する。
【０１５６】
［ステップＳ７８］ルータ１００は、Ｌ２スイッチ４００からのＪｏｉｎ要求を受信する。そして、ルータ１００は、アドレスＭ１と対応付けて、Ｌ２スイッチ４００のアドレスＲ４をマルチキャストテーブルに登録する。なお、Ｌ２スイッチ４００は転送先数の計算の際に除外されるため、転送先数は登録処理の前後で変化しない。このため、ルータ１００は、視聴率サーバ６００に対して転送情報を送信しない。
【０１５７】
［ステップＳ７９］ルータ１００は、宛先アドレスをアドレスＭ１、送信元アドレスをアドレスＲ１とするＪｏｉｎ要求を、ルータ２００に対して送信する。
［ステップＳ８０］ルータ２００は、ルータ１００からのＪｏｉｎ要求を受信する。そして、ルータ２００は、アドレスＭ１と対応付けて、ルータ１００のアドレスＲ１をマルチキャストテーブルに登録する。
【０１５８】
［ステップＳ８１］ルータ２００は、アドレスＭ１を有するマルチキャストパケットのルータ１００への転送を開始する。
［ステップＳ８２］ルータ１００は、ルータ２００からアドレスＭ１を有するマルチキャストパケットを受信する。そして、ルータ１００は、受信したマルチキャストパケットをネットワーク２２に対して出力する。出力されたマルチキャストパケットは、Ｌ２スイッチ４００に到達する。
【０１５９】
［ステップＳ８３］Ｌ２スイッチ４００は、ルータ１００からアドレスＭ１を有するマルチキャストパケットを受信する。そして、Ｌ２スイッチ４００は、受信したマルチキャストパケットをクライアント５３に対して送信する。
【０１６０】
［ステップＳ８４］クライアント５３は、利用者による視聴終了の指示があると、宛先アドレスをアドレスＭ１、送信元アドレスをアドレスＣ３とするＬｅａｖｅ要求を出力する。出力されたＬｅａｖｅ要求は、Ｌ２スイッチ４００に到達する。
【０１６１】
［ステップＳ８５］Ｌ２スイッチ４００は、クライアント５３からのＬｅａｖｅ要求を受信する。そして、Ｌ２スイッチ４００は、アドレスＭ１に対するクライアント５３の登録をマルチキャストテーブルから削除する。
【０１６２】
［ステップＳ８６］Ｌ２スイッチ４００は、ステップＳ８５の削除処理によって転送先数が減少するため、最新の転送情報を視聴率サーバ６００に対して送信する。
［ステップＳ８７］Ｌ２スイッチ４００は、ステップＳ８５の削除処理によってアドレスＭ１に対する転送先が０個になると、宛先アドレスをアドレスＭ１、送信元アドレスをアドレスＲ４とするＬｅａｖｅ要求を、ルータ１００に対して送信する。
【０１６３】
［ステップＳ８８］ルータ１００は、Ｌ２スイッチ４００からのＬｅａｖｅ要求を受信する。そして、ルータ１００は、アドレスＭ１に対するＬ２スイッチ４００の登録をマルチキャストテーブルから削除する。
【０１６４】
［ステップＳ８９］ルータ１００は、ステップＳ８８の削除処理によってアドレスＭ１に対する転送先が０個になると、宛先アドレスをアドレスＭ１、送信元アドレスをアドレスＲ１とするＬｅａｖｅ要求を、ルータ２００に対して送信する。
【０１６５】
［ステップＳ９０］ルータ２００は、ルータ１００からのＬｅａｖｅ要求を受信する。そして、ルータ２００は、アドレスＭ１に対するルータ１００の登録をマルチキャストテーブルから削除する。
【０１６６】
このようにして、クライアント５３は、視聴開始時にＪｏｉｎ要求を出力する。すると、Ｌ２スイッチ４００はクライアント５３をマルチキャストテーブルに登録し、ルータ１００はＬ２スイッチ４００をマルチキャストテーブルに登録し、ルータ２００はルータ１００をマルチキャストテーブルに登録する。これにより、配信サーバ４１からルータ２００、ルータ１００、Ｌ２スイッチ４００、クライアント５３へとマルチキャストパケットが中継される。ここで、Ｌ２スイッチ４００は、クライアント５３の登録時に、転送情報を視聴率サーバ６００に対して送信する。
【０１６７】
このようなコンテンツ配信システムを用いることで、配信サーバ４１，４２およびクライアント５１，５２，５３，５４は、一般的なマルチキャストの通信プロトコルに対応していればよく、専用のハードウェアやソフトウェアを搭載する必要がない。このため、コンテンツの視聴状況を把握することが容易に実現できる。特に、視聴率サーバ６００には、コンテンツ配信システム全体での視聴状況を示す情報が時系列に蓄積されるため、管理者は、設備の増強や課金の方法などを適切に検討することができる。この結果、より安定したコンテンツ配信システムを実現できるようになる。
【０１６８】
［第２の実施の形態］
次に、第２の実施の形態について説明する。第１の実施の形態は、瞬間的な視聴者数を把握できるシステムであったが、第２の実施の形態は、所定期間内の延べ視聴者数と総視聴時間とを更に把握できるシステムである。前述の第１の実施の形態との相違点を中心に説明し、同様の事項については説明を省略する。
【０１６９】
第２の実施の形態のシステム構成は、図２に示した第１の実施の形態のものと同様である。ただし、ルータ、Ｌ２スイッチおよび視聴率サーバが備える処理機能の一部が、第１の実施の形態のものと異なる。以下の説明で、ルータ１００ａは前述のルータ１００に相当する通信装置であり、視聴率サーバ６００ａは前述の視聴率サーバ６００に相当するコンピュータであるとする。
【０１７０】
図１５は、第２の実施の形態のルータの機能を示すブロック図である。ルータ１００ａは、ルーティング情報記憶部１１０、マルチキャスト情報記憶部１２０、期間転送情報記憶部１３０ａ、入力制御部１４０、経路判定部１５０、マルチキャスト処理部１６０、期間転送状況監視部１７０ａおよび出力制御部１８０を有する。
【０１７１】
ルーティング情報記憶部１１０、マルチキャスト情報記憶部１２０、入力制御部１４０、経路判定部１５０、マルチキャスト処理部１６０および出力制御部１８０が備える機能は、第１の実施の形態のものと同様である。
【０１７２】
期間転送情報記憶部１３０ａには、マルチキャストアドレス毎に、現在の転送先数と、転送情報を最後に視聴率サーバ６００に送信してからの延べ転送先数および総転送時間とを示す転送情報が格納される。転送先数および延べ転送先数は、マルチキャストパケットの転送制御機能を有する他の通信装置を除外して計算される。
【０１７３】
期間転送状況監視部１７０ａは、マルチキャスト情報記憶部１２０に格納されたマルチキャストテーブル１２１を監視する。ここで、期間転送状況監視部１７０ａは、転送先が新たに追加されると、転送先数を再計算すると共に、転送先数の増加分だけ延べ転送先数を加算し、期間転送情報記憶部１３０ａに格納された転送情報を更新する。
【０１７４】
また、期間転送状況監視部１７０ａは、転送先が削除されると、転送先数を再計算し、期間転送情報記憶部１３０ａに格納された転送情報を更新する。また、期間転送状況監視部１７０ａは、Ｊｏｉｎ要求の継続的な受信によって転送先の更新時刻が新しくなると、前回の更新時刻からの経過時間分だけ総転送時間を加算し、期間転送情報記憶部１３０ａに格納された転送情報を更新する。
【０１７５】
また、期間転送状況監視部１７０ａは、視聴率サーバ６００ａが送信した報告要求に応答して、期間転送情報記憶部１３０ａから現在の転送情報を取得し、視聴率サーバ６００ａ宛てのパケットを生成する。このとき、期間転送状況監視部１７０ａは、期間転送情報記憶部１３０ａに格納された転送情報の延べ転送先数と総転送時間とを０に初期化する。
【０１７６】
なお、期間転送状況監視部１７０ａでは、第１の実施の形態と異なり、転送情報の送信方法として、転送先数が増減する毎に転送情報を視聴率サーバ６００に送信する方法を選択することはできない。
【０１７７】
図１６は、第２の実施の形態の視聴率サーバの機能を示すブロック図である。視聴率サーバ６００ａは、期間転送情報収集部６１０ａ、期間転送情報記憶部６２０ａ、期間視聴状況集計部６３０ａおよび期間視聴情報記憶部６４０ａを有する。
【０１７８】
期間転送情報収集部６１０ａは、マルチキャストパケットの転送制御機能を備える通信装置から、所定の時間間隔で転送情報を収集する。そして、期間転送情報収集部６１０ａは、個々の通信装置から取得した転送情報を、期間転送情報記憶部６２０ａに順次格納する。なお、管理者は、通信プロトコルとしてＵＤＰとＴＣＰのいずれかを選択することができる。
【０１７９】
期間視聴状況集計部６３０ａは、期間転送情報記憶部６２０ａに格納された転送情報に基づいて、現在の受信クライアント数と、前回集計を行ってからの延べクライアント数および総受信時間とを、マルチキャストアドレス毎に集計する。例えば、期間視聴状況集計部６３０ａは、１０分毎に集計を行う。そして、期間視聴状況集計部６３０ａは、集計結果と集計時刻とを対応付けて、視聴情報として期間視聴情報記憶部６４０ａに格納する。
【０１８０】
図１７は、第２の実施の形態の転送情報テーブルのデータ構造を示す図である。図１７に示す転送情報テーブル１３２は、ルータ１００ａの期間転送情報記憶部１３０ａに格納される。転送情報テーブル１３２には、マルチキャストアドレスを示す項目、転送先数を示す項目、延べ転送先数を示す項目および総転送時間を示す項目が設けられている。各項目の横方向に並べられた情報同士が互いに関連付けられている。
【０１８１】
マルチキャストアドレスの項目には、映像を識別するマルチキャストアドレスが設定される。転送先数の項目には、マルチキャストパケットの現在の転送先の数が設定される。延べ転送先数の項目には、各集計期間の開始時から測定した延べ転送先数が設定される。総転送時間の項目には、各集計期間の開始時から測定した、各転送先へのマルチキャストパケットの転送継続時間の合計値が設定される。転送情報テーブル１３２に格納される情報は、期間転送状況監視部１７０ａによって適宜更新される。
【０１８２】
図１８は、第２の実施の形態の視聴情報テーブルのデータ構造を示す図である。図１８に示す視聴情報テーブル６４２は、視聴率サーバ６００ａの期間視聴情報記憶部６４０ａに格納される。視聴情報テーブル６４２には、日時を示す項目、マルチキャストアドレスを示す項目、視聴数を示す項目、延べ視聴数を示す項目および総師長時間を示す項目が設けられている。各項目の横方向に並べられた情報同士が互いに関連付けられている。
【０１８３】
日時の項目には、期間視聴状況集計部６３０ａが集計処理を行った日時が設定される。マルチキャストアドレスの項目には、映像を識別するマルチキャストアドレスが設定される。視聴数の項目には、全ての通信装置における転送先数の合計値が設定される。延べ視聴数の項目には、全ての通信装置における延べ転送先数の合計値が設定される。総視聴時間の項目には、全ての通信装置における総転送時間の合計値が設定される。視聴情報テーブル６４２に格納される情報は、期間視聴状況集計部６３０ａによって定期的に追加される。
【０１８４】
以上のような構成およびデータ構造のシステムにおいて実行される処理の全体的な流れは、図１１，１３に示した第１の実施の形態のものと同様である。
このようなコンテンツ配信システムを用いることで、第１の実施の形態に係るコンテンツ配信システムと同様の効果を得られる。更に、第２の実施の形態に係るコンテンツ配信システムを用いることで、視聴率サーバ６００ａに、所定時間間隔毎の延べ視聴数および総視聴時間の情報が時系列に蓄積される。このため、視聴するコンテンツを頻繁に切り替える利用者がいる場合でも、管理者は、正確な視聴状況を把握することができる。従って、より現実に即したコンテンツ配信システムを構築できるようになる。
【０１８５】
なお、上記実施の形態では、個々の通信装置が他の通信装置を除外して転送先数を計算し、視聴率サーバは転送先数を合計して視聴数を特定している。一方で、個々の通信装置は他の通信装置を除外せずに転送先数を計算し、視聴率サーバが通信装置間の接続関係を考慮して適切に視聴数を特定するようにしてもよい。管理者は、上記処理が通信装置および視聴率サーバに与える負荷を考慮して、いずれの方法を採用するか選択することが好ましい。
【０１８６】
以上、本発明の視聴状況監視方法、視聴状況監視装置、視聴状況監視プログラムおよび視聴状況監視システムを図示の実施の形態に基づいて説明したが、本発明はこれに限定されるものではなく、各部の構成は同様の機能を有する任意の構成のものに置換することができる。また、本発明に他の任意の構成物や工程が付加されていてもよい。また、本発明は、前述した実施の形態のうちの任意の２以上の構成（特徴）を組み合わせたものであってもよい。
【０１８７】
なお、上記の処理機能は、コンピュータによって実現することができる。その場合、サーバが有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリなどがある。磁気記録装置には、ハードディスク装置（ＨＤＤ）、フレキシブルディスク（ＦＤ）、磁気テープ（ＭＴ）などがある。光ディスクには、ＤＶＤ（Digital Versatile Disc）、ＤＶＤ−ＲＡＭ、ＣＤ−ＲＯＭ（Compact Disc - Read Only Memory）、ＣＤ−Ｒ（Recordable）／ＲＷ（ReWritable）などがある。光磁気記録媒体には、ＭＯ（Magneto-Optical disk）などがある。
【０１８８】
プログラムを流通させる場合には、例えば、そのプログラムが記録されたＤＶＤ、ＣＤ−ＲＯＭなどの可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
【０１８９】
上記プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、サーバコンピュータからプログラムが転送される毎に、逐次、受け取ったプログラムに従った処理を実行することもできる。
【０１９０】
以上説明した実施の形態の主な技術的特徴は、以下の付記の通りである。
（付記１）  マルチキャスト配信されるコンテンツに対応するパケットを生成する配信装置から前記コンテンツを再生する１以上の再生装置へ至る経路上に位置する通信装置において実行される前記コンテンツの視聴状況を監視する視聴状況監視方法において、
前記コンテンツを識別するマルチキャストアドレスを指定した転送要求を受信すると、前記転送要求の送信元を、前記マルチキャストアドレスと前記パケットを転送すべき転送先装置を識別する転送先アドレスとを対応付ける転送テーブルに、前記転送先装置として登録すると共に、前記転送先装置から継続的に前記転送要求を受信している間、前記転送テーブルの登録を維持する管理ステップと、
前記転送テーブルを監視して、前記マルチキャストアドレス毎の現在の転送先数を計算し、前記転送先数を示す転送情報を、前記パケットを受信している前記再生装置の数を示す視聴情報を管理する管理装置に対して、ネットワーク経由で継続的に送信する監視ステップと、
を有することを特徴とする視聴状況監視方法。
【０１９１】
（付記２）  前記監視ステップにおいて、前記通信装置は、前記マルチキャストアドレスを有する前記パケットの転送先を制御可能な他の通信装置が前記転送先装置として前記転送テーブルに登録されている場合に、前記他の通信装置を除外して前記転送先数を計算することを特徴とする請求項１記載の視聴状況監視方法。
【０１９２】
（付記３）  前記監視ステップにおいて、前記通信装置は、個々の前記転送先アドレスが前記転送テーブルに登録されている経過時間に基づいて、前記マルチキャストアドレス毎の延べ転送時間を更に計算し、前記転送情報に前記延べ転送時間を含めて、前記管理装置に対して前記転送情報を送信することを特徴とする請求項１記載の視聴状況監視方法。
【０１９３】
（付記４）  前記監視ステップにおいて、前記通信装置は、前記管理装置が所定の時間間隔で送信する報告要求に応答して、前記管理装置に対して前記転送情報を送信することを特徴とする請求項１記載の視聴状況監視方法。
【０１９４】
（付記５）  前記監視ステップにおいて、前記通信装置は、前記転送先数が変化する毎に、前記管理装置に対して前記転送情報を送信することを特徴とする請求項１記載の視聴状況監視方法。
【０１９５】
（付記６）  マルチキャスト配信されるコンテンツに対応するパケットを生成する配信装置から前記コンテンツを再生する１以上の再生装置へ至る経路上に位置し、前記コンテンツの視聴状況を監視する視聴状況監視装置において、
前記コンテンツを識別するマルチキャストアドレスと、前記パケットを転送すべき転送先装置を識別する転送先アドレスとを対応付ける転送テーブルと、
前記マルチキャストアドレスを指定した転送要求を受信すると、前記転送要求の送信元を前記転送先装置として前記転送テーブルに登録すると共に、前記転送先装置から継続的に前記転送要求を受信している間、前記転送テーブルの登録を維持する転送テーブル管理手段と、
前記転送テーブルを監視して、前記マルチキャストアドレス毎の現在の転送先数を計算し、前記転送先数を示す転送情報を、前記パケットを受信している前記再生装置の数を示す視聴情報を管理する管理装置に対して、ネットワーク経由で継続的に送信する転送状況監視手段と、
を有することを特徴とする視聴状況監視装置。
【０１９６】
（付記７）  マルチキャスト配信されるコンテンツに対応するパケットを生成する配信装置から前記コンテンツを再生する１以上の再生装置へ至る経路上に位置するコンピュータに、前記コンテンツの視聴状況を監視する処理を実行させる視聴状況監視プログラムにおいて、前記コンピュータを、
前記コンテンツを識別するマルチキャストアドレスと、前記パケットを転送すべき転送先装置を識別する転送先アドレスとを対応付ける転送テーブルを記憶する転送テーブル記憶手段、
前記マルチキャストアドレスを指定した転送要求を受信すると、前記転送要求の送信元を前記転送先装置として前記転送テーブルに登録すると共に、前記転送先装置から継続的に前記転送要求を受信している間、前記転送テーブルの登録を維持する転送テーブル管理手段、
前記転送テーブルを監視して、前記マルチキャストアドレス毎の現在の転送先数を計算し、前記転送先数を示す転送情報を、前記パケットを受信している前記再生装置の数を示す視聴情報を管理する管理装置に対して、ネットワーク経由で継続的に送信する転送状況監視手段、
として機能させることを特徴とする視聴状況監視プログラム。
【０１９７】
（付記８）  マルチキャスト配信されるコンテンツに対応するパケットを生成する配信装置から前記コンテンツを再生する１以上の再生装置へ至る経路上で前記コンテンツの視聴状況を監視する視聴状況監視システムにおいて、
前記コンテンツを識別するマルチキャストアドレスと、前記パケットを転送すべき転送先装置を識別する転送先アドレスとを対応付ける転送テーブルと、
前記マルチキャストアドレスを指定した転送要求を受信すると、前記転送要求の送信元を前記転送先装置として前記転送テーブルに登録すると共に、前記転送先装置から継続的に前記転送要求を受信している間、前記転送テーブルの登録を維持する転送テーブル管理手段と、
前記転送テーブルを監視して、前記マルチキャストアドレス毎の現在の転送先数を計算する転送状況監視手段と、
を備える複数の通信装置と、
前記マルチキャストアドレス毎に、前記パケットを受信している前記再生装置の数を示す視聴情報を時系列に記憶する視聴情報記憶手段と、
前記複数の通信装置から、前記転送先数を示す転送情報をネットワーク経由で継続的に収集する転送情報収集手段と、
前記転送情報収集手段が収集した前記転送情報を集計して前記視聴情報を生成し、集計時刻と対応付けて、生成した前記視聴情報を前記視聴情報記憶手段に格納する視聴状況集計手段と、
を備える視聴情報管理装置と、
を有することを特徴とする視聴状況監視システム。
【図面の簡単な説明】
【０１９８】
【図１】本実施の形態の概要を示す図である。
【図２】本実施の形態のシステム構成を示す図である。
【図３】視聴率サーバのハードウェア構成を示す図である。
【図４】第１の実施の形態のルータの機能を示すブロック図である。
【図５】第１の実施の形態の視聴率サーバの機能を示すブロック図である。
【図６】映像名テーブルのデータ構造を示す図である。
【図７】ルーティングテーブルのデータ構造を示す図である。
【図８】マルチキャストテーブルのデータ構造を示す図である。
【図９】第１の実施の形態の転送情報テーブルのデータ構造を示す図である。
【図１０】第１の実施の形態の視聴情報テーブルのデータ構造を示す図である。
【図１１】マルチキャスト配信の流れを示す第１のシーケンス図である。
【図１２】マルチキャスト配信の流れを示す第２のシーケンス図である。
【図１３】マルチキャスト配信の流れを示す第３のシーケンス図である。
【図１４】マルチキャスト配信の流れを示す第４のシーケンス図である。
【図１５】第２の実施の形態のルータの機能を示すブロック図である。
【図１６】第２の実施の形態の視聴率サーバの機能を示すブロック図である。
【図１７】第２の実施の形態の転送情報テーブルのデータ構造を示す図である。
【図１８】第２の実施の形態の視聴情報テーブルのデータ構造を示す図である。
【符号の説明】
【０１９９】
１  通信装置
１ａ  転送テーブル
１ｂ  転送テーブル管理手段
１ｃ  パケット転送手段
２  管理装置
２ａ  視聴情報記憶手段
２ｂ  転送情報収集手段
２ｃ  視聴状況集計手段
３ａ，３ｂ  配信装置
４ａ，４ｂ，４ｃ  再生装置
【図１】
2008177719.tif 000003
【図２】
2008177719.tif 000004
【図３】
2008177719.tif 000005
【図４】
2008177719.tif 000006
【図５】
2008177719.tif 000007
【図６】
2008177719.tif 000008
【図７】
2008177719.tif 000009
【図８】
2008177719.tif 000010
【図９】
2008177719.tif 000011
【図１０】
2008177719.tif 000012
【図１１】
2008177719.tif 000013
【図１２】
2008177719.tif 000014
【図１３】
2008177719.tif 000015
【図１４】
2008177719.tif 000016
【図１５】
2008177719.tif 000017
【図１６】
2008177719.tif 000018
【図１７】
2008177719.tif 000019
【図１８】
2008177719.tif 000020