受信端末及びそのプログラム
【課題】マルチキャスト配信システムにおいて通信路の使用帯域を節約し、パケットロス等が発生することを防止すること。
【解決手段】受信端末は、受信端末が受信するザッピングチャンネルの放送データを配信するサーバが2以上ある場合、ザッピングチャンネルの配信元サーバを第1のサーバから第2のサーバへ、または第2のサーバから第1のサーバへ変更し、再度マルチキャストグループに参加する。受信端末はザッピングチャンネルの配信元サーバを統一するので、マルチキャストグループとサーバとの組み合わせの数が最少化され、ネットワークの帯域使用量が減少し、受信端末は放送データを正常に受信できる。
【解決手段】受信端末は、受信端末が受信するザッピングチャンネルの放送データを配信するサーバが2以上ある場合、ザッピングチャンネルの配信元サーバを第1のサーバから第2のサーバへ、または第2のサーバから第1のサーバへ変更し、再度マルチキャストグループに参加する。受信端末はザッピングチャンネルの配信元サーバを統一するので、マルチキャストグループとサーバとの組み合わせの数が最少化され、ネットワークの帯域使用量が減少し、受信端末は放送データを正常に受信できる。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、マルチキャスト放送を受信する受信端末に関する。
【背景技術】
【0002】
近年、IPマルチキャスト(以下、マルチキャストという。)による放送データの配信サービスが行われている。一般にマルチキャストでは、マルチキャストサーバ(以下、サーバという。)から配信されるデータを受信する受信端末が、マルチキャストグループ(以下、グループという。)への参加要求をネットワーク側に送信する。そして、マルチキャストに対応したルータ(以下、マルチキャストルータという。)が、受信端末からグループへの参加要求を受信し、参加を希望する受信端末をマルチキャストの経路に追加する。この結果、受信端末は、サーバが配信する放送データを受信することができる。
【0003】
マルチキャストによる配信を実行するサーバは、ひとつのグループに、複数のチャンネルの放送データを送信する。受信端末は、1つ以上のグループに参加し、そのグループで配信されている複数のチャンネルのデータを同時に受信する。また、グループは複数存在し、グループごとに、配信されているチャンネルが異なる。たとえば、グループ1にはチャンネル1〜5の放送データがサーバから配信されており、グループ2にはチャンネル6〜8の放送データがサーバから配信される。
【0004】
サーバは、保守性や稼働性等の向上のために、2系統以上設置されることがある。通常時に稼働するサーバ(以下、プライマリサーバという。)が保守点検などで一時的に不稼働状態に陥った場合には、予備用のサーバ(以下、セカンダリサーバという。)が稼働し、プライマリサーバの処理を代行する。また、プライマリサーバとセカンダリサーバの両者が同時に稼働し、あるチャンネルの放送データはプライマリサーバが配信し、別のあるチャンネルの放送データはセカンダリサーバが配信するという状況もある。
【0005】
ユーザは、受信端末を操作し、複数のチャンネルの中から、再生するチャンネルを1つ指定する。受信端末は、再生中のチャンネルに隣接する複数のチャンネルの放送データを、再生するチャンネルの放送データと同時に受信し、受信端末内のバッファに蓄積する。そして受信端末においてユーザ操作によってチャンネルが切り替えられたときに、バッファから放送データを読み出し、切り替えられたチャンネルの再生を開始する。このことにより、受信端末において再生するチャンネルがユーザ操作によって切り替えられたとき、受信端末は、素早く切り替え先のチャンネルの再生を開始できる。
【0006】
ところで、受信端末が運用開始された時点では、一般に配信元のサーバはすべてプライマリサーバである。受信端末は、受信する必要があるチャンネルが属するグループを特定し、特定されるグループに参加する。受信端末とマルチキャストルータとの間(マルチキャストルータとサーバとの間も同様である。)では、プライマリサーバと受信端末が受信するチャンネルが属するグループとの組み合わせの数分の通信が実行される。たとえば、受信端末が同時に受信するチャンネルが5つ存在し、チャンネル1〜3はグループ1によってサーバから配信され、チャンネル4と5とはグループ2によってサーバから配信される。このとき、受信端末は、チャンネル1〜5の放送データを受信するために、グループ1とグループ2とに参加する。この結果、ネットワークにはグループ1とプライマリサーバとの組み合わせによる通信と、グループ2とプライマリサーバとの組み合わせによる通信とが実行される。つまり、受信端末とサーバとの間に2つの通信経路が確立される。
【0007】
受信端末を運用する過程で、一時的にプライマリサーバが停止する場合や、何らかの原因でプライマリサーバが配信していた特定のチャンネルの放送データを、プライマリサーバが配信不可能になることがある。このとき、受信端末は、受信が不可能になったチャンネルの放送データを配信するサーバをプライマリサーバからセカンダリサーバへ切り替える。または、配信が不可能になったチャンネルのデータを配信するサーバを、サーバ管理者がプライマリサーバからセカンダリサーバへ切替える。この結果、サーバとグループとの組み合わせの数が増大する。たとえば、チャンネル2と5とがプライマリサーバによる配信から、セカンダリサーバによる配信に切り替わった場合、ネットワークには、グループ1とプライマリサーバとの組み合わせによる通信と、グループ1とセカンダリサーバとの組み合わせによる通信と、グループ2とプライマリサーバとの組み合わせによる通信と、グループ2とセカンダリサーバとの組み合わせによる通信とが実行される。つまり、ネットワーク上で4つの通信が実行される。すなわち、受信端末が受信中のチャンネルの配信サーバが変更されると、ネットワーク上の通信経路が増加する。その結果、受信端末とマルチキャストルータとの間に流れるデータ量が増加し、マルチキャストルータが処理可能な範囲を超えると、パケットロスが生じ、受信端末が正常に放送データを受信できなくなる。
【0008】
上記問題は、マルチキャスト配信システム特有の問題である。つまり、ユニキャストによる配信システムの場合は、受信端末が受信するチャンネルごとにサーバと受信端末とが接続を確立するので、帯域増加が見込まれる場合には同時に受信するチャンネル数を減らすことでマルチキャストルータと受信端末との間の通信パケット量を減らすことが可能である。しかしながら、マルチキャストによる配信システムの場合は、受信端末が受信するチャンネル数の変更がない場合であっても、上記説明の通り、ネットワークの使用帯域が増加してしまう。
【0009】
特開2010−233175号公報には、クライアント端末が、受信しているマルチキャストの送信帯域が予め定められた基準値を満たしているか否かを判断し、受信しているマルチキャストの送信帯域が基準値を満たしていない場合、受信するマルチキャストを変更することが記載されている。
【先行技術文献】
【特許文献】
【0010】
【特許文献1】特開2010−233175号公報
【発明の概要】
【発明が解決しようとする課題】
【0011】
本発明は上記従来の課題を解決するためになされたものであり、その目的は、マルチキャスト配信システムにおいて通信路の使用帯域を節約し、パケットロスが発生することを防止することができる受信端末を提供することである。
【課題を解決するための手段】
【0012】
本発明の好ましい実施形態による受信端末は、複数のチャンネルの放送データをマルチキャストで配信可能な第1のサーバと、前記複数のチャンネルの前記放送データを前記マルチキャストで配信可能な第2のサーバとから配信される前記放送データを受信可能な受信端末であって、再生チャンネルと、前記再生チャンネル以外の1または複数のチャンネルとを含むザッピングチャンネルが属する1または複数のマルチキャストグループに参加するマルチキャストグループ参加手段と、前記ザッピングチャンネルの前記放送データを同時に受信するザッピングチャンネル受信手段と、前記ザッピングチャンネルの前記放送データが2つ以上のサーバから配信されている場合、参加中の前記マルチキャストグループから離脱する離脱手段と、前記ザッピングチャンネルの前記放送データを配信する前記サーバを前記第1のサーバまたは前記第2のサーバに指定し、再度前記マルチキャストグループに参加する再接続手段とを備える。
【0013】
受信端末は、受信端末が受信するザッピングチャンネルの放送データを配信するサーバが2以上ある場合、ザッピングチャンネルの配信元サーバを第1のサーバから第2のサーバへ、または第2のサーバから第1のサーバへ変更し、再度マルチキャストグループに参加する。受信端末はザッピングチャンネルの配信元サーバを統一するので、マルチキャストグループとサーバとの組み合わせの数が最少化され、ネットワークの帯域使用量が減少し、受信端末は放送データを正常に受信できる。
【0014】
好ましい実施形態においては、前記ザッピングチャンネルの前記放送データを正常に受信中か否かを判断する通信判断手段をさらに備え、前記ザッピングチャンネルの前記放送データを正常に受信中でないと判断されたとき、前記離脱手段が、参加中の前記マルチキャストグループから離脱する。
【0015】
受信端末は、受信端末が受信している複数のチャンネルのうち、1つ以上のチャンネルの放送データを正常に受信できない場合、参加中のマルチキャストグループから離脱し、全チャンネルの配信元サーバを第1のサーバから第2のサーバへ、または第2のサーバから第1のサーバへ変更し、再度マルチキャストグループに参加する。受信端末は、受信エラーが発生しているチャンネルの配信元サーバを特定し、特定されるサーバと異なるサーバへ変更するので、正常に放送データを受信可能となる。また、受信端末はザッピングチャンネルの配信元サーバを統一するので、マルチキャストグループとサーバとの組み合わせの数が最少化される。
【0016】
本発明の別の好ましい実施形態による受信端末は、前記通信判断手段によって前記放送データを正常に受信中でないと判断されたとき、前記放送データを正常に受信中でないチャンネルを特定するエラーチャンネル特定手段と、前記エラーチャンネル特定手段によって特定された前記チャンネルが、前記再生チャンネルであるか否かを判断する再生チャンネルエラー判断手段とをさらに備え、前記エラーチャンネル特定手段によって特定された前記チャンネルが前記再生チャンネルであると判断されたとき、前記離脱手段が参加中の前記マルチキャストグループから離脱し、前記エラーチャンネル特定手段によって特定された前記チャンネルが前記再生チャンネルでないと判断されたとき、前記離脱手段が参加中の前記マルチキャストグループから離脱しない。
【0017】
受信端末は、受信エラーが発生しているチャンネルの配信元サーバを特定し、特定されるサーバが再生チャンネルであるか否かを判断する。受信端末は、再生チャンネルを正常に受信できていないと判断する場合、参加中のマルチキャストグループから離脱し、ザッピングチャンネルの配信元サーバを第1のサーバから第2のサーバへ、または第2のサーバから第1のサーバへ変更し、再度マルチキャストグループに参加する。受信端末は再生チャンネルで受信エラーが発生しているときに上記離脱と参加との処理を実行するので、受信端末は音切れなく再生チャンネルを再生可能となる。また、受信端末は再生チャンネル以外のチャンネルの受信エラーが発生していても、離脱と参加との処理を実行しないので、再生が停止しない。
【0018】
本発明の別の好ましい実施形態による受信端末は、ユーザ操作によって前記再生チャンネルを切り替える、再生チャンネル切り替え手段をさらに備え、前記エラーチャンネル特定手段によって特定された前記チャンネルが、前記再生チャンネル切り替え手段によって指定された前記チャンネルであると判断されたとき、前記離脱手段が参加中の前記マルチキャストグループから離脱する。
【0019】
受信端末は、受信端末の再生チャンネルがユーザ操作によって切り替えられるとき、切り替え先のチャンネルを正常に受信中か否かを判断し、正常に受信中でないと判断された場合、参加中のマルチキャストグループから離脱し、ザッピングチャンネルの配信元サーバを第1のサーバから第2のサーバへ、または第2のサーバから第1のサーバへ変更し、再度マルチキャストグループに参加する。受信端末は、切り替え先のチャンネルの放送データを正常に受信できていない場合、チャンネルを切り替える前に上記離脱と参加との処理を実行するので、受信端末は切り替え先のチャンネルを正常に再生できる。また、受信端末は切り替え先のチャンネル以外のチャンネルのいずれかを正常に受信できない場合は、離脱と参加の処理を実行しないので、再生チャンネルを高速に切り替えることができる。
【0020】
本発明の別の好ましい実施形態による受信端末は、参加中の前記マルチキャストグループと、前記ザッピングチャンネルの前記放送データを配信している前記サーバとの組み合わせの数を取得する、組み合わせ数取得手段と、前記組み合わせ数取得手段によって取得される前記組み合わせの数が、所定の組み合わせ数の範囲内であるか否かを判断する組み合わせ数判断手段と、前記組み合わせの数が前記所定の数の組み合わせ数の範囲内でないと判断された場合、参加中の前記マルチキャストグループから離脱する。
【0021】
受信端末は、受信端末が参加中のマルチキャストグループと、ザッピングチャンネルを配信しているサーバとの組み合わせの数が、規定数の範囲内であるか否かを判断し、規定数の範囲内でないと判断した場合、参加中のマルチキャストグループから離脱し、ザッピングチャンネルの配信元サーバを第1のサーバから第2のサーバへ、または第2のサーバから第1のサーバへ変更し、再度マルチキャストグループに参加する。マルチキャストグループとサーバとの組み合わせの数が一定数以下に抑えられ、マルチキャストルータが処理不可能な通信データ量が発生することを防止できるので、受信端末はザッピングチャンネルを正常に受信可能となる。
【0022】
本発明の別の好ましい実施形態による受信端末は、前記再生チャンネルが所属しない前記マルチキャストグループを特定する、マルチキャストグループ特定手段と、前記マルチキャストグループ特定手段によって特定される前記マルチキャストグループ内の前記チャンネルの前記放送データを配信する前記サーバが、すべて前記第1のサーバまたは前記第2のサーバであるか否かを判断する、配信サーバ同一判断手段とを備え、配信サーバ同一判断手段が前記マルチキャストグループ特定手段によって特定される前記マルチキャストグループ内の前記サーバが同一でないと判断する場合、前記離脱手段が、前記マルチキャストグループ特定手段によって特定される前記マルチキャストグループから離脱する。
【0023】
受信端末は、再生チャンネルが属さないマルチキャストグループを特定する。そして受信端末は、特定されるマルチキャストグループに属するチャンネルの配信元サーバが同一であるか否かを判断し、同一でないと判断した場合、受信端末は参加中のマルチキャストグループから離脱し、ザッピングチャンネルの配信元サーバを第1のサーバから第2のサーバへ、または第2のサーバから第1のサーバへ変更し、再度マルチキャストグループに参加する。これにより、受信端末は再生を停止せずに、マルチキャストグループとサーバとの組み合わせの数を減少させ、ネットワークの通信量を減少させることが可能である。
【発明の効果】
【0024】
マルチキャスト配信システムにおいてネットワークの使用帯域を低減し、パケットロス等が発生することを防止することができる。
【図面の簡単な説明】
【0025】
【図1】本発明の好ましい実施形態によるマルチキャスト配信システム図である。
【図2】本発明の好ましい実施形態による受信端末のブロック図である。
【図3】受信状態テーブルを示す図である。
【図4】制御部11の処理を示すフローチャートである。
【図5】受信状態テーブルを示す図である。
【図6】マルチキャスト配信システム図である。
【図7】制御部11の処理を示すフローチャートである。
【図8】制御部11の処理を示すフローチャートである。
【図9】制御部11の処理を示すフローチャートである。
【図10】制御部11の処理を示すフローチャートである。
【図11】制御部11の処理を示すフローチャートである。
【図12】制御部11の処理を示すフローチャートである。
【図13】制御部11の処理を示すフローチャートである。
【発明を実施するための形態】
【0026】
以下、本発明の好ましい実施形態による受信端末について、図面を参照して具体的に説明するが、本発明はこれらの実施形態には限定されない。図1は、本発明の好ましい実施形態によるマルチキャスト配信システムの構成図である。
【0027】
受信端末100は、たとえばセットトップボックス、ネットワークインターフェースを備えるAVレシーバ及びAVアンプ等であり、サーバからのマルチキャストによる放送データを受信可能な装置である。
【0028】
チャンネルA1〜A5は、それぞれ異なるチャンネルの放送データを示す。プライマリサーバ200(a)は、チャンネルA1〜A5の放送データをマルチキャストで配信可能なサーバである。セカンダリサーバ200(b)も、A1〜A5の放送データをマルチキャストで配信可能なサーバである。プライマリサーバ200(a)とセカンダリサーバ200(b)とは、両方同時に稼働していてもよいし、片方のみが稼働していてもよい。通常はプライマリサーバ200(a)が優先的に稼働する。図1のマルチキャスト配信システムでは、プライマリサーバ200(a)のみが稼働している。なお、チャンネルA1〜A5の放送データを、プライマリサーバ200(a)またはセカンダリサーバ200(b)が格納していてもよいし、各チャンネルの放送データをプライマリサーバ200(a)やセカンダリサーバ200(b)へ送信する別のサーバが存在してもよい。以下では、各チャンネルの放送データをプライマリサーバ200(a)とセカンダリサーバ200(b)とが格納しているとして説明する。なお、以下、「チャンネルA1の放送データ」を、単に「チャンネルA1」等と略して記述する。
【0029】
図1のマルチキャスト配信システムにおいて、プライマリサーバ200(a)は、チャンネルA1〜A5のうち、チャンネルA1〜A3をグループG1で配信し、チャンネルA4とA5とをグループG2で配信する。なお、特に区別する必要がない場合、プライマリサーバ200(a)及びセカンダリサーバ200(b)を、単にサーバ200という。マルチキャストルータ300は、サーバ200からのパケットをルーティングし、受信端末100へ送信する。受信端末100は、グループG1に参加することによりチャンネルA1〜A3を受信可能となり、グループG2に参加することによりチャンネルA4とA5とを受信可能となる。すなわち、受信端末100は、受信する必要があるチャンネルを含むグループに参加する。ここで、参加とは、IGMP(Intenet Group Management Protocol)v3またはMLD(Multicast Listener Discovery)v2のjoinメッセージである。マルチキャストルータ300は、受信端末100から参加メッセージを受け取ることで、マルチキャストルータ300の先にグループのデータを受信する受信端末100が存在することを認識する。その結果、マルチキャストルータ300は、サーバ200からグループへ配信されるデータを受信端末100へ転送するようになる。この結果、受信端末100はグループに属するチャンネルの放送データを受信可能となる。
【0030】
図2は、本発明の好ましい実施形態による受信端末100のブロック図を示す。受信端末100は、制御部11、メモリ12、通信部13、チャンネル受信部14(a)〜14(e)、再生部15、操作部16及びバッファ17(a)〜17(e)を備える。チャンネル受信部14(a)〜14(e)は、特に区別する必要がない場合、単にチャンネル受信部14という。また、バッファ17(a)〜17(e)は、特に区別する必要がない場合、単にバッファ17という。好ましくは、チャンネル受信部14及びバッファ17は、受信端末100が同時に受信する必要があるチャンネル数分備えるが、必ずしも受信するチャンネル数分なくてもよい。たとえば1つのチャンネル受信部14及びバッファ17を、複数のチャンネルで共有してもよい。
【0031】
制御部11は、受信端末100を制御するものであり、たとえばマイコンやCPU等である。制御部11は、通信部13が受信するパケットから各チャンネルの放送データを取り出し、チャンネル受信部14へ送信する。制御部11は、チャンネル受信部14が受信したデータをバッファ17へ送信し、記憶させる。また、制御部11は、ユーザ操作により再生が指示されているチャンネルの放送データを、バッファ17から再生部15へ送信させる。
【0032】
メモリ12は、たとえばROMやRAMである。メモリ12は、受信状態テーブル12Aを有する。受信状態テーブル12Aは、受信端末100が受信中のチャンネルや、チャンネルの配信サーバ200や、チャンネルが属するグループなどを管理する。受信状態テーブル12Aについての詳細は後述する。
【0033】
通信部13は、ネットワークから送信されるパケットを受信し、また、受信端末100からネットワークへパケットを送信する。
【0034】
チャンネル受信部14は、サーバ200から配信される各チャンネルの放送データを受信する。受信端末100は、チャンネル受信部14を、受信端末100が同時に受信するチャンネル数分備え、たとえば、チャンネルA1をチャンネル受信部14(a)で受信し、チャンネルA2をチャンネル受信部14(b)で受信する。通信部13で受信するデータから、各チャンネル受信部14へのデータの振り分ける処理は、制御部11によって実行される。
【0035】
再生部15には、制御部11によってバッファ17から、再生を指定されているチャンネルの放送データが入力される。再生部15は、入力されたデータに対して音声信号処理等を実行し、図示しないスピーカ等へ出力する。
【0036】
操作部16は、ユーザが受信端末100に対して実行する操作を受信し、制御部11へ受信した操作内容を送信する。ユーザは、再生チャンネルの切替等を、操作部16に対して実行する。
【0037】
バッファ17は、チャンネル受信部14が受信する各チャンネルの放送データを一時的に保存する記憶領域であり、一般的にはRAM等である。たとえば、バッファ17(a)には、チャンネル受信部14(a)が受信する放送データが記憶され、バッファ17(b)には、チャンネル受信部14(b)が受信する放送データが記憶される。なお、チャンネル受信部14からバッファ17への放送データの振り分けは、制御部11によって実行される。
【0038】
以上の構成を備える受信端末100の制御部11は、ザッピングチャンネルが属するグループへ参加し、ザッピングチャンネルの放送データを受信開始する。制御部11は、ザッピングチャンネルの放送データを受信中に、ザッピングチャンネルの放送データを配信しているサーバ200がすべて同一であるか否かを判断し、同一ではないと判断した場合、制御部11は参加中のグループから離脱する。そして、制御部11は、ザッピングチャンネルの配信元サーバ200を、プライマリサーバ200(a)またはセカンダリサーバ200(b)のいずれかに統一し、再度マルチキャストグループに参加する。
【0039】
図3は、受信端末100のメモリ12が格納する受信状態テーブル12A(a)を示す。受信状態テーブル12A(a)は、受信端末100が受信中の各チャンネルに関する情報を管理する。受信状態テーブル12A(a)は、ステータス、チャンネル、グループ、サーバ、及び受信状態の5つの項目を備える。ステータスは、受信端末100が各チャンネルを再生中か否かを示す。チャンネルは、受信端末100が受信中のチャンネルを示す。グループは、各チャンネルが所属するマルチキャストグループを示す。サーバは、各チャンネルを配信している配信元のサーバ200を示す。Pはプライマリサーバ200(a)を示し、Sはセカンダリサーバ200(b)を示す。受信状態は、各チャンネルの放送データを受信端末100が正常に受信できているか否かを示す。Tは受信端末100が正常に放送データを受信できていることを示し、Fは受信端末100が正常に放送データを受信できていないことを示す。受信状態テーブル12A(a)は、受信端末100がチャンネルA1〜A5を受信中あり、チャンネルA3を再生中であり、チャンネルA1〜A3をグループG1で受信しており、チャンネルA4及びA5をグループG2で受信しており、チャンネルA1〜A5をプライマリサーバ200(a)から受信しており、受信状態はすべて正常であることを示す。
【0040】
図4は、受信端末100の制御部11がサーバ200が配信するチャンネルを受信し、受信状態テーブル12Aを生成し、更新するフローチャートを示す。
【0041】
制御部11は、ユーザ操作によって、再生するチャンネル(以下、再生チャンネルという。)を設定する(S11)。制御部11は、S11の処理によって設定されるチャンネルに隣接する1以上のチャンネルを、再生チャンネルと同時に受信するチャンネルとして特定する(S12)。たとえば、S11の処理によってチャンネルA3が設定されるとき、S12の処理によって、チャンネルA1、A2、A4及びA5が特定される。なお、以下では、再生チャンネルと隣接するチャンネルとして特定されたチャンネルを総じてザッピングチャンネルという。本例では、チャンネルA1、A2、A3、A4、A5がザッピングチャンネルである。なお、ザッピングチャンネルは必ずしも隣接している必要はない。
【0042】
制御部11は、ザッピングチャンネルの各チャンネルが属するグループを判断し、判断されるグループに参加する(S13)。たとえば、チャンネルA1〜A3がグループ1に属しており、チャンネルA4及びA5がグループ2に属している場合、制御部11は、グループ1とグループ2とに参加する。なお、受信端末100は、予めサーバ200から各チャンネルが属するグループを記載したデータを受信し、各チャンネルが属するグループを把握している。
【0043】
制御部11は、ザッピングチャンネルの放送データをサーバ200に要求する(S14)。そして、制御部11は、チャンネル受信部14が受信する放送データを各々のチャンネルに対応するバッファ17へ送信する(S15)。受信端末100は、同時に複数のチャンネルの放送データを受信し、バッファ17に保存するので、ユーザ操作により連続して再生チャンネルが切り替えられたときに、即座に切り替え先のチャンネルを再生開始できる。なお、バッファ17に保存しておくデータ量は、たとえば10秒程度再生できる量とし、バッファ17にはリングバッファ等が採用される。
【0044】
制御部11は、再生チャンネルの放送データを再生部15へ送信する(S16)。これにより、受信端末100において再生チャンネルの再生が開始される。なお、制御部11は、再生チャンネルが含まれるグループのデータ受信を、再生チャンネルが含まれないグループのデータ受信よりも先に開始し、再生チャンネルの再生開始を早く可能にしてもよい。
【0045】
制御部11は、各チャンネルの放送データを配信しているサーバ200を、放送データ受信時のパケットに記載されている情報(サーバ200のIPAddress等)から特定し(S17)、受信状態テーブル12Aを更新する。たとえば、チャンネルA1〜A5の放送データがすべてプライマリサーバ200(a)から配信されている場合、受信状態テーブル12Aのサーバ項目にPを書き込む。
【0046】
制御部11は、チャンネル受信部14(a)〜14(e)のすべてから、定期的にチャンネルの受信状態を示す情報を受信する(S19)。受信状態を示す情報とは、チャンネル受信部14が受信している放送データのパケットがロスしていないか否かを示す情報と、チャンネル受信部14の各チャンネルを配信しているサーバ200を特定する情報とを含む。定期的とは、たとえば1秒ごとなどである。
【0047】
制御部11は、S19の処理によって受信する情報から、当該チャンネルの放送データを配信しているサーバ200を判断し、配信元のサーバ200が変更されたか否かを判断する(S20)。サーバ200が変更されたか否かの判断は、受信状態テーブル12Aのサーバ項目に設定されている値とS19の処理において受信した配信元サーバ200の情報とが同一であるか否かによって実行される。なお、サーバ200がチャンネルを配信するサーバ200の切り替え指示を受信端末100へ送信し、受信端末100がその指示を受信し、配信元のサーバ200を切り替えてもよい。その場合、S20の処理を実行したのち、後述するS22の処理を実行する。制御部11は、配信元のサーバ200が変更されたと判断する場合(S20でYES)、チャンネルを正常に受信中か否かの情報を受信状態テーブル12Aの受信状態項目に書き込み更新する(S23)。そして、受信状態テーブル12Aのサーバ項目を、新たに配信を受けているサーバ200に更新する(S24)。なお、配信サーバ200が変更になる原因として、サーバ200が保守点検により停止した場合や、サーバ200が特定のチャンネルを配信できない状態になった場合等がある。
【0048】
制御部11は、配信元のサーバ200が変更されていないと判断する場合(S20でNO)、S19の処理によって取得される、放送データのパケットがロスしていないか否かの情報によって、チャンネルを受信端末100が正常に受信中であるか否かを判断する(S21)。制御部11は、チャンネルを正常に受信できていないと判断する場合(S21でNO)、制御部11は、当該チャンネルの配信元サーバ200を変更する(S22)。たとえば、受信端末100がチャンネルA2をプライマリサーバ200(a)から正常に受信できない場合、制御部11は、チャンネルA2の配信元サーバをセカンダリサーバ200(b)に切り替える。そして、S23及びS24の処理を実行する。制御部11によってチャンネルの放送データを正常に受信できていると判断される場合(S21でYES)、制御部11は、S24の処理を実行する。なお、S21でYESの場合、S24の処理において同一のサーバ200を受信状態テーブル12Aのサーバ項目に上書きしてもよいし、S24の処理を実行しなくてもよい。
【0049】
制御部11は、S19〜S24までの処理を、チャンネル受信部14(a)〜14(e)のすべてのチャンネル受信部14から送信される情報に基づいて実行する。なお、制御部11は、チャンネル受信部14が、プライマリサーバ200(a)またはセカンダリサーバ200(b)のいずれから放送データの配信を受けた場合もパケットのロスが発生すると判断した場合は、制御部11は、配信元サーバをいずれかのサーバ200に固定し、S22のサーバ切替処理が繰り返し行われることを防止する。
【0050】
図5は、チャンネルA2及びA5の配信元サーバがプライマリサーバ200(a)からセカンダリサーバ200(b)に変更されたときの受信状態テーブル12A(b)を示す。さらに、受信状態テーブル12A(b)は、受信端末100がチャンネルA4の放送データが正常に受信できず、チャンネルA4の受信状態がFALSEであることを示している。
【0051】
図6は、受信状態テーブル12A(b)の受信状態のマルチキャスト配信システム図を示す。受信端末100は、プライマリサーバ200(a)とセカンダリサーバ200(b)との両方から放送データを受信している。図1のマルチキャスト配信システムでは、グループと配信元のサーバとの組み合わせが、「グループ1:プライマリサーバ200(a)」、「グループ2:プライマリサーバ200(a)」の2種類である。これに対し、図6のマルチキャスト配信システムでは、グループと配信元のサーバとの組み合わせが、「グループ1:プライマリサーバ200(a)」、「グループ2:プライマリサーバ200(a)」、「グループ1:セカンダリサーバ200(b)」、「グループ2:セカンダリサーバ200(b)」の4つの通信が実行される。すなわち、受信端末100は、マルチキャストルータ300との間で4つの通信を実行する。各々のグループとサーバ200との組み合わせによって実行される通信がそれぞれ1Mbpsの帯域を使用すると仮定した場合、図1のマルチキャスト配信システムは2Mbps(1Mbps×2)の帯域を使用するのに対し、図6のマルチキャスト配信システムの場合は、4Mbps(1Mbps×4)の帯域を使用する。すなわち、マルチキャスト配信システムを運用中に配信元サーバ200の切替が発生すると、初期状態に比べネットワークの使用帯域が増加する。そして、使用帯域がマルチキャストルータ300が処理可能な許容範囲を超えた場合、受信端末100は正常に放送データを受信できなくなり、受信端末100において再生時の音切れが発生する。
【0052】
[使用帯域低減化処理の実施形態1]
受信端末100が使用するネットワークの帯域を低減する第1の実施形態を説明する。図7は、受信端末100の制御部11が、使用帯域を低減する第1の実施形態のフローチャートを示す。なお、受信端末100は、図4の処理と並行して図7の処理を実行する。
【0053】
制御部11は、ザッピングチャンネルのすべてのチャンネルを正常に受信しているか否かを判断する(S31)。制御部11は、ザッピングチャンネルのすべてのチャンネルを正常に受信していると判断した場合(S31でYES)、処理を終了する。制御部11は、ザッピングチャンネルのうち、正常に受信できていないチャンネルが存在すると判断した場合(S31でNO)、接続切替処理1または2を実行する(S32)。接続切り替え処理を実行することで、ネットワークの使用帯域を減少させることができる。なお、接続切替処理1及び接続切替処理2の詳細は、後述する。
【0054】
以上の実施形態1によると、受信端末100が、ザッピングチャンネルのうち、1つ以上のチャンネルの受信でパケットロスが発生していると判断するとき、ネットワークの使用帯域を減少させる処理を実行するので、受信端末100は、ザッピングチャンネルのいずれのチャンネルを再生したときも音切れなく再生できる。
【0055】
[接続切替処理の実施形態1]
図7のS32の処理である、接続切替処理の第1の実施形態を説明する。図8は、制御部11が実行する接続切替処理の第1の実施形態のフローチャートを示す。なお、接続切替処理の第1の実施形態を接続切替処理1という。本実施形態によると、受信端末100は、参加中のグループすべてからいったん離脱し、すべての配信元サーバ200を同一に指定して再度グループに参加する。ここで、離脱とは、IGMP(Intenet Group Management Protocol)v3またはMLD(Multicast Listener Discovery)v2のleaveメッセージを指す。マルチキャストルータ300は、受信端末100から離脱メッセージを受け取ることで、マルチキャストルータ300の先にグループのデータを受信する受信端末100が存在しないことを認識する。その結果、マルチキャストルータ300は、サーバ200からグループへ配信されるデータを受信端末100へ転送しなくなる。したがって、受信端末100はグループに属するチャンネルの放送データを受信しなくなる。
【0056】
制御部11は、受信端末100が参加中のすべてのグループから離脱する(S41)。すなわち、制御部11は、グループ1と、グループ2とから離脱する。なお、制御部11がグループから離脱した場合、受信端末100は放送データを受信できなくなるので、一時的に受信端末100における再生は停止する。
【0057】
制御部11は、配信元となるサーバ200の優先度を変更する(S42)。たとえば、図7のフローチャートのS31でパケットをロスしていると判断されたチャンネルの放送データを配信していたサーバ200がプライマリサーバ200(a)であった場合は、セカンダリサーバ200(b)を指定する。複数のチャンネルでパケットロスが発生している場合は、制御部11はいずれのサーバ200を指定してもよいが、好ましくは、パケットロスが発生しているチャンネルが少ないサーバ200を指定する。
【0058】
制御部11は、図4のフローチャートのS13以降の処理を実行する(S43)。すなわち、再度ザッピングチャンネルが属するグループへ参加し、接続を再開する。制御部11は、プライマリサーバ200(a)、またはセカンダリサーバ200(b)のいずれかをザッピングチャンネルの配信元サーバ200として指定するので、すべての受信チャンネルの配信元サーバは1つに統一され、グループとサーバ200との組み合わせの数は初期状態と同一になり、組み合わせの数が最少化される。
【0059】
以上の実施形態1によると、受信端末100は、グループとサーバ200との組み合わせの数が最少化されるので、ネットワークの使用帯域を最小限にすることができる。たとえば、図5の受信状態テーブル12A(b)の状態であった場合に、図8の接続切替処理1を実行すると、受信状態テーブル12A(b)のサーバ項目がPまたはSに統一される。したがって、グループとサーバとの組み合わせの数が図3の受信状態テーブル12A(a)の場合と同一となり、最少化される。さらに、受信端末100は、パケットロスが生じていたチャンネルが接続されていたサーバ200とは異なるサーバ200を指定して再接続するので、受信端末100はパケットロスなくザッピングチャンネルを受信できる可能性が高い。
【0060】
[接続切替処理の実施形態2]
図7のS32の処理である、接続切替処理の第2の実施形態を説明する。図9は、制御部11が実行する接続切替処理の第2の実施形態のフローチャートを示す。本実施形態によると、再生中のチャンネルが属さないグループのみを対象として接続切替処理2を実行するので、再生を停止することなくネットワークの使用帯域を低減することができる。なお、接続切替処理の第2の実施形態を接続切替処理2という。
【0061】
制御部11は、再生中でないチャンネルが属するグループを取得する(S51)。たとえば、図5の受信状態テーブル12A(b)の受信状態の場合、グループ1に属するチャンネルであるA3が再生中であるので、グループ2が特定される。なお、グループが3つ以上あるマルチキャスト配信システムの場合は、S51の処理によってグループが複数特定される。制御部11は、S52以降の処理を、S51の処理によって特定されたグループすべてに対して実行する。
【0062】
制御部11は、S51の処理によって特定されるグループ内のチャンネルの放送データを配信しているサーバ200がすべて同一であるか否かを判断する(S52)。たとえば図5の受信状態テーブル12A(b)の場合、グループ2に属するチャンネル(A4とA5)の配信サーバ200はPとSとであるので、同一でないと判断される。
【0063】
制御部11は、グループ内のチャンネルのサーバ200が同一でないと判断した場合(S52でNO)、グループから離脱する(S53)。
【0064】
制御部11は、グループ内のチャンネルの配信元サーバ200をすべて同一に設定する(S54)。制御部11はプライマリサーバ200(a)に統一してもよいし、セカンダリサーバ200(b)に統一してもよい。たとえば図5の受信状態テーブル12A(b)の場合、チャンネルA4とA5とのサーバ項目は、PまたはSのいずれかに統一される。そして制御部11は、再度同一グループに参加する(S55)。
【0065】
制御部11は、S51の処理によって取得されるグループのすべてに対し、S52以降の処理を実行したか否かを判断し(S56)、実行したと判断した場合(S56でYES)、図4のフローチャートのS14以降の処理を実行する(S57)。制御部11は、すべてのグループに対してS52以降の処理を実行していないと判断した場合(S56でNO)、S51の処理によって取得された次のグループを取得し(S57)、S52以降の処理を繰り返す。なお、制御部11はS54で設定するサーバ200を、S51で取得されるグループに対し、すべてプライマリサーバ200(a)またはセカンダリサーバ200(b)のいずれかで統一する。サーバ200とグループとの組み合わせ数を少なくするためである。たとえば、図5の受信状態テーブル12A(b)において、グループG2に含まれるチャンネルのサーバ200がPに統一された場合、グループとサーバ200との組み合わせは、「グループ1:プライマリサーバ200(a)」、「グループ2:プライマリサーバ200(a)」、「グループ1:セカンダリサーバ200(b)」の3つとなる。すなわち、グループとサーバ200の組み合わせの数が、4つから3つに減少する。
【0066】
制御部11は、グループ内のチャンネルの放送データを配信しているサーバ200が同一であると判断した場合(S52でYES)、S56以降の処理を実行する。
【0067】
以上の実施形態2によると、制御部11は再生中のチャンネルが属するグループに対して離脱処理を行わないので、再生を停止することなく、使用帯域を減少させることができる。なお、本処理を実行後であっても、使用帯域が許容範囲内にならない場合は、再生チャンネルが属するグループに対してS52以降の処理を実行してもよい。
【0068】
[使用帯域低減化処理の実施形態2]
受信端末100が使用するネットワークの帯域を低減する第2の実施形態を説明する。図10は、制御部11が、使用帯域を低減する第2の実施形態のフローチャートを示す。図7と同一の処理には同一符号を付し、説明を省略する。
【0069】
制御部11は、ザッピングチャンネルを正常に受信していないと判断した場合(S31でNO)、S31の処理によって正常に受信できていないと判断されたチャンネルを受信端末100で再生中であるか否かを判断する(S61)。具体的には、正常にパケットを受信できていないチャンネルのステータスが受信状態テーブル12Aにおいて「再生中」に設定されているか否かによって判断される。制御部11は、チャンネルを受信端末100で再生中であると判断した場合(S61でYES)、接続切替処理1を実行する(S32)。制御部11は、チャンネルを受信端末100で再生中でないと判断する場合(S61でNO)、処理を終了する。
【0070】
以上の実施形態2によると、制御部11は再生中のチャンネルの放送データを正常に受信できない場合のみ接続切替処理1を実行するので、再生チャンネルの受信状態を自動的に正常な状態に復帰させることができる。制御部11は再生チャンネル以外のいずれかのチャンネルを正常に受信できていない場合は接続切替処理1を実行しない。これにより、再生チャンネル以外のチャンネルの受信エラーによって接続処理切替処理が実行されることがなく、再生チャンネルの再生が停止されない。
【0071】
[使用帯域低減化処理の実施形態3]
受信端末100が使用するネットワークの帯域を低減する第3の実施形態を説明する。図11は、制御部11が、使用帯域を低減する第3の実施形態のフローチャートを示す。本実施形態によると、制御部11は、変更先のチャンネルの受信状態が正常であるか否かを判断し、正常でないと判断される場合は、接続切替処理を実行する。図7と同一の処理には同一符号を付し、説明を省略する。
【0072】
制御部11は、ユーザ操作によって再生チャンネルを切り替えられたか否かを判断し(S71)、切り替えられたと判断した場合(S71でYES)、制御部11は切り替え先のチャンネルの受信状態がFalseであるか否かを受信状態テーブル12Aを参照して判断する(S72)。
【0073】
制御部11は、受信状態テーブル12Aの切り替え先のチャンネルの受信状態がFalseになっていると判断した場合(S72でYES)、接続切替処理1または2を実行する(S32)。制御部11は、切り替え先のチャンネルの受信状態テーブル12Aの受信状態がFalseになっていないと判断した場合(S72でNO)、処理を終了する。
【0074】
以上の実施形態3によると、受信端末100は切り替え先のチャンネルの受信状態を、チャンネル切り替えを実行する前に確認し、正常に受信できていない場合は接続切替処理1または2を実行したのち、切り替え先のチャンネルを再生する。これにより受信端末100は新たに指定されたチャンネルの再生を確実に開始できる。また、受信端末100は、切り替え先のチャンネル以外のチャンネルのいずれかを正常に受信できていない場合、接続切替処理を実行しない。なぜなら、接続切替処理を実行すると、受信端末100はグループからの離脱処理と参加処理とを実行することになり、チャンネル切り替えに時間がかかるからである。
【0075】
[使用帯域低減化処理の実施形態4]
受信端末100が使用するネットワークの帯域を低減する第4の実施形態を説明する。図12は、制御部11が、使用帯域を低減する第4の実施形態のフローチャートを示す。本実施形態によると、制御部11は、グループとサーバ200との組み合わせの数が規定値以上の場合に、接続切替処理を実行する。図7と同一の処理には同一符号を付し、説明を省略する。
【0076】
制御部11は、受信端末100が受信中のグループとサーバ200との組み合わせの数を取得する(S81)。たとえば、図5の受信状態の場合は、組み合わせの数が4である。
【0077】
制御部11は、S81の処理によって取得されるグループとサーバ200との組み合わせの数が、規定数以上であるか否かを判断する(S82)。規定数とは、たとえば3などである。
【0078】
制御部11は、S81の処理によって取得される組み合わせの数が、規定数以上であると判断する場合(S82でYES)、接続切替処理1または2を実行する(S32)。制御部11は、S81の処理によって取得される組み合わせの数が、規定数未満であると判断する場合(S82でNO)、処理を終了する。
【0079】
以上の実施形態4によると、受信端末100は受信するグループとサーバ200との組み合わせ数が規定値以上になったときに、組み合わせ数を減少させる処理を実行するので、グループとサーバ200との組み合わせの数が一定数以下に抑えられ、マルチキャストルータ300が処理不可能な通信データ量が発生することを防止できる
【0080】
[使用帯域低減化処理の実施形態5]
受信端末100が使用するネットワークの帯域を低減する第5の実施形態を説明する。図13は、制御部11が、使用帯域を低減する第5の実施形態のフローチャートを示す。本実施形態によると、制御部11は、現在受信端末100が受信中の総データ量が、規定値以上である場合に、接続切替処理を実行する。図7と同一の処理には同一符号を付し、説明を省略する。
【0081】
制御部11は、ザッピングチャンネルの配信サーバ200が、すべて同一か否かを判断する(S91)。たとえば、図3の受信状態テーブル12A(a)の場合は同一であると判断され、図5の受信状態テーブル12A(b)の場合は同一でないと判断される。ザッピングチャンネルの配信サーバ200が、すべて同一であると判断された場合(S91でYES)、制御部11は、処理を終了する。ザッピングチャンネルの配信サーバ200が、すべて同一である場合は、グループとサーバ200との組み合わせの数が最少であるため、制御部11はS92以降の処理を実行する必要がない。
【0082】
ザッピングチャンネルの配信サーバ200が、すべて同一でないと判断された場合(S91でNO)、制御部11は、受信中の全チャンネルの単位時間当たりの受信データ量を取得する(S92)。受信中の受信データ量は、通信部13または各チャンネル受信部14が定期的に制御部11に通知する。
【0083】
制御部11は、受信中のデータ量がマルチキャストルータ300の許容範囲であるか否かを判断する(S93)。マルチキャストルータ300の許容範囲は、受信端末100がマルチキャストルータ300に制御部11が問い合わせて取得し、設定してもよいし、受信端末100に固定値を設定しておいてもよい。
【0084】
制御部11は、受信中のデータ量がマルチキャストルータ300の許容範囲でないと判断した場合(S93でNO)、接続切替処理1または2を実行する(S32)。制御部11は、受信中のデータ量がマルチキャストルータ300の許容範囲であると判断した場合(S93でYES)、処理を終了する。
【0085】
以上の実施形態5によると、受信端末100はマルチキャストルータ300が許容する以上の帯域を使用していると判断する場合、接続切替処理1または2を実行し、ネットワークの使用帯域を減少させる。このことによりマルチキャストルータ300が処理できない量のデータが、受信端末100とマルチキャストルータの間で通信されることを防止できる。
【0086】
以上、本発明の好ましい実施形態について説明したが、本発明はこれらの実施形態には限定されない。
また、サーバ200は、2つ以上であってもよい。各サーバ200が配信可能なチャンネルが異なっていてもよい。サーバ200から配信される放送データは、音声データ以外に、映像データや静止画データであってもよい。また、受信端末100は、同時に複数のチャンネルを再生してもよい。
【産業上の利用可能性】
【0087】
本発明は、セットトップボックスや、AVレシーバや、音声映像出力装置等の機器に好適に採用され得る。
【符号の説明】
【0088】
100 受信端末
200(a) プライマリサーバ
200(b) セカンダリサーバ
11 制御部
12 メモリ
13 通信部
14(a)〜14(e) チャンネル受信部
15 再生部
16 操作部
17(a)〜17(e) バッファ
【技術分野】
【0001】
本発明は、マルチキャスト放送を受信する受信端末に関する。
【背景技術】
【0002】
近年、IPマルチキャスト(以下、マルチキャストという。)による放送データの配信サービスが行われている。一般にマルチキャストでは、マルチキャストサーバ(以下、サーバという。)から配信されるデータを受信する受信端末が、マルチキャストグループ(以下、グループという。)への参加要求をネットワーク側に送信する。そして、マルチキャストに対応したルータ(以下、マルチキャストルータという。)が、受信端末からグループへの参加要求を受信し、参加を希望する受信端末をマルチキャストの経路に追加する。この結果、受信端末は、サーバが配信する放送データを受信することができる。
【0003】
マルチキャストによる配信を実行するサーバは、ひとつのグループに、複数のチャンネルの放送データを送信する。受信端末は、1つ以上のグループに参加し、そのグループで配信されている複数のチャンネルのデータを同時に受信する。また、グループは複数存在し、グループごとに、配信されているチャンネルが異なる。たとえば、グループ1にはチャンネル1〜5の放送データがサーバから配信されており、グループ2にはチャンネル6〜8の放送データがサーバから配信される。
【0004】
サーバは、保守性や稼働性等の向上のために、2系統以上設置されることがある。通常時に稼働するサーバ(以下、プライマリサーバという。)が保守点検などで一時的に不稼働状態に陥った場合には、予備用のサーバ(以下、セカンダリサーバという。)が稼働し、プライマリサーバの処理を代行する。また、プライマリサーバとセカンダリサーバの両者が同時に稼働し、あるチャンネルの放送データはプライマリサーバが配信し、別のあるチャンネルの放送データはセカンダリサーバが配信するという状況もある。
【0005】
ユーザは、受信端末を操作し、複数のチャンネルの中から、再生するチャンネルを1つ指定する。受信端末は、再生中のチャンネルに隣接する複数のチャンネルの放送データを、再生するチャンネルの放送データと同時に受信し、受信端末内のバッファに蓄積する。そして受信端末においてユーザ操作によってチャンネルが切り替えられたときに、バッファから放送データを読み出し、切り替えられたチャンネルの再生を開始する。このことにより、受信端末において再生するチャンネルがユーザ操作によって切り替えられたとき、受信端末は、素早く切り替え先のチャンネルの再生を開始できる。
【0006】
ところで、受信端末が運用開始された時点では、一般に配信元のサーバはすべてプライマリサーバである。受信端末は、受信する必要があるチャンネルが属するグループを特定し、特定されるグループに参加する。受信端末とマルチキャストルータとの間(マルチキャストルータとサーバとの間も同様である。)では、プライマリサーバと受信端末が受信するチャンネルが属するグループとの組み合わせの数分の通信が実行される。たとえば、受信端末が同時に受信するチャンネルが5つ存在し、チャンネル1〜3はグループ1によってサーバから配信され、チャンネル4と5とはグループ2によってサーバから配信される。このとき、受信端末は、チャンネル1〜5の放送データを受信するために、グループ1とグループ2とに参加する。この結果、ネットワークにはグループ1とプライマリサーバとの組み合わせによる通信と、グループ2とプライマリサーバとの組み合わせによる通信とが実行される。つまり、受信端末とサーバとの間に2つの通信経路が確立される。
【0007】
受信端末を運用する過程で、一時的にプライマリサーバが停止する場合や、何らかの原因でプライマリサーバが配信していた特定のチャンネルの放送データを、プライマリサーバが配信不可能になることがある。このとき、受信端末は、受信が不可能になったチャンネルの放送データを配信するサーバをプライマリサーバからセカンダリサーバへ切り替える。または、配信が不可能になったチャンネルのデータを配信するサーバを、サーバ管理者がプライマリサーバからセカンダリサーバへ切替える。この結果、サーバとグループとの組み合わせの数が増大する。たとえば、チャンネル2と5とがプライマリサーバによる配信から、セカンダリサーバによる配信に切り替わった場合、ネットワークには、グループ1とプライマリサーバとの組み合わせによる通信と、グループ1とセカンダリサーバとの組み合わせによる通信と、グループ2とプライマリサーバとの組み合わせによる通信と、グループ2とセカンダリサーバとの組み合わせによる通信とが実行される。つまり、ネットワーク上で4つの通信が実行される。すなわち、受信端末が受信中のチャンネルの配信サーバが変更されると、ネットワーク上の通信経路が増加する。その結果、受信端末とマルチキャストルータとの間に流れるデータ量が増加し、マルチキャストルータが処理可能な範囲を超えると、パケットロスが生じ、受信端末が正常に放送データを受信できなくなる。
【0008】
上記問題は、マルチキャスト配信システム特有の問題である。つまり、ユニキャストによる配信システムの場合は、受信端末が受信するチャンネルごとにサーバと受信端末とが接続を確立するので、帯域増加が見込まれる場合には同時に受信するチャンネル数を減らすことでマルチキャストルータと受信端末との間の通信パケット量を減らすことが可能である。しかしながら、マルチキャストによる配信システムの場合は、受信端末が受信するチャンネル数の変更がない場合であっても、上記説明の通り、ネットワークの使用帯域が増加してしまう。
【0009】
特開2010−233175号公報には、クライアント端末が、受信しているマルチキャストの送信帯域が予め定められた基準値を満たしているか否かを判断し、受信しているマルチキャストの送信帯域が基準値を満たしていない場合、受信するマルチキャストを変更することが記載されている。
【先行技術文献】
【特許文献】
【0010】
【特許文献1】特開2010−233175号公報
【発明の概要】
【発明が解決しようとする課題】
【0011】
本発明は上記従来の課題を解決するためになされたものであり、その目的は、マルチキャスト配信システムにおいて通信路の使用帯域を節約し、パケットロスが発生することを防止することができる受信端末を提供することである。
【課題を解決するための手段】
【0012】
本発明の好ましい実施形態による受信端末は、複数のチャンネルの放送データをマルチキャストで配信可能な第1のサーバと、前記複数のチャンネルの前記放送データを前記マルチキャストで配信可能な第2のサーバとから配信される前記放送データを受信可能な受信端末であって、再生チャンネルと、前記再生チャンネル以外の1または複数のチャンネルとを含むザッピングチャンネルが属する1または複数のマルチキャストグループに参加するマルチキャストグループ参加手段と、前記ザッピングチャンネルの前記放送データを同時に受信するザッピングチャンネル受信手段と、前記ザッピングチャンネルの前記放送データが2つ以上のサーバから配信されている場合、参加中の前記マルチキャストグループから離脱する離脱手段と、前記ザッピングチャンネルの前記放送データを配信する前記サーバを前記第1のサーバまたは前記第2のサーバに指定し、再度前記マルチキャストグループに参加する再接続手段とを備える。
【0013】
受信端末は、受信端末が受信するザッピングチャンネルの放送データを配信するサーバが2以上ある場合、ザッピングチャンネルの配信元サーバを第1のサーバから第2のサーバへ、または第2のサーバから第1のサーバへ変更し、再度マルチキャストグループに参加する。受信端末はザッピングチャンネルの配信元サーバを統一するので、マルチキャストグループとサーバとの組み合わせの数が最少化され、ネットワークの帯域使用量が減少し、受信端末は放送データを正常に受信できる。
【0014】
好ましい実施形態においては、前記ザッピングチャンネルの前記放送データを正常に受信中か否かを判断する通信判断手段をさらに備え、前記ザッピングチャンネルの前記放送データを正常に受信中でないと判断されたとき、前記離脱手段が、参加中の前記マルチキャストグループから離脱する。
【0015】
受信端末は、受信端末が受信している複数のチャンネルのうち、1つ以上のチャンネルの放送データを正常に受信できない場合、参加中のマルチキャストグループから離脱し、全チャンネルの配信元サーバを第1のサーバから第2のサーバへ、または第2のサーバから第1のサーバへ変更し、再度マルチキャストグループに参加する。受信端末は、受信エラーが発生しているチャンネルの配信元サーバを特定し、特定されるサーバと異なるサーバへ変更するので、正常に放送データを受信可能となる。また、受信端末はザッピングチャンネルの配信元サーバを統一するので、マルチキャストグループとサーバとの組み合わせの数が最少化される。
【0016】
本発明の別の好ましい実施形態による受信端末は、前記通信判断手段によって前記放送データを正常に受信中でないと判断されたとき、前記放送データを正常に受信中でないチャンネルを特定するエラーチャンネル特定手段と、前記エラーチャンネル特定手段によって特定された前記チャンネルが、前記再生チャンネルであるか否かを判断する再生チャンネルエラー判断手段とをさらに備え、前記エラーチャンネル特定手段によって特定された前記チャンネルが前記再生チャンネルであると判断されたとき、前記離脱手段が参加中の前記マルチキャストグループから離脱し、前記エラーチャンネル特定手段によって特定された前記チャンネルが前記再生チャンネルでないと判断されたとき、前記離脱手段が参加中の前記マルチキャストグループから離脱しない。
【0017】
受信端末は、受信エラーが発生しているチャンネルの配信元サーバを特定し、特定されるサーバが再生チャンネルであるか否かを判断する。受信端末は、再生チャンネルを正常に受信できていないと判断する場合、参加中のマルチキャストグループから離脱し、ザッピングチャンネルの配信元サーバを第1のサーバから第2のサーバへ、または第2のサーバから第1のサーバへ変更し、再度マルチキャストグループに参加する。受信端末は再生チャンネルで受信エラーが発生しているときに上記離脱と参加との処理を実行するので、受信端末は音切れなく再生チャンネルを再生可能となる。また、受信端末は再生チャンネル以外のチャンネルの受信エラーが発生していても、離脱と参加との処理を実行しないので、再生が停止しない。
【0018】
本発明の別の好ましい実施形態による受信端末は、ユーザ操作によって前記再生チャンネルを切り替える、再生チャンネル切り替え手段をさらに備え、前記エラーチャンネル特定手段によって特定された前記チャンネルが、前記再生チャンネル切り替え手段によって指定された前記チャンネルであると判断されたとき、前記離脱手段が参加中の前記マルチキャストグループから離脱する。
【0019】
受信端末は、受信端末の再生チャンネルがユーザ操作によって切り替えられるとき、切り替え先のチャンネルを正常に受信中か否かを判断し、正常に受信中でないと判断された場合、参加中のマルチキャストグループから離脱し、ザッピングチャンネルの配信元サーバを第1のサーバから第2のサーバへ、または第2のサーバから第1のサーバへ変更し、再度マルチキャストグループに参加する。受信端末は、切り替え先のチャンネルの放送データを正常に受信できていない場合、チャンネルを切り替える前に上記離脱と参加との処理を実行するので、受信端末は切り替え先のチャンネルを正常に再生できる。また、受信端末は切り替え先のチャンネル以外のチャンネルのいずれかを正常に受信できない場合は、離脱と参加の処理を実行しないので、再生チャンネルを高速に切り替えることができる。
【0020】
本発明の別の好ましい実施形態による受信端末は、参加中の前記マルチキャストグループと、前記ザッピングチャンネルの前記放送データを配信している前記サーバとの組み合わせの数を取得する、組み合わせ数取得手段と、前記組み合わせ数取得手段によって取得される前記組み合わせの数が、所定の組み合わせ数の範囲内であるか否かを判断する組み合わせ数判断手段と、前記組み合わせの数が前記所定の数の組み合わせ数の範囲内でないと判断された場合、参加中の前記マルチキャストグループから離脱する。
【0021】
受信端末は、受信端末が参加中のマルチキャストグループと、ザッピングチャンネルを配信しているサーバとの組み合わせの数が、規定数の範囲内であるか否かを判断し、規定数の範囲内でないと判断した場合、参加中のマルチキャストグループから離脱し、ザッピングチャンネルの配信元サーバを第1のサーバから第2のサーバへ、または第2のサーバから第1のサーバへ変更し、再度マルチキャストグループに参加する。マルチキャストグループとサーバとの組み合わせの数が一定数以下に抑えられ、マルチキャストルータが処理不可能な通信データ量が発生することを防止できるので、受信端末はザッピングチャンネルを正常に受信可能となる。
【0022】
本発明の別の好ましい実施形態による受信端末は、前記再生チャンネルが所属しない前記マルチキャストグループを特定する、マルチキャストグループ特定手段と、前記マルチキャストグループ特定手段によって特定される前記マルチキャストグループ内の前記チャンネルの前記放送データを配信する前記サーバが、すべて前記第1のサーバまたは前記第2のサーバであるか否かを判断する、配信サーバ同一判断手段とを備え、配信サーバ同一判断手段が前記マルチキャストグループ特定手段によって特定される前記マルチキャストグループ内の前記サーバが同一でないと判断する場合、前記離脱手段が、前記マルチキャストグループ特定手段によって特定される前記マルチキャストグループから離脱する。
【0023】
受信端末は、再生チャンネルが属さないマルチキャストグループを特定する。そして受信端末は、特定されるマルチキャストグループに属するチャンネルの配信元サーバが同一であるか否かを判断し、同一でないと判断した場合、受信端末は参加中のマルチキャストグループから離脱し、ザッピングチャンネルの配信元サーバを第1のサーバから第2のサーバへ、または第2のサーバから第1のサーバへ変更し、再度マルチキャストグループに参加する。これにより、受信端末は再生を停止せずに、マルチキャストグループとサーバとの組み合わせの数を減少させ、ネットワークの通信量を減少させることが可能である。
【発明の効果】
【0024】
マルチキャスト配信システムにおいてネットワークの使用帯域を低減し、パケットロス等が発生することを防止することができる。
【図面の簡単な説明】
【0025】
【図1】本発明の好ましい実施形態によるマルチキャスト配信システム図である。
【図2】本発明の好ましい実施形態による受信端末のブロック図である。
【図3】受信状態テーブルを示す図である。
【図4】制御部11の処理を示すフローチャートである。
【図5】受信状態テーブルを示す図である。
【図6】マルチキャスト配信システム図である。
【図7】制御部11の処理を示すフローチャートである。
【図8】制御部11の処理を示すフローチャートである。
【図9】制御部11の処理を示すフローチャートである。
【図10】制御部11の処理を示すフローチャートである。
【図11】制御部11の処理を示すフローチャートである。
【図12】制御部11の処理を示すフローチャートである。
【図13】制御部11の処理を示すフローチャートである。
【発明を実施するための形態】
【0026】
以下、本発明の好ましい実施形態による受信端末について、図面を参照して具体的に説明するが、本発明はこれらの実施形態には限定されない。図1は、本発明の好ましい実施形態によるマルチキャスト配信システムの構成図である。
【0027】
受信端末100は、たとえばセットトップボックス、ネットワークインターフェースを備えるAVレシーバ及びAVアンプ等であり、サーバからのマルチキャストによる放送データを受信可能な装置である。
【0028】
チャンネルA1〜A5は、それぞれ異なるチャンネルの放送データを示す。プライマリサーバ200(a)は、チャンネルA1〜A5の放送データをマルチキャストで配信可能なサーバである。セカンダリサーバ200(b)も、A1〜A5の放送データをマルチキャストで配信可能なサーバである。プライマリサーバ200(a)とセカンダリサーバ200(b)とは、両方同時に稼働していてもよいし、片方のみが稼働していてもよい。通常はプライマリサーバ200(a)が優先的に稼働する。図1のマルチキャスト配信システムでは、プライマリサーバ200(a)のみが稼働している。なお、チャンネルA1〜A5の放送データを、プライマリサーバ200(a)またはセカンダリサーバ200(b)が格納していてもよいし、各チャンネルの放送データをプライマリサーバ200(a)やセカンダリサーバ200(b)へ送信する別のサーバが存在してもよい。以下では、各チャンネルの放送データをプライマリサーバ200(a)とセカンダリサーバ200(b)とが格納しているとして説明する。なお、以下、「チャンネルA1の放送データ」を、単に「チャンネルA1」等と略して記述する。
【0029】
図1のマルチキャスト配信システムにおいて、プライマリサーバ200(a)は、チャンネルA1〜A5のうち、チャンネルA1〜A3をグループG1で配信し、チャンネルA4とA5とをグループG2で配信する。なお、特に区別する必要がない場合、プライマリサーバ200(a)及びセカンダリサーバ200(b)を、単にサーバ200という。マルチキャストルータ300は、サーバ200からのパケットをルーティングし、受信端末100へ送信する。受信端末100は、グループG1に参加することによりチャンネルA1〜A3を受信可能となり、グループG2に参加することによりチャンネルA4とA5とを受信可能となる。すなわち、受信端末100は、受信する必要があるチャンネルを含むグループに参加する。ここで、参加とは、IGMP(Intenet Group Management Protocol)v3またはMLD(Multicast Listener Discovery)v2のjoinメッセージである。マルチキャストルータ300は、受信端末100から参加メッセージを受け取ることで、マルチキャストルータ300の先にグループのデータを受信する受信端末100が存在することを認識する。その結果、マルチキャストルータ300は、サーバ200からグループへ配信されるデータを受信端末100へ転送するようになる。この結果、受信端末100はグループに属するチャンネルの放送データを受信可能となる。
【0030】
図2は、本発明の好ましい実施形態による受信端末100のブロック図を示す。受信端末100は、制御部11、メモリ12、通信部13、チャンネル受信部14(a)〜14(e)、再生部15、操作部16及びバッファ17(a)〜17(e)を備える。チャンネル受信部14(a)〜14(e)は、特に区別する必要がない場合、単にチャンネル受信部14という。また、バッファ17(a)〜17(e)は、特に区別する必要がない場合、単にバッファ17という。好ましくは、チャンネル受信部14及びバッファ17は、受信端末100が同時に受信する必要があるチャンネル数分備えるが、必ずしも受信するチャンネル数分なくてもよい。たとえば1つのチャンネル受信部14及びバッファ17を、複数のチャンネルで共有してもよい。
【0031】
制御部11は、受信端末100を制御するものであり、たとえばマイコンやCPU等である。制御部11は、通信部13が受信するパケットから各チャンネルの放送データを取り出し、チャンネル受信部14へ送信する。制御部11は、チャンネル受信部14が受信したデータをバッファ17へ送信し、記憶させる。また、制御部11は、ユーザ操作により再生が指示されているチャンネルの放送データを、バッファ17から再生部15へ送信させる。
【0032】
メモリ12は、たとえばROMやRAMである。メモリ12は、受信状態テーブル12Aを有する。受信状態テーブル12Aは、受信端末100が受信中のチャンネルや、チャンネルの配信サーバ200や、チャンネルが属するグループなどを管理する。受信状態テーブル12Aについての詳細は後述する。
【0033】
通信部13は、ネットワークから送信されるパケットを受信し、また、受信端末100からネットワークへパケットを送信する。
【0034】
チャンネル受信部14は、サーバ200から配信される各チャンネルの放送データを受信する。受信端末100は、チャンネル受信部14を、受信端末100が同時に受信するチャンネル数分備え、たとえば、チャンネルA1をチャンネル受信部14(a)で受信し、チャンネルA2をチャンネル受信部14(b)で受信する。通信部13で受信するデータから、各チャンネル受信部14へのデータの振り分ける処理は、制御部11によって実行される。
【0035】
再生部15には、制御部11によってバッファ17から、再生を指定されているチャンネルの放送データが入力される。再生部15は、入力されたデータに対して音声信号処理等を実行し、図示しないスピーカ等へ出力する。
【0036】
操作部16は、ユーザが受信端末100に対して実行する操作を受信し、制御部11へ受信した操作内容を送信する。ユーザは、再生チャンネルの切替等を、操作部16に対して実行する。
【0037】
バッファ17は、チャンネル受信部14が受信する各チャンネルの放送データを一時的に保存する記憶領域であり、一般的にはRAM等である。たとえば、バッファ17(a)には、チャンネル受信部14(a)が受信する放送データが記憶され、バッファ17(b)には、チャンネル受信部14(b)が受信する放送データが記憶される。なお、チャンネル受信部14からバッファ17への放送データの振り分けは、制御部11によって実行される。
【0038】
以上の構成を備える受信端末100の制御部11は、ザッピングチャンネルが属するグループへ参加し、ザッピングチャンネルの放送データを受信開始する。制御部11は、ザッピングチャンネルの放送データを受信中に、ザッピングチャンネルの放送データを配信しているサーバ200がすべて同一であるか否かを判断し、同一ではないと判断した場合、制御部11は参加中のグループから離脱する。そして、制御部11は、ザッピングチャンネルの配信元サーバ200を、プライマリサーバ200(a)またはセカンダリサーバ200(b)のいずれかに統一し、再度マルチキャストグループに参加する。
【0039】
図3は、受信端末100のメモリ12が格納する受信状態テーブル12A(a)を示す。受信状態テーブル12A(a)は、受信端末100が受信中の各チャンネルに関する情報を管理する。受信状態テーブル12A(a)は、ステータス、チャンネル、グループ、サーバ、及び受信状態の5つの項目を備える。ステータスは、受信端末100が各チャンネルを再生中か否かを示す。チャンネルは、受信端末100が受信中のチャンネルを示す。グループは、各チャンネルが所属するマルチキャストグループを示す。サーバは、各チャンネルを配信している配信元のサーバ200を示す。Pはプライマリサーバ200(a)を示し、Sはセカンダリサーバ200(b)を示す。受信状態は、各チャンネルの放送データを受信端末100が正常に受信できているか否かを示す。Tは受信端末100が正常に放送データを受信できていることを示し、Fは受信端末100が正常に放送データを受信できていないことを示す。受信状態テーブル12A(a)は、受信端末100がチャンネルA1〜A5を受信中あり、チャンネルA3を再生中であり、チャンネルA1〜A3をグループG1で受信しており、チャンネルA4及びA5をグループG2で受信しており、チャンネルA1〜A5をプライマリサーバ200(a)から受信しており、受信状態はすべて正常であることを示す。
【0040】
図4は、受信端末100の制御部11がサーバ200が配信するチャンネルを受信し、受信状態テーブル12Aを生成し、更新するフローチャートを示す。
【0041】
制御部11は、ユーザ操作によって、再生するチャンネル(以下、再生チャンネルという。)を設定する(S11)。制御部11は、S11の処理によって設定されるチャンネルに隣接する1以上のチャンネルを、再生チャンネルと同時に受信するチャンネルとして特定する(S12)。たとえば、S11の処理によってチャンネルA3が設定されるとき、S12の処理によって、チャンネルA1、A2、A4及びA5が特定される。なお、以下では、再生チャンネルと隣接するチャンネルとして特定されたチャンネルを総じてザッピングチャンネルという。本例では、チャンネルA1、A2、A3、A4、A5がザッピングチャンネルである。なお、ザッピングチャンネルは必ずしも隣接している必要はない。
【0042】
制御部11は、ザッピングチャンネルの各チャンネルが属するグループを判断し、判断されるグループに参加する(S13)。たとえば、チャンネルA1〜A3がグループ1に属しており、チャンネルA4及びA5がグループ2に属している場合、制御部11は、グループ1とグループ2とに参加する。なお、受信端末100は、予めサーバ200から各チャンネルが属するグループを記載したデータを受信し、各チャンネルが属するグループを把握している。
【0043】
制御部11は、ザッピングチャンネルの放送データをサーバ200に要求する(S14)。そして、制御部11は、チャンネル受信部14が受信する放送データを各々のチャンネルに対応するバッファ17へ送信する(S15)。受信端末100は、同時に複数のチャンネルの放送データを受信し、バッファ17に保存するので、ユーザ操作により連続して再生チャンネルが切り替えられたときに、即座に切り替え先のチャンネルを再生開始できる。なお、バッファ17に保存しておくデータ量は、たとえば10秒程度再生できる量とし、バッファ17にはリングバッファ等が採用される。
【0044】
制御部11は、再生チャンネルの放送データを再生部15へ送信する(S16)。これにより、受信端末100において再生チャンネルの再生が開始される。なお、制御部11は、再生チャンネルが含まれるグループのデータ受信を、再生チャンネルが含まれないグループのデータ受信よりも先に開始し、再生チャンネルの再生開始を早く可能にしてもよい。
【0045】
制御部11は、各チャンネルの放送データを配信しているサーバ200を、放送データ受信時のパケットに記載されている情報(サーバ200のIPAddress等)から特定し(S17)、受信状態テーブル12Aを更新する。たとえば、チャンネルA1〜A5の放送データがすべてプライマリサーバ200(a)から配信されている場合、受信状態テーブル12Aのサーバ項目にPを書き込む。
【0046】
制御部11は、チャンネル受信部14(a)〜14(e)のすべてから、定期的にチャンネルの受信状態を示す情報を受信する(S19)。受信状態を示す情報とは、チャンネル受信部14が受信している放送データのパケットがロスしていないか否かを示す情報と、チャンネル受信部14の各チャンネルを配信しているサーバ200を特定する情報とを含む。定期的とは、たとえば1秒ごとなどである。
【0047】
制御部11は、S19の処理によって受信する情報から、当該チャンネルの放送データを配信しているサーバ200を判断し、配信元のサーバ200が変更されたか否かを判断する(S20)。サーバ200が変更されたか否かの判断は、受信状態テーブル12Aのサーバ項目に設定されている値とS19の処理において受信した配信元サーバ200の情報とが同一であるか否かによって実行される。なお、サーバ200がチャンネルを配信するサーバ200の切り替え指示を受信端末100へ送信し、受信端末100がその指示を受信し、配信元のサーバ200を切り替えてもよい。その場合、S20の処理を実行したのち、後述するS22の処理を実行する。制御部11は、配信元のサーバ200が変更されたと判断する場合(S20でYES)、チャンネルを正常に受信中か否かの情報を受信状態テーブル12Aの受信状態項目に書き込み更新する(S23)。そして、受信状態テーブル12Aのサーバ項目を、新たに配信を受けているサーバ200に更新する(S24)。なお、配信サーバ200が変更になる原因として、サーバ200が保守点検により停止した場合や、サーバ200が特定のチャンネルを配信できない状態になった場合等がある。
【0048】
制御部11は、配信元のサーバ200が変更されていないと判断する場合(S20でNO)、S19の処理によって取得される、放送データのパケットがロスしていないか否かの情報によって、チャンネルを受信端末100が正常に受信中であるか否かを判断する(S21)。制御部11は、チャンネルを正常に受信できていないと判断する場合(S21でNO)、制御部11は、当該チャンネルの配信元サーバ200を変更する(S22)。たとえば、受信端末100がチャンネルA2をプライマリサーバ200(a)から正常に受信できない場合、制御部11は、チャンネルA2の配信元サーバをセカンダリサーバ200(b)に切り替える。そして、S23及びS24の処理を実行する。制御部11によってチャンネルの放送データを正常に受信できていると判断される場合(S21でYES)、制御部11は、S24の処理を実行する。なお、S21でYESの場合、S24の処理において同一のサーバ200を受信状態テーブル12Aのサーバ項目に上書きしてもよいし、S24の処理を実行しなくてもよい。
【0049】
制御部11は、S19〜S24までの処理を、チャンネル受信部14(a)〜14(e)のすべてのチャンネル受信部14から送信される情報に基づいて実行する。なお、制御部11は、チャンネル受信部14が、プライマリサーバ200(a)またはセカンダリサーバ200(b)のいずれから放送データの配信を受けた場合もパケットのロスが発生すると判断した場合は、制御部11は、配信元サーバをいずれかのサーバ200に固定し、S22のサーバ切替処理が繰り返し行われることを防止する。
【0050】
図5は、チャンネルA2及びA5の配信元サーバがプライマリサーバ200(a)からセカンダリサーバ200(b)に変更されたときの受信状態テーブル12A(b)を示す。さらに、受信状態テーブル12A(b)は、受信端末100がチャンネルA4の放送データが正常に受信できず、チャンネルA4の受信状態がFALSEであることを示している。
【0051】
図6は、受信状態テーブル12A(b)の受信状態のマルチキャスト配信システム図を示す。受信端末100は、プライマリサーバ200(a)とセカンダリサーバ200(b)との両方から放送データを受信している。図1のマルチキャスト配信システムでは、グループと配信元のサーバとの組み合わせが、「グループ1:プライマリサーバ200(a)」、「グループ2:プライマリサーバ200(a)」の2種類である。これに対し、図6のマルチキャスト配信システムでは、グループと配信元のサーバとの組み合わせが、「グループ1:プライマリサーバ200(a)」、「グループ2:プライマリサーバ200(a)」、「グループ1:セカンダリサーバ200(b)」、「グループ2:セカンダリサーバ200(b)」の4つの通信が実行される。すなわち、受信端末100は、マルチキャストルータ300との間で4つの通信を実行する。各々のグループとサーバ200との組み合わせによって実行される通信がそれぞれ1Mbpsの帯域を使用すると仮定した場合、図1のマルチキャスト配信システムは2Mbps(1Mbps×2)の帯域を使用するのに対し、図6のマルチキャスト配信システムの場合は、4Mbps(1Mbps×4)の帯域を使用する。すなわち、マルチキャスト配信システムを運用中に配信元サーバ200の切替が発生すると、初期状態に比べネットワークの使用帯域が増加する。そして、使用帯域がマルチキャストルータ300が処理可能な許容範囲を超えた場合、受信端末100は正常に放送データを受信できなくなり、受信端末100において再生時の音切れが発生する。
【0052】
[使用帯域低減化処理の実施形態1]
受信端末100が使用するネットワークの帯域を低減する第1の実施形態を説明する。図7は、受信端末100の制御部11が、使用帯域を低減する第1の実施形態のフローチャートを示す。なお、受信端末100は、図4の処理と並行して図7の処理を実行する。
【0053】
制御部11は、ザッピングチャンネルのすべてのチャンネルを正常に受信しているか否かを判断する(S31)。制御部11は、ザッピングチャンネルのすべてのチャンネルを正常に受信していると判断した場合(S31でYES)、処理を終了する。制御部11は、ザッピングチャンネルのうち、正常に受信できていないチャンネルが存在すると判断した場合(S31でNO)、接続切替処理1または2を実行する(S32)。接続切り替え処理を実行することで、ネットワークの使用帯域を減少させることができる。なお、接続切替処理1及び接続切替処理2の詳細は、後述する。
【0054】
以上の実施形態1によると、受信端末100が、ザッピングチャンネルのうち、1つ以上のチャンネルの受信でパケットロスが発生していると判断するとき、ネットワークの使用帯域を減少させる処理を実行するので、受信端末100は、ザッピングチャンネルのいずれのチャンネルを再生したときも音切れなく再生できる。
【0055】
[接続切替処理の実施形態1]
図7のS32の処理である、接続切替処理の第1の実施形態を説明する。図8は、制御部11が実行する接続切替処理の第1の実施形態のフローチャートを示す。なお、接続切替処理の第1の実施形態を接続切替処理1という。本実施形態によると、受信端末100は、参加中のグループすべてからいったん離脱し、すべての配信元サーバ200を同一に指定して再度グループに参加する。ここで、離脱とは、IGMP(Intenet Group Management Protocol)v3またはMLD(Multicast Listener Discovery)v2のleaveメッセージを指す。マルチキャストルータ300は、受信端末100から離脱メッセージを受け取ることで、マルチキャストルータ300の先にグループのデータを受信する受信端末100が存在しないことを認識する。その結果、マルチキャストルータ300は、サーバ200からグループへ配信されるデータを受信端末100へ転送しなくなる。したがって、受信端末100はグループに属するチャンネルの放送データを受信しなくなる。
【0056】
制御部11は、受信端末100が参加中のすべてのグループから離脱する(S41)。すなわち、制御部11は、グループ1と、グループ2とから離脱する。なお、制御部11がグループから離脱した場合、受信端末100は放送データを受信できなくなるので、一時的に受信端末100における再生は停止する。
【0057】
制御部11は、配信元となるサーバ200の優先度を変更する(S42)。たとえば、図7のフローチャートのS31でパケットをロスしていると判断されたチャンネルの放送データを配信していたサーバ200がプライマリサーバ200(a)であった場合は、セカンダリサーバ200(b)を指定する。複数のチャンネルでパケットロスが発生している場合は、制御部11はいずれのサーバ200を指定してもよいが、好ましくは、パケットロスが発生しているチャンネルが少ないサーバ200を指定する。
【0058】
制御部11は、図4のフローチャートのS13以降の処理を実行する(S43)。すなわち、再度ザッピングチャンネルが属するグループへ参加し、接続を再開する。制御部11は、プライマリサーバ200(a)、またはセカンダリサーバ200(b)のいずれかをザッピングチャンネルの配信元サーバ200として指定するので、すべての受信チャンネルの配信元サーバは1つに統一され、グループとサーバ200との組み合わせの数は初期状態と同一になり、組み合わせの数が最少化される。
【0059】
以上の実施形態1によると、受信端末100は、グループとサーバ200との組み合わせの数が最少化されるので、ネットワークの使用帯域を最小限にすることができる。たとえば、図5の受信状態テーブル12A(b)の状態であった場合に、図8の接続切替処理1を実行すると、受信状態テーブル12A(b)のサーバ項目がPまたはSに統一される。したがって、グループとサーバとの組み合わせの数が図3の受信状態テーブル12A(a)の場合と同一となり、最少化される。さらに、受信端末100は、パケットロスが生じていたチャンネルが接続されていたサーバ200とは異なるサーバ200を指定して再接続するので、受信端末100はパケットロスなくザッピングチャンネルを受信できる可能性が高い。
【0060】
[接続切替処理の実施形態2]
図7のS32の処理である、接続切替処理の第2の実施形態を説明する。図9は、制御部11が実行する接続切替処理の第2の実施形態のフローチャートを示す。本実施形態によると、再生中のチャンネルが属さないグループのみを対象として接続切替処理2を実行するので、再生を停止することなくネットワークの使用帯域を低減することができる。なお、接続切替処理の第2の実施形態を接続切替処理2という。
【0061】
制御部11は、再生中でないチャンネルが属するグループを取得する(S51)。たとえば、図5の受信状態テーブル12A(b)の受信状態の場合、グループ1に属するチャンネルであるA3が再生中であるので、グループ2が特定される。なお、グループが3つ以上あるマルチキャスト配信システムの場合は、S51の処理によってグループが複数特定される。制御部11は、S52以降の処理を、S51の処理によって特定されたグループすべてに対して実行する。
【0062】
制御部11は、S51の処理によって特定されるグループ内のチャンネルの放送データを配信しているサーバ200がすべて同一であるか否かを判断する(S52)。たとえば図5の受信状態テーブル12A(b)の場合、グループ2に属するチャンネル(A4とA5)の配信サーバ200はPとSとであるので、同一でないと判断される。
【0063】
制御部11は、グループ内のチャンネルのサーバ200が同一でないと判断した場合(S52でNO)、グループから離脱する(S53)。
【0064】
制御部11は、グループ内のチャンネルの配信元サーバ200をすべて同一に設定する(S54)。制御部11はプライマリサーバ200(a)に統一してもよいし、セカンダリサーバ200(b)に統一してもよい。たとえば図5の受信状態テーブル12A(b)の場合、チャンネルA4とA5とのサーバ項目は、PまたはSのいずれかに統一される。そして制御部11は、再度同一グループに参加する(S55)。
【0065】
制御部11は、S51の処理によって取得されるグループのすべてに対し、S52以降の処理を実行したか否かを判断し(S56)、実行したと判断した場合(S56でYES)、図4のフローチャートのS14以降の処理を実行する(S57)。制御部11は、すべてのグループに対してS52以降の処理を実行していないと判断した場合(S56でNO)、S51の処理によって取得された次のグループを取得し(S57)、S52以降の処理を繰り返す。なお、制御部11はS54で設定するサーバ200を、S51で取得されるグループに対し、すべてプライマリサーバ200(a)またはセカンダリサーバ200(b)のいずれかで統一する。サーバ200とグループとの組み合わせ数を少なくするためである。たとえば、図5の受信状態テーブル12A(b)において、グループG2に含まれるチャンネルのサーバ200がPに統一された場合、グループとサーバ200との組み合わせは、「グループ1:プライマリサーバ200(a)」、「グループ2:プライマリサーバ200(a)」、「グループ1:セカンダリサーバ200(b)」の3つとなる。すなわち、グループとサーバ200の組み合わせの数が、4つから3つに減少する。
【0066】
制御部11は、グループ内のチャンネルの放送データを配信しているサーバ200が同一であると判断した場合(S52でYES)、S56以降の処理を実行する。
【0067】
以上の実施形態2によると、制御部11は再生中のチャンネルが属するグループに対して離脱処理を行わないので、再生を停止することなく、使用帯域を減少させることができる。なお、本処理を実行後であっても、使用帯域が許容範囲内にならない場合は、再生チャンネルが属するグループに対してS52以降の処理を実行してもよい。
【0068】
[使用帯域低減化処理の実施形態2]
受信端末100が使用するネットワークの帯域を低減する第2の実施形態を説明する。図10は、制御部11が、使用帯域を低減する第2の実施形態のフローチャートを示す。図7と同一の処理には同一符号を付し、説明を省略する。
【0069】
制御部11は、ザッピングチャンネルを正常に受信していないと判断した場合(S31でNO)、S31の処理によって正常に受信できていないと判断されたチャンネルを受信端末100で再生中であるか否かを判断する(S61)。具体的には、正常にパケットを受信できていないチャンネルのステータスが受信状態テーブル12Aにおいて「再生中」に設定されているか否かによって判断される。制御部11は、チャンネルを受信端末100で再生中であると判断した場合(S61でYES)、接続切替処理1を実行する(S32)。制御部11は、チャンネルを受信端末100で再生中でないと判断する場合(S61でNO)、処理を終了する。
【0070】
以上の実施形態2によると、制御部11は再生中のチャンネルの放送データを正常に受信できない場合のみ接続切替処理1を実行するので、再生チャンネルの受信状態を自動的に正常な状態に復帰させることができる。制御部11は再生チャンネル以外のいずれかのチャンネルを正常に受信できていない場合は接続切替処理1を実行しない。これにより、再生チャンネル以外のチャンネルの受信エラーによって接続処理切替処理が実行されることがなく、再生チャンネルの再生が停止されない。
【0071】
[使用帯域低減化処理の実施形態3]
受信端末100が使用するネットワークの帯域を低減する第3の実施形態を説明する。図11は、制御部11が、使用帯域を低減する第3の実施形態のフローチャートを示す。本実施形態によると、制御部11は、変更先のチャンネルの受信状態が正常であるか否かを判断し、正常でないと判断される場合は、接続切替処理を実行する。図7と同一の処理には同一符号を付し、説明を省略する。
【0072】
制御部11は、ユーザ操作によって再生チャンネルを切り替えられたか否かを判断し(S71)、切り替えられたと判断した場合(S71でYES)、制御部11は切り替え先のチャンネルの受信状態がFalseであるか否かを受信状態テーブル12Aを参照して判断する(S72)。
【0073】
制御部11は、受信状態テーブル12Aの切り替え先のチャンネルの受信状態がFalseになっていると判断した場合(S72でYES)、接続切替処理1または2を実行する(S32)。制御部11は、切り替え先のチャンネルの受信状態テーブル12Aの受信状態がFalseになっていないと判断した場合(S72でNO)、処理を終了する。
【0074】
以上の実施形態3によると、受信端末100は切り替え先のチャンネルの受信状態を、チャンネル切り替えを実行する前に確認し、正常に受信できていない場合は接続切替処理1または2を実行したのち、切り替え先のチャンネルを再生する。これにより受信端末100は新たに指定されたチャンネルの再生を確実に開始できる。また、受信端末100は、切り替え先のチャンネル以外のチャンネルのいずれかを正常に受信できていない場合、接続切替処理を実行しない。なぜなら、接続切替処理を実行すると、受信端末100はグループからの離脱処理と参加処理とを実行することになり、チャンネル切り替えに時間がかかるからである。
【0075】
[使用帯域低減化処理の実施形態4]
受信端末100が使用するネットワークの帯域を低減する第4の実施形態を説明する。図12は、制御部11が、使用帯域を低減する第4の実施形態のフローチャートを示す。本実施形態によると、制御部11は、グループとサーバ200との組み合わせの数が規定値以上の場合に、接続切替処理を実行する。図7と同一の処理には同一符号を付し、説明を省略する。
【0076】
制御部11は、受信端末100が受信中のグループとサーバ200との組み合わせの数を取得する(S81)。たとえば、図5の受信状態の場合は、組み合わせの数が4である。
【0077】
制御部11は、S81の処理によって取得されるグループとサーバ200との組み合わせの数が、規定数以上であるか否かを判断する(S82)。規定数とは、たとえば3などである。
【0078】
制御部11は、S81の処理によって取得される組み合わせの数が、規定数以上であると判断する場合(S82でYES)、接続切替処理1または2を実行する(S32)。制御部11は、S81の処理によって取得される組み合わせの数が、規定数未満であると判断する場合(S82でNO)、処理を終了する。
【0079】
以上の実施形態4によると、受信端末100は受信するグループとサーバ200との組み合わせ数が規定値以上になったときに、組み合わせ数を減少させる処理を実行するので、グループとサーバ200との組み合わせの数が一定数以下に抑えられ、マルチキャストルータ300が処理不可能な通信データ量が発生することを防止できる
【0080】
[使用帯域低減化処理の実施形態5]
受信端末100が使用するネットワークの帯域を低減する第5の実施形態を説明する。図13は、制御部11が、使用帯域を低減する第5の実施形態のフローチャートを示す。本実施形態によると、制御部11は、現在受信端末100が受信中の総データ量が、規定値以上である場合に、接続切替処理を実行する。図7と同一の処理には同一符号を付し、説明を省略する。
【0081】
制御部11は、ザッピングチャンネルの配信サーバ200が、すべて同一か否かを判断する(S91)。たとえば、図3の受信状態テーブル12A(a)の場合は同一であると判断され、図5の受信状態テーブル12A(b)の場合は同一でないと判断される。ザッピングチャンネルの配信サーバ200が、すべて同一であると判断された場合(S91でYES)、制御部11は、処理を終了する。ザッピングチャンネルの配信サーバ200が、すべて同一である場合は、グループとサーバ200との組み合わせの数が最少であるため、制御部11はS92以降の処理を実行する必要がない。
【0082】
ザッピングチャンネルの配信サーバ200が、すべて同一でないと判断された場合(S91でNO)、制御部11は、受信中の全チャンネルの単位時間当たりの受信データ量を取得する(S92)。受信中の受信データ量は、通信部13または各チャンネル受信部14が定期的に制御部11に通知する。
【0083】
制御部11は、受信中のデータ量がマルチキャストルータ300の許容範囲であるか否かを判断する(S93)。マルチキャストルータ300の許容範囲は、受信端末100がマルチキャストルータ300に制御部11が問い合わせて取得し、設定してもよいし、受信端末100に固定値を設定しておいてもよい。
【0084】
制御部11は、受信中のデータ量がマルチキャストルータ300の許容範囲でないと判断した場合(S93でNO)、接続切替処理1または2を実行する(S32)。制御部11は、受信中のデータ量がマルチキャストルータ300の許容範囲であると判断した場合(S93でYES)、処理を終了する。
【0085】
以上の実施形態5によると、受信端末100はマルチキャストルータ300が許容する以上の帯域を使用していると判断する場合、接続切替処理1または2を実行し、ネットワークの使用帯域を減少させる。このことによりマルチキャストルータ300が処理できない量のデータが、受信端末100とマルチキャストルータの間で通信されることを防止できる。
【0086】
以上、本発明の好ましい実施形態について説明したが、本発明はこれらの実施形態には限定されない。
また、サーバ200は、2つ以上であってもよい。各サーバ200が配信可能なチャンネルが異なっていてもよい。サーバ200から配信される放送データは、音声データ以外に、映像データや静止画データであってもよい。また、受信端末100は、同時に複数のチャンネルを再生してもよい。
【産業上の利用可能性】
【0087】
本発明は、セットトップボックスや、AVレシーバや、音声映像出力装置等の機器に好適に採用され得る。
【符号の説明】
【0088】
100 受信端末
200(a) プライマリサーバ
200(b) セカンダリサーバ
11 制御部
12 メモリ
13 通信部
14(a)〜14(e) チャンネル受信部
15 再生部
16 操作部
17(a)〜17(e) バッファ
【特許請求の範囲】
【請求項1】
複数のチャンネルの放送データをマルチキャストで配信可能な第1のサーバと、前記複数のチャンネルの前記放送データを前記マルチキャストで配信可能な第2のサーバとから配信される前記放送データを受信可能な受信端末であって、
再生チャンネルと、前記再生チャンネル以外の1または複数のチャンネルとを含むザッピングチャンネルが属する1または複数のマルチキャストグループに参加するマルチキャストグループ参加手段と、
前記ザッピングチャンネルの前記放送データを同時に受信するザッピングチャンネル受信手段と、
前記ザッピングチャンネルの前記放送データが2つ以上のサーバから配信されている場合、参加中の前記マルチキャストグループから離脱する離脱手段と、
前記ザッピングチャンネルの前記放送データを配信する前記サーバを前記第1のサーバ及び前記第2のサーバのいずれかのサーバに統一し、再度前記マルチキャストグループに参加する再接続手段とを備える、受信端末。
【請求項2】
前記ザッピングチャンネルの前記放送データを正常に受信中か否かを判断する通信判断手段をさらに備え、
前記ザッピングチャンネルの前記放送データを正常に受信中でないと判断されたとき、前記離脱手段が、参加中の前記マルチキャストグループから離脱する、請求項1に記載の受信端末。
【請求項3】
前記通信判断手段によって前記放送データを正常に受信中でないと判断されたとき、前記放送データを正常に受信中でないチャンネルを特定するエラーチャンネル特定手段と、
前記エラーチャンネル特定手段によって特定された前記チャンネルが、前記再生チャンネルであるか否かを判断する再生チャンネルエラー判断手段とをさらに備え、
前記エラーチャンネル特定手段によって特定された前記チャンネルが前記再生チャンネルであると判断されたとき、前記離脱手段が参加中の前記マルチキャストグループから離脱し、
前記エラーチャンネル特定手段によって特定された前記チャンネルが前記再生チャンネルでないと判断されたとき、前記離脱手段が参加中の前記マルチキャストグループから離脱しない、請求項2に記載の受信端末。
【請求項4】
前記通信判断手段によって前記放送データを正常に受信中でないと判断されたとき、前記放送データを正常に受信中でないチャンネルを特定するエラーチャンネル特定手段と、
ユーザ操作によって前記再生チャンネルを切り替える、再生チャンネル切り替え手段とをさらに備え、
前記エラーチャンネル特定手段によって特定された前記チャンネルが、前記再生チャンネル切り替え手段によって指定された前記チャンネルであると判断されたとき、前記離脱手段が参加中の前記マルチキャストグループから離脱する、請求項2に記載の受信端末。
【請求項5】
参加中の前記マルチキャストグループと、前記ザッピングチャンネルの前記放送データを配信している前記サーバとの組み合わせの数を取得する、組み合わせ数取得手段と、
前記組み合わせ数取得手段によって取得される前記組み合わせの数が、所定の組み合わせ数の範囲内であるか否かを判断する組み合わせ数判断手段と、
前記組み合わせの数が前記所定の数の組み合わせ数の範囲内でないと判断された場合、前記離脱手段が参加中の前記マルチキャストグループから離脱する、請求項1に記載の受信端末。
【請求項6】
前記再生チャンネルが所属しない前記マルチキャストグループを特定する、マルチキャストグループ特定手段と、
前記マルチキャストグループ特定手段によって特定された前記マルチキャストグループ内の前記チャンネルの前記放送データを配信する前記サーバが、前記第1のサーバ及び前記第2のサーバのうちの同一のサーバであるか否かを判断する、配信サーバ同一判断手段とを備え、
前記マルチキャストグループ特定手段によって特定された前記マルチキャストグループ内の前記サーバが同一でないと判断された場合、前記離脱手段が、前記マルチキャストグループ特定手段によって特定される前記マルチキャストグループから離脱する、請求項1〜5のいずれかに記載の受信端末。
【請求項7】
請求項1〜6のいずれかに記載の前記受信端末の各手段をコンピュータに実行させる、受信プログラム。
【請求項1】
複数のチャンネルの放送データをマルチキャストで配信可能な第1のサーバと、前記複数のチャンネルの前記放送データを前記マルチキャストで配信可能な第2のサーバとから配信される前記放送データを受信可能な受信端末であって、
再生チャンネルと、前記再生チャンネル以外の1または複数のチャンネルとを含むザッピングチャンネルが属する1または複数のマルチキャストグループに参加するマルチキャストグループ参加手段と、
前記ザッピングチャンネルの前記放送データを同時に受信するザッピングチャンネル受信手段と、
前記ザッピングチャンネルの前記放送データが2つ以上のサーバから配信されている場合、参加中の前記マルチキャストグループから離脱する離脱手段と、
前記ザッピングチャンネルの前記放送データを配信する前記サーバを前記第1のサーバ及び前記第2のサーバのいずれかのサーバに統一し、再度前記マルチキャストグループに参加する再接続手段とを備える、受信端末。
【請求項2】
前記ザッピングチャンネルの前記放送データを正常に受信中か否かを判断する通信判断手段をさらに備え、
前記ザッピングチャンネルの前記放送データを正常に受信中でないと判断されたとき、前記離脱手段が、参加中の前記マルチキャストグループから離脱する、請求項1に記載の受信端末。
【請求項3】
前記通信判断手段によって前記放送データを正常に受信中でないと判断されたとき、前記放送データを正常に受信中でないチャンネルを特定するエラーチャンネル特定手段と、
前記エラーチャンネル特定手段によって特定された前記チャンネルが、前記再生チャンネルであるか否かを判断する再生チャンネルエラー判断手段とをさらに備え、
前記エラーチャンネル特定手段によって特定された前記チャンネルが前記再生チャンネルであると判断されたとき、前記離脱手段が参加中の前記マルチキャストグループから離脱し、
前記エラーチャンネル特定手段によって特定された前記チャンネルが前記再生チャンネルでないと判断されたとき、前記離脱手段が参加中の前記マルチキャストグループから離脱しない、請求項2に記載の受信端末。
【請求項4】
前記通信判断手段によって前記放送データを正常に受信中でないと判断されたとき、前記放送データを正常に受信中でないチャンネルを特定するエラーチャンネル特定手段と、
ユーザ操作によって前記再生チャンネルを切り替える、再生チャンネル切り替え手段とをさらに備え、
前記エラーチャンネル特定手段によって特定された前記チャンネルが、前記再生チャンネル切り替え手段によって指定された前記チャンネルであると判断されたとき、前記離脱手段が参加中の前記マルチキャストグループから離脱する、請求項2に記載の受信端末。
【請求項5】
参加中の前記マルチキャストグループと、前記ザッピングチャンネルの前記放送データを配信している前記サーバとの組み合わせの数を取得する、組み合わせ数取得手段と、
前記組み合わせ数取得手段によって取得される前記組み合わせの数が、所定の組み合わせ数の範囲内であるか否かを判断する組み合わせ数判断手段と、
前記組み合わせの数が前記所定の数の組み合わせ数の範囲内でないと判断された場合、前記離脱手段が参加中の前記マルチキャストグループから離脱する、請求項1に記載の受信端末。
【請求項6】
前記再生チャンネルが所属しない前記マルチキャストグループを特定する、マルチキャストグループ特定手段と、
前記マルチキャストグループ特定手段によって特定された前記マルチキャストグループ内の前記チャンネルの前記放送データを配信する前記サーバが、前記第1のサーバ及び前記第2のサーバのうちの同一のサーバであるか否かを判断する、配信サーバ同一判断手段とを備え、
前記マルチキャストグループ特定手段によって特定された前記マルチキャストグループ内の前記サーバが同一でないと判断された場合、前記離脱手段が、前記マルチキャストグループ特定手段によって特定される前記マルチキャストグループから離脱する、請求項1〜5のいずれかに記載の受信端末。
【請求項7】
請求項1〜6のいずれかに記載の前記受信端末の各手段をコンピュータに実行させる、受信プログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【公開番号】特開2013−38619(P2013−38619A)
【公開日】平成25年2月21日(2013.2.21)
【国際特許分類】
【出願番号】特願2011−173525(P2011−173525)
【出願日】平成23年8月9日(2011.8.9)
【出願人】(710014351)オンキヨー株式会社 (226)
【Fターム(参考)】
【公開日】平成25年2月21日(2013.2.21)
【国際特許分類】
【出願日】平成23年8月9日(2011.8.9)
【出願人】(710014351)オンキヨー株式会社 (226)
【Fターム(参考)】
[ Back to top ]