(57)【要約】【課題】ツリー構造における接続品質やサービス品質を安定化させることができるコンテンツ配信システム、ソフトウェア更新方法及び端末装置。【解決手段】コンテンツ配信システムは、コンテンツデータとソフトウェアデータとを配信する場合に、上流の端末装置のソフトウェアを下流の端末装置が確認し、上流の端末装置が新バージョンで動作する場合に下流の端末装置のソフトウェアを順次更新するようにして、通信回線のトラフィック集中を回避する。【選択図】図６
2007179487.tif 000002
【特許請求の範囲】
【請求項１】
コンテンツデータを配信する配信装置と、前記コンテンツデータを受信して再生する複数の端末装置とを有し、前記複数の端末装置が前記配信装置を頂点として階層構造で多層に論理接続され、前記端末装置の中継機能により前記コンテンツデータが順次下層の端末装置へ中継されることにより、全ての前記端末装置で前記コンテンツデータを再生可能としたコンテンツ配信システムにおいて、
前記配信装置は、
前記端末装置の更新用のソフトウェアを前記階層構造における最上層の前記端末装置へ配信するソフトウェア配信手段を有し、
前記端末装置は、
接続している上層の装置から前記更新用のソフトウェアを受信するソフトウェア受信手段と、
前記更新用のソフトウェアを記憶するソフトウェア記憶手段と、
前記接続している下層の装置へ前記更新用のソフトウェアを中継するソフトウェア中継手段と、
前記接続している上層の装置が、前記配信装置又は前記更新用のソフトウェアで動作している端末装置であるときに、前記ソフトウェアの更新契機であると判定するソフトウェア更新契機判定手段と、
前記ソフトウェア更新契機判定手段によって、前記ソフトウェアの更新契機であると判定すると、前記ソフトウェア受信手段によって受信した更新用のソフトウェアへ更新処理を行うソフトウェア更新手段と、
を有することを特徴とするコンテンツ配信システム。
【請求項２】
前記端末装置は、
接続している上層の端末装置及び前記上層の端末装置よりも上流の端末装置のソフトウェアのバージョン情報を受信するバージョン情報受信手段と、
自身よりも上流の端末装置のソフトウェアのバージョン情報と、自身のバージョン情報とを前記接続している下層の端末装置へ送信するバージョン情報送信手段とを有し、
前記ソフトウェア更新契機判定手段は、前記バージョン情報受信手段により受信した前記バージョン情報に基づいて、自身の端末装置よりも上流の端末装置のうち、前記更新用のソフトウェアで動作していない端末装置の数が所定数以下となったときに、前記ソフトウェアの更新契機であると判定することを特徴とする請求項１に記載のコンテンツ配信システム。
【請求項３】
前記端末装置における前記ソフトウェア更新契機判定手段は、前記ソフトウェア中継手段によるソフトウェアの中継が完了したときに、前記ソフトウェアの更新契機であると判定することを特徴とする請求項１又は請求項２に記載のコンテンツ配信システム。
【請求項４】
前記配信装置における前記ソフトウェア配信手段は、前記更新用ソフトウェアの配信を所定期間内に所定回数繰り返し実行することを特徴とする請求項１〜３のいずれか１項に記載のコンテンツ配信システム。
【請求項５】
前記配信装置は前記コンテンツデータを下層の端末装置へ配信するためのコンテンツ配信手段を有し、前記コンテンツ配信手段は、前記コンテンツデータと共に前記更新用のソフトウェアを配信することを特徴とする請求項１〜４のいずれか１項に記載のコンテンツ配信システム。
【請求項６】
前記端末装置における前記ソフトウェア更新契機判定手段は、前記コンテンツ再生手段による前記コンテンツデータの再生が完了したときに、前記ソフトウェアの更新契機であると判定することを特徴とする請求項１〜５のいずれか１項に記載のコンテンツ配信システム。
【請求項７】
前記端末装置は、
前記コンテンツデータを受信するコンテンツ受信手段と、
受信した前記コンテンツデータを記憶可能なコンテンツ記憶手段と、
記憶した前記コンテンツデータを順次再生するコンテンツ再生手段と、
前記コンテンツデータを前記接続している下層の端末装置へ順次中継するコンテンツ中継手段とを有し、
前記ソフトウェア更新契機判定手段は、前記コンテンツ記憶手段に、少なくとも前記更新処理が完了するまでの間再生可能なだけの前記コンテンツデータが記憶されたときに、前記ソフトウェアの更新契機であると判定し、
前記ソフトウェア更新手段は、前記コンテンツ再生手段の動作中に前記更新処理を行う際、前記更新用のソフトウェアにおける前記コンテンツ再生手段に関する部分を除いて、前記更新処理を行うことを特徴とする請求項１〜６のいずれか１項に記載のコンテンツ配信システム。
【請求項８】
コンテンツデータを配信する配信装置と、前記コンテンツデータを受信して再生する複数の端末装置とを有し、前記複数の端末装置が前記配信装置を頂点として階層構造で多層に論理接続され、前記端末装置の中継機能により前記コンテンツデータが順次下層の端末装置へ中継されることにより、全ての前記端末装置で前記コンテンツデータを再生可能としたコンテンツ配信システムにおける前記端末装置のソフトウェア更新方法において、
前記配信装置は、
前記端末装置の更新用のソフトウェアを前記階層構造における最上層の前記端末装置へ配信するソフトウェア配信ステップを有し、
前記端末装置は、
接続している上層の装置から前記更新用のソフトウェアを受信するソフトウェア受信ステップと、
前記更新用のソフトウェアを記憶するソフトウェア記憶ステップと、
前記接続している下層の装置へ前記更新用のソフトウェアを中継するソフトウェア中継ステップと、
前記接続している上層の装置が、前記配信装置又は前記更新用のソフトウェアで動作している端末装置であるときに、前記ソフトウェアの更新契機であると判定するソフトウェア更新契機判定ステップと、
前記ソフトウェア更新契機判定ステップによって、前記ソフトウェアの更新契機であると判定すると、前記ソフトウェア受信ステップで受信した更新用のソフトウェアへ更新処理を行うソフトウェア更新ステップと、
を有することを特徴とするソフトウェア更新方法。
【請求項９】
コンテンツデータを配信する配信装置と、前記コンテンツデータを受信して再生する複数の端末装置とを有し、前記複数の端末装置が前記配信装置を頂点として階層構造で多層に論理接続され、前記端末装置の中継機能により前記コンテンツデータが順次下層の端末装置へ中継されることにより、全ての前記端末装置で前記コンテンツデータを再生可能としたコンテンツ配信システムにおける前記端末装置において、
接続している上層の装置から更新用のソフトウェアを受信するソフトウェア受信手段と、
前記更新用のソフトウェアを記憶するソフトウェア記憶手段と、
前記接続している下層の装置へ前記更新用のソフトウェアを中継するソフトウェア中継手段と、
前記接続している上層の装置が、前記配信装置又は前記更新用のソフトウェアで動作している端末装置であるときに、前記ソフトウェアの更新契機であると判定するソフトウェア更新契機判定手段と、
前記ソフトウェア更新契機判定手段によって、前記ソフトウェアの更新契機であると判定すると、前記ソフトウェア受信手段によって受信した更新用のソフトウェアへ更新処理を行うソフトウェア更新手段と、
を有することを特徴とする端末装置。
【請求項１０】
接続している上層の端末装置よりも上層の端末装置のソフトウェアのバージョン情報を受信するバージョン情報受信手段と、
前記バージョン情報と、自身のバージョン情報とを前記接続している下層の端末装置へ送信するバージョン情報送信手段と、
前記接続している上層の端末装置から前記バージョン情報を受信するバージョン情報リスト受信手段とを有し、
前記ソフトウェア更新契機判定手段は、前記バージョン情報受信手段により受信した前記バージョン情報に基づいて、自身の端末措置よりも上層の端末装置のうち、前記更新用のソフトウェアで動作していない端末装置の数が所定数以下となったときに、前記ソフトウェアの更新契機であると判定することを特徴とする請求項９に記載の端末装置。
【請求項１１】
前記ソフトウェア更新契機判定手段は、前記ソフトウェア中継手段によるソフトウェアの中継が完了していない場合、前記ソフトウェアの中継が完了したときに、前記ソフトウェアの更新契機であると判定することを特徴とする請求項９又は請求項１０に記載の端末装置。
【請求項１２】
前記ソフトウェア受信手段は、前記配信装置が所定期間内に所定回数繰り返し配信する前記更新用のソフトウェアを受信することを特徴とする請求項９〜１１のいずれか１項に記載の端末装置。
【請求項１３】
前記ソフトウェア受信手段は、前記配信装置が前記コンテンツデータと共に配信する前記更新用のソフトウェアを受信することを特徴とする請求項９〜１２のいずれか１項に記載の端末装置。
【請求項１４】
前記コンテンツデータを受信するコンテンツ受信手段と、
受信した前記コンテンツデータを記憶可能なコンテンツ記憶手段と、
記憶した前記コンテンツデータを順次再生するコンテンツ再生手段と、
前記コンテンツデータを前記接続している下層の端末装置へ順次中継するコンテンツ中継手段とを有し、
前記ソフトウェア更新契機判定手段は、前記コンテンツ記憶手段に、少なくとも前記更新処理が完了するまでの間再生可能なだけの前記コンテンツデータが記憶されたときに、前記ソフトウェアの更新契機であると判定し、
前記ソフトウェア更新手段は、前記コンテンツ再生手段の動作中に前記更新処理を行う際、前記更新用のソフトウェアにおける前記コンテンツ再生手段に関する部分を除いて、前記更新処理を行うことを特徴とする請求項９〜１３のいずれか１項に記載の端末装置。
【請求項１５】
コンピュータを、請求項９〜１４のいずれか１項に記載の端末装置における各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンテンツ配信システム及びソフトウェア更新方法及びこれらに用いられる端末装置及びプログラムに関するものである。特に、コンテンツの配信とソフトウェアの配信とを同じシステムにより配信するものに関する。
【背景技術】
【０００２】
近年、インターネットなどのネットワークを介して、音楽、映画、トーク番組などのコンテンツデータのストリーミング配信を行うコンテンツ配信サービスが開始されて始めている。この種のコンテンツ配信システムとして、配信元からコンテンツデータを受信した端末装置が、そのコンテンツデータを再生すると共に、そのコンテンツデータを他の端末装置へ順次中継して配信するＰ２Ｐ（Ｐｅｅｒ  Ｔｏ  Ｐｅｒｒ）通信と呼ばれるシステムが考案されている（例えば特許文献１参照）。
【０００３】
このＰ２Ｐ通信形態によるコンテンツデータ配信システムは、コンテンツデータを配信する放送局端末と、この配信装置を頂点として複数の端末装置が階層構造で多層に論理接続されたネットワークの接続状態を管理する管理サーバとを設け、この配信システムから配信されるコンテンツデータが端末装置に中継機能により順次下層の端末装置へ中継されて、複数の端末装置の全てに配信されて、受信したコンテンツデータを各端末装置で再生可能としている。
【０００４】
また、近年においては、配信されるコンテンツが多様となってきており、これに伴う再生ソフト等のソフトウェアの更新が頻繁に行われるようになってきている。そして、バージョンアップした更新用ソフトウェアや、その他通信ソフト、画像再生ソフト、ウィルス対策ソフト等の更新ソフトウェアの配信も、インターネット等を介して頻繁に行われる。
【特許文献１】特開２００３−１６９０８９
【発明の開示】
【発明が解決しようとする課題】
【０００５】
このコンテンツ配信システムにおいて、更新用ソフトウェアを端末装置に配信するには、配信装置から階層の構造にしたがって端末装置へ配信することが考えられる。即ち、放送局端末に記録された更新用ソフトウェアは階層構造をなしている下流の端末装置に配信される。更新用ソフトウェアを受信した各端末装置においては、更新用ソフトウェアを一時的に記憶した後にその中継機能により下流の端末装置に更新用ソフトウェアを中継し、自端末装置のソフトウェアの更新処理を行う。このようにして更新用ソフトウェアを受信した端末装置がソフトウェアの更新処理を行うと、そのソフトウェアが、配信データの中継器などのネットワークに関連した機能を持っている場合、一旦ネットワークから離脱して、特定のソフトウェアのＣＰＵプロセスの再起動を経て、端末装置の再起動が実行され、再度ネットワークに参加することになる。あるいは、ソフトウェアの更新に際し、オペレーティングシステム自体の再起動が必要になる場合もある（デバイスドライバを更新する場合など）。この場合は、端末装置の再起動を経て、再度ネットワークに参加することに成る。こうした場合ツリー配信ネットワークの管理サーバは、各端末装置のネットワークからの離脱やネットワークに対する参加を確認し、その都度ネットワークの階層構造を再構築することになる。
【０００６】
具体的には次のような処理が行われる。（１）最上層である放送局端末に更新用ソフトウェアがダウンロードデータとして仕込まれる、（２）次に、放送局端末から下層の端末装置へ更新用ソフトウェアが配信されて下層の各端末装置においてダウンロードされ、（３）次に、各端末装置において更新用ソフトウェアが受信されて、各端末装置が再起動（リブート）され、（４）次に、ネットワークに対して端末装置の再接続が行われる。従って、再接続や再起動により各端末装置が一斉にネットワークから離脱し、再起動が行われることになる。
【０００７】
しかしながら、上述したコンテンツの配信処理において、各端末装置において、（３）一斉に再起動が行われ、（４）一斉に再接続されると、管理サーバにおいてはネットワーク階層の再構築が時間的に集中して行われることになり管理サーバに対して大きな負担がかかってしまい、ネットワークの安定性が損なわれるという課題があった。
【０００８】
また、上流の端末装置から下流の端末装置にかけて各端末装置が階層構造のネットワークを構成し、その階層構造は管理サーバにより管理されているが、上流端末装置から更新
用ソフトウェアが配信され、各端末装置において上記（３）の再起動、あるいは（４）の再接続がなされると、下層の端末装置からその上流の端末装置に対して、あるいは管理サーバに対して、階層構造を再構築するためのアクセスが集中してしまい、ネットワーク上でのトラフィック集中が発生して通信回線の渋滞という深刻な影響を及ぼしてしまう、という課題があった。
【０００９】
また、これを回避する目的で、上記（３）の再起動や（４）の再接続を各端末装置が電源をＯＦＦした後に行うことも考えられる。しかし、この方法では常時電源がＯＮ状態の端末装置は、いつまでたってもソフトウェアのバージョンアップを行うことができないことが課題となった。特に緊急を要するバージョンアップの場合には、例えばウィルス対策ソフトの配信などの場合には、迅速なバージョンアップを実行する必要がある。
【００１０】
また、最下層からバージョンアップを行う方法も考えられるが、この方法では中間層や上位層がやはりいつまでたってもバージョンアップができない、という課題があった。
【課題を解決するための手段】
【００１１】
本発明においては、  上記課題を解決するために以下の手段を講じた。
【００１２】
請求項１に係る本発明においては、コンテンツデータを配信する配信装置と、前記コンテンツデータを受信して再生する複数の端末装置とを有し、前記複数の端末装置が前記配信装置を頂点として階層構造で多層に論理接続され、前記端末装置の中継機能により前記コンテンツデータが順次下層の端末装置へ中継されることにより、全ての前記端末装置で前記コンテンツデータを再生可能としたコンテンツ配信システムにおいて、前記配信装置は、前記端末装置の更新用のソフトウェアを前記階層構造における最上層の前記端末装置へ配信するソフトウェア配信手段を有し、前記端末装置は、接続している上層の装置から前記更新用のソフトウェアを受信するソフトウェア受信手段と、前記更新用のソフトウェアを記憶するソフトウェア記憶手段と、前記接続している下層の装置へ前記更新用のソフトウェアを中継するソフトウェア中継手段と、前記接続している上層の装置が、前記配信装置又は前記更新用のソフトウェアで動作している端末装置であるときに、前記ソフトウェアの更新契機であると判定するソフトウェア更新契機判定手段と、前記ソフトウェア更新契機判定手段によって、前記ソフトウェアの更新契機であると判定すると、前記ソフトウェア受信手段によって受信した更新用のソフトウェアへ更新処理を行うソフトウェア更新手段と、を有することを特徴とするコンテンツ配信システムとした。
【００１３】
請求項２に係る本発明においては、前記端末装置は、接続している上層の端末装置及び前記上層の端末装置よりも上流の端末装置のソフトウェアのバージョン情報を受信するバージョン情報受信手段と、自身よりも上流の端末装置のソフトウェアのバージョン情報と、自身のバージョン情報とを前記接続している下層の端末装置へ送信するバージョン情報送信手段とを有し、前記ソフトウェア更新契機判定手段は、前記バージョン情報受信手段により受信した前記バージョン情報に基づいて、自身の端末装置よりも上流の端末装置のうち、前記更新用のソフトウェアで動作していない端末装置の数が所定数以下となったときに、前記ソフトウェアの更新契機であると判定することを特徴とする請求項１に記載のコンテンツ配信システムとした。
【００１４】
請求項３に係る本発明においては、前記端末装置における前記ソフトウェア更新契機判定手段は、前記ソフトウェア中継手段によるソフトウェアの中継が完了したときに、前記ソフトウェアの更新契機であると判定することを特徴とする請求項１又は請求項２に記載のコンテンツ配信システムとした。
【００１５】
請求項４に係る本発明においては、前記配信装置における前記ソフトウェア配信手段は、前記更新用ソフトウェアの配信を所定期間内に所定回数繰り返し実行することを特徴とする請求項１〜３のいずれか１項に記載のコンテンツ配信システムとした。
【００１６】
請求項５に係る本発明においては、前記配信装置は前記コンテンツデータを下層の端末装置へ配信するためのコンテンツ配信手段を有し、前記コンテンツ配信手段は、前記コンテンツデータと共に前記更新用のソフトウェアを配信することを特徴とする請求項１〜４のいずれか１項に記載のコンテンツ配信システムとした。
【００１７】
請求項６に係る本発明においては、前記端末装置における前記ソフトウェア更新契機判定手段は、前記コンテンツ再生手段による前記コンテンツデータの再生が完了したときに、前記ソフトウェアの更新契機であると判定することを特徴とする請求項１〜５のいずれか１項に記載のコンテンツ配信システムとした。
【００１８】
請求項７に係る本発明においては、前記端末装置は、前記コンテンツデータを受信するコンテンツ受信手段と、受信した前記コンテンツデータを記憶可能なコンテンツ記憶手段と、記憶した前記コンテンツデータを順次再生するコンテンツ再生手段と、前記コンテンツデータを前記接続している下層の端末装置へ順次中継するコンテンツ中継手段とを有し、前記ソフトウェア更新契機判定手段は、前記コンテンツ記憶手段に、少なくとも前記更新処理が完了するまでの間再生可能なだけの前記コンテンツデータが記憶されたときに、前記ソフトウェアの更新契機であると判定し、前記ソフトウェア更新手段は、前記コンテンツ再生手段の動作中に前記更新処理を行う際、前記更新用のソフトウェアにおける前記コンテンツ再生手段に関する部分を除いて、前記更新処理を行うことを特徴とする請求項１〜６のいずれか１項に記載のコンテンツ配信システムとした。
【００１９】
請求項８に係る本発明においては、コンテンツデータを配信する配信装置と、前記コンテンツデータを受信して再生する複数の端末装置とを有し、前記複数の端末装置が前記配信装置を頂点として階層構造で多層に論理接続され、前記端末装置の中継機能により前記コンテンツデータが順次下層の端末装置へ中継されることにより、全ての前記端末装置で前記コンテンツデータを再生可能としたコンテンツ配信システムにおける前記端末装置のソフトウェア更新方法において、前記配信装置は、前記端末装置の更新用のソフトウェアを前記階層構造における最上層の前記端末装置へ配信するソフトウェア配信ステップを有し、前記端末装置は、接続している上層の装置から前記更新用のソフトウェアを受信するソフトウェア受信ステップと、前記更新用のソフトウェアを記憶するソフトウェア記憶ステップと、前記接続している下層の装置へ前記更新用のソフトウェアを中継するソフトウェア中継ステップと、前記接続している上層の装置が、前記配信装置又は前記更新用のソフトウェアで動作している端末装置であるときに、前記ソフトウェアの更新契機であると判定するソフトウェア更新契機判定ステップと、前記ソフトウェア更新契機判定ステップによって、前記ソフトウェアの更新契機であると判定すると、前記ソフトウェア受信ステップで受信した更新用のソフトウェアへ更新処理を行うソフトウェア更新ステップと、とを有することを特徴とするソフトウェア更新方法とした。
【００２０】
請求項９に係る本発明においては、コンテンツデータを配信する配信装置と、前記コンテンツデータを受信して再生する複数の端末装置とを有し、前記複数の端末装置が前記配信装置を頂点として階層構造で多層に論理接続され、前記端末装置の中継機能により前記コンテンツデータが順次下層の端末装置へ中継されることにより、全ての前記端末装置で前記コンテンツデータを再生可能としたコンテンツ配信システムにおける前記端末装置において、接続している上層の装置から更新用のソフトウェアを受信するソフトウェア受信手段と、前記更新用のソフトウェアを記憶するソフトウェア記憶手段と、前記接続している下層の装置へ前記更新用のソフトウェアを中継するソフトウェア中継手段と、前記接続している上層の装置が、前記配信装置又は前記更新用のソフトウェアで動作している端末装置であるときに、前記ソフトウェアの更新契機であると判定するソフトウェア更新契機判定手段と、前記ソフトウェア更新契機判定手段によって、前記ソフトウェアの更新契機であると判定すると、前記ソフトウェア受信手段によって受信した更新用のソフトウェアへ更新処理を行うソフトウェア更新手段と、を有することを特徴とする端末装置とした。
【００２１】
請求項１０に係る本発明においては、接続している上層の端末装置よりも上層の端末装置のソフトウェアのバージョン情報を受信するバージョン情報受信手段と、前記バージョン情報と、自身のバージョン情報とを前記接続している下層の端末装置へ送信するバージョン情報送信手段と、前記接続している上層の端末装置から前記バージョン情報を受信するバージョン情報リスト受信手段とを有し、前記ソフトウェア更新契機判定手段は、前記バージョン情報受信手段により受信した前記バージョン情報に基づいて、自身の端末装置よりも上層の端末装置のうち、前記更新用のソフトウェアで動作していない端末装置の数が所定数以下となったときに、前記ソフトウェアの更新契機であると判定することを特徴とする請求項９に記載の端末装置とした。
【００２２】
請求項１１に係る本発明においては、前記ソフトウェア更新契機判定手段は、前記ソフトウェア中継手段によるソフトウェアの中継が完了していない場合、前記ソフトウェアの中継が完了したときに、前記ソフトウェアの更新契機であると判定することを特徴とする請求項９又は請求項１０に記載の端末装置とした。
【００２３】
請求項１２に係る本発明においては、前記ソフトウェア受信手段は、前記配信装置が所定期間内に所定回数繰り返し配信する前記更新用のソフトウェアを受信することを特徴とする請求項９〜１１のいずれか１項に記載の端末装置とした。
【００２４】
請求項１３に係る本発明においては、前記ソフトウェア受信手段は、前記配信装置が前記コンテンツデータと共に配信する前記更新用のソフトウェアを受信することを特徴とする請求項９〜１２のいずれか１項に記載の端末装置とした。
【００２５】
請求項１４に係る本発明においては、前記コンテンツデータを受信するコンテンツ受信手段と、受信した前記コンテンツデータを記憶可能なコンテンツ記憶手段と、記憶した前記コンテンツデータを順次再生するコンテンツ再生手段と、前記コンテンツデータを前記接続している下層の端末装置へ順次中継するコンテンツ中継手段とを有し、前記ソフトウェア更新契機判定手段は、前記コンテンツ記憶手段に、少なくとも前記更新処理が完了するまでの間再生可能なだけの前記コンテンツデータが記憶されたときに、前記ソフトウェアの更新契機であると判定し、前記ソフトウェア更新手段は、前記コンテンツ再生手段の動作中に前記更新処理を行う際、前記更新用のソフトウェアにおける前記コンテンツ再生手段に関する部分を除いて、前記更新処理を行うことを特徴とする請求項９〜１３のいずれか１項に記載の端末装置とした。
【００２６】
請求項１５に係る本発明においては、コンピュータを、請求項９〜１４のいずれか１項に記載の端末装置における各手段として機能させるためのプログラムとした。
【発明の効果】
【００２７】
請求項１に係る本発明によれば、コンテンツデータを配信する配信装置と、前記コンテンツデータを受信して再生する複数の端末装置とを有し、前記複数の端末装置が前記配信装置を頂点として階層構造で多層に論理接続され、前記端末装置の中継機能により前記コンテンツデータが順次下層の端末装置へ中継されることにより、全ての前記端末装置で前記コンテンツデータを再生可能としたコンテンツ配信システムにおいて、前記配信装置は、前記端末装置の更新用のソフトウェアを前記階層構造における最上層の前記端末装置へ配信するソフトウェア配信手段を有し、前記端末装置は、接続している上層の装置から前記更新用のソフトウェアを受信するソフトウェア受信手段と、前記更新用のソフトウェアを記憶するソフトウェア記憶手段と、前記接続している下層の装置へ前記更新用のソフトウェアを中継するソフトウェア中継手段と、前記接続している上層の装置が、前記配信装置又は前記更新用のソフトウェアで動作している端末装置であるときに、前記ソフトウェアの更新契機であると判定するソフトウェア更新契機判定手段と、前記ソフトウェア更新契機判定手段によって、前記ソフトウェアの更新契機であると判定すると、前記ソフトウェア受信手段によって受信した更新用のソフトウェアへ更新処理を行うソフトウェア更新手段としたことにより、上流から下流に位置する端末装置に対して更新用ソフトウェアが順次中継して配信され、ネットワークの論理接続が途中で切断されることによって生ずる階層構造の混乱、これに伴う配信機能の低下を防止することができ、階層構造の再構築のためのトラフィック集中をもあわせて回避することができる。
【００２８】
請求項２に係る発明によれば、上記請求項１の発明において、前記端末装置は、接続している上層の端末装置及び前記上層の端末装置よりも上流の端末装置のソフトウェアのバージョン情報を受信するバージョン情報受信手段と、自身よりも上流の端末装置のソフトウェアのバージョン情報と、自身のバージョン情報とを前記接続している下層の端末装置へ送信するバージョン情報送信手段とを有し、前記ソフトウェア更新契機判定手段は、前記バージョン情報受信手段により受信した前記バージョン情報に基づいて、自身の端末装置よりも上流の端末装置のうち、前記更新用のソフトウェアで動作していない端末装置の数が所定数以下となったときに、前記ソフトウェアの更新契機であると判定することにより、各端末装置におけるソフトウェアの更新を分散させることができるので、ネットワークの混乱や階層構造の再構築に伴うトラフィック集中を防止することができる。
【００２９】
請求項３に係る発明によれば、請求項１又は請求項２の発明において、前記端末装置における前記ソフトウェア更新契機判定手段は、前記ソフトウェア中継手段により、下流の端末装置へのソフトウェアの中継が完了（ソフトウェアのパケット断片の中継完了では無く、意味のあるひとかたまりのソフトウェア、すなわちソフトウェアパッケージの中継が完了）したときに、前記ソフトウェアの更新契機であると判定することににより、上流の端末装置から下流の端末装置まで確実に、ソフトウェアの更新を行うことができる。
【００３０】
請求項４に係る発明によれば、請求項１〜３のいずれかの発明において、前記配信装置における前記ソフトウェア配信手段は、前記更新用ソフトウェアの配信を所定期間内に所定回数繰り返し実行することにより、後からネットワークに参加するような端末装置に対してもソフトウェアの更新処理を確実に漏れなく行うことができる。
【００３１】
請求項５に係る発明によれば、請求項１〜４のいずれかの発明において、前記配信装置における前記ソフトウェア配信手段は、前記コンテンツデータと共に前記更新用のソフトウェアを配信することにより、更新用ソフトウェアの配信を迅速に行うことができる。
【００３２】
請求項６に係る発明によれば、請求項１〜５のいずれかの発明において、前記端末装置における前記ソフトウェア更新契機判定手段は、前記コンテンツ再生手段による前記コンテンツデータの再生が完了したときに、前記ソフトウェアの更新契機であると判定することにより、コンテンツデータが音楽データである場合などにおいて、曲の途中で再起動することがないので、ユーザに違和感を与えることがない。
【００３３】
請求項７に係る発明によれば、請求項１〜６のいずれかの発明において、前記端末装置は、前記コンテンツデータを受信するコンテンツ受信手段と、受信した前記コンテンツデータを記憶可能なコンテンツ記憶手段と、記憶した前記コンテンツデータを順次再生するコンテンツ再生手段と、前記コンテンツデータを前記接続している下層の端末装置へ順次中継するコンテンツ中継手段とを有し、前記ソフトウェア更新契機判定手段は、前記コンテンツ記憶手段に、少なくとも前記更新処理が完了するまでの間再生可能なだけの前記コンテンツデータが記憶されたときに、前記ソフトウェアの更新契機であると判定し、前記ソフトウェア更新手段は、前記コンテンツ再生手段の動作中に前記更新処理を行う際、前記更新用のソフトウェアにおける前記コンテンツ再生手段に関する部分を除いて、前記更新処理を行うこととしたことにより、各端末装置においてコンテンツデータを再生している場合であっても、当該端末装置のユーザには気づかせないで自動的にソフトウェアの更新処理を行うことができる。
【００３４】
請求項８に係る発明によれば、コンテンツデータを配信する配信装置と、前記コンテンツデータを受信して再生する複数の端末装置とを有し、前記複数の端末装置が前記配信装置を頂点として階層構造で多層に論理接続され、前記端末装置の中継機能により前記コンテンツデータが順次下層の端末装置へ中継されることにより、全ての前記端末装置で前記コンテンツデータを再生可能としたコンテンツ配信システムにおける前記端末装置のソフトウェア更新方法において、前記配信装置は、前記端末装置の更新用のソフトウェアを前記階層構造における最上層の前記端末装置へ配信するソフトウェア配信ステップを有し、前記端末装置は、接続している上層の装置から前記更新用のソフトウェアを受信するソフトウェア受信ステップと、前記更新用のソフトウェアを記憶するソフトウェア記憶ステップと、前記接続している下層の装置へ前記更新用のソフトウェアを中継するソフトウェア中継ステップと、前記接続している上層の装置が、前記配信装置又は前記更新用のソフトウェアで動作している端末装置であるときに、前記ソフトウェアの更新契機であると判定するソフトウェア更新契機判定ステップと、前記ソフトウェア更新契機判定ステップによって、前記ソフトウェアの更新契機であると判定すると、前記ソフトウェア受信ステップで受信した更新用のソフトウェアへ更新処理を行うソフトウェア更新ステップと、とを有することとしたことにより、上流から下流に位置する端末装置のソフトウェアを順次バージョンアップを行うことになるので、再起動や再接続を行う場合でもそのタイミングがずれることになり、そのためにトラフィックの集中を防止することができる。
【００３５】
請求項９および請求項１５に係る発明によれば、コンテンツデータを配信する配信装置と、前記コンテンツデータを受信して再生する複数の端末装置とを有し、前記複数の端末装置が前記配信装置を頂点として階層構造で多層に論理接続され、前記端末装置の中継機能により前記コンテンツデータが順次下層の端末装置へ中継されることにより、全ての前記端末装置で前記コンテンツデータを再生可能としたコンテンツ配信システムにおける前記端末装置において、接続している上層の装置から更新用のソフトウェアを受信するソフトウェア受信手段と、前記更新用のソフトウェアを記憶するソフトウェア記憶手段と、前記接続している下層の装置へ前記更新用のソフトウェアを中継するソフトウェア中継手段と、前記接続している上層の装置が、前記配信装置又は前記更新用のソフトウェアで動作している端末装置であるときに、前記ソフトウェアの更新契機であると判定するソフトウェア更新契機判定手段と、前記ソフトウェア更新契機判定手段によって、前記ソフトウェアの更新契機であると判定すると、前記ソフトウェア受信手段によって受信した更新用のソフトウェアへ更新処理を行うソフトウェア更新手段としたことにより、、上流から下流に位置する端末装置のソフトウェアを順次バージョンアップを行うことになるので、再起動や再接続を行う場合でもそのタイミングがずれることになり、そのためにトラフィックの集中を防止することができる。
【００３６】
請求項１０に係る本発明によれば、請求項９の発明において、接続している上層の端末装置よりも上層の端末装置のソフトウェアのバージョン情報を受信するバージョン情報受信手段と、前記バージョン情報と、自身のバージョン情報とを前記接続している下層の端末装置へ送信するバージョン情報送信手段と、前記接続している上層の端末装置から前記バージョン情報を受信するバージョン情報リスト受信手段とを有し、前記ソフトウェア更新契機判定手段は、前記バージョン情報受信手段により受信した前記バージョン情報に基づいて、自身の端末装置よりも上層の端末装置のうち、前記更新用のソフトウェアで動作していない端末装置の数が所定数以下となったときに、前記ソフトウェアの更新契機であると判定することとしたことにより、上流の端末装置から順次全ての端末装置のソフトウェアの更新を迅速に行うことができる。
【００３７】
請求項１１に係る発明によれば、請求項９又は請求項１０の発明において、前記ソフトウェア更新契機判定手段は、前記ソフトウェア中継手段によるソフトウェアの中継が完了していない場合、前記ソフトウェアの中継が完了したときに、前記ソフトウェアの更新契機であると判定することにより、上流の端末装置から下流の端末装置まで確実にソフトウェアを更新を行うことができる。
【００３８】
請求項１２に係る発明にによれば、請求項９〜１１のいずれかの発明において、前記ソフトウェア受信手段は、前記配信装置が所定期間内に所定回数繰り返し配信する前記更新用のソフトウェアを受信することにより、参加等により後からネットワークに参加した端末装置に対しても、ソフトウェアの更新を確実に行うことができる。
【００３９】
請求項１３に係る発明によれば、請求項９〜１１のいずれかの発明において、前記ソフトウェア受信手段は、前記配信装置が前記コンテンツデータと共に配信する前記更新用のソフトウェアを受信することとしたことにより、階層構造を簡単にすることができる。
【００４０】
請求項１４に係る発明によれば、請求項９〜１３のいずれかの発明おいて、前記コンテンツデータを受信するコンテンツ受信手段と、受信した前記コンテンツデータを記憶可能なコンテンツ記憶手段と、記憶した前記コンテンツデータを順次再生するコンテンツ再生手段と、前記コンテンツデータを前記接続している下層の端末装置へ順次中継するコンテンツ中継手段とを有し、前記ソフトウェア更新契機判定手段は、前記コンテンツ記憶手段に、少なくとも前記更新処理が完了するまでの間再生可能なだけの前記コンテンツデータが記憶されたときに、前記ソフトウェアの更新契機であると判定し、前記ソフトウェア更新手段は、前記コンテンツ再生手段の動作中に前記更新処理を行う際、前記更新用のソフトウェアにおける前記コンテンツ再生手段に関する部分を除いて、前記更新処理を行うこととしたことによりコンテンツデータの再生が全て終了する前にソフトウェアの更新処理を行うことができるので、より迅速な更新処理を行うことができる。
【発明を実施するための最良の形態】
【００４１】
以下、本発明の最良の実施形態を図面に基づいて説明する。なお、以下に説明する実施形態は、Ｐ２Ｐを用いたツリー状階層構造（以下、「トポロジー」と呼ぶ場合がある）によるコンテンツ配信システムであって、放送局端末１から配信されるコンテンツを、ツリー状階層構造を構成する端末装置２がＰ２Ｐによって順次受信するようにしている。以下に説明する本実施の形態においては、この配信システムにおけるソフトウェアの配信について詳細に説明する。
【００４２】
［１．コンテンツ配信システムＳの構成等］
まず、図１を参照して、コンテンツ配信システムＳの概要構成等について説明する。
【００４３】
図１は、本実施形態に係るコンテンツ配信システムＳの概要構成例を示す図である。図１に示すように、本実施形態に係るコンテンツ配信システムＳは、配信装置としての放送局端末１と、複数の端末装置としての複数の端末装置２ａ１，２ａ２，２ｂ１〜２ｂ４，２ｃ１〜２ｃ８，２ｄ１〜２ｄ１６と、これら複数の端末装置２ａ１，２ａ２，２ｂ１〜２ｂ４，２ｃ１〜２ｃ８，２ｄ１〜２ｄ１６の接続先を管理等し、接続管理装置としての管理サーバ３とを備えている。
【００４４】
物理ネットワーク上では、放送局端末１、端末装置２ａ１，２ａ２，２ｂ１〜２ｂ４，２ｃ１〜２ｃ８，２ｄ１〜２ｄ１６、管理サーバ３には、各々ＩＰアドレスが割り当てられており、これら装置は、ネットワークの一例としてのインターネット４にルータ１０等を介して接続されている。そして、通信接続先の端末装置のＩＰアドレスを宛先ＩＰアドレス、自装置のＩＰアドレスを送信元ＩＰアドレスとしたヘッダを含むパケットを送信すること等によって通信接続が可能となっている。なお、管理サーバ３を放送局端末１の内部に有する形態としてもよい。この場合、管理サーバ３にＩＰアドレスを割り当てなくてもよく、放送局端末１のＩＰアドレスと共用するようにしてもよい。
【００４５】
なお、端末装置２ａ１，２ａ２，２ｂ１〜２ｂ４，２ｃ１〜２ｃ８，２ｄ１〜２ｄ１６のいずれかの端末装置又はすべての端末装置を示す場合には、便宜上、端末装置２と呼ぶ場合がある。また、第１階層の端末装置２ａ１，２ａ２は便宜上端末装置２ａと、第２階層の端末装置２ｂ１〜２ｂ４は便宜上端末装置２ｂと、第３階層の端末装置２ｃ１〜２ｃ８は便宜上端末装置２ｃと、第４階層の端末装置２ｄ１〜２ｄ１６は便宜上端末装置２ｄと呼ぶ場合がある。
【００４６】
このコンテンツ配信システムＳは、放送局端末１を頂点（ここでは、便宜上第０階層とする。）として複数の端末装置２がツリー状階層構造で多層に論理接続されるように管理サーバ３によって管理される。
【００４７】
管理サーバ３は、コンテンツ配信システムＳに参加していない端末装置２、言い換えればツリー状階層構造を構成していない端末装置２から接続先紹介要求を受信する。そして、コンテンツ配信システムＳのツリー状階層構造の状態等に基づいて、接続先候補（放送局端末１又は端末装置２）を選択する。すなわち、管理サーバ３は、その端末装置２がストリーミング配信を受けるために接続が可能な上層の端末装置を選択する。そして、このように選択した接続先候補のＩＰアドレス、ポート番号及び通信プロトコル等を通知する。ここで、通信プロトコルとして、ＭＭＳ（Ｍｉｃｒｏｓｏｆｔ  Ｍｅｄｉａ  Ｓｅｒｖｅｒ）プロトコル、ＲＴＳＰ（Ｒｅａｌ  Ｔｉｍｅ  Ｓｔｒｅａｍｉｎｇ  Ｐｒｏｔｏｃｏｌ）等が用いられる。また、コンテンツデータの形式として、ＭＰＥＧ−ＴＳ（Ｍｏｔｉｏｎ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔ  Ｇｒｏｕｐ−Ｔｒａｎｓｐｏｒｔ  Ｓｔｒｅａｍ）、ＡＳＦ（Ａｄｖａｎｃｅｄ  Ｓｔｒｅａｍｉｎｇ  Ｆｏｒｍａｔ）、ＷＭＡ（Ｗｉｎｄｏｗｓ（登録商標）  Ｍｅｄｉａ  Ａｕｄｉｏ）、ＷＭＶ（Ｗｉｎｄｏｗｓ（登録商標）  Ｍｅｄｉａ  Ｖｉｄｅｏ）等が用いられる。
【００４８】
端末装置２は、管理サーバ３から接続先候補のＩＰアドレスを受信すると、そのＩＰアドレスの接続先候補に対して、コンテンツ配信システムＳへの参加（接続）を要求する。これにより端末装置２がコンテンツ配信システムＳにおける階層構造へ組み込まれる。すなわち、放送局端末１からのソフトウェア配信に対して受信可能となる。
【００４９】
コンテンツ配信システムＳは、このように端末装置２が次々と参加することによって、放送局端末１を頂点として複数の端末装置２がツリー状階層構造で多層に論理接続される。そして、放送局端末１から配信されるコンテンツデータやソフトウェアデータ等は、端末装置２のＰ２Ｐによる中継機能により順次下層の端末装置２へ中継されて複数の端末装置２に配信される。コンテンツは、音声データや、映像データであるが、番組単位や、曲単位といった、コンテンツパッケージで区切られて送られる。そのしたコンテンツパッケージを放送プログラムに従って、連続して送るのが放送局端末１である。放送局端末１、ソフトウェアを送信する役割も持っている。コンテンツとソフトウェアは、両者ともパケットに分割して、それぞれ適宜混ぜて（マルチプレクスして）送る。ネットワークインターフェースが一つしかないので、このように混ぜて送る必要がある。混ぜる割合は任意で、例えば、コンテンツパケット１０個送ったら、ソフトウェアパケットを１個送る、という方法を取る。コンテンツならコンテンツ、ソフトウェアならソフトウェアを、ある程度固めて送ってもよい。１つのコンテンツパッケージを送り終えてから、ソフトウェアパッケージを１つ送るというように、大きな単位で切替えてもよい。それぞれのパケットには区別が付くようにラベルが付されている。放送中は、コンテンツデータは常時送られているが、ソフトウェアはシステム運営者が送ろうと決めたときにしか送られない。ソフトウェアパケットは、ひとかたまりのソフトウェアのパッケージを分割して送るので、パッケージの最後までに送り終えたことがわかるように、末尾を示すフラグも付けられるようになっている。
【００５０】
すなわち、音楽等の再生用ソフト、通信ソフト、ウィルス対策ソフト等の更新用ソフトウェアからなるデータは、まず、放送局端末１によって所定容量に分割され、複数のパケット（以下、「ソフトウェアパケット」という。）に格納されて順次送信される。そして、放送局端末１の下層に位置する端末装置２ａ１，２ａ２（第１階層目の端末装置）は、図２に示すように、上層の放送局端末１から順次受信したソフトウェアパケットを一時的に記憶するソフトウェアバッファに一旦蓄積し、さらに、このように蓄積したソフトウェアパケットを取り出して、下層の端末装置２ｂ１〜２ｂ４（第２階層目の端末装置）へ順次送信する。
【００５１】
あるいは、更新用ソフトウェアを一時的に格納するリングバッファに記憶し、さらに、このように蓄積した更新用ソフトウェアを取り出して、下層の端末装置２へ順次送信するようにしてもよい。
【００５２】
また、コンテンツ配信システム１が音楽等のコンテンツファイルである場合には、上記と同様に、放送局端末１によって所定容量に分割された複数のパケット（以下、「コンテンツパケット」という。）に格納されて順次送信され、このコンテンツパケットを一旦リングバッファに蓄積し、更にこの蓄積したコンテンツパケットを取り出して、受信可能の端末装置２ｂ１〜２ｂ４へ順次送信するように構成している。
【００５３】
以下同様に、ソフトウェアパケットは、端末装置２ｂ１〜２ｂ４から端末装置２ｃ１〜２ｃ８（第３階層目の端末装置）へ、端末装置２ｃ１〜２ｃ８から端末装置２ｄ１〜２ｄ１６（第４階層目の端末装置）へと順に中継される。
【００５４】
なお、端末装置２は、組み込まれた階層構造の位置の上流の端末装置２又は放送局端末１のＩＰアドレスと、その位置の下流の端末装置２のＩＰアドレスとを後述の第１記憶部２０２に記憶しており、このように記憶したＩＰアドレスに基づいて、ソフトウェアデータの中継を行う。
【００５５】
このように、コンテンツ配信システムＳは、更新用ソフトウェアを配信する放送局端末１と、放送局端末１を頂点として階層構造で多層に論理接続される複数の端末装置２とを有し、放送局端末１から配信されるソフトウェアデータが端末装置２の中継機能により順次下層へ中継されて複数の端末装置２の全てに配信されることとなる。また、コンテンツ配信システムＳは、放送局端末１を頂点として階層構造で多層に論理接続された複数の端末装置２の接続状態の一部又は全部を記憶する管理サーバ３を有している。
【００５６】
本実施の形態に於いては、コンテンツ配信システムにおいて、上流端末装置から配信される更新用ソフトウェアをソフトウェア受信手段が受信してソフトウェア記憶手段に一時的に記憶し、ソフトウェア中継手段により下流の端末装置に中継して送信し、ソフトウェア更新契機判定手段によりソフトウェアの更新契機であると判断されたときに、自端末装置のソフトウェアが更新されるようにした。これにより、ソフトウェアの更新処理後のシステム階層構造の混乱を防止することができるようにした。
【００５７】
また、更新用ソフトウェアを受信した後に、バージョン情報受信手段により上流の端末装置のバージョン情報を受信し、上流の全ての端末装置のうち、更新用ソフトウェアの更新処理が行われていない端末装置の数の割合が所定値以下であることを、ソフトウェア更新契機判定手段が判定したときに、自端末装置のソフトウェアの更新処理をソフトウェア更新手段が更新するようにした。この結果、各端末装置のソフトウェア更新のタイミングを分散させることができるので、ソフトウェア更新の際のネットワークからの離脱に伴う階層構造の混乱、更に、管理サーバへの通知等に伴うとネットワーク上のトラフィック集中に伴う回線混雑を防止することができる。
【００５８】
また、ソフトウェアの中継を完了したときに、ソフトウェア更新契機判定手段がソフトウェアの更新契機であると判定することにしたので、ソフトウェアの中継をスムースに行うことができる。
【００５９】
また、ソフトウェア配信手段である放送局端末は、更新用ソフトウェアを所定の期間内に繰り返して配信することにしたので、後からネットワークに参加する端末装置であっても、確実にソフトウェアを更新することができる。
【００６０】
また、ソフトウェアデータとコンテンツデータとを同じネットワーク回線にて配信することができるので、簡便に端末装置のソフトウェアを配信することができる。
【００６１】
また、ソフトウェア更新契機判定手段は、コンテンツの再生が完了したことを判定したときに、ソフトウェアの更新契機であると判定するので、コンテンツの再生や、コンテンツの受信の意図しない中段を防止することができる。
【００６２】
また、ソフトウェア更新契機判定手段は、コンテンツ記憶手段に、少なくともその更新処理が完了するまでの間再生可能なだけの前記コンテンツデータが記憶されたときに、ソフトウェアの更新契機であると判定し、かつ、ソフトウェア更新手段がコンテンツ再生手段の動作中に自端末装置の当該コンテンツの再生を行っているソフトウェア以外のソフトウェアの更新を行うことにした。これにより、当該端末装置のユーザに気づかれないで自動的にソフトウェアの更新処理を行うことができ、システム全体のソフトウェアの更新処理を迅速に行うことができる。
【００６３】
以下、コンテンツ配信システムＳを構成する放送局端末１、端末装置２及び管理サーバ３についてそれらの具体的な構成及び動作について図３〜図５を参照して説明する。図３は、本実施形態における放送局端末１の概略構成例を示す図である。図４は、本実施形態における端末装置２の概略構成例を示す図である。図５は、本実施形態における管理サーバ３の概略構成図を示す図である。
【００６４】
［２．放送局端末１の構成等の説明］
まず、図３を参照して、放送局端末１の構成及び動作について説明する。
【００６５】
放送局端末１は、一般のサーバコンピュータを適用可能であり、図３に示すように、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１０１と、各種プログラム等を記憶（格納）する書き換え可能な第１記憶部としての第１記憶部１０２と、各種データ等を記憶するＨＤＤ（Ｈａｒｄ  Ｄｉｓｃ  Ｄｒｉｖｅ）等から構成された第２記憶部１０３と、インターネット４を介して端末装置２や管理サーバ３との間で通信を行うネットワークインターフェイス１０４と、所定の情報を入力可能なキーボード１０５やマウス１０６等の入力手段を制御する周辺機器制御チップ１０７と、ＣＰＵ１０１からイメージデータを受け取り、内部のビデオメモリ（図示せず）に書き込み、ビデオメモリに書き込んだデータをディスプレイ１０９に表示するビデオチップ１０８と、を備えて構成され、これらの各種構成要素はシステムバス１１３を介して相互に接続されている。なお、ネットワークインターフェイス１０４は、ルータ１０ａを介してインターネット４に接続される。
【００６６】
また、第２記憶部１０３は、放送用の多数の更新用ソフトウェアを格納している放送用ソフトウェアデータベース１１６を有している。また、第２記憶部１０３は、放送用の多数のコンテンツファイルが格納される放送用コンテンツデータベース１１５を有している。
【００６７】
なお、本実施形態においては、ＣＰＵ１０１と第１記憶部１０２とで制御手段１１４を構成している。また、放送局端末１には、上述のようにディスプレイ（液晶ディスプレイ等）１０９等が接続されるようになっており、たとえば、コンテンツ配信システムＳを運用する運営者によって視認可能である。
【００６８】
（第１記憶部１０２について）
また、第１記憶部１０２には、放送局端末１のコンピュータとしての基本的な機能を提供するためのＯＳ（オペレーティングシステム）プログラム１２０と、第２記憶部１０３又は第１記憶部１０２に記憶された更新用ソフトウェアを取り出して端末装置２へ配信するソフトウェア制御プログラム１２５、また、第２記憶部１０３に記憶されたコンテンツデータのストリーミングを行うためのストリーム制御プログラム１２１と、管理サーバ３に自放送局端末１のＩＰアドレス等を登録すると共に第１階層の端末装置２ａのＩＰアドレスの管理等を行うためのトポロジー制御プログラム１２２と、ディスプレイ１０９への表示内容を制御するための画面制御プログラム１２３と、コンテンツデータをエンコードするためのエンコーダプログラム１２４等を記憶しており、これらはＣＰＵ１０１によって読み出され、ＣＰＵ１０１によってこれらのプログラムに従った機能が実行される。
【００６９】
また、ソフトウェア制御プログラム１２５は、端末装置２の各種プログラムへの追加プログラム、新たなコンテンツに対応する新規バージョンソフト、あるいは、通信制御用新バージョンの更新用ソフトウェア等の処理制御を行う。第２記憶部１０３に記憶された更新用ソフトウェアは、後述するソフトウェア取出し手段によって取り出され、ソフトウェア配信手段によって下流の端末装置に配信される。なお、更新ソフトウェアは第１記憶部１０２に記憶して第１記憶部１０２から取り出しても良く、更に、ＣＤ−ＲＯＭ、外部記憶装置等から取り出してもよい。
【００７０】
ここで、ＯＳプログラム１２０は、ＣＰＵ１０１によって読み出されて実行されることにより、キーボード１０５やマウス１０６の入出力に関する機能や、第１記憶部１０２や第２記憶部１０３などのメモリ管理などの放送局端末１であるコンピュータの基本的な機能を実行可能にするものである。そして、このＯＳプログラム１２０がＣＰＵ１０１によって実行された状態で、上述のソフトウェア制御プログラム１２５、ストリーム制御プログラム１２１、トポロジー制御プログラム１２２、画面制御プログラム１２３、エンコーダプログラム１２４等が第１記憶部１０２から読み出されて実行される。
【００７１】
なお、ＯＳプログラム１２０、ソフトウェア制御プログラム１２５、ストリーム制御プログラム１２１、トポロジー制御プログラム１２２と、画面制御プログラム１２３と、エンコーダプログラム１２４等は、たとえば、インターネット４に接続されたサーバ等から第１記憶部１０２にダウンロードされるようにしてもよく、又ＣＤ−ＲＯＭ等の記録媒体に記録されてから当該記録媒体のドライブを介して、第１記憶部１０２に読み込まれるようにしてもよい。
【００７２】
（制御手段１１４について）
制御手段１１４は、上述のようにＣＰＵ１０１と第１記憶部１０２とから構成され、ＣＰＵ１０１が第１記憶部１０２に記憶された各種プログラムを読み出して実行することにより、放送局端末１全体を統括制御し、かつ、後述するソフトウェア制御手段、通信手段、ストリーム送信手段、エンコード手段、画面制御手段、トポロジー管理手段等として機能するようになっている。
【００７３】
なお、ＣＰＵ１０１がソフトウェア制御プログラム１２５を実行することによって、ソフトウェア取出し手段やソフトウェア配信手段として機能し、ストリーム制御プログラム１２１を実行することによって、コンテンツの通信手段、ストリーム送信手段等として、ＣＰＵ１０１がトポロジー制御プログラム１２２を実行することによって、トポロジー管理手段として、また、ＣＰＵ１０１が画面制御プログラム１２３を実行することによって、表示制御手段等として、また、ＣＰＵ１０１がエンコーダプログラム１２４を実行することによってエンコード手段としてそれぞれ機能するようになっている。
【００７４】
（ソフトウェア制御手段について）
ソフトウェア制御手段は、ソフトウェア取出し手段、ソフトウェア配信手段等を有している。ソフトウェア取出し手段は、ソフトウェアデータが記憶された第２記憶部１０３の更新用ソフトウェアのデータベース１１６に記憶された更新用ソフトウェアを取り出す。その更新用ソフトウェアを、配信用プロトコルを用いて下流の端末装置２へ送信する。
【００７５】
具体的には、キーボード１０５やマウス１０６などの入力手段等によって配信したいソフトウェアが選択され、ソフトウェア取出し手段により第２記憶部１０３に記憶された更新用ソフトウェアが取り出され、その更新用ソフトウェアが、ソフトウェア配信手段により下流の端末装置２へ配信される。
【００７６】
なお、ソフトウェアはソフトウェア配信手段により所定期間内に所定回数繰り返して配信される。これにより、旧バージョンのソフトウェアの端末装置２が階層構造に新たに参加した場合であっても、更新用ソフトウェアの更新処理を確実に行うことができる。
【００７７】
（通信手段について）
通信手段は、配信プロトコルを用いて端末装置２へコンテンツデータの配信を行うものである。この配信プロトコルは、たとえばＴＣＰの下でのストリーミング配信用プロトコル（ＲＴＳＰなど）などを用いることができるほか、独自の専用プロトコルを用いるようにすることもできる。
【００７８】
（エンコード手段について）
エンコード手段は、第２記憶部１０３のコンテンツデータベース１１５に記憶されているコンテンツファイルのデータなどを、ストリーミング配信用のデータ形式、たとえばＡＳＦ、ＷＭＡ、ＷＭＶ等のデータ形式にエンコードする。なお、このデータ形式は、運営者によって上述の入力手段が操作されることによって選択することができ、端末装置２からのデータ形式指定パケットに応じて選択することも可能である。
【００７９】
（ストリーム送信手段について）
送信手段としてのストリーム送信手段は、キーボード１０５などの入力手段等によって指定された放送用コンテンツデータベース１１５内のコンテンツデータを、ネットワークインターフェイス１０４を介して、第１階層の端末装置２ａ１，２ａ２にストリーミング配信する。
【００８０】
このストリーム送信手段による端末装置２ａ１，２ａ２等へのストリーミング配信は、以下の手順で実行される。
【００８１】
キーボード１０５やマウス１０６などの入力手段等によって配信したいコンテンツが選択されると、ストリーム送信手段は、このように選択されたコンテンツに対応するコンテンツファイルのデータを放送用コンテンツデータベース１１５あるいはソフトウェアが記憶された第２記憶部１０３の更新用ソフトウェアのデータベース１１６から取り出す。
【００８２】
次に、ストリーム送信手段は、放送用コンテンツデータベース１１５から取り出したコンテンツファイルのデータを、エンコード手段によってストリーミング配信用のデータ形式にエンコードし、コンテンツ符号化データとする。
【００８３】
その後、ストリーム送信手段は、通信手段を制御し、ネットワークインターフェイス１０４を介して、エンコードされたコンテンツデータを端末装置２ａ１，２ａ２へ送信する。すなわち、ストリーム送信手段は、エンコードされたコンテンツデータを所定データ単位ごとに分割し、このように分割したコンテンツデータをパケットに格納し、コンテンツパケットとして、通信手段によってネットワークインターフェイス１０４を介して順次端末装置２ａ１，２ａ２へ送信するものである。
【００８４】
（トポロジー管理手段について）
トポロジー管理手段は、ツリー状階層構造の第１階層に参加している端末装置２ａのＩＰアドレスを管理している。また、トポロジー管理手段は、放送局端末１のＩＰアドレスである配信用ＩＰアドレスを管理している。そして、上述のソフトウェア配信手段及びストリーム送信手段はトポロジー管理手段が管理する端末装置２のＩＰアドレスを宛先アドレスとし、配信用ＩＰアドレスを送信元として端末装置２へ更新用ソフトウェアやコンテンツデータの配信を行う。また、管理サーバ３に放送局端末１を登録するために、管理サーバ３へその登録に必要な情報を送信する。
【００８５】
（表示制御手段について）
表示制御手段は、ビデオチップ１０８及びディスプレイ１０９を制御して、各種の映像情報（画像情報）を表示させる機能を有している。すなわち、表示制御手段は、ディスプレイ１０９にどのように映像を表示させるかを制御する。
【００８６】
［３．端末装置２の構成等の説明］
図４は、本実施形態における端末装置２の概略構成例を示す機能ブロック図である。端末装置２は、一般のパーソナルコンピュータを適用可能であり、図４に示すように、ＣＰＵ（Central Processing Unit）２０１と、各種プログラム等を記憶（格納）する書き換え可能な主記憶装置としての第１記憶部２０２と、各種データ等を記憶するハードディスク装置等から構成された第２記憶部２０３と、インターネットを介して放送局端末１や管理サーバ３との間で通信を行うネットワークインターフェイス２０４と、ユーザが端末装置２を遠隔操作するために所定の赤外線信号を送信及び受信するリモコン２０５と、このリモコン２０５と赤外線により通信を行なうための赤外線ポート２０６と、赤外線ポート２０６を制御する周辺機器制御チップ２０７と、ＣＰＵ２０１からイメージデータを受け取り、内部のビデオメモリ（図示せず）に書き込み、このビデオメモリに書き込んだデータを後述のディスプレイ２０９に表示するビデオチップ２０８と、ビデオチップ２０８から送信される信号に応じた表示を行うディスプレイ２０９と、ＦＭ音源(Frequency Modulation)やWave Table音源などの音源を有する音源チップ２１０と、音源チップ２１０から出力されるオーディオ信号を音波に変換するスピーカ２１１とを備えて構成され、これらの各種構成要素はシステムバス２１２を介して相互に接続されている。なお、本実施形態においては、ＣＰＵ２０１と第１記憶部２０２とで制御部２１３を構成している。なお、ネットワークインターフェイス204は、ルータ１０ｂを介して、ネットワークに接続されている。
【００８７】
（第１記憶部２０２について）
また、第１記憶部２０２には、端末装置２のコンピュータとしての基本的な機能を提供するためのＯＳのプログラム２２０と、放送局端末１から直接又は上流の端末装置から中継されて配信される更新用のソフトウェアを受信し、更新条件の判定等を行うソフトウェア制御のためのソフトウェア制御プログラム２２５と、放送局端末１から直接又は他の端末装置２に中継されてストリーミング配信されるコンテンツデータを受信するためのストリーム制御プログラム２２１と、ツリー状に接続された１段上層の端末（放送局端末１又は端末装置２）のＩＰアドレスとツリー状に接続された１段下層の端末装置２のＩＰアドレスの管理等を行なうためのトポロジー制御プログラム２２２と、ディスプレイ２０９を制御するための画面制御プログラム２２３と、エンコードされたコンテンツデータをデコードするためのデコーダプログラム２２４等を記憶しており、これらはＣＰＵ２０１によって読み出され、ＣＰＵ２０１によってこれらのプログラムに従った機能が実行される。
【００８８】
ここで、ＯＳプログラム２２０は、ＣＰＵ２０１によって読み出されて実行されることにより、リモコン２０５の入出力に関する機能や、第１記憶部２０２や第２記憶部２０３などのメモリ管理などの端末装置２であるコンピュータの基本的な機能を実行可能にするものである。そして、このＯＳプログラム２２０がＣＰＵ２０１によって実行された状態で、上述のストリーム制御プログラム２２１、トポロジー制御プログラム２２２、画面制御プログラム２２３、デコーダプログラム２２４等が実行される。
【００８９】
なお、ＯＳプログラム２２０、ストリーム制御プログラム２２１、トポロジー制御プログラム２２２、画面制御プログラム２２３、デコーダプログラム２２４等は、例えば、インターネットに接続されたサーバ等から第１記憶部２０２にダウンロードされるようにしてもよく、又ＣＤ−ＲＯＭ等の記憶媒体に記録されてから当該記憶媒体のドライブを介して、第１記憶部２０２に読み込まれるようにしてもよい。
【００９０】
（制御部２１３について）
制御部２１３は、上述のようにＣＰＵ２０１と第１記憶部２０２とから構成され、ＣＰＵ２０１が第１記憶部２０２に記憶された各種プログラム２２０〜２２５を読み出して実行することにより、端末装置２全体を統括制御し、かつ、後述する接続先紹介要求送信手段、接続先候補受信手段、ソフトウェア制御手段、接続手段、コンテンツ再生手段、ソフトウェア中継手段、ソフトウェア書き換え手段等として機能させるようになっている。
【００９１】
（接続先紹介要求送信手段について）
接続先紹介要求送信手段は、端末装置２が階層構造に新規に接続する際に、管理サーバ３に対して新規参加を依頼するための接続先紹介要求を示すデータ（以下、「参加依頼パケット」という。）を送信するものである。このとき接続先紹介要求手段は、参加依頼パケットを管理サーバ３へ送信するものである。
【００９２】
（接続先候補受信手段について）
接続先候補受信手段は、管理サーバ３から送信される階層構造における接続先候補を示すデータ（以下、「親端末の紹介パケット」という。）を受信するものであり、この親端末の紹介パケットには、端末装置２が階層構造に参加した後、この端末装置２に対して直接コンテンツデータを配信する既存端末装置２のＩＰアドレスを示すデータが含まれている。
【００９３】
なお、参加依頼パケットを送信した端末装置２が新規端末装置２であった場合には、階層構造における末端に接続している既存端末装置２のＩＰアドレスが接続先候補として送信される。
【００９４】
（接続手段について）
接続手段は、制御部２１３が接続先候補受信手段として機能して受信した接続先候補のＩＰアドレスに対応した既存端末装置２に接続することにより、この端末装置２を階層構造に組み込むものである。
【００９５】
こうして制御部２１３が接続手段として機能して既存端末装置２と接続した後、この端末装置２の制御部２１３は、第１記憶部に記憶しているソフトウェア制御プログラム２２５により、更新用ソフトウェアを受信し、そのソフトウェアを第１記憶部２０２のソフトウェアバッファ領域に記憶し、ソフトウェアの更新契機を判定し、ソフトウェアを更新し、記憶されたソフトウェアバッファ領域から更新用ソフトウェアを取り出して端末装置２へ中継して配信等を実行する。また、端末装置２の制御部は、第１記憶部２０２に記憶しているストリーム制御プログラム２２１に基づいて、親端末装置２から配信されるコンテンツデータを第１記憶部２０２のバッファ領域に順次記憶し、記憶したコンテンツデータを後述するコンテンツ再生手段により順次再生するストリーム制御を行う。ここで、バッファ領域とは、ストリーム制御プログラム２２１によって、第１記憶部２０２に確保された領域である。
【００９６】
（ソフトウェア制御手段）
ソフトウェア制御手段は、ソフトウェア受信手段、ソフトウェア記憶手段、ソフトウェア中継手段、ソフトウェア更新契機判定手段、ソフトウェア更新手段、ソフトウェアのバージョン情報を受信するバージョン情報受信手段と、ソフトウェアのバージョン情報を送信するバージョン情報送信手段等を有する。
【００９７】
（ソフトウェア受信手段）
ソフトウェア受信手段は、上流の端末装置２や放送局端末１から更新用ソフトウェアを受信する。上流から配信されるデータは１パケットごとに配信される。各パケットにはラベルが付されており、パケット判別手段によっては配信されたパケットがソフトウェアパケットである場合には、ソフトウェア受信手段が受信して、第１記憶部２０２の領域に確保された一時的記憶手段であるソフトウェアバッファに記憶される。なお、ソフトウェアバッファは、第１記憶部２０２以外の第２記憶部２０３や外部記憶装置に記憶するようにしてもよい。また、ソフトウェアバッファとしてリングバッファを用いてもよい。
【００９８】
（ソフトウェア中継手段）
ソフトウェア中継手段は、ソフトウェアバッファに一時的に記憶された更新用ソフトウェアを、下流の端末装置２へ中継して送信する。
【００９９】
（ソフトウェア更新契機判定手段）  
ソフトウェア更新契機判定手段は、上流の端末装置２又は放送局端末２から受信した更新用ソフトウェアがソフトウェアバッファに記憶された後に、当該ソフトウェアによって自端末装置２を更新する否かの判定行う。ソフトウェア更新契機判定手段によりソフトウェアの更新が可能であると判定されたときに、ソフトウェアを更新するためのソフトウェア更新手段により更新される。ソフトウェア更新契機判定手段は、種々の条件によって判定する。例えば、上流の端末装置２の全てが更新されているときに自端末装置２の更新を行う場合、上流の更新されていない端末装置２の数が所定値以下であるときに自端末装置２を更新する場合、あるいは、以下に説明するコンテンツデータの再生中の特定の条件のときに自端末装置２のソフトウェアの更新処理を行う。
【０１００】
（バージョン情報受信手段）
バージョン情報受信手段は、上流の端末装置２に対して、自端末装置のソフトウェアのバージョン情報及び下流の端末装置２のソフトウェアのバージョン情報を記載したバージョン情報リストを送付して問い合わせを行い、その結果を受け取る。
【０１０１】
（バージョン情報送信手段）
バージョン情報送信手段は、下流の端末装置２からのソフトウェアのバージョン情報の問い合わせに対して、自端末装置２のソフトウェアのバージョン情報等を記録したバージョン情報リストを送信する。バージョン情報リストは、上流の端末装置２から下流の端末装置２へ送受信されるので、上流の全ての端末装置２のバージョン情報が記録されている。
【０１０２】
（コンテンツ再生手段について）
コンテンツ再生手段は、コンテンツ記憶手段である第１記憶部２０２のリングバッファから成るバッファ領域に順次記憶されたコンテンツデータを、順次コンテンツ再生手段により再生するものであり、このとき制御部２１３は、ストリーム制御プログラム２２１に基づいてビデオチップ２０８及び音源チップ２１０を動作させることによりコンテンツデータが再生される。
【０１０３】
（ストリーム制御手段）
ストリーム制御手段はコンテンツ受信手段、及び後に説明するコンテンツ配信手段等を有している。
【０１０４】
上流の端末装置２又は放送局端末１から配信されるデータが、コンテンツデータであるかソフトウェアデータであるかがパケット判別手段により識別され、コンテンツパケットであると判定されたときに、コンテンツ受信手段はそのコンテンツパケットを１パケットずつ受信する。コンテンツ受信手段がコンテンツを受信すると、図２に示したコンテンツ記憶手段であるリングバッファに一時的に記憶される。
【０１０５】
（コンテンツ中継手段）
コンテンツ中継手段は、下流の端末装置２が接続されており、現在コンテンツデータの中継が可能な状態である場合に、第１記憶部２０２のバッファ領域に順次記憶してきたコンテンツデータを下流の端末装置２に中継して配信するものである。
【０１０６】
（コンテンツ記憶手段）
コンテンツデータはコンテンツ記憶手段によって記憶される。コンテンツデータはリングバッファとして第１記憶部に記憶領域が確保される。
【０１０７】
［４．管理サーバ３の構成等の説明］
次に、図５を参照して、管理サーバ３の構成及び動作について説明する。
【０１０８】
管理サーバ３は、専用サーバコンピュータのほか、一般のサーバコンピュータを適用可能であり、図５に示すように、ＣＰＵ３０１と、各種プログラム等を記憶（格納）する書き換え可能な主記憶装置としての第１記憶部３０２と、各種データ等を記憶するＨＤＤ等から構成された第２記憶部３０３と、インターネット４を介して放送局端末１や端末装置２との間で通信を行うネットワークインターフェイス３０４と、所定の情報を入力可能なキーボード３０５やマウス３０６等の入力手段を制御する周辺機器制御チップ３０７と、ＣＰＵ３０１からイメージデータを受け取り、内部のビデオメモリ（図示せず）に書き込み、このビデオメモリに書き込んだデータを後述のディスプレイ３０９に表示するビデオチップ３０８とを備えて構成され、これらの各種構成要素はシステムバス３１０を介して相互に接続されている。なお、本実施形態においては、ＣＰＵ３０１と第１記憶部３０２とで制御部３１１を構成している。なお、ネットワークインターフェイス３０４は、ルータ１０ｃを介して、インターネット４に接続されている。
【０１０９】
また、第２記憶部３０３には、放送チャンネルのトポロジーの状態、すなわち放送局端末１や端末装置２の接続状態を記憶するトポロジーデータベース３１２と、放送局端末１や端末装置２の所在位置であるＩＰアドレスを記憶する端末管理データベース３１３とを有している。
【０１１０】
（第１記憶部３０２について）
また、第１記憶部３０２には、管理サーバ３のコンピュータとしての基本的な機能を提供するためのＯＳプログラム３２０と、配信チャンネルに接続される複数の端末装置２のＩＰアドレスや放送局端末１のＩＰアドレス等を管理するための端末管理プログラム３２１と、放送チャンネルのツリー状階層構造を構築及び管理等を行うためのトポロジー管理プログラム３２２と、端末装置２から送信される接続先紹介要求に対応する配信チャンネルの接続先候補を判定し、端末装置２へ接続先候補の情報の送信等を行うための接続先紹介プログラム３２３と、コンテンツ配信システムＳの運用管理等を行うための運用管理プログラム３２４等を記憶しており、これらはＣＰＵ３０１によって読み出され、ＣＰＵ３０１によってこれらのプログラムに従った機能が実行される。
【０１１１】
ここで、ＯＳプログラム３２０は、ＣＰＵ３０１によって読み出されて実行されることにより、キーボード３０５やマウス３０６の入出力に関する機能や、第１記憶部３０２や第２記憶部３０３などのメモリ管理などのコンピュータの基本的な機能を実行可能にするものである。そして、このＯＳプログラムがＣＰＵ３０１によって実行された状態で、上述の端末管理プログラム３２１、トポロジー管理プログラム３２２、接続先紹介プログラム３２３、運用管理プログラム３２４等が実行される。
【０１１２】
なお、ＯＳプログラム３２０、端末管理プログラム３２１、トポロジー管理プログラム３２２、接続先紹介プログラム３２３、運用管理プログラム３２４等は、たとえば、インターネット４に接続されたサーバ等から第１記憶部３０２にダウンロードされるようにしてもよく、又ＣＤ−ＲＯＭ等の記憶媒体に記録されてから当該記憶媒体のドライブを介して、第１記憶部３０２に読み込まれるようにしてもよい。
【０１１３】
（制御部３１１について）
制御部３１１は、上述のようにＣＰＵ３０１と第１記憶部３０２とから構成され、ＣＰＵ３０１が第１記憶部３０２に記憶された各種プログラム３２０〜３２４を読み出して実行することにより、管理サーバ３全体を統括制御し、かつ、後述する接続先候補選択手段、通知手段、トポロジー管理手段、端末管理手段等として機能させる。
【０１１４】
なお、ＣＰＵ３０１が端末管理プログラム３２１を実行することによって、端末管理手段等として、またＣＰＵ３０１がトポロジー管理プログラム３２２を実行することによってトポロジー管理手段等として、さらにＣＰＵ３０１が接続先紹介プログラム３２３を実行することによって接続先候補選択手段、通知手段等として、それぞれ機能するようになっている。
【０１１５】
（接続先候補選択手段について）
接続先候補選択手段は、端末装置２から接続先紹介要求を受信したとき、コンテンツ配信システムＳの階層構造の構築状況等に基づいて、適切な接続先候補を選択する。
【０１１６】
（通知手段について）
通知手段は、接続候補選択手段によって選択された接続先候補を、接続先紹介要求を送信した端末装置２へ通知する機能を有する。この接続先候補の通知は、接続先候補の情報、すなわち接続先候補の端末装置のＩＰアドレスやポート番号などの情報を含む。
【０１１７】
（トポロジー管理手段について）
トポロジー管理手段は、放送局端末１から送信される放送局端末登録処理要求に基づいて、新規配信チャンネルのツリー状階層構造を生成するための新規トポロジー生成手段と、端末装置２の接続先紹介要求や接続切断通知などのトポロジー変動通知によって端末装置２の接続情報を変更するトポロジー変更手段としての機能を有している。
【０１１８】
新規トポロジー生成手段は、放送局端末１から放送局端末登録処理要求を受信すると、放送局端末登録処理要求のトポロジーテーブルを生成してトポロジーデータベース３１２へ登録する。
【０１１９】
また、トポロジー変更手段は、トポロジーデータベース３１２に記憶されるトポロジーテーブルに端末装置２の情報を追加又は削除する機能を実行するものであり、端末装置２からの接続先紹介要求、接続切断要求等に基づいて、トポロジーテーブルへの追加又は変更を行うものである。
【０１２０】
（端末管理手段について）
端末管理手段は、端末装置２からのユーザ端末登録要求を受信すると、端末管理データベース３１３へこの端末装置２の所在情報であるＩＰアドレスを登録する。また、放送局端末１からの放送局端末登録要求を受信した場合も、この放送局端末１の所在情報であるＩＰアドレスを端末管理データベース３１３に登録する。なお、これらのＩＰアドレスはユーザ端末登録要求や放送局端末登録要求に含まれ、これらの登録要求からＩＰアドレスを取得する。
【０１２１】
［５．ソフトウェアアップデートメイン処理の説明（処理例１）］
（ソフトウェアアップデートメイン処理）
次に本実施の形態に係るコンテンツ配信システムＳ及び端末装置２についてのソフトウェアップデート処理について説明する。図６はソフトウェアのアップデートのメイン処理を表すフローチャート図であり、図７は上流接続確認処理を表すフローチャート図であり、図８は下流接続確認処理を表すフローチャート図であり、図９はパケット受信処理を表すフローチャート図であり、図１０はソフトウェア書き換え処理を表すフローチャート図である。
【０１２２】
まず、端末装置２の電源をオンされる。端末装置２の電源がオンされることにより端末装置２の初期設定がなされる（ステップＳ１００）。次に、上流接続確認処理を行う（ステップＳ１０１）。端末装置２は管理サーバ３に対して接続先紹介要求送信手段により接続先紹介要求を示す参加依頼パケットを送信する。参加依頼パケットには自端末装置２のＩＰアドレスなどの必要な情報等が含まれている。
【０１２３】
端末装置２は管理サーバ３に対して接続先紹介要求を送信し、制御部３１１は、接続先紹介要求を受信すると、ソフトウェアやコンテンツを配信するコンテンツ配信システムＳの階層構造の構築状況を確認して、適切な接続候補を選択する。管理サーバ３の通知手段は、接続候補選択手段によって選択されたＩＰアドレスやポート番号を含む接続先候補を端末装置２へ送信する。端末装置２の接続先候補受信手段は、管理サーバ３から送信される接続先候補を示す親未接続の紹介パケットを受信し、接続準備を行う。この親端末の紹介パケットには、端末装置２が階層構造に参加した後、この端末装置２に対して直接コンテンツを送信する親端末装置のＩＰアドレスを示すデータが含まれている。また、管理サーバ３においては、トポロジー管理手段によって、これらの情報がトポロジー管理手段によってトポロジーデータベース３１２と端末管理データベース３１３に登録される。
【０１２４】
端末装置２は、上流接続確認処理（ステップＳ１０１）が終了すると下流の端末装置２に対して下流接続確認処理を行う（ステップＳ１０２）。自端末装置２の下流に接続される端末装置２の確認処理を行った後に、パケット受信処理を行う（ステップＳ１０３）。パケット受信処理により更新用ソフトウェアデータ又はコンテンツデータを上流の放送局端末１又は端末装置２から受信する。第１記憶部２０２のパケット判別手段がパケットのラベル情報を参照してソフトウェアデータであると判定したときは、ソフトウェア受信手段がその更新用ソフトウェアを受信し、コンテンツデータであると判定したときはコンテンツ受信手段が受信し、ソフトウェア記録手段であるソフトウェアバッファからなる一時記憶手段に記憶される。コンテンツデータであると判定したときは、コンテンツ受信手段が受信し、コンテンツ記録手段であるリングバッファに一時的に記憶される（ステップＳ１０３）。また、受信したソフトウェアデータやコンテンツデータは下流に接続する端末装置２に対して中継して送信される。そして、ソフトウェア書き換え手段は受信した新バージョン等のソフトウェアの書き換え処理を行う（ステップＳ１０４）。ソフトウェアの書き換え処理が実行された後には、次のソフトウェア又はコンテンツの受信のために上流接続確認処理（ステップＳ１０１）へ戻って上記処理が実行される。ソフトウェアの書き換え処理を実行した後に再起動する場合には、機器内の初期設定処理へ戻る（ステップＳ１００）。
【０１２５】
（上流接続確認処理）
図７を参照して上流接続確認処理について説明する。端末装置２により上流接続確認処理が開始されると、端末装置２の制御部２１３はチャンネル変更が必要かどうかを判定する（ステップＳ１１１）。チャンネル変更の指示は、ユーザがリモコン２０５を操作することによって行われる。制御部２１３は、赤外線ポート２０６からのリモコン受信データを、周辺機器制御チップ２０７を介して取得し、解釈して、ユーザがチャンネルの変更を希望しているか否かを判定することになる。
【０１２６】
端末装置２の上記受信手段が、チャンネル変更であると判定すると（ステップＳ１１１のＹｅｓ）、端末装置２の接続先紹介要求送信手段はリモコンで指示された新しいチャンネル番号に応じて、指示されたチャンネルの配信ツリーに参加したい旨の要求情報を管理サーバ３に送信し、新たな接続先の問い合わせを行う（ステップＳ１１２）。下流の端末装置２に対しては、接続先切替え支持する（ステップＳ１１３）。次に、端末装置２の接続先候補受信手段は、その問い合わせの結果である接続位置情報を管理サーバ３から受信し、接続手段は上流の端末装置２又は放送局端末１を認識し、上流の端末装置２に接続する（ステップＳ１１４）。この様な処理を実行した後に、上流接続処理を終了する。
【０１２７】
この結果、端末装置２は、ユーザの希望するコンテンツデータを配信する放送局端末１の下の配信ツリーに参加することができる。
【０１２８】
また、チャンネル変更を要しない場合には（ステップＳ１１１のＮｏ）、上流の端末装置２から上流の新たな端末装置２の探索の勧告を受けている場合には（ステップＳ１１５のＹｅｓ）、管理サーバ３に対して新たな接続先を問い合わせ、チャンネルはそのままにして指定された上流の接続先に再接続する（ステップＳ１１６）。上流の端末装置２から上流の新たな端末装置２の探索の勧告を受けていない場合には（ステップＳ１１５のＮｏ）、上述したステップＳ１１６を実行することなく、上流接続処理を終了する。つまり、ユーザによるチャンネル変更指示あるいは上流端末装置２からのチャンネル変更勧告がない限り、上流に接続される端末装置２や放送局端末１を変更する必要がない。
【０１２９】
（下流接続確認処理）
図８を参照して下流接続確認処理について説明する。端末装置２は下流接続確認処理を開始する。下流接続確認処理が開始されると、端末装置２の制御部２１３は、他の端末装置２から接続依頼があったかどうかを判定する（ステップＳ１２１）。他の端末装置２から接続依頼があったと判定すると（ステップＳ１２１のＹｅｓ）、帯域に余裕があるかどうかを判定する（ステップＳ１２２）。そして、制御部２１３が帯域に余裕があると判定すると（ステップＳ１２２のＹｅｓ）、端末装置２の接続手段は、接続依頼があった端末装置２を下流に接続する（ステップＳ１２３）。このような処理を実行した後に、下流接続処理は終了する。
【０１３０】
また、他の端末装置２から接続依頼がなかったと判定する（ステップＳ１２１のＮｏ）、又は、帯域に余裕はないと判定すると（ステップＳ１２２のＮｏ）、ステップＳ１２３を実行することなく下流接続処理を終了する。すなわち、下流に端末処置２を追加する依頼があり、かつ、帯域に余裕がある場合を除いて、下流に接続される端末装置２を変更することが無い。
【０１３１】
（パケット受信処理）
図９を参照してパケット受信処理について説明する。端末装置２のパケット判定手段は、受信するパケットのラベル情報から、パケットがソフトウェアデータであるかコンテンツデータであるかを判定する（ステップＳ１３１）。パケットがソフトウェアデータであると判定すると、ソフトウェア受信手段は上流の端末装置２又は放送局端末１から１パケットのソフトウェアデータを受信して、ソフトウェア記憶手段であるソフトウェアバッファに記憶される（ステップＳ１３２のＮｏ）。パケット判定手段が、受信するデータがコンテンツデータであると判定したときは（ステップＳ１３１）、コンテンツ受信手段は上流の端末装置から１パケットずつコンテンツパケットを受信し、受信されたコンテンツパケットは、コンテンツ記憶手段であるリングバッファに一時的に記憶される（ステップＳ１３２のＹｅｓ）。
【０１３２】
受信したパケットがソフトウェアパケットである場合には、第１記憶部２０２のソフトウェア記憶手段であるソフトウェアバッファがソフトウェアデータのバッファリングを行う（ステップＳ１３４）。バッファリングは、ソフトウェアバッファにソフトウェアデータを一時的に記憶し、この記憶されたソフトウェアデータをソフトウェア中継手段により取り出して、下流の端末装置２へ中継して送信する処理である。受信したパケットがコンテンツである場合には、コンテンツデータのバッファリングを行う（ステップＳ１３３）。バッファリングは、図２に示すように、上流の端末装置２や放送局端末１から受信したコンテンツデータからなるコンテンツパケットが第１記憶部２０２に確保されたリングバッファに一時的に記憶することにより行われる。この記憶されたコンテンツパケットは、後に詳述するが、コンテンツ中継手段により取り出して下流の端末装置２へ中継して送信される。
【０１３３】
なお、受信したデータがコンテンツデータである場合には、受信した１パケットごとにコンテンツ再生手段により再生される（ステップＳ１３５）。リングバッファに記憶されたコンテンツデータはコンテンツ再生手段により取り出され、画面制御手段等により音源チップ２１０やビデオチップ２０８を介して音声としてスピーカ２１１やディスプレイ２０９により再生される。なお、コンテンツ記憶手段は、第２記憶部のハードディスク装置２０３や、その他ＣＤ−ＲＷ等の外部記録装置等であってよい。
【０１３４】
次に、下流に端末装置２が接続されている場合には、下流に１パケットのソフトウェアデータを配信する（ステップＳ１３６）。端末装置２のトポロジー制御手段は下流に端末装置２が接続されているかを判断し、下流に接続されていると判断したときは、ソフトウェア転送手段により第１記憶部のバッファ領域に記憶されたソフトウェアデータを下流の端末装置２へ送信する。下流に送信すべきデータがコンテンツデータである場合には、コンテンツ転送手段が第１記憶部２０２のリングバッファに一時的に記憶されたコンテンツデータを取り出し、下流の端末装置２へ送信する。以上によりパケット受信処理が終了する。
【０１３５】
（ソフトウェア書き換え処理）
図１０を参照してソフトウェア書き換え処理について説明する。まず、ソフトウェア受信手段は、１パケットごとにソフトウェアパケットを受信する。受信されたソフトウェアデータはソフトウェアバッファにより一時的に記憶され、次に必要に応じて、第１記憶部２０２に確保された更新用ソフトウェア記憶領域に記憶される。ソフトウェア受信手段はソフトウェアパケットのラベル情報から、ソフトウェアデータが全部揃ったかどうかを判定する（ステップＳ１４１）。全部揃っていない場合には終了してソフトウェアの書き換えは行われない（ステップＳ１４１のＮｏ）。
【０１３６】
ソフトウェアデータが全部揃ったと判定された場合には（ステップＳ１４１のＹｅｓ）、上流の端末装置２から最上層の端末装置２まで更新された新バージョンのソフトウェアに書き換えが終了しているかどうかを判定する（ステップＳ１４２）。この場合に、端末装置２は上流の端末装置２に対してバージョン情報の問い合わせを行う。バージョン情報の問い合わせは、自身のバージョン情報及び自身の下流のバージョン情報を含むバージョン情報リストを送付する。上流の端末装置２は、バージョン情報リストに自己のバージョン情報及びその上流のバージョン情報を追加して、問い合わせた端末装置２に対して送信する。
【０１３７】
端末装置２は、上流からのバージョン情報をバージョン情報受信手段により受信する。  端末装置２のソフトウェア更新契機判定手段が、受信したバージョン情報リストから上流の端末装置２から最上流の端末装置２までのいずれかが新バージョンのソフトウェアに書き換えられていないと判定した場合には（ステップＳ１４２のＮｏ）、ソフトウェアの書き換え処理を行わないで終了する。また、端末装置２のソフトウェア更新契機判定手段が、上流の端末装置２から最上流の端末装置２の全てが新バージョンのソフトウェアに書き換えられていると判定した場合には（ステップＳ１４２のＹｅｓ）、コンテンツ再生手段による再生が、１つのコンテンツの終端を越えたか否かの判定ステップＳ１４４へ進む。
【０１３８】
次に、端末装置２のソフトウェア更新契機判定手段は、コンテンツを継続して受信する状態にあるか否かの判定を行う（ステップＳ１４３）。ここで、放送局端末１は音楽データ等からなるコンテンツパッケージを複数、連続で送信しており、コンテンツパッケージとコンテンツパッケージの切れ目が分かるように、所定のパッケージ区切りマークをストリーム内に埋め込んでいるものとする。ソフトウェア更新契機判定手段は、ソフトウェアの受信を完了してから、コンテンツパッケージの区切りマークをはじめて検出するまでの間は、実際のソフトウェアの書き換え処理を行わないでこの処理を終了する（ステップＳ１４３のＹｅｓ）。一方、コンテンツデータ受信手段がコンテンツデータの区切りマークを受信し、一時的に記憶されたリングバッファから区切りの手前の最終データが中継手段により中継処理が終了し、コンテンツ再生手段によりコンテンツデータの再生が終了していることを、端末装置２のソフトウェア更新契機判定手段が判定した場合には（ステップＳ１４３のＮｏ）、ソフトウェア更新手段は、更新用ソフトウェアをソフトウェアバッファあるいは更新用ソフトウェア記憶領域から新バージョンのソフトウェアを取り出し、書き換え処理を実行する（ステップＳ１４４）。書き換え処理が実行された後には、ソフトウェアがファームウェアである場合には、図６にＲＥＳＥＴ（ステップＳ１０５）へ進み、ソフトウェアがウィルス対策ソフト等である場合には、そのまま終了する。
【０１３９】
［６．ソフトウェアアップデートの他の処理例についての説明（処理例２）］
上記ソフトウェアップデート処理において、ステップＳ１４２においては、上流の全ての端末装置２が新バージョンのソフトウェアに書き換えが終了した場合でない限り、ソフトウェアの更新処理を実行しなかった。
【０１４０】
本実施の形態においては、端末装置２のソフトウェア更新契機判定手段が上流端末装置２から受信したバージョン情報リストを参照して、１階層上の端末装置２よりも上流に位置する全ての端末装置２のうち、新バージョンの更新ソフトウェアで動作していない端末装置２の数が、所定値以下であると判定したときにステップＳ１４２がＹｅｓであると判断して次ステップＳ１４３に進む。一方、所定値以下でないと判定したときには（ステップＳ１４２でＮｏ）、ソフトウェアの書き換えを行わないで終了する。
【０１４１】
その結果、最上流から最下流の全ての端末装置２が更新用ソフトウェアの書き換えが可能であるときに、一斉に書き換える際に発生する通信回線のトラフィック集中を回避することができる。即ち、更新用のソフトウェアのダウンロードが終了し、各端末が一斉に再起動する場合には、管理サーバ３に対して接続先紹介要求が集中してトラフィック集中の原因となり、また、管理サーバ３においては頻繁にトポロジーの再構築、これに伴う端末装置２への通知が必要となり、やはり通信回線のトラフィック集中の原因となるからである。従って、上記所定値は、通信回線の混雑の状況、及び、ソフトウェアの書き換え緊急度と兼ね合いにより最適値に設定される。
【０１４２】
［７．ソフトウェアアップデートの他の処理例についての説明（処理例３）］
本実施の形態においては、放送端末１は更新用ソフトウェアを所定期間内に所定回数（なるべく多くの回数）繰り返して配信するようにしてもよい。こうすると、後からネットワークに参加する端末装置であっても、時間がたてば確実にソフトウェアを更新することができる。
［８．ソフトウェアアップデートの他の処理例についての説明（処理例４）］
上記のソフトウェアップデート処理は、自端末装置２がコンテンツデータの区切りのよいところまでを再生した後に、端末装置２の再起動を伴うソフトウェアの更新処理を行う場合であった。これに対して、本実施の形態においては、コンテンツデータの再生を中断させないで、自端末装置２のソフトウェアの更新処理を行う。
【０１４３】
具体的に説明する。端末装置２がコンテンツデータをコンテンツ受信手段により受信し、第１記憶部２０２に一時的に記憶する。そして、コンテンツ再生手段によりコンテンツデータが再生される。次に、ソフトウェア受信手段が更新用ソフトウェアデータを受信し、第１記憶部２０２のソフトウェア記憶手段であるソフトウェアバッファに一時的に記憶される。次に、ソフトウェア更新契機判定手段によって、再生するコンテンツデータがコンテンツ受信手段により受信される場合に、上記受信したソフトウェアの更新を行う時間以上のコンテンツデータがリングバッファに蓄積されていることが判定された場合には、ソフトウェア更新手段によって、上記一時的に記憶された更新用ソフトウェアがソフトウェアバッファから読み出されて、自端末装置２の更新処理が行われる。例えば、更新用ソフトウェアが、バージョンアップされたウィルス対策ソフトである場合や、通信制御用のバージョンアップされたソフトウェアである場合は、端末装置２の再起動を行わなくても、ソフトウェアモジュールの入れ替えが可能である。その結果、リングバッファ上にあるコンテンツデータにより、コンテンツ再生が途切れないで持続できる期間内に、ソフトウェアの書き換えを行えるので、自端末装置２のソフトウェアの更新処理を、当該端末装置２のユーザに気づかせること無く迅速に行うことができる。
【０１４４】
［９．ソフトウェアアップデートメイン処理（後からツリーに参加した場合）の説明（処理例５）］
処理例１では、ソフトウェアの配信期間が過ぎても、もうコンテンツデータしか配信されなくなったときに、端末装置２が、ツリーに参加した場合、この新規参加端末は、次回のソフトウェアの配信期間が来るまで、バージョンアップがなされない。これに対処するための処理例を説明する。このソフトウェアアップデートメイン処理では、ソフトウェアは、放送として無条件に全端末装置２に配信されるのではなく、下流端末装置２から要求があったときにだけ、送信される。下流端末装置２が自分のバージョンより新しいソフトウェアを上流端末装置２が持っていないかを定期的に確認する構成となっている。なお、本実施の形態においては、ソフトウェアは放送局端末１から、その直下の端末装置２に一度だけ送信すればよい。あるいは、処理例１と同様に、ソフトウェアが放送局端末１から一定の時間間隔で配信しても良い。その間隔が長い場合であっても、その間に参加した端末には、次回の配信を待たずに、迅速に新しいソフトウェアが配信される。
【０１４５】
図１１はソフトウェアップデートのメイン処理を表すフローチャート図であり、図１２は上流接続確認処理、図１３は下流接続確認処理、図１４はパケット受信処理、図１５は上流ファーム確認処理、図１６は下流ファーム確認処理、及び図１７はファーム書き換え処理をそれぞれ表すフローチャート図である。端末装置２の電源ＯＮの後に、機器内の初期設（ステップＳ２００）から上流接続確認（ステップＳ２０１）、下流接続確認処理（ステップＳ２０２）、パケット受信処理（ステップＳ２０３）までは、及び、ソフトウェアアップデート書き換え処理（ステップＳ２０６）は、上記ソフトウェアアップデートメイン処理（［５．ソフトウェアアップデートメイン処理の説明（処理例１）］、［６．ソフトウェアアップデートの他の処理例についての説明（処理例２）］、［７．ソフトウェアアップデートの他の処理例についての説明（処理例３）］及び［８．ソフトウェアアップデートの他の処理例についての説明（処理例４）］を含む）と同様である。
【０１４６】
以下、ステップＳ２００からステップＳ２０３までの処理を、繰り返しを避けて、簡単に説明する。まず、端末装置２の電源がＯＮされると、機器内の初期設定の処理が行われる（ステップＳ１００）。次に上流の端末装置２に対する上流接続確認処理が行われる（ステップＳ２０１）。上流接続確認処理は、端末装置２の制御部２１３がチャンネル変更要否を判定し（ステップＳ２１１）、チャンネル変更要の場合には接続先紹介要求送信手段が管理サーバ３に対して接続先の問い合わせを行い（ステップＳ２１２）、接続先候補受信手段が接続先候補を受信し、上流接続の処理を行う（ステップＳ２１３）。
【０１４７】
次に、自端末装置２の下流の端末装置２に対する下流接続確認処理を行う（ステップＳ２０２）。端末装置２は管理サーバ３から下流の端末装置２への接続依頼があったかどうかを判定し（ステップＳ２２１）、下流接続の依頼があった場合には帯域に余裕があるか否かを判定し（ステップＳ２２２）、余裕がある場合には下流の端末装置２へ下流接続の処理を行う（ステップＳ２２３）。次に、パケット受信処理が行われる（ステップＳ２０３）。この場合は音楽データ等のコンテンツデータからなるコンテンツパケットをコンテンツ受信手段が受信する（ステップＳ２３１）。受信されたコンテンツパケットはリングバッファに一時的に記憶されるバッファリング処理がなされ（ステップＳ２３２）、コンテンツ再生手段により再生される（ステップＳ２３３）。そして、下流に１パケットのコンテンツデータがコンテンツ中継手段のコンテンツ送信手段により中継して送信される（ステップＳ２３４）。
【０１４８】
（上流ファーム確認処理）
次に、図１５を参照して上流ソフトウェア確認処理について説明する。端末装置２は、上流の端末装置２又は放送局端末１のソフトウェアは新バージョンのソフトウェアであるか否かを判定する。その場合に、自端末装置２は上流の端末装置２に対してバージョン情報の問い合わせを行う。この問い合わせにおいては、自身のバージョン情報と下流の端末装置２のバージョン情報もあわせて記録したバージョン情報リストを送付する。自端末装置２のバージョン情報受信手段は上流から送信されるバージョン情報リストを受信する。受信したバージョン情報リストから、自端末装置２のソフトウェア更新契機判定手段が、上流の端末装置２又は放送局端末１が更新された新バージョンのソフトウェアであると判定したときは（ステップＳ２４１）、ソフトウェア受信手段が新バージョンのソフトウェアを受信し（ステップＳ２４２）、ソフトウェア記憶手段に一時的に記憶されるバッファリング処理が行われる（ステップＳ２４３）。ステップＳ２４１において、ソフトウェア更新契機判定手段が上流の端末装置２のソフトウェアが新バージョンでないと判定したときは（ステップＳ２４１のＮｏ）、ソフトウェア受信手段に対して上流からソフトウェアを受信しないよう指示を出し、上流からソフトウェアを受信しない。
【０１４９】
（下流ファーム確認処理）
次に、図１６を参照して下流ソフトウェア確認処理について説明する。端末装置２のバージョン情報受信手段は下流の端末装置２からバージョン情報リストを受信する。次に、ソフトウェア更新契機判定手段は、既に受信していた或いは直前に受信したバージョン情報リストを参照し、下流の端末装置２のソフトウェアが旧バージョンであるか否かを判定する。旧バージョンであると判定した場合には、端末装置２のソフトウェア転送手段は下流の端末装置２に対してソフトウェアを送信する（ステップ２５２）。なお、ソフトウェアを下流の端末装置２へ送信する場合において、１パケットごとに送られてきたソフトウェアデータが全部揃った状態において初めて、下流の端末装置２へ送信するようにしてもよい。この場合に、一時的にソフトウェアを記憶しているソフトウェアバッファから記憶されたソフトウェアを読み出し、更新用ソフトウェア記憶領域に記憶して、その更新用ソフトウェア記憶領域からソフトウェアデータを読み出して下流の端末装置２へ送信するようにしてもよい。
【０１５０】
（ソフトウェア書き換え処理）
図１７はソフトウェア書き換え処理を表すフローチャート図である。この処理は、既に図１０において説明したものと同様である。従って、繰り返し避けて、簡単に説明する。端末装置２は、既にバージョン情報リストを上流の端末装置２又は放送局端末１から受信している。
【０１５１】
まず、端末装置２のソフトウェア受信手段は、１パケットずつ送られてきたソフトウェアパケットのラベルデータ等から、ソフトウェアパッケージが全部揃ったかどうかを判定する（ステップＳ２６１）。全部揃っていない場合には終了し（ステップＳ２６１のＮｏ）、揃っている場合には次のステップに進む（ステップＳ２６１のＹｅｓ）。そして、端末装置２のソフトウェア更新契機判定手段は、当該バージョン情報リストから上流の放送局端末１又は上流の端末装置２から最上流の放送局端末１までのいずれかが更新された新バージョンの更新ソフトウェアで動作していないと判定した場合には（ステップＳ２６２のＮｏ）、ソフトウェアの書き換え処理を行わないで終了し、上流の放送局端末１又は上流の端末装置２及び放送局端末１の全てが新バージョンのソフトウェアで動作する状態である場合には（ステップＳ２６２のＹｅｓ）、コンテンツ再生手段による再生が、１つのコンテンツの終端を越えたか否かの判定ステップＳ２６３へ進む。
【０１５２】
次に、端末装置２の状態が、コンテンツを継続して受信する状態にあるか否かの判定を行う（ステップＳ２６３）。ここで、放送局端末１は音楽データ等からなるコンテンツパッケージを複数、連続で送信しており、コンテンツパッケージとコンテンツパッケージの切れ目が分かるように、所定のパッケージ区切りマークをストリーム内に埋め込んでいる。ソフトウェア更新契機判定手段は、ソフトウェアの受信を完了してから、コンテンツパッケージの区切りマークを始めて検出するまでの間は、実際のソフトウェア書き換え処理を行わないでこの処理を終了する。一方、コンテンツデータ受信手段がコンテンツデータの区切りマークを受信し、一時的に記憶されているリングバッファから区切りの手前の最終データが中継手段により中継処理が終了し、コンテンツ再生手段によりコンテンツデータの再生が終了していることを、端末装置２のソフトウェア更新契機判定手段が判定した場合には（ステップＳ２６３のＮｏ）、ソフトウェア中継手段はソフトウェアを記録するソフトウェアバッファ又は更新用ソフトウェア記憶領域から新バージョンのソフトウェアを取り出し、ソフトウェア書き換え手段が自端末装置２のソフトウェアの書き換え処理を実行する（ステップＳ２６４）。この場合に、書き換えられたソフトウェアがファームウェアである場合には、図１１のステップＳ２０７へ進み、書き換えられたソフトウェアがウィルスソフト等である場合には、終了する。
【０１５３】
［１０．ソフトウェアアップデートメイン処理（ユーザが気づかないでリブートを行う場合）の説明］
ソフトウェアのアップデート処理において、更新ソフトウェアが音楽データ等の再生ソフトや端末装置２のＯＳソフトとは異なり、例えば通信制御ソフト等の新バージョン更新ソフトウェアなどである場合には、端末装置２が当該ソフトウェアを受信した後に当該ソフトウェアを自動更新することができる。例えば、コンテンツデータを受信してそのコンテンツをコンテンツ再生手段によって再生中に、端末装置２のＯＳやコンテンツ再生手段とは独立に通信ソフトウェアのみのソフトウェア書き換え処理を自動的に行うことができる。例えば、更新用ソフトウェアが、バージョンアップされたウィルス対策ソフトである場合や、通信制御用のバージョンアップされたソフトウェアである場合は、端末装置２の再起動を行わなくても、ソフトウェアモジュールの入れ替えが可能である。その結果、リングバッファ上にあるコンテンツデータにより、コンテンツ再生が途切れないで持続できる期間内に、ソフトウェアの書き換えを行えるので、自端末装置２のソフトウェアの更新処理を、当該端末装置２のユーザに気づかせること無く迅速に行うことができる。
【０１５４】
図１８は、このようなソフトウェア書き換え処理を表すフローチャート図である。なお、このフローチャート図は、［５．ソフトウェアアップデートメイン処理の説明（処理例１）］の図６において示したフローチャート図と同じである。即ち、端末装置２の電源がＯＮされ、機器内の初期設定がなされ（ステップＳ３０）、上流接続確認処理がなされ（ステップＳ３０１）、下流接続確認処理がなされ（ステップＳ３０２）、パケット受信処理がなされ（ステップＳ３０３）、そしてソフトウェア書き換え処理がなされる（ステップＳ３０４）。また、ステップＳ３０１からステップＳ３０４のサブルーチン処理も、図７から図１０とほぼ同様であり、その処理方法も基本的に同様である。従って、［５．ソフトウェアアップデートメイン処理の説明（処理例１）］において説明した処理と異なる処理について、以下に説明する。
【０１５５】
なお、本実施の形態においても、既に説明した［６．ソフトウェアアップデートの他の処理例についての説明（処理例２）］、［７．ソフトウェアアップデートの他の処理例についての説明（処理例３）］及び［８．ソフトウェアアップデートの他の処理例についての説明（処理例４）］の実施の形態を適用することができる。
【０１５６】
図１９は、図１８のステップＳ３０４のサブルーチンであるソフトウェア書き換え処理を表すフローチャート図である。本実施の形態において受信するソフトウェアは例えば通信ソフト等の端末装置２の基本ＯＳやコンテンツ再生用の更新要ソフトウェアでない場合に該当する。
【０１５７】
上流の端末装置２から当該ソフトウェアに関するバージョン情報リストを受信する。そして、全部揃っている場合には（ステップＳ３４１）ソフトウェア更新契機判定手段は上流の端末装置２から最上流の端末装置２まで全部が新バージョンのソフトウェアで動作する状態であるか否かを判定する（ステップＳ３４２）。全部新バージョンである場合には（ステップＳ３４２のＹｅｓ）、端末装置２のストリーム制御手段は、コンテンツが継続して受信する状態であるか否かを判定する（ステップＳ３４３）。継続して受信する状態でないときに（ステップＳ３４３のＮｏ）、ソフトウェアのバッファ切替え処理を行う（ステップＳ３４４）。
【図面の簡単な説明】
【０１５８】
【図１】本実施形態におけるコンテンツ配信システムＳの概要構成例を示す図。
【図２】本実施形態における端末装置のコンテンツ中継動作の説明図。
【図３】本実施形態における放送局端末の概略構成例を示す図。
【図４】本実施形態における端末装置の概略構成例を示す図。
【図５】本実施形態における管理サーバの概略構成例を示す図。
【図６】本実施形態におけるソフトウェアアップデートメインルーチン処理を示すフローチャート図である。
【図７】本実施形態における上流接続確認処理を示すフローチャート図である。
【図８】本実施形態における下流接続確認処理を示すフローチャート図である。
【図９】本実施形態におけるパケット受信処理を示すフローチャート図である。
【図１０】本実施形態におけるファーム書き換え処理を示すフローチャート図である。
【図１１】本実施形態におけるソフトウェアアップデートメインルーチン処理（後からツリーに参加した場合）を示すフローチャート図である。
【図１２】本実施形態における上流接続確認処理を示すフローチャート図である。
【図１３】本実施形態における下流接続確認処理を示すフローチャート図である。
【図１４】本実施形態におけるパケット受信処理を示すフローチャート図である。
【図１５】本実施形態における上流ファーム確認処理を示すフローチャート図である。
【図１６】本実施形態における上流ファーム確認処理を示すフローチャート図である。
【図１７】本実施形態におけるファーム書き換え処理を示すフローチャート図である。
【図１８】本実施形態におけるソフトウェアアップデートメインルーチン処理（ユーザが気づかない場合、再起動を必要としない場合）を示すフローチャート図である。
【図１９】本実施形態におけるファーム書き換え処理を示すフローチャート図である。
【符号の説明】
【０１５９】
１  放送局端末
２  端末装置
３  管理サーバ
４  インターネット
１０  ルータ
１１４、２１３、３１１  制御手段
１０２、２０２、３０２  第１記憶部
１０３、２０３、３０３  第２記憶部
Ｓ  コンテンツ配信システム
【図１】
2007179487.tif 000003
【図２】
2007179487.tif 000004
【図３】
2007179487.tif 000005
【図４】
2007179487.tif 000006
【図５】
2007179487.tif 000007
【図６】
2007179487.tif 000008
【図７】
2007179487.tif 000009
【図８】
2007179487.tif 000010
【図９】
2007179487.tif 000011
【図１０】
2007179487.tif 000012
【図１１】
2007179487.tif 000013
【図１２】
2007179487.tif 000014
【図１３】
2007179487.tif 000015
【図１４】
2007179487.tif 000016
【図１５】
2007179487.tif 000017
【図１６】
2007179487.tif 000018
【図１７】
2007179487.tif 000019
【図１８】
2007179487.tif 000020
【図１９】
2007179487.tif 000021
【手続補正書】
【提出日】平成18年1月19日(2006.1.19)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】０００２
【補正方法】変更
【補正の内容】
【０００２】
近年、インターネットなどのネットワークを介して、音楽、映画、トーク番組などのコンテンツデータのストリーミング配信を行うコンテンツ配信サービスが開始されている。この種のコンテンツ配信システムとして、配信元からコンテンツデータを受信した端末装置が、そのコンテンツデータを再生すると共に、そのコンテンツデータを他の端末装置へ順次中継して配信するＰ２Ｐ（Ｐｅｅｒ  Ｔｏ  Ｐｅｒｒ）通信と呼ばれるシステムが考案されている（例えば特許文献１参照）。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００６１
【補正方法】変更
【補正の内容】
【００６１】
また、ソフトウェア更新契機判定手段は、コンテンツの再生が完了したことを判定したときに、ソフトウェアの更新契機であると判定するので、コンテンツの再生や、コンテンツの受信の意図しない中断を防止することができる。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０１２６
【補正方法】変更
【補正の内容】
【０１２６】
端末装置２の上記受信手段が、チャンネル変更であると判定すると（ステップＳ１１１のＹｅｓ）、端末装置２の接続先紹介要求送信手段はリモコンで指示された新しいチャンネル番号に応じて、指示されたチャンネルの配信ツリーに参加したい旨の要求情報を管理サーバ３に送信し、新たな接続先の問い合わせを行う（ステップＳ１１２）。下流の端末装置２に対しては、チャンネル変更勧告の通知を行う（ステップＳ１１３）。次に、端末装置２の接続先候補受信手段は、その問い合わせの結果である接続位置情報を管理サーバ３から受信し、接続手段は上流の端末装置２又は放送局端末１を認識し、上流の端末装置２に接続する（ステップＳ１１４）。この様な処理を実行した後に、上流接続処理を終了する。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】０１３７
【補正方法】変更
【補正の内容】
【０１３７】
端末装置２は、上流からのバージョン情報をバージョン情報受信手段により受信する。  端末装置２のソフトウェア更新契機判定手段が、受信したバージョン情報リストから上流の端末装置２から最上流の端末装置２までのいずれかが新バージョンのソフトウェアに書き換えられていないと判定した場合には（ステップＳ１４２のＮｏ）、ソフトウェアの書き換え処理を行わないで終了する。また、端末装置２のソフトウェア更新契機判定手段が、上流の端末装置２から最上流の端末装置２の全てが新バージョンのソフトウェアに書き換えられていると判定した場合には（ステップＳ１４２のＹｅｓ）、コンテンツ再生手段による再生が、１つのコンテンツの終端を越えたか否かの判定ステップＳ１４３へ進む。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】０１３８
【補正方法】変更
【補正の内容】
【０１３８】
次に、端末装置２のソフトウェア更新契機判定手段は、コンテンツを継続して受信する状態にあるか否かの判定を行う（ステップＳ１４３）。ここで、放送局端末１は音楽データ等からなるコンテンツパッケージを複数、連続で送信しており、コンテンツパッケージとコンテンツパッケージの切れ目が分かるように、所定のパッケージ区切りマークをストリーム内に埋め込んでいるものとする。ソフトウェア更新契機判定手段は、ソフトウェアの受信を完了してから、コンテンツパッケージの区切りマークをはじめて検出するまでの間は、実際のソフトウェアの書き換え処理を行わないでこの処理を終了する（ステップＳ１４３のＮｏ）。一方、コンテンツデータ受信手段がコンテンツデータの区切りマークを受信し、一時的に記憶されたリングバッファから区切りの手前の最終データが中継手段により中継処理が終了し、コンテンツ再生手段によりコンテンツデータの再生が終了していることを、端末装置２のソフトウェア更新契機判定手段が判定した場合には（ステップＳ１４３のＹｅｓ）、ソフトウェア更新手段は、更新用ソフトウェアをソフトウェアバッファあるいは更新用ソフトウェア記憶領域から新バージョンのソフトウェアを取り出し、書き換え処理を実行する（ステップＳ１４４）。書き換え処理が実行された後には、ソフトウェアがファームウェアである場合には、図６にＲＥＳＥＴ（ステップＳ１０５）へ進み、ソフトウェアがウィルス対策ソフト等である場合には、そのまま終了する。
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】０１５２
【補正方法】変更
【補正の内容】
【０１５２】
次に、端末装置２の状態が、コンテンツを継続して受信する状態にあるか否かの判定を行う（ステップＳ２６３）。ここで、放送局端末１は音楽データ等からなるコンテンツパッケージを複数、連続で送信しており、コンテンツパッケージとコンテンツパッケージの切れ目が分かるように、所定のパッケージ区切りマークをストリーム内に埋め込んでいる。ソフトウェア更新契機判定手段は、ソフトウェアの受信を完了してから、コンテンツパッケージの区切りマークを始めて検出するまでの間は、実際のソフトウェア書き換え処理を行わないでこの処理を終了する（ステップＳ２６３のＮｏ）。一方、コンテンツデータ受信手段がコンテンツデータの区切りマークを受信し、一時的に記憶されているリングバッファから区切りの手前の最終データが中継手段により中継処理が終了し、コンテンツ再生手段によりコンテンツデータの再生が終了していることを、端末装置２のソフトウェア更新契機判定手段が判定した場合には（ステップＳ２６３のＹｅｓ）、ソフトウェア中継手段はソフトウェアを記録するソフトウェアバッファ又は更新用ソフトウェア記憶領域から新バージョンのソフトウェアを取り出し、ソフトウェア書き換え手段が自端末装置２のソフトウェアの書き換え処理を実行する（ステップＳ２６４）。この場合に、書き換えられたソフトウェアがファームウェアである場合には、図１１のステップＳ２０７へ進み、書き換えられたソフトウェアがウィルスソフト等である場合には、終了する。
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】０１５７
【補正方法】変更
【補正の内容】
【０１５７】
上流の端末装置２から当該ソフトウェアに関するバージョン情報リストを受信する。そして、全部揃っている場合には（ステップＳ３４１）ソフトウェア更新契機判定手段は上流の端末装置２から最上流の端末装置２まで全部が新バージョンのソフトウェアで動作する状態であるか否かを判定する（ステップＳ３４２）。全部新バージョンである場合には（ステップＳ３４２のＹｅｓ）、端末装置２のストリーム制御手段は、コンテンツが継続して受信する状態であるか否かを判定する（ステップＳ３４３）。継続して受信する状態でないときに（ステップＳ３４３のＹｅｓ）、ソフトウェアのバッファ切替え処理を行う（ステップＳ３４４）。
【手続補正８】
【補正対象書類名】図面
【補正対象項目名】図１０
【補正方法】変更
【補正の内容】
【図１０】
2007179487.tif 000022
【手続補正９】
【補正対象書類名】図面
【補正対象項目名】図１７
【補正方法】変更
【補正の内容】
【図１７】
2007179487.tif 000023
【手続補正１０】
【補正対象書類名】図面
【補正対象項目名】図１９
【補正方法】変更
【補正の内容】
【図１９】
2007179487.tif 000024