(58)【調査した分野】(Int.Cl.,DB名)
クライアントデバイスにオーディオビジュアルコンテンツを配信する方法であって、相互接続デバイスが、前記オーディオビジュアルコンテンツを提供するように適合された装置が接続されている第1のネットワークを、前記クライアントデバイスが接続されている第2のネットワークに相互接続し、前記装置は、
− 前記クライアントデバイスから、前記オーディオビジュアルコンテンツを受け取るための第1の要求を受け取ることと、
− 前記オーディオビジュアルコンテンツの一時的な再配置を指示するリダイレクトメッセージであって、前記相互接続デバイス内に実装されているエージェントに向けて前記クライアントデバイスをリダイレクトするリダイレクトメッセージを前記クライアントデバイスに送信することと、
を実行し、前記エージェントは、
− 前記クライアントデバイスから、前記オーディオビジュアルコンテンツを受け取るための第2の要求を受け取ることと、
− 前記第2の要求に応答して、前記装置と前記クライアントデバイスとの間の中継器として動作することと、
を実行し、
前記リダイレクトメッセージが前記オーディオビジュアルコンテンツの一時的な再配置を指示することにより、前記クライアントデバイスが後で前記オーディオビジュアルコンテンツを取得しようと試みたとき、前記クライアントデバイスが再び前記装置にコンタクトし、
前記第1及び第2の要求は、前記オーディオビジュアルコンテンツをユニキャストストリームの形で受け取るための要求であり、前記装置は、前記オーディオビジュアルコンテンツをライブストリーミングで提供するように適合され、前記装置は、前記オーディオビジュアルコンテンツが前記装置によって少なくとも1つのマルチキャストストリームの形で利用可能になっている時に前記リダイレクトメッセージを前記クライアントデバイスに送信し、前記エージェントは、中継器として動作する際に、
− 前記少なくとも1つのマルチキャストストリームに参加することと、
− 前記少なくとも1つのマルチキャストストリームの形で受け取ったデータを、前記ユニキャストストリームの形のデータに変換することと、
を実行する、
ことを特徴とする方法。
− 前記リダイレクトメッセージは、前記少なくとも1つのマルチキャストストリームの形の前記オーディオビジュアルコンテンツに利用可能になっているレイヤの数量を通知するパラメータを含み、
− 前記オーディオビジュアルコンテンツを前記ユニキャストストリームの形で受け取るための前記要求は、前記レイヤの数量を通知する前記パラメータを含み、
− 前記エージェントは、前記レイヤの数量に応じて、少なくとも1つのマルチキャストアドレス及び/又は少なくとも1つの関連ポートを決定する、
ことを特徴とする請求項1又は2に記載の方法。
前記少なくとも1つのマルチキャストストリームの形の前記オーディオビジュアルコンテンツに複数のレイヤが利用可能になっており、前記装置は、ハイパーテキスト転送プロトコルライブストリーミングを用いて前記オーディオビジュアルコンテンツを提供するように適合され、
− 前記リダイレクトメッセージは、前記オーディオビジュアルコンテンツのためのプレイリストに関連するユニフォームリソースロケータを表すパラメータを含み、
− 前記オーディオビジュアルコンテンツを前記ユニキャストストリームの形で受け取るための前記要求は、前記ユニフォームリソースロケータを表す前記パラメータを含み、 前記エージェントは、
− 前記ユニフォームリソースロケータに基づいて前記プレイリストを要求することと、
− 前記プレイリストを受け取ることと、
− 前記プレイリストに解析動作を行って、各レイヤに関連する1つのプレイリストを決定することと、
− 各参加したマルチキャストストリームから1つのレイヤプレイリストを受け取ることと、
− 前記受け取った(単複の)プレイリストを前記クライアントデバイスに送信することと、
− 前記クライアントデバイスから、1つのレイヤに関連するプレイリストを指示する要求、又は1つのレイヤに関連するプレイリストのファイルを指示する要求を受け取ることと、
− 前記1つのレイヤに関連する前記指示されたプレイリスト又は前記指示されたファイルに応じてマルチキャストストリームを選択することと、
を実行する、
ことを特徴とする請求項1から5のいずれかに記載の方法。
前記少なくとも1つのマルチキャストストリームの形の前記オーディオビジュアルコンテンツに複数のレイヤが利用可能になっており、前記エージェントは、1つのレイヤに対応する1つのマルチキャストストリームに参加しており、前記エージェントは、
− 前記クライアントデバイスが前記1つのレイヤから別のレイヤへの切り替えを行う必要性を検出することと、
− 前記別のレイヤに対応するマルチキャストストリームに参加することと、
− 前記1つのレイヤに対応する前記マルチキャストストリームから離脱することと、を実行する、
ことを特徴とする請求項1から5のいずれかに記載の方法。
前記少なくとも1つのマルチキャストストリームの形の前記オーディオビジュアルコンテンツに複数のレイヤが利用可能になっており、前記エージェントは、1つのレイヤ及び別のレイヤにそれぞれ対応する少なくとも2つのマルチキャストストリームに参加しており、前記エージェントは、
− 前記クライアントデバイスがレイヤ間で切り替えを行う必要性を検出することと、 − 前記検出された必要性に応じて、前記少なくとも2つのマルチキャストストリームのうちの一方のマルチキャストストリームからのデータを選択することと、
を実行する、
ことを特徴とする請求項1から5のいずれかに記載の方法。
クライアントデバイスにオーディオビジュアルコンテンツを配信するためのシステムであって、前記オーディオビジュアルコンテンツを提供するように適合された装置と、該装置が接続されることを目的とする第1のネットワークを、前記クライアントデバイスが接続されている第2のネットワークに相互接続することを目的とする相互接続デバイスとを備え、前記装置は、
− 前記オーディオビジュアルコンテンツを受け取るための第1の要求を受け取る手段と、
− 前記オーディオビジュアルコンテンツの一時的な再配置を指示するリダイレクトメッセージであって、前記相互接続デバイス内に実装されているエージェントに向けて前記クライアントデバイスをリダイレクトすることを目的とするリダイレクトメッセージを送信する手段と、
を有し、前記エージェントは、
− 前記オーディオビジュアルコンテンツを受け取るための第2の要求を受け取る手段と、
− 前記第2の要求に応答して、前記装置と前記クライアントデバイスとの間の中継器として動作する手段と、
を有し、
前記リダイレクトメッセージが前記オーディオビジュアルコンテンツの一時的な再配置を指示することにより、前記クライアントデバイスが後で前記オーディオビジュアルコンテンツを取得しようと試みたとき、前記クライアントデバイスが再び前記装置にコンタクトし、
前記第1及び第2の要求は、前記オーディオビジュアルコンテンツをユニキャストストリームの形で受け取るための要求であり、前記装置は、前記オーディオビジュアルコンテンツをライブストリーミングで提供するように適合され、前記装置は、前記オーディオビジュアルコンテンツが前記装置によって少なくとも1つのマルチキャストストリームの形で利用可能になっている時に前記リダイレクトメッセージを前記クライアントデバイスに送信し、前記エージェントは、中継器として動作する際に、
− 前記少なくとも1つのマルチキャストストリームに参加することと、
− 前記少なくとも1つのマルチキャストストリームの形で受け取ったデータを、前記ユニキャストストリームの形のデータに変換することと、
を実行する、
ことを特徴とするシステム。
【発明の概要】
【発明が解決しようとする課題】
【0005】
HTTPは、TCP(規範文書RFC793によって規定される「伝送制御プロトコル」)に依拠することによってファイアウォールの通過を可能にするとともにデータの完全性を保証するので、HTTPベースのストリーミング技術は非常に便利である。しかしながら、ABSの状況におけるHTTPのユニキャスト性は、コンテンツデリバリネットワーク(CDN)のオペレータに対し、ライブストリーミングにABSを採用することを妨げるという大規模なスケーラビリティ問題を引き起こす。さらに、TCPがレイテンシをもたらす可能性もあり、データ転送中の接続ロスは、ユーザの立場から見た体感品質(QoE)に強い影響を与える。
【0006】
ライブストリーミングのためにABSをスケーラブルに実行するには、数多くのユーザが同時に同じチャネルを視聴する結果、数多くのユニキャストセッションが同時に生じることによって引き起こされるスケーラビリティ問題をネットワークサービスのオペレータが解決する必要がある。
【0007】
注目すべきは、オーディオビジュアルコンテンツを搬送するストリームのビットレートが適応的なものであれ又は固定的なものであれ、このような問題が、ユニキャストセッションに基づくオーディオビジュアルコンテンツ配信という一般的な状況で生じる点である。
【0008】
より一般的に言えば、問題が生じるのは、CDNオペレータがCDNにおいて新たなインフラ又はサービスを提供し、又は提供しようと考えているにも関わらず、クライアントデバイスが既存の機構に依拠している時である。通常、クライアントデバイスは、CDNオペレータ以外の団体によって開発されたものであるため、これらの新たなインフラ及び/又はサービスを採用するようにクライアントデバイスをアップグレードすることは設定が困難となり得る。実際に、ゲートウェイとは異なり、このようなクライアントデバイスは、例えばCDNオペレータとは関係のない企業によって開発された、スマートフォン、タブレット、PC(パーソナルコンピュータ)ゲーム機、コネクテッドTVなどにおいて動作するアプリケーションソフトウェアであり、また市場には多くのアプリケーション又はプレーヤが存在しており、従って全てのアプリケーション又はプレーヤがこれらの新たなインフラ又はサービスに対応できるようにするにはコストのかかる統合及び検証過程が必要になる。
【0009】
第1の態様によれば、このような新たなインフラ又はサービスは、CDNを背景とした既存のコンテンツ配信機構のユニキャスト性に関連する上述のスケーラビリティ問題をクライアントデバイスにとって透過的な形で克服することを目的とする。
【0010】
第2の態様によれば、このような新たなインフラ又はサービスは、ユーザの立場から見て改善されたQoEを、クライアントデバイスにとって透過的な形で提供することを目的とする。例えば、このような新たなインフラ又はサービスは、AVコンテンツの配信中における接続ロスによるQoEへの影響を克服することを目的とする。
【0011】
上述した先行技術の短所を克服することが望ましい。
【0012】
具体的には、オーディオビジュアルコンテンツ配信の状況において新たなインフラ又はサービスの導入を可能にする解決策をクライアントデバイスにとって透過的な形で提供することが望ましい。
【0013】
さらに、オーディオビジュアルコンテンツ配信の状況においてネットワーク帯域幅消費の削減を可能にする解決策をクライアントデバイスにとって透過的な形で提供することが望ましい。
【0014】
アダプティブビットレートストリーミングというさらなる状況においてネットワーク帯域幅消費の削減を可能にする解決策をクライアントデバイスにとって透過的な形で提供することがさらに望ましい。
【0015】
さらに、ユーザの立場から見たQoEの向上を可能にする解決策をクライアントデバイスにとって透過的な形で提供することが望ましい。
【0016】
オーディオビジュアルコンテンツの配信において示唆されるデバイスの処理リソース消費の制限を可能にする解決策を提供することがさらに望ましい。
【課題を解決するための手段】
【0017】
このため、本発明は、クライアントデバイスにオーディオビジュアルコンテンツを配信する方法に関し、相互接続デバイスが、オーディオビジュアルコンテンツを提供するように適合された装置が接続されている第1のネットワークを、クライアントデバイスが接続されている第2のネットワークに相互接続する。この方法では、上記装置が、オーディオビジュアルコンテンツを受け取るための第1の要求をクライアントデバイスから受け取るステップと、相互接続デバイス内に実装されているエージェントに向けてクライアントデバイスをリダイレクトするリダイレクトメッセージをクライアントデバイスに送信するステップとを実行する。さらに、この方法では、エージェントが、オーディオビジュアルコンテンツを受け取るための第2の要求をクライアントデバイスから受け取るステップと、この第2の要求に応答して、上記装置とクライアントデバイスとの間の中継器として動作するステップとを実行する。
【0018】
相互接続デバイス内のエージェントに向けたリダイレクトを行うことにより、新たなインフラ又はサービスの採用が容易になるとともに、クライアントデバイスにとって透過的に行われる。実際に、例えばホームゲートウェイなどの相互接続デバイスは、クライアントデバイスとは違って一般にオペレータによって管理されているので、一般にCDNオペレータにとっては、必要時にこのような相互接続デバイスのアップグレードを行うことの方がクライアントデバイスをアップグレードするよりも容易である。
【0019】
特定の特徴によれば、上記第1及び第2の要求は、オーディオビジュアルコンテンツをユニキャストストリームの形で受け取るための要求であり、上記装置は、オーディオビジュアルコンテンツをライブストリーミングで提供するように適合され、上記装置は、オーディオビジュアルコンテンツが上記装置によって少なくとも1つのマルチキャストストリームの形で利用可能になっている時にリダイレクトメッセージをクライアントデバイスに送信し、上記エージェントは、中継器として動作する時に、上記少なくとも1つのマルチキャストストリームに参加するステップと、少なくとも1つのマルチキャストストリームの形で受け取ったデータをユニキャストストリームの形のデータに変換するステップとを実行する。
【0020】
従って、第1のネットワークの帯域幅消費が削減され、相互接続デバイスの処理リソースの消費が制限される。実際に、エージェントは、第1のネットワーク全体にわたるマルチキャスト送信をセットアップする恩恵を確実にクライアントデバイスが受けるようにするために数多くのメッセージ交換をスヌープする必要がないので、処理リソースの消費が制限される。
【0021】
特定の特徴によれば、リダイレクトメッセージは、少なくとも1つのマルチキャストアドレスと、少なくとも1つの関連ポートとを通知するパラメータを含み、オーディオビジュアルコンテンツをユニキャストストリームの形で受け取るための要求は、少なくとも1つのマルチキャストアドレスと、少なくとも1つの関連ポートとを通知する上記パラメータを含む。さらに、この方法では、上記エージェントが、少なくとも1つのマルチキャストアドレス及び少なくとも1つの関連ポートに対応する少なくとも1つのマルチキャストストリームに参加する。
【0022】
従って、この方法は、上記装置の効果的な場所及び実装に関わらず、フレキシブルかつスケーラブルである。
【0023】
特定の特徴によれば、リダイレクトメッセージは、少なくとも1つのマルチキャストストリームの形のオーディオビジュアルコンテンツに利用可能になっているレイヤの数量を通知するパラメータを含み、オーディオビジュアルコンテンツをユニキャストストリームの形で受け取るための要求は、レイヤの数量を通知する上記パラメータを含む。さらに、上記エージェントは、上記レイヤの数量に応じて、少なくとも1つのマルチキャストアドレス及び/又は少なくとも1つの関連ポートを決定する。
【0024】
従って、第1のネットワーク全体にわたるマルチキャスト送信と、アダプティブビットレートストリーミングの原理とが、オーディオビジュアルコンテンツの配信のために共存することができる。
【0025】
特定の特徴によれば、リダイレクトメッセージは、1つのマルチキャストアドレス及び1つの関連ポートを通知するとともに上記レイヤの数量を通知するパラメータを含み、オーディオビジュアルコンテンツをユニキャストストリームの形で受け取るための要求は、上記1つのマルチキャストアドレス及び上記1つの関連ポートを通知するとともに上記レイヤの数量を通知する上記パラメータを含む。さらに、上記エージェントは、上記要求に含まれる上記レイヤの数量、並びに上記1つのマルチキャストアドレス及び上記1つの関連ポートに応じて、レイヤ毎に1つのマルチキャストアドレスと、1つの関連ポートとを決定する。
【0026】
特定の特徴によれば、リダイレクトメッセージは、1つのマルチキャストアドレス及び1つの関連ポートを通知するとともに上記レイヤの数量を通知するパラメータを含み、オーディオビジュアルコンテンツをユニキャストストリームの形で受け取るための要求は、上記1つのマルチキャストアドレス及び上記1つの関連ポートを通知するとともに上記レイヤの数量を通知する上記パラメータを含む。さらに、上記エージェントは、上記要求に含まれる上記レイヤの数量、並びに上記1つのマルチキャストアドレス及び上記1つの関連ポートに応じて、全てのレイヤのための1つのマルチキャストアドレスと、レイヤ毎に1つの関連ポートとを決定する。
【0027】
従って、前述の2つの特定の特徴により、リダイレクトメッセージに含めるデータ量を制限できるようになる。
【0028】
特定の特徴によれば、少なくとも1つのマルチキャストストリームの形のオーディオビジュアルコンテンツに複数のレイヤが利用可能になっており、上記装置は、ハイパーテキスト転送プロトコルライブストリーミングを用いてオーディオビジュアルコンテンツを提供するように適合され、リダイレクトメッセージは、オーディオビジュアルコンテンツのためのプレイリストに関連するユニフォームリソースロケータを表すパラメータを含み、オーディオビジュアルコンテンツをユニキャストストリームの形で受け取るための要求は、ユニフォームリソースロケータを表す上記パラメータを含む。さらに、上記エージェントは、上記ユニフォームリソースロケータに基づいて上記プレイリストを要求するステップと、上記プレイリストを受け取るステップと、上記プレイリストに解析動作を行って、各レイヤに関連する1つのプレイリストを決定するステップと、各参加したマルチキャストストリームから1つのレイヤプレイリストを受け取るステップと、上記受け取った(単複の)プレイリストをクライアントデバイスに送信するステップと、1つのレイヤに関連するプレイリストを指示する要求、又は1つのレイヤに関連するプレイリストのファイルを指示する要求をクライアントデバイスから受け取るステップと、1つのレイヤに関連する上記指示されたプレイリスト又は上記指示されたファイルに応じてマルチキャストストリームを選択するステップとを実行する。
【0029】
従って、HLSの状況において、第1のネットワークの帯域幅消費が削減され、相互接続デバイスの処理リソース消費が制限される。
【0030】
特定の特徴によれば、少なくとも1つのマルチキャストストリームの形のオーディオビジュアルコンテンツに複数のレイヤが利用可能になっており、エージェントは、1つのレイヤに対応する1つのマルチキャストストリームに参加しており、上記エージェントは、クライアントデバイスが上記1つのレイヤから別のレイヤへの切り替えを行う必要性を検出するステップと、上記別のレイヤに対応するマルチキャストストリームに参加するステップと、上記1つのレイヤに対応するマルチキャストストリームから離脱するステップとを実行する。
【0031】
従って、帯域幅消費とシステムの応答性との間のトレードオフが発見され、第1のネットワークに関する帯域幅消費が改善される。
【0032】
特定の特徴によれば、少なくとも1つのマルチキャストストリームの形のオーディオビジュアルコンテンツに複数のレイヤが利用可能になっており、エージェントは、1つのレイヤ及び別のレイヤにそれぞれ対応する少なくとも2つのマルチキャストストリームに参加しており、上記エージェントは、クライアントデバイスがレイヤ間で切り替えを行う必要性を検出するステップと、上記検出された必要性に応じて、上記少なくとも2つのマルチキャストストリームのうちの一方のマルチキャストストリームからのデータを選択するステップとを実行する。
【0033】
従って、帯域幅消費とシステムの応答性との間のトレードオフが発見され、応答性が改善される。
【0034】
特定の特徴によれば、上記第1及び第2の要求は、オーディオビジュアルコンテンツをユニキャストストリームの形で受け取るための要求であり、上記装置は、複数のソースによってオーディオビジュアルコンテンツが利用可能になっている時にクライアントデバイスにリダイレクトメッセージを送信し、上記エージェントは、中継器として動作する際に、上記オーディオビジュアルコンテンツを上記複数のソースに要求するステップと、上記複数のソースから受け取ったデータからユニキャストストリームを再現するステップとを実行する。
【0035】
従って、クライアントデバイスを使用するユーザの立場から見たQoEが向上する一方で、相互接続デバイスの処理リソース消費が制限され、及び/又は第1のネットワークのロードバランシングが改善される。
【0036】
特定の特徴によれば、リダイレクトメッセージは、オーディオビジュアルコンテンツがどのソースから利用可能になっているかを通知するパラメータを含み、オーディオビジュアルコンテンツをユニキャストストリームの形で受け取るための要求は、上記パラメータを含む。
【0037】
従って、この方法は、上記複数のソースの効果的な場所及び実装に関わらずフレキシブルかつスケーラブルである。
【0038】
特定の特徴によれば、上記相互接続デバイスはホームゲートウェイであり、上記複数のソースは、上記装置のサーバ及び/又は他のホームゲートウェイである。
【0039】
従って、ロードバランシングをさらに改善することができる。
【0040】
特定の特徴によれば、リダイレクトメッセージは、オーディオビジュアルコンテンツの一時的な再配置を指示する。
【0041】
従って、クライアントデバイスが、後でオーディオビジュアルコンテンツを取得しようと試みた時に再び確実に上記装置にコンタクトできるようになる。従って、上記装置は、オーディオビジュアルコンテンツが依然として少なくとも1つのマルチキャストストリームの形で利用可能になっているかどうかをチェックすることができる。
【0042】
本発明は、クライアントデバイスにオーディオビジュアルコンテンツを配信するためのシステムにも関し、このシステムは、上記オーディオビジュアルコンテンツを提供するように適合された装置と、この装置が接続されることを目的とする第1のネットワークを、クライアントデバイスが接続されている第2のネットワークに相互接続することを目的とする相互接続デバイスとを備える。さらに、このシステムでは、上記装置が、オーディオビジュアルコンテンツを受け取るための第1の要求を受け取る手段と、相互接続デバイス内に実装されているエージェントに向けてクライアントデバイスをリダイレクトすることを目的とするリダイレクトメッセージを送信する手段とを有する。さらに、このシステムでは、上記エージェントが、オーディオビジュアルコンテンツを受け取るための第2の要求を受け取る手段と、この第2の要求に応答して、上記装置とクライアントデバイスとの間の中継器として動作する手段とを有する。
【0043】
本発明は、通信ネットワークからダウンロードすることができ、及び/又は処理装置によって読み取ることができる媒体に記憶することができるコンピュータプログラムにも関する。このコンピュータプログラムは、プロセッサによって実行された時に上述の方法を実施させるための命令を含む。本発明は、このようなコンピュータプログラムを含むコンピュータプログラムを記憶する情報記憶手段にも関する。
【0044】
上述のシステム及びコンピュータプログラムに関連する特徴及び利点は、対応する上述の方法に関連して説明した特徴及び利点と同じものであり、ここでは説明を繰り返さない。
【0045】
本発明の特徴は、添付図面を参照しながら行う以下の実施形態例の説明を読むことによってさらに明らかになるであろう。
【発明を実施するための形態】
【0047】
オーディオビジュアルコンテンツ配信の状況において、処理リソースの消費を制限しながらクライアントデバイスが新たなCDNインフラ又はサービスから恩恵を受けられるようにするために、オーディオビジュアルコンテンツを提供する装置宛てのリダイレクト要求を、この装置が接続されているネットワークと、クライアントデバイスが接続されているネットワークとを相互接続するネットワーク相互接続デバイス内に存在するエージェントにリダイレクトすることを提案する。このエージェントは、これに応答して、装置と、オーディオビジュアルコンテンツ配信の対象である少なくとも1つのクライアントデバイスとの間の中継器として動作する。要求をリダイレクトすることにより、相互接続デバイスを介して転送されるメッセージをエージェントがスヌープする必要なくこの目的を達成することができ、これにより相互接続デバイスの処理リソース消費が制限される。パフォーマンスの向上以外にも、提案するエージェントの障害がネットワーク相互接続デバイスの他のサービスに影響を及ぼすことはないと考えられ、このことは、相互接続デバイスを介して転送されるメッセージをエージェントがスヌープする必要がある場合には当てはまらない。相互接続デバイスがホームゲートウェイであると考えた場合、このようなスヌーピングを行うエージェントに障害が生じると、ブロードバンド接続がシャットダウンされてしまう。この場合、加入者は、ボイスオーバーIP、データ及びテレビなどの異なる重要サービスの喪失を被る必要性が生じる。さらに、提案するエージェントは、ネットワーク相互接続デバイスを通過する全てのトラフィックを傍受するわけではないので、プライバシー/機密性の問題は生じないと考えられる。
【0048】
図1Aに、本発明による第1のシステムを概略的に示す。このシステムは、第1のネットワーク110と第2のネットワーク120を相互接続するように適合されたホームゲートウェイなどのネットワーク相互接続デバイス101を含む。システムは、CDNを通じてオーディオビジュアル(AV)コンテンツの記述を入手できるウェブサイトを提供するポータルサーバをさらに含む。システムは、ウェブサイトを介して記述されるAVコンテンツにアクセスしてさらにユーザに表示できるようにするCDNサーバ112をさらに含む。CDNサーバ112は、要求時にAVコンテンツをユニキャストで配信するように適合される。CDNサーバ112は、上述したAVコンテンツの記述において、上記AVコンテンツを提供する装置として参照される。システムは、上記AVコンテンツの一部又は全部をマルチキャストで配信するように適合されたマルチキャストサーバ113などの追加サーバをさらに含むことができる。ポータルサーバ111、CDNサーバ112及び上記追加サーバは、第1のネットワーク110に接続される。
【0049】
なお、ポータルサーバ111、CDNサーバ112及び上記追加サーバは、単一のハードウェアプラットフォーム上に実装される機能に対応することができる。換言すれば、ポータルサーバ111、CDNサーバ112及びマルチキャストサーバ113は、第1のネットワーク110に接続されてクライアントデバイスにAVコンテンツを提供するように適合された装置を構成する。
【0050】
好ましい実施形態では、CDNサーバ112が、HLSを用いてAVコンテンツを配信するように適合され、従ってABSの実装を可能にする。しかしながら、CDNサーバ112が、スムーズストリーミング、HDS又はMPEG DASHを用いてAVコンテンツを配信するように適合されている場合にも同じ原理が当てはまる。
【0051】
1つの実施形態では、マルチキャストサーバ113が、UDP(規範文書RFC768によって規定される「ユーザデータグラムプロトコル」)上のRTP(規範文書RFC3550によって規定される「リアルタイムトランスポートプロトコル」)を用いて、上記AVコンテンツのうちの少なくとも1つのAVコンテンツを配信するように適合される。
【0052】
ネットワーク相互接続デバイス101が第1のネットワーク110と第2のネットワーク120を相互接続することにより、第2のネットワーク120に接続されたクライアントデバイス121は、このネットワーク相互接続デバイス101を介して、ポータルサーバ111、CDNサーバ112及び上記追加サーバによって提供されるサービスにアクセスできるようになる。ネットワーク相互接続デバイス101は、CDN装置とクライアントデバイス121の間の中継器として動作するエージェント102を含む。エージェント102及びCDN装置の動作については、以下で
図3〜
図6に関連して詳細に説明する。
【0053】
図1Bに、本発明による第2のシステムを概略的に示す。
図1Bのシステムは、マルチキャストサーバ113が複数のAVサーバ114、115に置き換わっている点を除き、
図1Aのシステムと同様のものである。各AVサーバは、潜在的に異なるビットレート、すなわちレイヤでAVコンテンツの少なくとも一部を配信することができる。AVサーバ114、115は、全体として見れば完全なAVコンテンツを提供するように適合されるが、各AVサーバ114、115は、AVコンテンツの一部、又はCDNにおいて利用できるAVコンテンツのためのレイヤのサブセットのみを提供できればよい。第1の例によれば、AVサーバ114がAVコンテンツを低解像度で提供し、AVサーバ115がAVコンテンツを高解像度で提供することができる。第2の例によれば、AVサーバ114が各AVコンテンツの一部を提供し、AVサーバ115が各AVコンテンツの残り部分を提供することができる。第3の例によれば、各AVサーバ114、115が全てのAVコンテンツを低解像度及び高解像度で提供することができる。AVサーバ114、115は、AVコンテンツの配信中におけるユーザの立場から見たQoEを向上させるために、及び/又は第1のネットワーク110におけるロードバランシングを改善するために併用することができる。
【0054】
図1A及び
図1Bには、システムの動作中に行われるデータ交換を表す矢印を実線及び点線で示しているが、これについては以下で
図3、
図4及び
図6に関連して詳細に説明する。
【0055】
図2に、ネットワーク相互接続デバイス101、及び/又はポータルサーバ111、及び/又はCDNサーバ112、及び/又はマルチキャストサーバ113、及び/又はAVサーバ114、115のアーキテクチャを概略的に示す。
図2を、ネットワーク相互接続デバイス101に関して説明しているものとして検討する。
【0056】
図示のアーキテクチャによれば、ネットワーク相互接続デバイス101は、プロセッサ、マイクロプロセッサ、マイクロコントローラ又はCPU(中央処理装置)200と、RAM(ランダムアクセスメモリ)201と、ROM(リードオンリメモリ)202と、HDD(ハードディスクドライブ)203、又は記憶手段に記憶された情報を読み取るようになっている他のいずれかのデバイスと、第1の通信インターフェイス204と、第2の通信インターフェイス205とを含み、これらは通信バス210によって相互接続される。
【0057】
第1の通信インターフェイス204は、ネットワーク相互接続デバイス101を第1のネットワーク110に接続できるようにする。第2の通信インターフェイス205は、ネットワーク相互接続デバイス101を第2のネットワーク120に接続できるようにする。なお、ポータルサーバ111、CDNサーバ112又はマルチキャストサーバ113については、関連するサーバを第1のネットワーク110に接続するための通信インターフェイスを1つだけ実装していればよい。
【0058】
CPU200は、ROM202、又はHDD203などの外部メモリからRAM201にロードされた命令を実行することができる。CPU200は、ネットワーク相互接続デバイス101の電源投入後にRAM201から命令を読み取って実行することができる。これらの命令は、以下で
図3及び
図4に関連して説明する、ネットワーク相互接続デバイス101によって実行されるステップをCPU200に実行させる1つのコンピュータプログラムを形成する。なお、これらのステップは、PC、DSP(デジタルシグナルプロセッサ)又はマイクロコントローラなどのプログラム可能なコンピュータ機械による命令又はプログラムセットの実行によってソフトウェアの形で実装することも、或いは、機械、又はFPGA(フィールドプログラマブルゲートアレイ)又はASIC(特定用途向け集積回路)などの専用コンポーネントによってハードウェアの形で実装することもできる。
【0059】
図3に、
図1A又は
図1Bのシステムによって実施されるAVコンテンツ配信のためのアルゴリズムを概略的に示す。
【0060】
ステップ301において、クライアントデバイス121が、CDNを介して利用可能になっているAVコンテンツの記述をポータルサーバ111がクライアントデバイス121に提供するように要求する。この要求は、上記AVコンテンツの記述を参照するURL(「ユニフォームリソースロケータ」)へのユニキャストHTTP要求の形で行われることが好ましい。この要求は、クライアントデバイス121により、ネットワーク相互接続デバイス101を介してポータルサーバ111に送信される。
【0061】
次のステップ302において、ポータルサーバ111は、ステップ301で送信された要求に応答して、CDNを介して利用可能になっているAVコンテンツの記述を送信する。この応答は、ポータルサーバ111により、ネットワーク相互接続デバイス101を介してクライアントデバイス121に送信される。この記述は、上記AVコンテンツのリストと、それぞれのAVコンテンツをCDNサーバ112から取得できるそれぞれのURLとを含む。この記述は、それぞれのAVコンテンツから抽出された画像のサムネイル、又は上記それぞれのAVコンテンツを表す画像のサムネイルをさらに含むことができ、これによってクライアントデバイス121は、これらのサムネイルから構築されたタイルをグラフィックユーザインターフェイスに表示できるようになる。
【0062】
ステップ301及び302の実行に関連するメッセージ交換については、
図1Aに矢印131で、
図1Bに矢印141で示している。
【0063】
次のステップ303において、クライアントデバイス121は、利用可能なAVコンテンツのリストのうちの1つのAVコンテンツの選択をユーザからユーザインターフェイスを介して取得する。
【0064】
なお、より一般的な実施形態では、ステップ301及び302を実行することなくAVコンテンツの選択を自動的に実行することができる。例えば、クライアントデバイス121は、CDNサーバ112によって提供されたAVコンテンツを示すURLを電子メールなどのメッセージで受け取る。
【0065】
次のステップ304において、クライアントデバイス121は、選択されたAVコンテンツをCDNサーバ112に要求する。この要求は、m3u8の拡張子が付いたプレイリストファイルを参照するHTTP GETメッセージの形であることが好ましい。
【0066】
次のステップ305において、CDNサーバ112は、そのAVコンテンツが、クライアントデバイス121が対応していないと予想される新たなインフラ又はサービスに関連するものであるかどうかをチェックする。
【0067】
選択されたAVコンテンツが新たなインフラ又はサービスに関連する場合には、ステップ307を実行する。その他の場合には、ステップ306を実行する。
【0068】
ステップ306において、CDNサーバ112は、ネットワーク相互接続デバイス101を介して、選択されたAVコンテンツをクライアントデバイス121に提供する。AVコンテンツは、HLS技術を用いて、すなわちこのAVコンテンツを表すトランスポートストリームのチャンクを各々が含む一連の小さなHTTPベースのファイルダウンロードの形でCDNサーバ112によって配信されることが好ましい。このダウンロードは、ユニキャストHTTP要求応答に基づいて行われる。その後、アルゴリズムは終了する。
【0069】
ステップ307において、CDNサーバ112は、IP(規範文書RFC791によって規定される「インターネットプロトコル」)アドレスとポートのTCP連結によって識別される別の場所にクライアントデバイス121をリダイレクトする旨を示すリダイレクトメッセージをクライアントデバイス121に送信する。このIPアドレスとポートのTCP連結は、相互接続デバイス101のエージェント102によって管理される。
【0070】
このリダイレクトメッセージは、オーディオビジュアルコンテンツの一時的再配置を示すことが好ましい。要求されたリソースが一時的に別の場所に存在する旨を示すことにより、クライアントデバイス121は、後でこのAVコンテンツを取得しようと試みた時に、再び確実にCDNサーバ112にコンタクトできるようになる。従って、CDNサーバ112は、クライアントデバイス121が対応していないと予想される新たなインフラ又はサービスが依然としてそのAVコンテンツに関連しているかどうかをチェックすることができる。
【0071】
ステップ304、306及び307の実行に関連するメッセージ交換については、
図1Aに矢印132で、
図1Bに矢印142で示している。
【0072】
次のステップ308において、クライアントデバイス121は、リダイレクトメッセージを受け取ると、このリダイレクトメッセージに示されているIPアドレスとポートのTCP連結に向けた接続要求を生成する。この要求は、リダイレクトメッセージ内に提供されるパラメータを含む。
【0073】
このステップ308の実行に関連するメッセージの送信については、
図1Aに矢印133で、
図1Bに矢印143で示している。
【0074】
次のステップ309において、エージェント102は、CDN装置とクライアントデバイス121の間の中継器として機能する。従って、クライアントデバイス121は、あたかもCDNサーバ112とやりとりしているかのようにエージェント102とやりとりし、エージェント102は、新たなインフラ又はサービスの実装を可能にする。
【0075】
第1の実施形態によれば、この新たなインフラ又は新たなサービスは、CDNネットワーク全体を通じたライブストリーミングの形でAVコンテンツのマルチキャスト送信を実装することに関連する。この実施形態については、以下で
図4に関連して詳細に説明する。第2の実施形態によれば、新たなインフラ又は新たなサービスは、エージェント102がAVコンテンツを取り出せる複数のソースを実装することに関連する。この実施形態については、以下で
図6に関連して詳細に説明する。
【0076】
図4に、マルチキャストサーバ113が作動している
図1Aのシステムによって実施されるAVコンテンツ配信のためのアルゴリズムを概略的に示す。このアルゴリズムでは、クライアントデバイスが、第1のネットワーク100における帯域幅消費の削減を目的とする新たなCDNインフラ又はサービスから恩恵を受けることができる。
【0077】
このアルゴリズムは、
図3に関連して上述したステップ301〜304とそれぞれ同じものであるステップ401〜404から開始するが、CDNを介して利用可能になっているAVコンテンツの記述が、ライブストリーミングとして利用可能なAVコンテンツのみをリストしている点が異なる。
【0078】
次のステップ405において、CDNサーバ112は、AVコンテンツがマルチキャストサーバ113からのマルチキャストの形で利用可能であるかどうかをチェックする。第1の例によれば、CDNサーバ112は、マルチキャストサーバ113からのマルチキャストの形でライブストリーミングとして利用可能なAVコンテンツの所定のリストを記憶する。第2の例によれば、マルチキャストストリーミングの形で利用可能な全てのAVコンテンツがそれぞれの一意の識別子に関連付けられており、CDNサーバ112は、選択されたAVコンテンツの一意の識別子をマルチキャストサーバ113に提供し、マルチキャストサーバ113は、識別されたAVコンテンツのためのマルチキャスト送信が既にセットアップされているかどうか、又はマルチキャストサーバ113がこのようなマルチキャスト送信のセットアップ能力を有しているかどうかを示す応答を送信する。
【0079】
選択されたAVコンテンツがマルチキャストの形で利用可能になっている場合には、ステップ407を実行する。その他の場合には、ステップ406を実行する。
【0080】
ステップ406において、CDNサーバ112は、ネットワーク相互接続デバイス101を介して、選択されたAVコンテンツをクライアントデバイス121にユニキャストの形で提供する。
【0081】
ステップ407において、CDNサーバ112は、ステップ307に関連して上述したように、クライアントデバイス121を別の場所にリダイレクトする旨を示すリダイレクトメッセージをクライアントデバイス121に送信する。
【0082】
リダイレクトメッセージは、以下の形をとることができる。
307 TEMPORARY REDIRECT
location:192.168.0.1:5000?225.10.11.12:1000&NbLayers=3
この場合、
− 307 TEMPORARY REDIRECTは、要求されたリソースが一時的に別の場所に存在し、リダイレクションは時折変更されることがあるので、クライアントデバイス121は将来的な要求に前回のURLを使用し続けるべきである旨を示すHTTPコードに対応し、
− location:192.168.0.1:5000は一時的なリソースの場所を示し、192.168.0.1はエージェント102のIPアドレスであり、5000はクライアントデバイス121が接続を行うべきTCPポートであり、
− ?はパラメータが後続することを示し、
− 225.10.11.12:1000&NbLayers=3は、エージェント102によって必要とされる上記パラメータであり、225.10.11.12は、要求されたAVコンテンツを表すマルチキャストストリームのためのIPマルチキャストアドレスであり、1000は、エージェント102がリスンすべきUDPポートであり、「NbLayers=3」は、要求されたAVコンテンツに利用できるレイヤの数量を示す。
【0083】
なお、パラメータNbLayersの値を示すことは、ABSの場合にのみ、さらにはレイヤの数量がエージェント102によって事前に知られていない場合にのみ有用である。
【0084】
次のステップ408において、クライアントデバイス121は、リダイレクトメッセージを受け取ると、このリダイレクトメッセージに示されているIPアドレスとポートのTCP連結に向けた接続要求を生成する。この要求は、リダイレクトメッセージ内に提供されるパラメータを含む。
【0085】
次のステップ409において、エージェント102は、クライアントデバイス121から受け取った要求内にポート及びアドレスが指定されているマルチキャストストリームに参加する。次に、エージェント102は、マルチキャストサーバ113からマルチキャストストリームを受け取る。マルチキャストストリームへの参加は、専用のIGMP(規範文書RFC3376によって規定される「インターネットグループ管理プロトコル」)メッセージを用いて行われることが好ましい。
【0086】
選択されたAVコンテンツをマルチキャストの形でデータ送信することについては、
図1Aに矢印134で示している。
【0087】
次のステップ410において、エージェント102は、マルチキャストからユニキャストへの変換を行う。エージェント102は、受け取ったマルチキャストパケットから、クライアントデバイス121によって送信された要求に対するそれぞれのユニキャスト応答を生成する。実際には、クライアントデバイス121は、選択されたAVコンテンツを取得するために、選択されたAVコンテンツを断片毎に取得する要求をエージェント102に対して生成する。エージェント102は、マルチキャストサーバ113から受け取ったマルチキャストストリームのAVデータを用いて上記要求に対する応答を生成する。
【0088】
選択されたAVコンテンツをユニキャストの形でデータ送信することについては、
図1Aに矢印135で示している。
【0089】
特定の実施形態によれば、マルチキャストサーバ113により、選択されたAVコンテンツの配信に複数のレイヤが利用可能になっており、リダイレクトメッセージは、マルチキャストアドレスと関連ポートの連結をレイヤ毎に含む。この結果、エージェント102は、選択されたAVコンテンツのためのマルチキャストストリームのいずれか又は全てに参加することができる。
【0090】
別の特定の実施形態によれば、マルチキャストサーバ113により、選択されたAVコンテンツの配信に複数のレイヤが利用可能になっており、リダイレクトメッセージは、マルチキャストアドレス及び関連ポートを含まない。この場合、いずれかのマルチキャストストリームのためのマルチキャストアドレス及び関連ポートがエージェント102によって事前に認知されている。例えば、このようなマルチキャストアドレス及び関連ポートは事前に定められ、或いはCDNサーバ112により、選択されたAVコンテンツの一意の識別子に関連する専用メッセージの形で相互接続デバイス101に送信されて、リダイレクトメッセージがこの一意の識別子を含むようになる。
【0091】
さらに別の特定の実施形態によれば、マルチキャストサーバ113により、選択されたAVコンテンツの配信に複数のレイヤが利用可能になっており、エージェント102は、選択されたAVコンテンツのためのリダイレクトメッセージに示されているレイヤの数量に応じて、(単複の)マルチキャストストリームに参加するための少なくとも1つのマルチキャストアドレス及び/又は少なくとも1つの関連ポートを決定する。例えば、リダイレクトメッセージに1つのレイヤのためのマルチキャストアドレスが含まれている場合、エージェント102は、この含まれているマルチキャストアドレスを所定の方法で修正することにより、別のレイヤのための別のマルチキャストアドレスを決定することができる。一例として、リダイレクトメッセージが、1つのレイヤに対応する225.10.11.12というマルチキャストアドレスを含む場合、エージェント102は、このアドレスを1単位だけ増分することにより、別のレイヤに対応する225.10.11.13というマルチキャストアドレスが取得されると認識する。パラメータNbLayersの値は、どのアドレスまで増分を行うことができるかを示すことができる。関連ポートにも同じ原理が当てはまる。一例として、リダイレクトメッセージが1つのレイヤに対応するポート1000を含む場合、エージェント102は、このポートを1単位だけ増分することにより、別のレイヤに対応するポート1001が取得されると認識する。これらの例から、全てのレイヤのための1つのマルチキャストアドレスと、レイヤ毎に1つの関連ポートとを使用することも、又はレイヤ毎に1つのマルチキャストアドレスと、レイヤ毎に1つの関連ポートとを使用することも、又はレイヤ毎に1つのマルチキャストアドレスと、全てのレイヤのための1つの関連ポートとを使用することもできるということが分かる。
【0092】
図5に、マルチキャストHLSの状況においてエージェント102によって実行されるステップ408〜410を概略的に詳述する。
【0093】
ステップ401において、エージェント102は、選択されたAVコンテンツに利用できる様々なストリームのプレイリストを取得するための要求をクライアントデバイス121から受け取る。この要求は、ステップ408において受け取られるものであり、従って潜在的にリダイレクトメッセージからのパラメータを含んでいる。
【0094】
次のステップ502において、エージェント102は、CDNサーバ112に上記プレイリストを要求し、これを行うために使用されるURLはエージェント102によって事前に認知されており、又はリダイレクトメッセージ内にパラメータとして提供される。少なくともリダイレクトメッセージは、上記ユニフォームリソースロケータを表すパラメータを含む。次のステップ503において、エージェント102は、「low.m3u8」、「medium.m3u8」及び「high.m3u8」などのレイヤプレイリストを参照するプレイリストをCDNサーバ112からレイヤ毎に1つ受け取る。
【0095】
次のステップ504において、エージェント102は、CDNサーバ112によって提供されたプレイリストを解析して、各レイヤに適用可能なプレイリスト、従って関連するマルチキャストストリームの決定に適用可能なプレイリストを決定する。
【0096】
次のステップ505において、エージェント102は、CDNサーバ112から受け取ったプレイリストをクライアントデバイス121に送信する。
【0097】
次のステップ506において、クライアントデバイス121が、例えば「low.m3u8」などのレイヤプレイリストを要求すると、エージェント102は、ステップ409の参加動作を行う。エージェント102は、CDNサーバ112から受け取ったプレイリスト内の、クライアントデバイス121によって要求されたレイヤプレイリストの位置を用いて、どの(単複の)マルチキャストストリームに参加すべきかを決定することができる。
【0098】
次のステップ507において、エージェント102は、参加動作に応答して、例えば「low.m3u8」などの関連するレイヤのレイヤプレイリストとAVデータとを含む(単複の)マルチキャストストリームをマルチキャストサーバ113から受け取り始める。
【0099】
次のステップ508において、エージェント102は、この(単複の)マルチキャストストリームに含まれている(単複の)レイヤプレイリストを解析して、考慮するレイヤのAVストリームを構成する全てのファイルの識別子を決定する。
【0100】
次のステップ509において、エージェント102は、(単複の)マルチキャストストリームに含まれている(単複の)レイヤプレイリストをクライアントデバイス121に送信する。この時、クライアントデバイス121は、上述したように、選択されたAVコンテンツを断片毎に取得するための要求をエージェント102に対して生成すると予想される。エージェント102は、これに応答して、ステップ410のマルチキャストからユニキャストへの変換を行う。
【0101】
クライアントデバイス121は、別のレイヤに切り替える必要性を検出した場合、次のステップ510において、例えば「medium.m3u8」などの関連するプレイリストを取得するための要求を送信する。この結果、エージェント102は、クライアントデバイス121によって要求された上記別のプレイリストに応じてマルチキャストストリームを選択するようになる。クライアントデバイス121は、全てのレイヤプレイリストを認知すると、上記ファイルの識別子を用いて、いずれかのレイヤプレイリストからのファイルダウンロードを要求することができる。エージェント102は、これらのレイヤプレイリストに対して事前に行った解析動作の結果、上記ファイルの上記識別子に応じてマルチキャストストリームを選択することができる。
【0102】
変換されたストリームデータがクライアントデバイス121に送信されると、アルゴリズムはステップ506を繰り返し、クライアントデバイス121は再びプレイリストを要求する。実際に、HLSでのライブストリーミングという状況では、プレイリストが時間とともに進化し、すなわち期限を過ぎたチャンクが除去されて新たなチャンクが追加される。エージェント102は、クライアントデバイス121に最新のプレイリストを提供し、レイヤ間の切り替えを行う必要がある時にのみ別のマルチキャストストリームを選択する。
【0103】
スムーズストリーミングの状況では、クライアントデバイス121からの要求が、関連するレイヤ及び要求されたAVファイル断片の時間基準を示すので、実装はさらに単純である。
【0104】
上記の
図5に関連する説明から、クライアントデバイス121は、1つのレイヤから別のレイヤに切り替える必要性の検出を担っていると理解することができる。
【0105】
別の特定の実施形態によれば、マルチキャストサーバ113により、選択されたAVコンテンツの配信に複数のレイヤが利用可能になっており、エージェント102が、1つのレイヤに対応する1つのマルチキャストストリームに参加しており、このエージェント102が、クライアントデバイス121が上記1つのレイヤから別のレイヤへの切り替えを行う必要性を検出する。この時、エージェント102は、上記別のレイヤに対応するマルチキャストストリームに参加して、上記1つのレイヤに対応するマルチキャストストリームから離脱する。マルチキャストストリームからの離脱は、専用のIGMPメッセージを用いて行われることが好ましい。従って、エージェント102は、1つのレイヤから別のレイヤへの切り替えを行うために複数のマルチキャストストリームに同時に、又はほんの短い期間にわたって参加する必要があるという状況にはない。
【0106】
さらに別の特定の実施形態によれば、マルチキャストサーバ113により、選択されたAVコンテンツの配信に複数のレイヤが利用可能になっており、エージェント102が、1つのレイヤと別のレイヤとにそれぞれ対応する少なくとも2つのマルチキャストストリームに参加しており、このエージェント102が、クライアントデバイス121が上記1つのレイヤから別のレイヤへの切り替えを行う必要性を検出する。この時、エージェント102は、上記検出された必要性に応じて、上記少なくとも2つのマルチキャストストリームのうちの一方のマルチキャストストリームからのデータを選択する。すなわち、エージェント102は、両マルチキャストストリームからのデータを受け取り、クライアントデバイス121にユニキャストの形で提供するのに適したデータを内部的に選択する。
【0107】
さらに別の特定の実施形態によれば、クライアントデバイス121が1つのレイヤから別のレイヤへの切り替えを行う必要性を検出することが、例えば第1のネットワーク110のトラフィック負荷をモニタすることに基づいて、エージェント102によって単独で行われる。別の方法は、マルチキャストサーバ113が、このような切り替えを行う必要性があることをエージェント102に知らせることである。
【0108】
図6に、AVサーバ114、115が作動している
図1Bのシステムによって実施されるAVコンテンツ配信のためのアルゴリズムを概略的に示す。このアルゴリズムでは、クライアントデバイスが、ユーザの立場から見たQoEを向上させること、及び/又は第1のネットワーク100のロードバランシングを改善することを目的とする新たなCDNインフラ又はサービスから恩恵を受けることができる。
【0109】
このアルゴリズムは、
図3に関連して上述したステップ301〜304とそれぞれ同じものであるステップ601〜604から開始する。CDNを介して利用可能になっているAVコンテンツの記述は、ライブストリーミング及び/又はVOD(ビデオ・オン・デマンド)として利用可能なAVコンテンツをリストする。
【0110】
次のステップ605において、CDNサーバ112は、AVコンテンツが複数のソースから利用可能であるかどうかをチェックする。第1の例によれば、CDNサーバ112は、AVコンテンツを利用できるソースの所定のリストを記憶する。第2の例によれば、全てのAVコンテンツがそれぞれの一意の識別子に関連付けられており、CDNサーバ112は、選択されたAVコンテンツの一意の識別子をAVサーバ114、115に提供し、AVサーバ114、115は、この識別されたAVコンテンツがAVサーバ114、115によって少なくとも部分的に記憶されているかどうかを示す応答を送信する。
【0111】
選択されたAVコンテンツが複数のソースから利用可能になっている場合には、ステップ607を実行する。その他の場合には、ステップ606を実行する。
【0112】
ステップ606において、CDNサーバ112は、ネットワーク相互接続デバイス101を介して、選択されたAVコンテンツをユニキャストの形でクライアントデバイス121に提供する。
【0113】
ステップ607において、CDNサーバ112は、ステップ307に関連して上述したように、クライアントデバイス121を別の場所にリダイレクトする旨を示すリダイレクトメッセージをクライアントデバイス121に送信する。このリダイレクトメッセージは、選択されたAVコンテンツをエージェント102が要求できる各ソースを表すURLの指示をさらに含むことができる。このリダイレクトメッセージは、選択されたAVコンテンツのどのチャンクを各ソースが記憶しているかについての指示をさらに含むことができる。これらの指示は、エージェント102において事前に定めることもできる。
【0114】
ステップ608において、クライアントデバイス121は、リダイレクトメッセージを受け取ると、このリダイレクトメッセージに示されているIPアドレスとポートのTCP連結に向けた接続要求を生成する。この要求は、リダイレクトメッセージ内に提供されるパラメータを含む。
【0115】
次のステップ609において、エージェント102は、選択されたAVコンテンツを複数のソースに要求してこれを受け取る。複数のソースに同じチャンクを要求すると、チャンクを取得するための全体的なレイテンシが減少し、これによってAVデータの不足、従ってAVアーチファクトが回避されるので、QoEを向上させることができる。さらに、AVデータの配信中における、ホストとも呼ばれる1つのソースとの接続ロスによるQoEに対する影響を克服できるようになる。それぞれの異なるソースに異なるチャンクを要求すると、CDNネットワークのロードバランシングを改善することができる。
【0116】
選択されたAVコンテンツの断片をエージェント102が受け取れるようにするためのやりとりについては、
図1Bに矢印144、145で示している。
【0117】
次のステップ610において、エージェント102は、選択されたAVコンテンツを再現し、これをクライアントデバイス121にユニキャストの形で送信する。
【0118】
選択されたAVコンテンツをユニキャストの形でデータ送信することについては、
図1Bに矢印135で示している。
【0119】
特定の実施形態によれば、選択されたAVコンテンツに対して複数のレイヤを利用可能にすることができる。HLSの状況では、エージェント102が、関連するプレイリストをCDNサーバ112に要求し、これを行うために使用されるURLはエージェント102によって事前に認知されており、又はリダイレクトメッセージ内にパラメータとして提供される。上記プレイリストの1つ又はそれ以上は、AVサーバ114、115から取得することもできる。
【0120】
別の特定の実施形態によれば、VODの状況において、相互接続デバイス101がホームゲートウェイであり、エージェント102が、他のホームゲートウェイである複数のソースからAVコンテンツを取得する。上記他のホームゲートウェイは、AVコンテンツの少なくとも一部にアクセスすることができ、このAVコンテンツの少なくとも一部は、上記他のホームゲートウェイ、又は上記他のホームゲートウェイによってインターネットに相互接続されたローカルエリアネットワーク上に存在する別の記憶装置によって記憶することができる。上記AVコンテンツが、上記他のホームゲートウェイによってインターネットに相互接続されているローカルエリアネットワーク上に存在するクライアントデバイスのユーザのために事前にダウンロードされている場合、上記他のホームゲートウェイはこのAVコンテンツにアクセスすることができる。CDNサーバ112は、AVコンテンツをどこで取得できるかについてエージェント102に知らせるために、AVコンテンツをダウンロードする際に経由するホームゲートウェイを追跡することができる。このような特定の実施形態では、CDNのロードバランシングをさらに改善することができる。