(57)【要約】【課題】ユーザ端末から到来したコンテンツデータのダウンロード要求に応じてサーバ装置からユーザ端末へコンテンツデータを配信すること。【解決手段】第２トランスポートプロトコルがＴＣＰの場合、第２送信部から第１送信部に切り替えるときに、第１送信部の輻輳ウィンドウサイズの初期値を、第２送信部の送信終了時の輻輳ウィンドウサイズ、又は第１送信部が最初からコンテンツデータを送信したと仮定した場合の現在の輻輳ウィンドウサイズの推定値と等しくなるように再設定し、第２トランスポートプロトコルがＵＤＰの場合、第１送信部の輻輳ウィンドウサイズの初期値を、第２送信部の送信終了時の送信データレートと往復遅延時間とを乗算した値、又は第１送信部が最初からコンテンツデータを送信したと仮定した場合の現在の輻輳ウィンドウサイズの推定値と等しくなるように設定する。【選択図】図１
2015057890.tif 000002
【特許請求の範囲】
【請求項１】
ユーザ端末から到来したコンテンツデータのダウンロード要求に応じてサーバ装置から前記ユーザ端末へ前記コンテンツデータを配信するコンテンツ配信システムであって、
前記コンテンツデータを格納するコンテンツデータ記憶部と、
前記コンテンツデータ記憶部が記憶している前記コンテンツデータを取得して、送信データレートの初期値を低く設定して、徐々に送信データレートを高くするスロースタートアルゴリズムを用いた第１トランスポートプロトコルに基づいて前記コンテンツデータを前記ユーザ端末へ送信する第１送信部と、
前記コンテンツデータ記憶部が記憶している前記コンテンツデータを取得して、前記スロースタートアルゴリズムが設定する送信データレートより高い送信データレートを設定する高速アルゴリズムを用いた第２トランスポートプロトコルに基づいて前記コンテンツデータを前記ユーザ端末へ送信する第２送信部と、
前記コンテンツデータの送信を開始したときは前記第２送信部が送信して、前記第２送信部が送信したコンテンツデータのデータ量が閾値に達した後に前記第１送信部が前記コンテンツデータの未送信データを送信するように制御する送信制御部と
を備え、
前記送信制御部は、前記第２トランスポートプロトコルがＴＣＰの場合、前記第２送信部から前記第１送信部に切り替えるときに、前記第１送信部の輻輳ウィンドウサイズの初期値を、前記第２送信部の送信終了時の輻輳ウィンドウサイズ、又は前記第１送信部が最初からコンテンツデータを送信したと仮定した場合の現在の輻輳ウィンドウサイズの推定値と等しくなるように再設定し、前記第２トランスポートプロトコルがＵＤＰの場合、前記第２送信部から前記第１送信部に切り替えるときに、前記サーバ装置と前記ユーザ端末との間のＵＤＰによる配信を終了し、前記サーバ装置と前記ユーザ端末との間でＴＣＰによるコネクションを確立する処理を行うと共に、前記第１送信部の輻輳ウィンドウサイズの初期値を、前記第２送信部の送信終了時の送信データレートと往復遅延時間とを乗算した値、又は前記第１送信部が最初からコンテンツデータを送信したと仮定した場合の現在の輻輳ウィンドウサイズの推定値と等しくなるように設定する
ことを特徴とするコンテンツ配信システム。
【請求項２】
ユーザ端末から到来したコンテンツデータのダウンロード要求に応じてサーバ装置から前記ユーザ端末へ前記コンテンツデータを配信するコンテンツ配信方法であって、
前記コンテンツデータを格納するコンテンツデータ記憶段階と、
前記コンテンツデータ記憶段階において記憶されている前記コンテンツデータを取得して、送信データレートの初期値を低く設定して、徐々に送信データレートを高くするスロースタートアルゴリズムを用いた第１トランスポートプロトコルに基づいて前記コンテンツデータを前記ユーザ端末へ送信する第１送信段階と、
前記コンテンツデータ記憶段階において記憶されている前記コンテンツデータを取得して、前記スロースタートアルゴリズムが設定する送信データレートより高い送信データレートを設定する高速アルゴリズムを用いた第２トランスポートプロトコルに基づいて前記コンテンツデータを前記ユーザ端末へ送信する第２送信段階と、
前記コンテンツデータの送信を開始したときは前記第２送信段階において送信されて、前記第２送信段階において送信されたコンテンツデータのデータ量が閾値に達した後に前記第１送信段階において前記コンテンツデータの未送信データが送信されるように制御する送信制御段階と
を含み、
前記送信制御段階においては、前記第２トランスポートプロトコルがＴＣＰの場合、前記第２送信段階から前記第１送信段階に切り替えるときに、前記第１送信段階における輻輳ウィンドウサイズの初期値を、前記第２送信段階における送信終了時の輻輳ウィンドウサイズ、又は前記第１送信段階において最初からコンテンツデータを送信したと仮定した場合の現在の輻輳ウィンドウサイズの推定値と等しくなるように再設定し、前記第２トランスポートプロトコルがＵＤＰの場合、前記第２送信段階から前記第１送信段階に切り替えるときに、前記サーバ装置と前記ユーザ端末との間のＵＤＰによる配信を終了し、前記サーバ装置と前記ユーザ端末との間でＴＣＰによるコネクションを確立する処理を行うと共に、前記第１送信段階における輻輳ウィンドウサイズの初期値を、前記第２送信段階における送信終了時の送信データレートと往復遅延時間とを乗算した値、又は前記第１送信段階において最初からコンテンツデータを送信したと仮定した場合の現在の輻輳ウィンドウサイズの推定値と等しくなるように設定する
ことを特徴とするコンテンツ配信方法。
【請求項３】
ユーザ端末から到来したコンテンツデータのダウンロード要求に応じて前記ユーザ端末へ前記コンテンツデータを配信するサーバ装置として、コンピュータを機能させるプログラムであって、
前記コンピュータを、
前記コンテンツデータを格納するコンテンツデータ記憶部、
前記コンテンツデータ記憶部が記憶している前記コンテンツデータを取得して、送信データレートの初期値を低く設定して、徐々に送信データレートを高くするスロースタートアルゴリズムを用いた第１トランスポートプロトコルに基づいて前記コンテンツデータを前記ユーザ端末へ送信する第１送信部、
前記コンテンツデータ記憶部が記憶している前記コンテンツデータを取得して、前記スロースタートアルゴリズムが設定する送信データレートより高い送信データレートを設定する高速アルゴリズムを用いた第２トランスポートプロトコルに基づいて前記コンテンツデータを前記ユーザ端末へ送信する第２送信部、
前記コンテンツデータの送信を開始したときは前記第２送信部が送信して、前記第２送信部が送信したコンテンツデータのデータ量が閾値に達した後に前記第１送信部が前記コンテンツデータの未送信データを送信するように制御する送信制御部
として機能させ、
前記送信制御部は、前記第２トランスポートプロトコルがＴＣＰの場合、前記第２送信部から前記第１送信部に切り替えるときに、前記第１送信部の輻輳ウィンドウサイズの初期値を、前記第２送信部の送信終了時の輻輳ウィンドウサイズ、又は前記第１送信部が最初からコンテンツデータを送信したと仮定した場合の現在の輻輳ウィンドウサイズの推定値と等しくなるように再設定し、前記第２トランスポートプロトコルがＵＤＰの場合、前記第２送信部から前記第１送信部に切り替えるときに、前記サーバ装置と前記ユーザ端末との間のＵＤＰによる配信を終了し、前記サーバ装置と前記ユーザ端末との間でＴＣＰによるコネクションを確立する処理を行うと共に、前記第１送信部の輻輳ウィンドウサイズの初期値を、前記第２送信部の送信終了時の送信データレートと往復遅延時間とを乗算した値、又は前記第１送信部が最初からコンテンツデータを送信したと仮定した場合の現在の輻輳ウィンドウサイズの推定値と等しくなるように設定する
ように機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンテンツ配信システム、コンテンツ配信方法及びプログラムに関する。本願は、２００８年１０月９日に出願された特願２００８−２６２７５７号に基づき優先権を主張し、その内容をここに援用する。
【背景技術】
【０００２】
近年、コンピュータの高性能化やネットワークの広域化に伴い、ユーザが自分の視聴したいときに高品質な映像コンテンツを取得して視聴できるＶＯＤ（Ｖｉｄｅｏ  ｏｎ  Ｄｅｍａｎｄ）サービスが広まってきている。映像コンテンツの配信方法としては、ＲＴＳＰ（Ｒｅａｌ  Ｔｉｍｅ  Ｓｔｒｅａｍｉｎｇ  Ｐｒｏｔｏｃｏｌ）やＭＭＳ（Ｍｉｃｒｏｓｏｆｔ  Ｍｅｄｉａ  Ｓｅｒｖｉｃｅｓ）といった専用のストリーミングサーバを用いたストリーミング配信と並んで、従来のＷｅｂコンテンツと同様にＨＴＴＰ（Ｈｙｐｅｒｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）／ＴＣＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ）を用いたプログレッシブダウンロードによる配信が広く用いられている。このプログレッシブダウンロードは、擬似ストリーミングまたはＨＴＴＰストリーミングとも呼ばれ、通常のウェブサーバ（ＨＴＴＰサーバ）を用いてシステムを構築する容易性や、ファイアウォールでコンテンツのダウンロードが阻害される可能性が低いといったメリットを持っている。
【０００３】
再生映像の途絶はユーザの体感品質に甚大な悪影響を与えるため、ＶＯＤサービスなどの映像配信サービスにおいては、ユーザ端末にバッファを備えて、受信データレートの変動吸収を行っている。ユーザ端末にバッファを備えることによって途絶の発生を低減することができるが、設定された再生開始の事前に必要なデータ（以下、初期バッファデータ）の取得が完了しないと再生が開始されないため、ユーザの再生開始待ち時間が増大してしまうという問題がある。
【０００４】
ストリーミング配信において、この問題を解決する技術として、特許文献１（特開２００６−１１５４７７号公報）に記載のコンテンツ配信方法がある。このコンテンツ配信方法は、コンテンツの送信を行いながら可用帯域を実際に測定したり、または遅延時間やパケットロス率などの情報に基づいてＴＣＰに従った送信データレートの振る舞いを推定したりして、他のコネクションとの公平性の維持が可能な送信データレートを導出する。そして、導出された送信データレートで初期バッファデータを取得することで、可能な限り早く初期バッファデータを取得して再生を開始することができる。このコンテンツ配信方法は、例えばＭｉｃｒｏｓｏｆｔ（登録商標）のＦａｓｔ  ＳｔｒｅａｍｉｎｇやＲｅａｌＮｅｔｗｏｒｋｓ（登録商標）のＴｕｒｂｏＰｌａｙにて用いられている。
【０００５】
また、特許文献２（特開２００２−１３５５０６号公報）に記載の伝送制御方法は、インターネットを用いたファクシミリ通信を行う際に、相手端末により最大受信バッファサイズが指定されている場合には、そのときのネットワークの許容可能な最大データ転送速度（例えば、数百ｋｂｐｓ〜数Ｍｂｐｓ）で、バースト転送モードのデータ転送を行うので、最大限に有効な画情報伝送速度を用いることができる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００６−１１５４７７号公報
【特許文献２】特開２００２−１３５５０６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら上記技術は、以下の点で改善の余地を有していた。特許文献１のコンテンツ配信方法をプログレッシブダウンロードに適用した場合、使用するトランスポートプロトコルがＴＣＰであるため、ＴＣＰのスロースタート制御の影響を回避できず、初期バッファデータの高速取得が阻害されてしまう。すなわち、ＴＣＰでは、送信開始直後は小さい送信データレートで送信を行い、送信の成功に合わせて徐々に送信データレートを上げていくことでネットワークを輻輳させないようにしている。そのため、コンテンツ配信方法が導出した送信データレートの上限値の速度までＴＣＰの送信データレートが増加するまでに時間がかかり、ユーザの待ち時間を増加させてしまう。
【０００８】
特許文献２の伝送制御方法は、ＵＤＰモードおよびＴＣＰモードの２つのモードを備え、ＴＣＰモードのスロースタート制御を含むフロー制御動作を回避するために、可能であればＵＤＰモードにおいて画情報を伝送する。しかし、この伝送制御方法では、一度ＵＤＰモードを選択して画情報を送信した場合、ＵＤＰモードにおいてデータ転送速度を変更するものであって、送信途中にＴＣＰモードに切替えることができない。また、特許文献２記載の技術を映像コンテンツのプログレッシブダウンロードに適用した場合、初期バッファデータのみならず映像コンテンツに含まれるデータすべてをＵＤＰモードで送信することとなり、伝送の信頼性、再生画像の品質等の面で問題がある。
【０００９】
本発明は上記事情に鑑みてなされたものであり、その目的とするところは、コンテンツの送信を開始するときにスロースタート制御を回避して、より高速の送信データレートで送信することで、コンテンツデータの再生を開始するまでのユーザの再生待ち時間を短縮することができるコンテンツ配信システム、コンテンツ配信方法及びプログラムを提供することにある。
【課題を解決するための手段】
【００１０】
上記課題を解決するために、本発明の第１の形態によると、ユーザ端末から到来したコンテンツデータのダウンロード要求に応じてサーバ装置からユーザ端末へコンテンツデータを配信するコンテンツ配信システムであって、コンテンツデータを格納するコンテンツデータ記憶部と、コンテンツデータ記憶部が記憶しているコンテンツデータを取得して、送信データレートの初期値を低く設定して、徐々に送信データレートを高くするスロースタートアルゴリズムを用いた第１トランスポートプロトコルに基づいてコンテンツデータをユーザ端末へ送信する第１送信部と、コンテンツデータ記憶部が記憶しているコンテンツデータを取得して、スロースタートアルゴリズムが設定する送信データレートより高い送信データレートを設定する高速アルゴリズムを用いた第２トランスポートプロトコルに基づいてコンテンツデータをユーザ端末へ送信する第２送信部と、コンテンツデータの送信を開始したときは第２送信部が送信して、第２送信部が送信したコンテンツデータのデータ量が閾値に達した後に第１送信部がコンテンツデータの未送信データを送信するように制御する送信制御部とを備え、送信制御部は、第２トランスポートプロトコルがＴＣＰの場合、第２送信部から第１送信部に切り替えるときに、第１送信部の輻輳ウィンドウサイズの初期値を、第２送信部の送信終了時の輻輳ウィンドウサイズ、又は第１送信部が最初からコンテンツデータを送信したと仮定した場合の現在の輻輳ウィンドウサイズの推定値と等しくなるように再設定し、第２トランスポートプロトコルがＵＤＰの場合、第２送信部から第１送信部に切り替えるときに、サーバ装置とユーザ端末との間のＵＤＰによる配信を終了し、サーバ装置とユーザ端末との間でＴＣＰによるコネクションを確立する処理を行うと共に、第１送信部の輻輳ウィンドウサイズの初期値を、第２送信部の送信終了時の送信データレートと往復遅延時間とを乗算した値、又は第１送信部が最初からコンテンツデータを送信したと仮定した場合の現在の輻輳ウィンドウサイズの推定値と等しくなるように設定する。
【００１１】
本発明の第２の形態によると、ユーザ端末から到来したコンテンツデータのダウンロード要求に応じてサーバ装置からユーザ端末へコンテンツデータを配信するコンテンツ配信方法であって、コンテンツデータを格納するコンテンツデータ記憶段階と、コンテンツデータ記憶段階において記憶されているコンテンツデータを取得して、送信データレートの初期値を低く設定して、徐々に送信データレートを高くするスロースタートアルゴリズムを用いた第１トランスポートプロトコルに基づいてコンテンツデータをユーザ端末へ送信する第１送信段階と、コンテンツデータ記憶段階において記憶されているコンテンツデータを取得して、スロースタートアルゴリズムが設定する送信データレートより高い送信データレートを設定する高速アルゴリズムを用いた第２トランスポートプロトコルに基づいてコンテンツデータをユーザ端末へ送信する第２送信段階と、コンテンツデータの送信を開始したときは第２送信段階において送信されて、第２送信段階において送信されたコンテンツデータのデータ量が閾値に達した後に第１送信段階においてコンテンツデータの未送信データが送信されるように制御する送信制御段階とを含み、送信制御段階においては、第２トランスポートプロトコルがＴＣＰの場合、第２送信段階から第１送信段階に切り替えるときに、第１送信段階における輻輳ウィンドウサイズの初期値を、第２送信段階における送信終了時の輻輳ウィンドウサイズ、又は第１送信段階において最初からコンテンツデータを送信したと仮定した場合の現在の輻輳ウィンドウサイズの推定値と等しくなるように再設定し、第２トランスポートプロトコルがＵＤＰの場合、第２送信段階から第１送信段階に切り替えるときに、サーバ装置とユーザ端末との間のＵＤＰによる配信を終了し、サーバ装置とユーザ端末との間でＴＣＰによるコネクションを確立する処理を行うと共に、第１送信段階における輻輳ウィンドウサイズの初期値を、第２送信段階における送信終了時の送信データレートと往復遅延時間とを乗算した値、又は第１送信段階において最初からコンテンツデータを送信したと仮定した場合の現在の輻輳ウィンドウサイズの推定値と等しくなるように設定する。
【００１２】
本発明の第３の形態によると、ユーザ端末から到来したコンテンツデータのダウンロード要求に応じてユーザ端末へコンテンツデータを配信するサーバ装置として、コンピュータを機能させるプログラムであって、コンピュータを、コンテンツデータを格納するコンテンツデータ記憶部、コンテンツデータ記憶部が記憶しているコンテンツデータを取得して、送信データレートの初期値を低く設定して、徐々に送信データレートを高くするスロースタートアルゴリズムを用いた第１トランスポートプロトコルに基づいてコンテンツデータをユーザ端末へ送信する第１送信部、コンテンツデータ記憶部が記憶しているコンテンツデータを取得して、スロースタートアルゴリズムが設定する送信データレートより高い送信データレートを設定する高速アルゴリズムを用いた第２トランスポートプロトコルに基づいてコンテンツデータをユーザ端末へ送信する第２送信部、コンテンツデータの送信を開始したときは第２送信部が送信して、第２送信部が送信したコンテンツデータのデータ量が閾値に達した後に第１送信部がコンテンツデータの未送信データを送信するように制御する送信制御部として機能させ、送信制御部は、第２トランスポートプロトコルがＴＣＰの場合、第２送信部から第１送信部に切り替えるときに、第１送信部の輻輳ウィンドウサイズの初期値を、第２送信部の送信終了時の輻輳ウィンドウサイズ、又は第１送信部が最初からコンテンツデータを送信したと仮定した場合の現在の輻輳ウィンドウサイズの推定値と等しくなるように再設定し、第２トランスポートプロトコルがＵＤＰの場合、第２送信部から第１送信部に切り替えるときに、サーバ装置とユーザ端末との間のＵＤＰによる配信を終了し、サーバ装置とユーザ端末との間でＴＣＰによるコネクションを確立する処理を行うと共に、第１送信部の輻輳ウィンドウサイズの初期値を、第２送信部の送信終了時の送信データレートと往復遅延時間とを乗算した値、又は第１送信部が最初からコンテンツデータを送信したと仮定した場合の現在の輻輳ウィンドウサイズの推定値と等しくなるように設定するように機能させる。
【発明の効果】
【００１３】
本発明によれば、コンテンツデータの送信を開始するときにスロースタート制御を回避して、より高速の送信データレートで送信することで、コンテンツデータの再生を開始するまでのユーザの再生待ち時間を短縮することができるコンテンツ配信システム、コンテンツ配信方法及びプログラムが提供される。
【図面の簡単な説明】
【００１４】
【図１】本発明の実施形態に係るコンテンツ配信システムの構成図である。
【図２】同実施形態に係るコンテンツ配信方法のフローチャートである。
【発明を実施するための形態】
【００１５】
以下、本発明の実施の形態について、図面を用いて説明する。尚、すべての図面において、同様な構成要素には同様の符号を付し、適宜説明を省略する。
【００１６】
図１は、本発明の実施形態に係るコンテンツ配信システムの構成図である。ユーザ端末３から到来したコンテンツデータのダウンロード要求に応じてサーバ装置１からユーザ端末３へコンテンツデータを配信するコンテンツ配信システムであって、コンテンツデータを格納しているコンテンツデータ記憶部１１と、コンテンツデータ記憶部１１からコンテンツデータを取得して、送信データレートの初期値を低く設定して、徐々に送信データレートを高くするスロースタートアルゴリズムを用いた第１トランスポートプロトコルに基づいてコンテンツデータをユーザ端末３へ送信する第１送信部１３と、コンテンツデータ記憶部１１からコンテンツデータを取得して、スロースタートアルゴリズムが設定する送信データレートより高い送信データレートを設定する高速アルゴリズムを用いた第２トランスポートプロトコルに基づいてコンテンツデータをユーザ端末３へ送信する第２送信部１２と、コンテンツデータの送信を開始したときは第２送信部１２にコンテンツデータを送信させて、第２送信部１２の送信パラメータが閾値に達した後に第１送信部１３にコンテンツデータの未送信データを送信させる送信制御部１４と、を備えることができる。なお、ここでコンテンツデータとは、映像と音声のいずれか、または双方を含むものである。また、閾値は、コンテンツ配信事業者やユーザ端末３を利用しているユーザ等によって入力された指令に基づいて定めることができる。
【００１７】
本実施形態に係るコンテンツ配信システムの構成の全部または一部は、ハードウェアで実現されてもよいし、あるいは、プロセッサに処理を実行させるコンピュータプログラム（またはプログラムコード）で実現されてもよい。プロセッサは、不揮発性メモリなどの記録媒体からそのコンピュータプログラムを読み出し実行する。
【００１８】
第２送信部１２、第１送信部１３および送信制御部１４の機能がコンピュータプログラムで実現される場合、当該コンピュータプログラムは、ユーザ端末３から到来したコンテンツデータのダウンロード要求に応じてサーバ装置１からユーザ端末３へコンテンツデータを配信するためにサーバ装置１に実行させるコンピュータプログラムであって、コンテンツデータを取得して、送信データレートの初期値を低く設定して、徐々に送信データレートを高くするスロースタートアルゴリズムを用いた第１トランスポートプロトコルに基づいてコンテンツデータをユーザ端末３へ送信する第１送信処理と、コンテンツデータを取得して、スロースタートアルゴリズムが設定する送信データレートより高い送信データレートを設定する高速アルゴリズムを用いた第２トランスポートプロトコルに基づいてコンテンツデータをユーザ端末３へ送信する第２送信処理と、を備え、コンテンツデータの送信を開始するときは第２送信処理を実行し、第２送信処理の送信パラメータが閾値に達した後に第１送信処理を実行することにより、コンテンツデータの未送信データをユーザ端末へ送信させることができる。
【００１９】
本実施形態において、コンテンツデータの配信方式は、ＨＴＴＰ（Ｈｙｐｅｒｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）／ＴＣＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ）に基づいてコンテンツデータを配信するプログレッシブダウンロードである。この場合、サーバ装置１は、ウェブサーバもしくはＨＴＴＰサーバと称される装置であり、第１トランスポートプロトコルはＴＣＰである。これによって、ストリーミング専用サーバ装置およびストリーミング専用のトランスポートプロトコルを用いたシステムと比較して、容易にシステム構築ができる。
【００２０】
また、ネットワーク２は、サーバ装置１とユーザ端末３を上述のように接続できるコンピュータネットワークであればよく、たとえばインターネットやＬＡＮである。
【００２１】
ユーザ端末３は、ユーザの操作によってダウンロード要求を入力するユーザ入力部３１と、ダウンロード要求をサーバ装置１へ送信し、サーバ装置１からコンテンツデータを受信する情報通信部３２と、受信したコンテンツデータを格納するバッファ記憶部３３と、格納されたコンテンツデータを再生するコンテンツ再生部３４とを含むことができる。
【００２２】
第２送信部１２の送信パラメータは、第２送信部１２が送信したコンテンツデータのデータ量としてもよい。ここで、上述した閾値は、予めコンテンツ事業者やユーザ等によって定められたデータ量であり、できればコンテンツ再生を開始するために事前に必要なデータのデータ量（初期バッファデータのデータ量）と等しくすることが望ましい。この場合、初期バッファデータを高速に配信して、ユーザの再生待ち時間を最大限に短縮することができる。そして、残りのコンテンツデータは、ＴＣＰによって他のトラヒックに多大な負荷をかけずに高品質に配信することができる。
【００２３】
なお、初期バッファデータのデータ量は、コンテンツ配信事業者が全てのコンテンツデータに対して一律に定めてもよいし、コンテンツデータごとに定めてもよい。また、ユーザがユーザ入力部３１から入力した任意のデータ量としてもよい。また、コンテンツ配信事業者やユーザによって予め定められた再生待ち時間を取得し、当該希望再生待ち時間とサーバ装置１（の第２送信部１２）及びユーザ端末３間の伝送経路における送信データレートとを乗算することによって算出されたデータ量を初期バッファデータのデータ量としてもよい。
【００２４】
上記のように閾値と初期バッファデータのデータ量とはコンテンツ配信事業者やユーザ等によって入力された指令によって任意に定められる値であり、可変的な値である。閾値をデータ量として定めるとき、閾値の設定可能範囲は、初期バッファデータのデータ量に相当するデータ量を含むことが望ましい。これによって、閾値が、初期バッファデータのデータ量と等しくなるように定めることができる。すなわち、第２送信部１２から送信したコンテンツデータが初期バッファデータのデータ量に相当するデータ量に達した後に、送信制御部１４は第１送信部１３に未送信のコンテンツデータを送信させることも可能となる。
【００２５】
閾値が初期バッファデータのデータ量と等しく定められたとき、第１送信部１３がコンテンツデータ記憶部１１から取得するコンテンツデータのデータ量は、初期バッファデータを除く残りの送信対象部分のみでもよいし、コンテンツデータの全てでもよい。初期バッファデータを除く残りの送信対象部分のみを取得する場合、第１送信部１３が送信する時間を短縮することができる。なお、コンテンツデータの全てを取得する場合、ユーザ端末３は初期バッファデータを２度受信することになるので、これを破棄してもよい。また、第１送信部１３から受信した初期バッファデータを用いて、第２送信部１２から受信した初期バッファデータのうち、伝送損失した箇所を補完するなどに利用してもよい。
【００２６】
コンテンツデータ記憶部１１は、閾値および再生待ち時間のうち少なくとも一つを格納する領域（図示せず）を含んでもよい。これによって、第２送信部１２は、コンテンツデータ記憶部１１から閾値や再生待ち時間を取得することができる。
【００２７】
第２送信部１２から第１送信部１３にコンテンツデータの送信元を切替えるときに、送信制御部１４は、第１送信部１３と情報通信部３２との間にコネクションを確立するために必要な接続情報を第２送信部１２から取得して、第１送信部１３に伝送することができる。上記接続情報とは、たとえば、ユーザ端末３のＩＰアドレス、ユーザ端末３のポート番号、第２送信部１２が送信したコンテンツデータのコンテンツＩＤ、第２送信部１２が送信したコンテンツデータのデータ量および切替え時の第２送信部１２の送信速度などである。なお、送信済みのコンテンツデータのデータ量を示す情報としては、パケットやチャンクといったコンテンツデータの断片の個数などがある。また、切替えたときの第２送信部１２の送信速度を示す情報としては、第２送信部１２の送信データレートや輻輳ウィンドウサイズなどがある。
【００２８】
第１送信部１３と比較して第２送信部１２が高速な送信データレートにてコンテンツデータを送信できる手段を以下に例示する。たとえば、第２トランスポートプロトコルはＴＣＰであって、第２送信部１２は、閾値（初期バッファデータのデータ量）を予め設定された再生待ち時間で除算して求められた値と、サーバ装置１（の第２送信部１２）およびユーザ端末３間の往復遅延時間（送信側がデータを送出してから、受信側から「送達確認」が届くまでの時間）とを乗算して算出した値をＴＣＰの輻輳ウィンドウサイズの初期値として、コンテンツデータを送信してもよい。ここで、上記往復遅延時間は、直近の複数の通信のうちいずれか一つの通信における往復遅延時間を用いてもよいし、過去の通信の統計から往復遅延時間の平均値を算出して用いてもよいし、過去の通信の統計から往復遅延時間の最小値を用いてもよい。なお、上記再生待ち時間は、コンテンツ配信事業者やユーザ等によって任意に定められる。
【００２９】
また、第２トランスポートプロトコルはＴＣＰであって、第２送信部１２は、第２送信部１２およびユーザ端末３間の伝送経路における最も遅いリンク（ボトルネックリンク）の可用帯域幅と、第２送信部１２およびユーザ端末３間の往復遅延時間とを乗算して算出した値をＴＣＰの輻輳ウィンドウサイズの初期値として、コンテンツデータを送信してもよい。なお、ボトルネックリンクの可用帯域幅は、連続で送信される複数のパケット（パケットトレイン）の往復遅延時間の差分を算出することで求めることができる。
【００３０】
上記の手段は送信データレートの初期値の設定方法であり、第１送信部１３よりも第２送信部１２が高速な送信データレートにてコンテンツデータを送信するには、その変化量が次のようであってもよい。すなわち、サーバ装置１およびユーザ端末３間のデータ伝送が正常に実行されたとき、第２送信部１２の輻輳ウィンドウサイズの増加量が第１送信部１３の輻輳ウィンドウサイズの増加量以上であってもよい。または、サーバ装置１およびユーザ端末３間のデータ伝送に輻輳が発生したとき（送信したパケットが損失したとき）、第２送信部１２の輻輳ウィンドウサイズの減少量が第１送信部１３の輻輳ウィンドウサイズの減少量以下であってもよい。
【００３１】
なお、第２トランスポートプロトコルがＴＣＰの場合、第２送信部から第１送信部に切替えるときには、サーバ装置１およびユーザ端末３間の通信状況が初期化されるので、第１送信部１３の輻輳ウィンドウサイズの初期値を再設定する。このときに、送信制御部１４は、第２送信部１２の送信終了時の輻輳ウィンドウサイズを表す情報を取得し、第１送信部１３の輻輳ウィンドウサイズの初期値を第２送信部１２の送信終了時の輻輳ウィンドウサイズと等しくしてもよい。また、上記のような輻輳ウィンドウサイズの引継ぎを行わず、通常のＴＣＰのスロースタート制御に従って、送信制御部１４は第１送信部１３の輻輳ウィンドウサイズの初期値を設定してもよい。さらに、送信制御部１４は、第１送信部１３が最初からコンテンツデータを送信した場合の輻輳ウィンドウサイズを閾値（初期バッファデータのデータ量）から推定して、推定した輻輳ウィンドウサイズを第１送信部１３の輻輳ウィンドウサイズの初期値として設定してもよい。
【００３２】
さらに、第２トランスポートプロトコルはＵＤＰ（Ｕｓｅｒ  Ｄａｔａｇｒａｍ  Ｐｒｏｔｏｃｏｌ）であって、サーバ装置１（の第２送信部１２）は、閾値（初期バッファデータのデータ量）を予め設定された再生待ち時間で除算して求められた値を送信データレートとして、コンテンツデータを送信してもよい。なお、上記再生待ち時間も、コンテンツ配信事業者やユーザ等によって任意に定められる。
【００３３】
さらに、第２トランスポートプロトコルはＵＤＰであって、第２送信部１２は、サーバ装置１（の第２送信部１２）およびユーザ端末３間の伝送経路における最も遅いリンク（ボトルネックリンク）の可用帯域幅に対応する送信データレートを用いて、コンテンツデータを送信してもよい。
なお、上記ボトルネックの可用帯域幅も、連続で送信される複数のパケット（パケットトレイン）の往復遅延時間の差分を算出することで求めることができる。
【００３４】
なお、第２トランスポートプロトコルがＵＤＰの場合、第２送信部から第１送信部に切替えるときには、第２送信部１２と情報通信部３２との間のＵＤＰによる配信を終了し、第１送信部と情報通信部３２との間でＴＣＰによるコネクションを確立する処理を行う（通信セッションの張り直し）。ＴＣＰによるコネクションを確立する際には、第１送信部１３については、輻輳ウィンドウサイズの初期値も設定する。このときに、送信制御部１４は、通常のＴＣＰのスロースタート制御に従って、第１送信部１３の輻輳ウィンドウサイズの初期値を設定してもよい。また、送信制御部１４は、第１送信部１３が最初からコンテンツデータを送信した場合の輻輳ウィンドウサイズを閾値（初期バッファデータのデータ量）から推定して、推定した輻輳ウィンドウサイズを第１送信部１３の輻輳ウィンドウサイズの初期値として設定してもよい。さらに、送信制御部１４は、コンテンツの送信を行いながら可用帯域を実際に測定したり、または遅延時間やパケットロス率などの情報に基づいてＴＣＰに従った送信データレートの振る舞いを推定したりして、他のコネクションとの公平性の維持が可能な送信データレートを導出し、導出された送信データレートと往復遅延時間とを乗算した値を、第１送信部１３の輻輳ウィンドウサイズの初期値として設定してもよい。
【００３５】
図２は、本実施形態に係るコンテンツ配信方法のフローチャートである。すなわち、ユーザ端末３から到来したコンテンツデータのダウンロード要求に応じてサーバ装置１からユーザ端末３へコンテンツデータを配信するコンテンツ配信方法であって、コンテンツデータを取得して、送信データレートの初期値を低く設定して、徐々に送信データレートを高くするスロースタートアルゴリズムを用いた第１トランスポートプロトコルに基づいてコンテンツデータをユーザ端末３へ送信する第１送信ステップ（ステップＳ１０６）と、コンテンツデータを取得して、スロースタートアルゴリズムが設定する送信データレートより高い送信データレートを設定する高速アルゴリズムを用いた第２トランスポートプロトコルに基づいてコンテンツデータをユーザ端末３へ送信する第２送信ステップ（ステップＳ１０４）と、を備え、コンテンツデータの送信を開始するときは上記第２送信ステップ（ステップＳ１０４）を実行し、第２送信ステップの送信パラメータが閾値に達した（ステップＳ１０５のＹＥＳ）後に、上記第１送信ステップ（ステップＳ１０６）を実行することができる。以下に、その詳細を説明する。
【００３６】
まず、ユーザ入力部３１において、ユーザの操作によってダウンロード要求が入力される（ステップＳ１０１）。そして、入力されたダウンロード要求は、情報通信部３２およびネットワーク２を介してサーバ装置１の送信制御部１４に送信される（ステップＳ１０２）。送信制御部１４は、受信したダウンロード要求が示すコンテンツデータの送信開始を第２送信部１２に指令する。指令された第２送信部１２は、情報通信部３２との間にコネクションを確立する（ステップＳ１０３）。
【００３７】
次に、第２送信部１２は、コンテンツデータ記憶部１１からコンテンツデータを取得して、スロースタートアルゴリズムが設定する送信データレートより高い送信データレートを設定する高速アルゴリズムを用いた第２トランスポートプロトコルに基づいてコンテンツデータをユーザ端末３へ送信する（ステップＳ１０４）。そして、送信パラメータが閾値に達した後（ステップＳ１０５のＹＥＳ）に、第１送信部１３は、送信データレートの初期値を低く設定して、徐々に送信データレートを高くするスロースタートアルゴリズムを用いた第１トランスポートプロトコルに基づいて、コンテンツデータをユーザ端末３へ送信する（ステップＳ１０６）。なお、送信パラメータが閾値に達するまでの間（ステップＳ１０５のＮＯ）、第２送信部１２がコンテンツデータの送信を続ける。
【００３８】
本実施形態において、当該送信パラメータは、第２送信部１２がユーザ端末３へコンテンツデータを送信するステップ（ステップＳ１０４）にて送信したコンテンツデータのデータ量である。また、当該閾値は、初期バッファデータのデータ量であるので、送信したデータ量が初期バッファデータのデータ量に達した後（ステップＳ１０５のＹＥＳ）に、バッファ記憶部３３は初期バッファデータの格納を終え、バッファ記憶部３３からコンテンツデータを取得したコンテンツ再生部３４は、コンテンツデータの再生を開始する（ステップＳ１０７）。
【００３９】
第１送信部１３は、コンテンツデータをすべて送信したのちにＦＩＮパケットを送信してコンテンツデータの送信を終了とする（ステップＳ１０８）。ＦＩＮパケットを受信した情報通信部３２は、第１送信部１３とのコネクションを解放する。そして、コンテンツ再生部３４は、バッファ記憶部３３が格納したコンテンツデータをすべて再生したのちに終了する（ステップＳ１０９）。
【００４０】
以上、図面を参照して本発明の実施形態について述べたが、これらは本発明の例示であり、上記以外の様々な構成を採用することもできる。
【００４１】
たとえば、送信制御部１４は、システムの状況によっては、第１送信部１３及び第２送信部１２のうち少なくとも一方に対してコンテンツデータの全てを送信させてもよい。また、送信制御部１４は、システムの状況によっては、コンテンツデータの送信を開始したときは第１送信部１３に送信させて、第１送信部１３の送信パラメータが閾値に達した後に第２送信部１２にコンテンツデータの未送信データを送信させてもよい。
【００４２】
また、閾値が初期バッファデータのデータ量と相違するデータ量に定められたとき、送信制御部１４は、第２送信部が送信したコンテンツデータのデータ量が、定められたデータ量に達した後に、第１送信部１３にコンテンツデータの未送信データを送信させてもよい。すなわち、定められたデータ量が初期バッファデータのデータ量より少ないときは、ユーザ端末３としては再生を開始する前に受信データレートが低くなる（通常の受信データレートとなる）。逆に、定められたデータ量が初期バッファデータのデータ量より多いときは、ユーザ端末３としては再生を開始した後も、受信データレートが通常より高いままであり、当該所定のデータ量を受信した後に、受信データレートが低くなる（通常の受信データレートとなる）。
【００４３】
さらに、第２送信部１２の送信パラメータは、第２送信部１２が送信開始してからの時間としてもよい。ここで、閾値は、ユーザやコンテンツ配信事業者等によって予め任意に定められた時間としてもよく、上記再生待ち時間と等しくしてもよい。この場合、送信制御部１４は、コンテンツデータの送信を開始したときは第２送信部１２に送信させて、第２送信部１２がコンテンツデータを送信した時間が予め任意に定められた時間（再生待ち時間）に達した後に第１送信部１３にコンテンツデータの未送信データを送信させてもよい。すなわち、ユーザ端末３としては、初期バッファデータを取得するしないにかかわらず、予め任意に定められた時間（再生待ち時間）に達した後に、受信データレートが低くなる（通常の受信データレートとなる）。
【００４４】
さらに、サーバ装置１は、ユーザ端末３に「コンテンツデータを（全て）高速ダウンロードする」「初期バッファのみ高速ダウンロードする」「高速ダウンロードしない」等の選択肢を提示して、ユーザ端末３の選択に応じて送信制御部１４は、閾値を閾値＝∞（もしくは当該コンテンツデータのデータ量及び当該コンテンツデータの送信完了時間のうちいずれか一方）、閾値＝初期バッファデータのデータ量、閾値＝０などと判断して、判断された閾値に応じて第１送信部１３及び第２送信部１２を制御してもよい。
【００４５】
さらに、コンテンツデータ記憶部１１に格納するコンテンツデータはいずれから取得してもよく、外部のコンテンツ配信システムから取得してもよいし、外部の記憶装置に格納されているコンテンツデータを取得してもよい。
【００４６】
さらに、コンテンツデータ記憶部１１に閾値および再生待ち時間を格納する領域を含める構成がなくても、第２送信部１２がユーザがユーザ入力部３１から入力した閾値および再生待ち時間を取得するようにしてもよい。この場合、閾値および再生待ち時間はダウンロード要求とともに送信制御部１４に送信され、第２送信部１２は送信制御部１４を介して閾値および再生待ち時間を取得するようにしてもよい。
【産業上の利用可能性】
【００４７】
本発明によれば、コンテンツデータの送信を開始するときにスロースタート制御を回避して、より高速の送信データレートで送信することで、コンテンツデータの再生を開始するまでのユーザの再生待ち時間を短縮することができるコンテンツ配信システム、コンテンツ配信方法及びプログラムを提供することができる。
【符号の説明】
【００４８】
１  サーバ装置
１１  コンテンツデータ記憶部
１２  第２送信部
１３  第１送信部
１４  送信制御部
２  ネットワーク
３  ユーザ端末
３１  ユーザ入力部
３２  情報通信部
３３  バッファ記憶部
３４  コンテンツ再生部
【図１】
2015057890.tif 000003
【図２】
2015057890.tif 000004