(57)【要約】【課題】ストリーミング配信において、パケット損失が発生した場合であっても、良好にマルチメディアコンテンツデータを配信することが可能なストリーミング配信装置、端末装置、配信システム、及び配信方法を提供する。【解決手段】マルチメディアコンテンツデータをストリーミング配信する配信装置１において、再送バッファ管理部３１は、再送要求メッセージに応じて再送バッファ３２からパケットを取り出し、パケットを再送する。再生ビットレート決定部４１は、パケット送受信部１０から指示されたビットレート値と、再送が決定したパケットのサイズと、端末バッファ量通知メッセージと、ＲＴＴ値とに基づいて、パケット損失が発生したときに再送されるパケットの再生時刻が考慮された端末バッファ量が保持されるように、再生ビットレートを決定する。【選択図】  図２
2004186793.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークに接続された端末装置にコンテンツデータをストリーミング配信するストリーミング配信装置であって、
パケットの送受信を行うパケット送受信手段と、
前記端末装置へと送信された前記コンテンツデータのパケットを再送バッファにバッファリングし、前記端末装置からの再送要求メッセージに応じて前記再送バッファからパケットを取り出す再送バッファ管理手段と、
ストリーミング配信される前記コンテンツデータに対する再生ビットレートを決定する再生ビットレート決定手段と、
決定された前記再生ビットレートに基づいてビットレートを制御する再生ビットレート制御手段とを備え、
前記再生ビットレート決定手段は、前記パケット送受信手段から指示されたビットレート値と、再送が決定したパケットのサイズと、前記端末装置からの端末バッファ量通知メッセージと、測定されたＲＴＴ値とに基づいて、パケット損失が発生したときに再送されるパケットの再生時刻が考慮された端末バッファ量が保持されるように、前記再生ビットレートを決定することを特徴とするストリーミング配信装置。
【請求項２】
前記端末装置からのネットワーク状況通知メッセージを評価するネットワーク状況通知メッセージ評価手段と、
前記ネットワーク状況通知メッセージの評価結果に基づいて送信ビットレートを決定する送信ビットレート決定手段とを備えることを特徴とする請求項１記載のストリーミング配信装置。
【請求項３】
前記コンテンツデータが格納されているストレージと、
前記ストレージから前記コンテンツデータを取り出すストレージ管理手段とを備えることを特徴とする請求項１または２記載のストリーミング配信装置。
【請求項４】
前記端末装置との間のＲＴＴを測定するためのＲＴＴ測定メッセージを生成し、前記端末装置からの返信メッセージによって前記ＲＴＴを測定するＲＴＴ測定手段を備えることを特徴とする請求項１〜３のいずれか一項記載のストリーミング配信装置。
【請求項５】
前記端末装置との間の通信を維持するための制御メッセージを生成する制御メッセージ生成手段を備えることを特徴とする請求項１〜４のいずれか一項記載のストリーミング配信装置。
【請求項６】
前記再送バッファ管理手段が前記再送バッファから取り出したパケットに対して重要度を判定し、前記重要度が高いパケットのみを前記パケット送受信手段へと渡す再送パケット重要度判定手段を備えることを特徴とする請求項１〜５のいずれか一項記載のストリーミング配信装置。
【請求項７】
前記再送バッファ管理手段が前記再送バッファから取り出したパケットに対して、再送した際に再生時刻に間に合うかどうかを判定する再送パケット再生時刻判定手段を備えることを特徴とする請求項１〜６のいずれか一項記載のストリーミング配信装置。
【請求項８】
ネットワークに接続された配信装置からストリーミング配信されたコンテンツデータを受信するストリーミング端末装置であって、
パケットの送受信を行うパケット送受信手段と、
前記配信装置からの前記コンテンツデータのパケットを、シーケンス番号にしたがって、所定のパケット順序で受信バッファにバッファリングする受信バッファ管理手段と、
前記受信バッファにバッファリングされている先頭パケットと最後尾パケットとの再生時刻差を定期的に通知する端末バッファ量通知メッセージを生成する端末バッファ量通知メッセージ生成手段と、
パケット損失が発生したときに、そのパケットのシーケンス番号を通知する再送要求メッセージを生成する再送要求メッセージ生成手段と
を備えることを特徴とするストリーミング端末装置。
【請求項９】
ネットワーク状況通知メッセージを定期的に生成するネットワーク状況通知メッセージ生成手段を備えることを特徴とする請求項８記載のストリーミング端末装置。
【請求項１０】
前記受信バッファからパケットを取り出してデコードするコンテンツデコード手段と、
デコートされたコンテンツを表示するコンテンツ表示手段とを備えることを特徴とする請求項８または９記載のストリーミング端末装置。
【請求項１１】
前記配信装置との間のＲＴＴを測定するためのＲＴＴ測定メッセージに対する返信メッセージを生成するＲＴＴ測定返信メッセージ生成手段を備えることを特徴とする請求項８〜１０のいずれか一項記載のストリーミング端末装置。
【請求項１２】
前記再送要求メッセージ生成手段は、パケット損失が発生したときに、そのパケットのシーケンス番号と、前記受信バッファにバッファリングされている先頭パケットのシーケンス番号とを通知する前記再送要求メッセージを生成することを特徴とする請求項８〜１１のいずれか一項記載のストリーミング端末装置。
【請求項１３】
請求項１〜７のいずれか一項記載のストリーミング配信装置と、
請求項８〜１２のいずれか一項記載のストリーミング端末装置と
を備えることを特徴とするストリーミング配信システム。
【請求項１４】
ネットワークに接続された端末装置に配信装置からコンテンツデータをストリーミング配信するストリーミング配信方法であって、
前記コンテンツデータのパケットを前記端末装置へと送信するパケット送信ステップと、
送信された前記コンテンツデータのパケットを再送バッファにバッファリングする再送バッファリングステップと、
前記端末装置からの再送要求メッセージに応じて前記再送バッファからパケットを取り出すパケット取り出しステップと、
ストリーミング配信される前記コンテンツデータに対する再生ビットレートを決定する再生ビットレート決定ステップと、
決定された前記再生ビットレートに基づいてビットレートを制御する再生ビットレート制御ステップとを備え、
前記再生ビットレート決定ステップにおいて、パケット送受信手段から指示されたビットレート値と、再送が決定したパケットのサイズと、前記端末装置からの端末バッファ量通知メッセージと、測定されたＲＴＴ値とに基づいて、パケット損失が発生したときに再送されるパケットの再生時刻が考慮された端末バッファ量が保持されるように、前記再生ビットレートを決定することを特徴とするストリーミング配信方法。
【請求項１５】
前記端末装置が、ネットワーク状況通知メッセージを定期的に生成するネットワーク状況通知メッセージ生成ステップと、
前記端末装置からの前記ネットワーク状況通知メッセージを評価するネットワーク状況通知メッセージ評価ステップと、
前記ネットワーク状況通知メッセージの評価結果に基づいて送信ビットレートを決定する送信ビットレート決定ステップとを備えることを特徴とする請求項１４記載のストリーミング配信方法。
【請求項１６】
前記端末装置との間のＲＴＴを測定するためのＲＴＴ測定メッセージを生成するＲＴＴ測定メッセージ生成ステップと、
前記端末装置が、前記配信装置からの前記ＲＴＴ測定メッセージに対する返信メッセージを生成するＲＴＴ測定返信メッセージ生成ステップと、
前記端末装置からの前記返信メッセージによって前記ＲＴＴを測定するＲＴＴ測定ステップとを備えることを特徴とする請求項１４または１５記載のストリーミング配信方法。
【請求項１７】
前記再送バッファから取り出したパケットに対して重要度を判定し、前記重要度が高いパケットのみを前記端末装置へと送信する再送パケット重要度判定ステップを備えることを特徴とする請求項１４〜１６のいずれか一項記載のストリーンミング配信方法。
【請求項１８】
前記再送バッファから取り出したパケットに対して、再送した際に再生時刻に間に合うかどうかを判定する再送パケット再生時刻判定ステップを備えることを特徴とする請求項１４〜１７のいずれか一項記載のストリーミング配信方法。
【請求項１９】
前記端末装置が、前記配信装置からの前記コンテンツデータのパケットを、シーケンス番号にしたがって、所定のパケット順序で受信バッファにバッファリングする受信バッファリングステップと、
前記受信バッファにバッファリングされている先頭パケットと最後尾パケットとの再生時刻差を定期的に通知する端末バッファ量通知メッセージを生成する端末バッファ量通知メッセージ生成ステップと、
パケット損失が発生したときに、そのパケットのシーケンス番号を通知する再送要求メッセージを生成する再送要求メッセージ生成ステップと
を備えることを特徴とする請求項１４〜１８のいずれか一項記載のストリーミング配信方法。
【請求項２０】
前記再送要求メッセージ生成ステップにおいて、パケット損失が発生したときに、そのパケットのシーケンス番号と、前記受信バッファにバッファリングされている先頭パケットのシーケンス番号とを通知する前記再送要求メッセージを生成することを特徴とする請求項１９記載のストリーミング配信方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ネットワークに接続された端末装置に対し、配信装置からコンテンツデータをストリーミング配信するストリーミング配信装置、ストリーミング端末装置、ストリーミング配信システム、及びストリーミング配信方法に関するものである。
【０００２】
【従来の技術】
近年、複数の利用者が通信を共有するインターネットなどの広域ネットワーク（ＷＡＮ：Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）に接続されたクライアント端末に、ストリーミング配信装置から動画や音声などのマルチメディアコンテンツデータを配信して、端末において、それらのマルチメディアコンテンツデータの受信と再生を同時に行うストリーミング配信システムが普及してきている。
【０００３】
このようなストリーミング配信システムにおいては、配信装置（サーバ）からのコンテンツデータを受信して再生する端末装置（クライアント）におけるリアルタイム性が重要である。このため、コンテンツデータのストリーミング配信では、配信装置からのデータが端末装置に確実に届くのみでなく、リアルタイムでの再生が可能なように、データが時刻通りに端末装置に到着することが必要とされる（例えば、特許文献１参照）。
【０００４】
【特許文献１】
特開２００２−８４３３９号公報
【０００５】
【発明が解決しようとする課題】
ストリーミング配信システムでは、配信装置から端末装置へのコンテンツデータの配信においてパケット損失が発生した場合、パケットの再送が行われる場合がある。パケットの再送処理においては、まず、端末装置においてパケットのシーケンス番号のとびなどから、パケット損失が検出される。パケット損失を検出した端末装置は、配信装置に対してパケットの再送要求を行い、それに応じて配信装置がパケットを再送する。そして、再送されたパケットが端末装置に到着することによって、パケットの再送が完了する。
【０００６】
このようなパケットの再送では、通常のストリーミングのパケットに比べて、再送されたパケットが再生時刻までに端末装置に到着する可能性は低くなってしまう。その結果、再生に必要なコンテンツデータのパケットを配信する際に、データの遅延を生じ、端末装置において、映像や音声の再生の乱れ、中断等が発生するという問題があった。
【０００７】
本発明は、以上の問題点を解決するためになされたものであり、ストリーミング配信において、パケット損失が発生した場合であっても、良好にマルチメディアコンテンツデータを配信することが可能なストリーミング配信装置、ストリーミング端末装置、ストリーミング配信システム、及びストリーミング配信方法を提供することを目的とする。
【０００８】
【課題を解決するための手段】
このような目的を達成するために、本発明によるストリーミング配信装置は、ネットワークに接続された端末装置にコンテンツデータをストリーミング配信するストリーミング配信装置であって、（１）パケットの送受信を行うパケット送受信手段と、（２）端末装置へと送信されたコンテンツデータのパケットを再送バッファにバッファリングし、端末装置からの再送要求メッセージに応じて再送バッファからパケットを取り出す再送バッファ管理手段と、（３）ストリーミング配信されるコンテンツデータに対する再生ビットレートを決定する再生ビットレート決定手段と、（４）決定された再生ビットレートに基づいてビットレートを制御する再生ビットレート制御手段とを備え、（５）再生ビットレート決定手段は、パケット送受信手段から指示されたビットレート値と、再送が決定したパケットのサイズと、端末装置からの端末バッファ量通知メッセージと、測定されたＲＴＴ値とに基づいて、パケット損失が発生したときに再送されるパケットの再生時刻が考慮された端末バッファ量が保持されるように、再生ビットレートを決定することを特徴とする。
【０００９】
また、本発明によるストリーミング端末装置は、ネットワークに接続された配信装置からストリーミング配信されたコンテンツデータを受信するストリーミング端末装置であって、（１）パケットの送受信を行うパケット送受信手段と、（２）配信装置からのコンテンツデータのパケットを、シーケンス番号にしたがって、所定のパケット順序で受信バッファにバッファリングする受信バッファ管理手段と、（３）受信バッファにバッファリングされている先頭パケットと最後尾パケットとの再生時刻差を定期的に通知する端末バッファ量通知メッセージを生成する端末バッファ量通知メッセージ生成手段と、（４）パケット損失が発生したときに、そのパケットのシーケンス番号を通知する再送要求メッセージを生成する再送要求メッセージ生成手段とを備えることを特徴とする。
【００１０】
また、本発明によるストリーミング配信システムは、上記したストリーミング配信装置と、上記したストリーミング端末装置とを備えることを特徴とする。
【００１１】
上記したストリーミング配信装置、端末装置、及び配信システムにおいては、端末装置は、配信装置に対して端末バッファ量通知メッセージを送信するとともに、パケット損失時に再送要求メッセージを送信する。そして、配信装置は、端末バッファ量通知メッセージ等の内容に基づき、パケット損失が発生した場合に再送されるパケットの再生時刻が考慮された所定の端末バッファ量、例えば再送したパケットが常に再生時刻に間に合う程度の端末バッファ量、が受信バッファで保持されるように、コンテンツデータの再生ビットレートを決定する。
【００１２】
これにより、ストリーミング配信において、端末装置の受信バッファにバッファリングされている端末バッファ量を、パケット損失が発生する可能性が考慮された好適なバッファ量に保持することができる。したがって、パケット損失が発生した場合であっても、良好にマルチメディアコンテンツデータを配信することが可能なストリーミング配信装置、端末装置、及びそれらを備えるストリーミング配信システムが実現される。
【００１３】
また、本発明によるストリーミング配信方法は、ネットワークに接続された端末装置に配信装置からコンテンツデータをストリーミング配信するストリーミング配信方法であって、（１）コンテンツデータのパケットを端末装置へと送信するパケット送信ステップと、（２）送信されたコンテンツデータのパケットを再送バッファにバッファリングする再送バッファリングステップと、（３）端末装置からの再送要求メッセージに応じて再送バッファからパケットを取り出すパケット取り出しステップと、（４）ストリーミング配信されるコンテンツデータに対する再生ビットレートを決定する再生ビットレート決定ステップと、（５）決定された再生ビットレートに基づいてビットレートを制御する再生ビットレート制御ステップとを備え、（６）再生ビットレート決定ステップにおいて、パケット送受信手段から指示されたビットレート値と、再送が決定したパケットのサイズと、端末装置からの端末バッファ量通知メッセージと、測定されたＲＴＴ値とに基づいて、パケット損失が発生したときに再送されるパケットの再生時刻が考慮された端末バッファ量が保持されるように、再生ビットレートを決定することを特徴とする。
【００１４】
これにより、上記した配信装置、端末装置、及び配信システムと同様に、ストリーミング配信において、端末装置の受信バッファにバッファリングされている端末バッファ量を、パケット損失が発生する可能性が考慮された好適なバッファ量に保持することができる。したがって、パケット損失が発生した場合であっても、良好にマルチメディアコンテンツデータを配信することが可能なストリーミング配信方法が実現される。
【００１５】
このような配信方法では、端末装置が、配信装置からのコンテンツデータのパケットを、シーケンス番号にしたがって、所定のパケット順序で受信バッファにバッファリングする受信バッファリングステップと、受信バッファにバッファリングされている先頭パケットと最後尾パケットとの再生時刻差を定期的に通知する端末バッファ量通知メッセージを生成する端末バッファ量通知メッセージ生成ステップと、パケット損失が発生したときに、そのパケットのシーケンス番号を通知する再送要求メッセージを生成する再送要求メッセージ生成ステップとを備えることが好ましい。
【００１６】
また、配信装置は、端末装置からのネットワーク状況通知メッセージを評価するネットワーク状況通知メッセージ評価手段と、ネットワーク状況通知メッセージの評価結果に基づいて送信ビットレートを決定する送信ビットレート決定手段とを備えることを特徴とする。
【００１７】
同様に、端末装置は、ネットワーク状況通知メッセージを定期的に生成するネットワーク状況通知メッセージ生成手段を備えることを特徴とする。
【００１８】
同様に、配信方法は、端末装置が、ネットワーク状況通知メッセージを定期的に生成するネットワーク状況通知メッセージ生成ステップと、端末装置からのネットワーク状況通知メッセージを評価するネットワーク状況通知メッセージ評価ステップと、ネットワーク状況通知メッセージの評価結果に基づいて送信ビットレートを決定する送信ビットレート決定ステップとを備えることを特徴とする。
【００１９】
これにより、コンテンツデータのストリーミング配信を、ネットワーク状況に応じて好適に実行することができる。
【００２０】
また、配信装置は、コンテンツデータが格納されているストレージと、ストレージからコンテンツデータを取り出すストレージ管理手段とを備えることが好ましい。
【００２１】
また、端末装置は、受信バッファからパケットを取り出してデコードするコンテンツデコード手段と、デコートされたコンテンツを表示するコンテンツ表示手段とを備えることが好ましい。
【００２２】
また、配信装置は、端末装置との間のＲＴＴを測定するためのＲＴＴ測定メッセージを生成し、端末装置からの返信メッセージによってＲＴＴを測定するＲＴＴ測定手段を備えることを特徴とする。同様に、端末装置は、配信装置との間のＲＴＴを測定するためのＲＴＴ測定メッセージに対する返信メッセージを生成するＲＴＴ測定返信メッセージ生成手段を備えることを特徴とする。
【００２３】
同様に、配信方法は、端末装置との間のＲＴＴを測定するためのＲＴＴ測定メッセージを生成するＲＴＴ測定メッセージ生成ステップと、端末装置が、配信装置からのＲＴＴ測定メッセージに対する返信メッセージを生成するＲＴＴ測定返信メッセージ生成ステップと、端末装置からの返信メッセージによってＲＴＴを測定するＲＴＴ測定ステップとを備えることを特徴とする。これにより、配信装置と端末装置との間のＲＴＴ（Ｒｏｕｎｄ  Ｔｒｉｐ  Ｔｉｍｅ：遅延時間）の値を確実に取得して、再送されるパケットの再生時刻を考慮した再生ビットレートの決定に反映させることができる。
【００２４】
また、配信装置は、端末装置との間の通信を維持するための制御メッセージを生成する制御メッセージ生成手段を備えることを特徴とする。これにより、ストリーミング配信を実行するための配信装置と端末装置との間の通信を好適に保持することができる。
【００２５】
また、配信装置は、再送バッファ管理手段が再送バッファから取り出したパケットに対して重要度を判定し、重要度が高いパケットのみをパケット送受信手段へと渡す再送パケット重要度判定手段を備えることを特徴とする。同様に、配信方法は、再送バッファから取り出したパケットに対して重要度を判定し、重要度が高いパケットのみを端末装置へと送信する再送パケット重要度判定ステップを備えることを特徴とする。
【００２６】
また、配信装置は、再送バッファ管理手段が再送バッファから取り出したパケットに対して、再送した際に再生時刻に間に合うかどうかを判定する再送パケット再生時刻判定手段を備えることを特徴とする。同様に、配信方法は、再送バッファから取り出したパケットに対して、再送した際に再生時刻に間に合うかどうかを判定する再送パケット再生時刻判定ステップを備えることを特徴とする。
【００２７】
このように、パケットに対する重要度の判定、あるいは、パケットが再生時刻に間に合うかどうかの判定を行うことにより、不必要なパケットの再送を防止して、パケット損失時におけるパケットの再送を効率的に行うことができる。
【００２８】
また、端末装置は、再送要求メッセージ生成手段が、パケット損失が発生したときに、そのパケットのシーケンス番号と、受信バッファにバッファリングされている先頭パケットのシーケンス番号とを通知する再送要求メッセージを生成することを特徴とする。同様に、配信方法は、再送要求メッセージ生成ステップにおいて、パケット損失が発生したときに、そのパケットのシーケンス番号と、受信バッファにバッファリングされている先頭パケットのシーケンス番号とを通知する再送要求メッセージを生成することを特徴とする。このような再送要求メッセージによっても、パケット損失時におけるパケットの再送を好適に行うことができる。
【００２９】
【発明の実施の形態】
以下、図面とともに本発明によるストリーミング配信装置、ストリーミング端末装置、ストリーミング配信システム、及びストリーミング配信方法の好適な実施形態について詳細に説明する。なお、図面の説明においては同一要素には同一符号を付し、重複する説明を省略する。また、図面の寸法比率は、説明のものと必ずしも一致していない。
【００３０】
図１は、本発明によるストリーミング配信システムの一実施形態の構成を示すブロック図である。本ストリーミング配信システムは、ネットワークに接続された配信装置から端末装置へと、動画や音声などのマルチメディアコンテンツデータをストリーミング配信するシステムである。なお、図１においては、配信システムの構成を概略的に示している。
【００３１】
図１に示したストリーミング配信システムは、ストリーミング配信装置１と、ストリーミング端末装置６と、配信装置１及び端末装置６が接続された通信ネットワーク５とから構成されている。配信装置１は、端末装置６に対してコンテンツデータをストリーミング配信するサーバ装置である。また、端末装置６は、配信装置１からストリーミング配信されたコンテンツデータを受信するクライアント装置である。
【００３２】
配信装置１から端末装置６へのコンテンツデータのストリーミング配信は、ネットワーク５を介して行われる。ネットワーク５としては、例えば、複数の利用者が通信を共有するインターネットなどの広域ネットワークが用いられる。
【００３３】
図１では、ネットワーク５の具体的な例として、インターネット５１及び移動通信網５２からなるネットワークを示している。インターネット５１と移動通信網５２とは、ゲートウェイ（図示していない）を介して互いに接続されている。このネットワーク５において、配信装置１は、インターネット５１に接続されている。また、端末装置６は、基地局５３を介して移動通信網５２に接続されている。
【００３４】
以下、本ストリーミング配信システムに用いられる配信装置、及び端末装置の具体的な構成及び動作について説明する。
【００３５】
図２は、本発明によるストリーミング配信装置の一実施形態の構成を示すブロック図である。本ストリーミング配信装置１は、端末装置６にコンテンツデータをストリーミング配信する装置であって、パケット送受信部１０と、ストレージ処理部１５と、制御メッセージ処理部２０と、再送制御部３０とを備えている。また、配信装置１は、データ配信のビットレートに関して、送信ビットレート決定部４０と、再生ビットレート決定部４１と、再生ビットレート制御部４２とを備えている。
【００３６】
パケット送受信部１０は、ネットワーク５を介し、端末装置６との間でコンテンツデータのストリーミング配信に必要なパケットの送受信を行う。また、配信装置１からストリーミング配信するコンテンツデータに対して、ストレージ管理部１６と、ストレージ１７とを有するストレージ処理部１５が設けられている。ストレージ管理部１６は、コンテンツデータが格納されているストレージ１７から必要なデータを取り出す。
【００３７】
制御メッセージ処理部２０は、ＲＴＴ測定部２１と、ネットワーク状況通知メッセージ評価部２２と、制御メッセージ生成部２３とを有する。ＲＴＴ測定部２１は、本配信装置１と端末装置６との間のＲＴＴを測定するためのＲＴＴ測定メッセージを生成し、パケット送受信部１０を介して端末装置６へと送信する。そして、端末装置６からの返信メッセージによってＲＴＴを測定する。
【００３８】
ネットワーク状況通知メッセージ評価部２２は、端末装置６から受信されるネットワーク状況通知メッセージを評価し、その時点でのネットワークの状況を調べる。また、制御メッセージ生成部２３は、必要な制御メッセージを生成し、パケット送受信部１０を介して端末装置６へと送信する。この制御メッセージは、ストリーミング配信を実行するための配信装置１と端末装置６との間の通信を維持するために用いられる。
【００３９】
再送制御部３０は、コンテンツデータのストリーミング配信においてパケット損失が発生した場合に、必要なパケットの再送を制御する。この再送制御部３０は、再送バッファ管理部３１と、再送バッファ３２とを有する。再送バッファ管理部３１は、パケット送受信部１０を介して端末装置６へと送信されたコンテンツデータのパケットを再送バッファ３２にバッファリングする。また、パケット損失の発生による再送要求メッセージを端末装置６から受信した場合には、再送要求メッセージに応じて再送バッファ３２からパケットを取り出す。
【００４０】
本実施形態においては、再送制御部３０には、さらに、再送パケット重要度判定部３３と、再送パケット再生時刻判定部３４とが設けられている。これらの判定部３３、３４は、それぞれパケットの再送に関して判定を行う。
【００４１】
再送パケット重要度判定部３３は、再送バッファ管理部３１が再送バッファ３２から取り出したパケットに対して、その重要度を判定する。そして、重要度によって選択されたパケット、すなわち重要度が高いパケットのみをパケット送受信部１０へと渡すように処理する。また、再送パケット再生時刻判定部３４は、再送バッファ管理部３１が再送バッファ３２から取り出したパケットに対して、そのパケットを再送した際に再生時刻に間に合うかどうかを判定する。
【００４２】
送信ビットレート決定部４０は、パケット送受信部１０を介して行われる端末装置６へのパケットの送信について、送信ビットレートを決定する。この送信ビットレートの決定は、好ましくは、ネットワーク状況通知メッセージ評価部２２によるネットワーク状況通知メッセージの評価結果に基づいて行われる。
【００４３】
再生ビットレート決定部４１は、ストリーミング配信されるコンテンツデータに対する再生ビットレートを決定する。また、再生ビットレート制御部４２は、決定された再生ビットレートに基づいてビットレートを制御する。具体的には、再生ビットレート決定部４１は、パケット送受信部１０から指示されたビットレート値と、再送が決定したパケットのサイズと、端末装置６から受信される端末バッファ量通知メッセージと、測定されたＲＴＴ値とを参照する。そして、これらの情報に基づいて、パケット損失が発生したときに再送されるパケットの再生時刻が考慮された端末バッファ量が保持されるように、再生ビットレートを決定する。
【００４４】
図３は、本発明によるストリーミング端末装置の一実施形態の構成を示すブロック図である。本ストリーミング端末装置６は、配信装置１からストリーミング配信されたコンテンツデータを受信する装置であって、パケット送受信部６０と、受信パケット処理部６５と、制御メッセージ処理部７０と、コンテンツ処理部８０とを備えている。
【００４５】
パケット送受信部６０は、ネットワーク５を介し、配信装置１との間でコンテンツデータのストリーミング配信に必要なパケットの送受信を行う。また、端末装置６にストリーミング配信されるコンテンツデータに対して、受信バッファ管理部６６と、受信バッファ６７とを有する受信パケット処理部６５が設けられている。受信バッファ管理部６６は、配信装置１からパケット送受信部６０を介して受信されたコンテンツデータのパケットを、シーケンス番号にしたがって、所定のパケット順序で受信バッファ６７にバッファリングする。
【００４６】
制御メッセージ処理部７０は、ＲＴＴ測定返信メッセージ生成部７１と、ネットワーク状況通知メッセージ生成部７２と、端末バッファ量通知メッセージ生成部７３と、再送要求メッセージ生成部７４とを有する。ＲＴＴ測定返信メッセージ生成部７１は、配信装置１から受信されたＲＴＴ測定メッセージに対する返信メッセージを生成し、パケット送受信部６０を介して配信装置１へと送信する。
【００４７】
ネットワーク状況通知メッセージ生成部７２は、必要な情報を含むネットワーク状況通知メッセージを定期的に生成し、パケット送受信部６０を介して配信装置１へと送信する。また、端末バッファ量通知メッセージ生成部７３は、受信バッファ６７でのバッファ量である端末バッファ量（クライアントバッファ量）を通知するメッセージを生成する。具体的には、受信バッファ６７にバッファリングされている先頭パケットの再生時刻と、最後尾パケットの再生時刻との差を調べる。そして、その再生時刻差を通知する端末バッファ量通知メッセージを定期的に生成し、パケット送受信部６０を介して配信装置１へと送信する。
【００４８】
再送要求メッセージ生成部７４は、コンテンツデータのストリーミング配信においてパケット損失が発生した場合に、必要なパケットの再送を要求する。具体的には、パケット損失が発生したときに、そのパケットのシーケンス番号を通知する再送要求メッセージを生成し、パケット送受信部６０を介して配信装置１へと送信する。
【００４９】
コンテンツ処理部８０は、コンテンツデコード部８１と、コンテンツ表示部８２とを有する。コンテンツデコード部８１は、パケット送受信部６０を介して受信され、受信バッファ６７に蓄積されているコンテンツデータのパケットを取り出してデコードする。また、コンテンツ表示部８２は、デコードされたコンテンツを表示する。
【００５０】
上記実施形態によるストリーミング配信装置、端末装置、配信システム、及びそれを用いたストリーミング配信方法の効果について説明する。
【００５１】
上記したストリーミング配信システム、装置、及び方法では、端末装置６は、配信装置１に対して、端末バッファ量通知メッセージ生成部７３から端末バッファ量通知メッセージを送信するとともに、パケット損失時に、再送要求メッセージ生成部７４から再送要求メッセージを送信する。そして、配信装置１は、再生ビットレート決定部４１において、端末バッファ量通知メッセージ等の内容に基づき、パケット損失が発生した場合に再送されるパケットの再生時刻が考慮された所定の端末バッファ量、例えば再送したパケットが常に再生時刻に間に合う程度の端末バッファ量、が端末装置６の受信バッファ６７で保持されるように、コンテンツデータの再生ビットレートを決定する。
【００５２】
これにより、ストリーミング配信において、端末装置６の受信バッファ６７にバッファリングされている端末バッファ量を、パケット損失が発生する可能性が考慮された好適なバッファ量に保持することができる。したがって、パケット損失が発生した場合であっても、良好にマルチメディアコンテンツデータを配信することが可能となる。
【００５３】
特に、配信装置１からのパケット再送が有効となるように端末装置６の受信バッファ６７でのバッファ量を保持すること、及び再送パケットの存在を考慮してビットレート制御を行うことにより、パケット再送の有効性が向上する。また、無駄なパケット再送が減少するため、再送による帯域圧迫が少なくなる。また、パケット再送によって通常のストリーミングパケットの送信遅れが発生することが防止される。
【００５４】
また、本実施形態においては、端末装置６のネットワーク状況通知メッセージ生成部７２から送信されたネットワーク状況通知メッセージを、配信装置１のネットワーク状況通知メッセージ評価部２２で評価し、その評価結果に基づいて送信ビットレートを決定している。これにより、コンテンツデータのストリーミング配信を、ネットワーク状況に応じて好適に実行することができる。
【００５５】
また、配信装置１のＲＴＴ測定部２１、及び端末装置６のＲＴＴ測定返信メッセージ生成部７１を用いて、配信装置１と端末装置６との間のＲＴＴ（Ｒｏｕｎｄ  Ｔｒｉｐ  Ｔｉｍｅ：遅延時間）を測定している。これにより、ＲＴＴの値を確実に取得して、再送されるパケットの再生時刻を考慮した再生ビットレートの決定に反映させることができる。なお、ＲＴＴ測定部２１等が設けられていない場合には、例えば、ネットワーク状況通知メッセージ評価部２２においてＲＴＴの値を測定する構成を用いることができる。
【００５６】
また、本実施形態においては、配信装置１の再送制御部３０に、再送パケット重要度判定部３３及び再送パケット再生時刻判定部３４を設けている。このように、パケットに対する重要度の判定、あるいは、パケットが再生時刻に間に合うかどうかの判定を行うことにより、不必要なパケットの再送を防止して、パケット損失時におけるパケットの再送を効率的に行うことができる。
【００５７】
ここで、上記した構成では、端末装置６の再送要求メッセージ生成部７４は、パケット損失が発生したパケットのシーケンス番号を通知する再送要求メッセージを生成している。この再送要求メッセージについては、パケット損失が発生したパケットのシーケンス番号と、受信バッファ６７にバッファリングされている先頭パケットのシーケンス番号とを通知することとしても良い。このような再送要求メッセージによっても、パケット損失時におけるパケットの再送を好適に行うことができる。
【００５８】
なお、ストリーミング配信装置１としては、ハードウェア的には、例えば、ＣＰＵ、メモリ、ディスプレイ等の表示装置、キーボード等の入力装置、ハードディスク等の格納装置などを備えるコンピュータシステムを用いることができる。また、ストリーミング端末装置６としては、例えば、ＣＰＵ、メモリ、ディスプレイ等の表示装置、キー入力手段等の入力装置などを備える情報通信端末を用いることができる。
【００５９】
本発明によるストリーミング配信方法について、その具体例とともにさらに説明する。
【００６０】
まず、上記したストリーミング配信システムにおいて実行される基本的なデータ配信方法について説明する。配信装置１から端末装置６へのマルチメディアコンテンツデータのストリーミング配信では、配信装置１は、ストレージ管理部１６がストレージ１７から取り出したコンテンツデータのパケットを、パケット送受信部１０からネットワーク５を介して端末装置６へと送信する（パケット送信ステップ）。
【００６１】
また、パケット送受信部１０は、このような通常のストリーミングパケットを送信すると、そのパケットを再送バッファ管理部３１に渡す。再送バッファ管理部３１は、渡されたパケットを再送バッファ３２にバッファリングしておく（再送バッファリングステップ）。
【００６２】
一方、端末装置６は、配信装置１からのコンテンツデータのパケットをパケット送受信部６０で受信する。パケット送受信部６０は、受信したパケットを受信バッファ管理部６６に渡す。そして、受信バッファ管理部６６は、シーケンス番号にしたがって、そのパケットを所定のパケット順序で受信バッファ６７にバッファリングする（受信バッファリングステップ）。
【００６３】
受信バッファ６７にバッファリングされたコンテンツのパケットは、コンテンツデコード部８１でデコードされた後、コンテンツ表示部８２に表示される。以上により、コンテンツデータのストリーミング配信が行われる。
【００６４】
図３に示したストリーミング端末装置６におけるパケット損失の検出、及びパケットの再送要求について説明する。図４は、端末装置におけるパケットの再送要求について示すフローチャートである。
【００６５】
コンテンツデータのストリーミング配信においてパケット損失が発生すると、端末装置６の受信バッファ管理部６６でパケット損失が検出される（ステップＳ１０１）。このパケット損失は、一般にパケットのシーケンス番号のとびから検出される。また、他の方法によってパケット損失を検出しても良い。
【００６６】
パケット損失が検出されると、受信バッファ管理部６６は、受信バッファ６７にバッファリングされている先頭パケットの再生時刻またはシーケンス番号を調べ、損失したパケットのシーケンス番号とともに再送要求メッセージ生成部７４に渡す（Ｓ１０２）。再送要求メッセージ生成部７４は、損失したパケットのシーケンス番号が記載された再送要求メッセージ、あるいは、損失したパケットのシーケンス番号と先頭パケットの再生時刻（またはシーケンス番号）との両者の値が記載された再送要求メッセージを生成し、パケット送受信部６０に渡す（Ｓ１０３、再送要求メッセージ生成ステップ）。パケット送受信部６０は、再送要求メッセージを配信装置１へと送信する（Ｓ１０４）。
【００６７】
次に、図２に示したストリーミング配信装置１における再送要求メッセージに応じたパケットの再送について説明する。図５は、配信装置におけるパケットの再送について示すフローチャートである。
【００６８】
配信装置１において、パケット送受信部１０が端末装置６からの再送要求メッセージを受信すると、パケット送受信部１０は、受信された再送要求メッセージを再送バッファ管理部３１に渡す（ステップＳ２０１）。再送バッファ管理部３１は、再送要求メッセージに記載されたパケットのシーケンス番号に基づいて、そのパケットが再送バッファ３２にバッファリングされているかどうかを調べる（Ｓ２０２）。そして、該当するパケットがバッファリングされていない場合には、その再送要求を破棄する（Ｓ２０７）。
【００６９】
一方、該当するパケットが再送バッファ３２にバッファリングされている場合には、再送バッファ管理部３１は、そのパケットを再送バッファ３２から取り出す（Ｓ２０３、パケット取り出しステップ）。図２に示した構成の配信装置１では、再送バッファ管理部３１は、取り出したパケットを再送パケット重要度判定部３３に渡す。
【００７０】
再送パケット重要度判定部３３は、そのパケットのヘッダ情報、もしくはパケットのデータ部に含まれている情報からパケットの重要度を調べる（Ｓ２０４、再送パケット重要度判定ステップ）。そして、重要度が所定の基準よりも低い場合には、再送要求を破棄する（Ｓ２０７）。
【００７１】
一方、パケットの重要度が基準よりも高い場合には、再送パケット重要度判定部３３は、そのパケットを再送パケット再生時刻判定部３４に渡す。なお、パケットの重要度の判定については、例えば、ＭＰＥＧフォーマットの動画の場合、Ｉピクチャを構成するパケットを重要度が高いと判定し、一方、ＰピクチャやＢピクチャを構成するパケットを重要度が低いと判定する判定方法を用いることができる。このような重要度の具体的な判定方法については、パケットに含まれているコンテンツデータの種類や、ネットワークの構成等に応じて、適宜設定することが好ましい。
【００７２】
再送パケット再生時刻判定部３４は、再送要求メッセージに記載されている端末装置６の受信バッファ６７での先頭パケットの再生時刻、及び判定の対象となっているパケットの再生時刻の差と、ＲＴＴ測定部２１またはネットワーク状況通知メッセージ評価部２２によって測定されたＲＴＴ値とを比較することによって、そのパケットを再送した際に再生時刻に間に合うかどうかを調べる（Ｓ２０５、再送パケット再生時刻判定ステップ）。そして、ＲＴＴ値が再生時刻差よりも大きい場合には、再生時刻に間に合わないものとして再送要求を破棄する（Ｓ２０７）。
【００７３】
一方、ＲＴＴ値が再生時刻差よりも小さい場合には、再送パケット再生時刻判定部３４は、再送したパケットが再生時刻に間に合うものとして、そのパケットをパケット送受信部１０に渡す。パケット送受信部１０は、渡されたパケットを端末装置６へと再送する（Ｓ２０６）。
【００７４】
ここで、配信装置１のＲＴＴ測定部２１、及び端末装置６のＲＴＴ測定返信メッセージ生成部７１を用いた場合のＲＴＴ値の測定方法について説明しておく。まず、配信装置１において、ＲＴＴ測定部２１は、ＲＴＴを測定するためのＲＴＴ測定メッセージを生成する（ＲＴＴ測定メッセージ生成ステップ）。このＲＴＴ測定メッセージは、パケット送受信部１０を介して、端末装置６へと送信される。
【００７５】
端末装置６では、パケット送受信部６０を介してＲＴＴ測定メッセージが受信されると、ＲＴＴ測定返信メッセージ生成部７１において、ＲＴＴ測定メッセージに対する返信メッセージが生成される（ＲＴＴ測定返信メッセージ生成ステップ）。この返信メッセージは、パケット送受信部６０を介して、配信装置１へと送信される。そして、配信装置１のＲＴＴ測定部２１は、端末装置６からの返信メッセージによってＲＴＴを測定する（ＲＴＴ測定ステップ）。
【００７６】
次に、図２に示したストリーミング配信装置１におけるコンテンツデータのパケットの送信での送信ビットレート制御について説明する。図６は、配信装置におけるパケットの送信について示すフローチャートである。
【００７７】
端末装置６では、ネットワーク状況通知メッセージ生成部７２において、ネットワーク状況通知メッセージが定期的に生成される。そして、生成された通知メッセージは、パケット送受信部６０を介して配信装置１へと送信される（ネットワーク状況通知メッセージ生成ステップ）。
【００７８】
配信装置１において、パケット送受信部１０が端末装置６からのネットワーク状況通知メッセージを受信すると、パケット送受信部１０は、受信されたネットワーク状況通知メッセージをネットワーク状況通知メッセージ評価部２２に渡す（ステップＳ３０１）。ネットワーク状況通知メッセージ評価部２２は、ネットワーク状況通知メッセージに基づいて、現在のネットワークの状況を調べる（ステップＳ３０２、ネットワーク状況通知メッセージ評価ステップ）。
【００７９】
端末装置６からのネットワーク状況通知メッセージでは、例えば、端末装置６での受信パケット数及び損失パケット数などが通知される。ネットワーク状況通知メッセージ評価部２２は、これらの受信パケット数及び損失パケット数から、端末装置６の受信ビットレートを算出して評価する。
【００８０】
ネットワーク状況通知メッセージ評価部２２は、その評価結果を、送信ビットレート決定部４０に渡す。送信ビットレート決定部４０は、渡された評価結果に基づいて送信ビットレートを決定する（Ｓ３０３、送信ビットレート決定ステップ）。
【００８１】
送信ビットレートの具体的な決定方法については、様々な方法を用いることができる。例えば、送信ビットレートが５００Ｋｂｐｓ、受信ビットレートが４５０Ｋｂｐｓであった場合、ネットワークに滞留していると考えられる５０Ｋｂｉｔのデータを解消するために、送信ビットレートを４００Ｋｂｐｓに設定することが好ましい。あるいは、単純に送信ビットレートを４５０Ｋｂｐｓに設定しても良い。
【００８２】
送信ビットレート決定部４０は、決定した送信ビットレートをパケット送受信部１０に通知する。パケット送受信部１０は、通知された送信ビットレートの値に基づいて、パケットの送信間隔などの送信条件を決定する（Ｓ３０４）。
【００８３】
ここで、パケット送受信部１０に再送パケット再生時刻判定部３４から再送するパケットが渡されている場合には、パケット送受信部１０はこの再送パケットを優先的に送信する。したがって、例えば、通知された送信ビットレートが４００Ｋｂｐｓであったときに、パケット送受信部１０にある再送パケットが合計で５０Ｋｂｉｔであれば、残りの３５０Ｋｂｉｔが１秒間に送信できる通常のストリーミングパケットの量となる。
【００８４】
次に、図２に示したストリーミング配信装置１におけるコンテンツデータのパケットの送信での再生ビットレート制御について説明する。図７は、配信装置におけるパケットの送信について示すフローチャートである。
【００８５】
端末装置６では、端末バッファ量通知メッセージ生成部７３において、受信バッファ６７にバッファリングされている先頭パケットと最後尾パケットとの再生時刻差を定期的に通知する端末バッファ量通知メッセージが生成される。そして、生成された通知メッセージは、パケット送受信部６０を介して配信装置１へと送信される（端末バッファ量通知メッセージ生成ステップ）。
【００８６】
配信装置１において、パケット送受信部１０が端末装置６からの端末バッファ量通知メッセージを受信すると、パケット送受信部１０は、受信された端末バッファ量通知メッセージを再生ビットレート決定部４１に渡す（ステップＳ４０１）。再生ビットレート決定部４１は、この端末バッファ量通知メッセージ等に基づいて、再生ビットレートを決定する（Ｓ４０２、再生ビットレート決定ステップ）。
【００８７】
具体的には、例えば、再生ビットレート決定部４１は、端末バッファ量通知メッセージによって通知された再生時刻差と、ＲＴＴの値とを比較する。そして、ＲＴＴが大きい場合は、（１秒間の送信可能量）／（１＋α）によって再生ビットレートを決定する。ここで、１秒間の送信可能量とは、１秒間に通常のストリーミングパケットを送信できる量である。また、αは、あらかじめ設定された一定の値である。
【００８８】
すなわち、上記した再生ビットレートの決定方法では、再生時刻差とＲＴＴとで、ＲＴＴの方が小さくなるように再生ビットレートを決定する。このため、ＲＴＴの方が大きい場合には、送信ビットレートよりも小さい値で再生ビットレートが設定されたコンテンツデータを送信する。これにより、端末装置６の受信バッファ６７にバッファリングされているデータの時間的なバッファ量がＲＴＴよりも大きい値となるように、端末バッファ量を制御することができる。例えば、送信ビットレートが３５０Ｋｂｐｓ、定数αを０．２とすれば、再生ビットレートは３５０／１．２で約２８０Ｋｂｐｓと決定される。なお、再生ビットレートの決定方法については、具体的には上記以外の方法を用いても良い。
【００８９】
再生ビットレート決定部４１によって決定された再生ビットレートは、再生ビットレート制御部４２へと渡される。再生ビットレート制御部４２は、この再生ビットレートの値に基づいて、ストレージ管理部１６を介してストレージ１７からコンテンツファイルを取り出し、再生ビットレートの制御を行う（Ｓ４０３、再生ビットレート制御ステップ）。
【００９０】
例えば、異なる再生ビットレートに対応する複数のコンテンツファイルをあらかじめストレージ１７に用意しておき、これらのファイルを切り換えることによってビットレート制御を行う場合、再生ビットレート制御部４２は、適切なファイルを判別し、その識別子をストレージ管理部１６に渡す。ストレージ管理部１６は、そのファイルをストレージ１７から取り出し、再生ビットレート制御部４２に渡す（Ｓ４０４）。この際、再生ビットレート制御部４２では、必要に応じて、さらに再生ビットレート制御が行われる。具体的には、例えば、フレーム数の削減や、ＤＣＴ係数の削減などによるコンテンツのデータ量の調整を行うことができる。
【００９１】
再生ビットレート制御部４２によってビットレート制御が行われたコンテンツデータは、パケット送受信部１０へと渡される。そして、パケット送受信部１０は、まず再送パケットを優先的に送信した後、続いて、通常のストリーミングパケットを送信する（Ｓ４０５）。
【００９２】
本発明によるストリーミング配信装置、ストリーミング端末装置、ストリーミング配信システム、及びストリーミング配信方法は、上記した実施形態に限られるものではなく、様々な変形が可能である。例えば、ストリーミング配信システムに用いられるネットワークについては、図１に示したインターネット及び移動通信網からなるネットワークに限らず、様々な広域ネットワークを用いて良い。
【００９３】
【発明の効果】
本発明によるストリーミング配信装置、ストリーミング端末装置、ストリーミング配信システム、及びストリーミング配信方法は、以上詳細に説明したように、次のような効果を得る。すなわち、コンテンツデータのストリーミング配信において、パケット送受信手段から指示されたビットレート値と、再送が決定したパケットのサイズと、端末装置からの端末バッファ量通知メッセージと、測定されたＲＴＴ値とに基づいて、パケット損失が発生したときに再送されるパケットの再生時刻が考慮された端末バッファ量が保持されるように、コンテンツデータの再生ビットレートを決定する構成によれば、端末装置において受信バッファにバッファリングされている端末バッファ量を好適なバッファ量に保持することができる。したがって、パケット損失が発生した場合であっても、良好にコンテンツデータを配信することが可能なストリーミング配信装置、端末装置、配信システム、及びストリーミング配信方法が実現される。
【図面の簡単な説明】
【図１】ストリーミング配信システムの一実施形態の構成を示すブロック図である。
【図２】ストリーミング配信装置（サーバ）の一実施形態の構成を示すブロック図である。
【図３】ストリーミング端末装置（クライアント）の一実施形態の構成を示すブロック図である。
【図４】端末装置におけるパケットの再送要求について示すフローチャートである。
【図５】配信装置におけるパケットの再送について示すフローチャートである。
【図６】配信装置におけるパケットの送信について示すフローチャートである。
【図７】配信装置におけるパケットの送信について示すフローチャートである。
【符号の説明】
１…ストリーミング配信装置（サーバ）、１０…パケット送受信部、１５…ストレージ処理部、１６…ストレージ管理部、１７…ストレージ、２０…制御メッセージ処理部、２１…ＲＴＴ測定部、２２…ネットワーク状況通知メッセージ評価部、２３…制御メッセージ生成部、３０…再送制御部、３１…再送バッファ管理部、３２…再送バッファ、３３…再送パケット重要度判定部、３４…再送パケット再生時刻判定部、４０…送信ビットレート決定部、４１…再生ビットレート決定部、４２…再生ビットレート制御部、
５…通信ネットワーク、５１…インターネット、５２…移動通信網、５３…基地局、
６…ストリーミング端末装置（クライアント）、６０…パケット送受信部、６５…受信パケット処理部、６６…受信バッファ管理部、６７…受信バッファ、７０…制御メッセージ処理部、７１…ＲＴＴ測定返信メッセージ生成部、７２…ネットワーク状況通知メッセージ生成部、７３…端末バッファ量通知メッセージ生成部、７４…再送要求メッセージ生成部、８０…コンテンツ処理部、８１…コンテンツデコード部、８２…コンテンツ表示部。
【図１】
2004186793.tif 000003
【図２】
2004186793.tif 000004
【図３】
2004186793.tif 000005
【図４】
2004186793.tif 000006
【図５】
2004186793.tif 000007
【図６】
2004186793.tif 000008
【図７】
2004186793.tif 000009