(57)【要約】クライアントで要求された、または要求するサービス品質（ＱｏＳ）に従って信号送信を最適化する方法。ＱｏＳは、クライアントにより選択されたＱｏＳプリミティブ（５０４）から成り立つ。ＱｏＳプリミティブ（５０４）は、複数のＱｏＳパラメータ（５０８）に分解される。一例では、ビデオ品質のためのＱｏＳプリミティブ（５０４）は、ＱｏＳパラメータ（５０８）ビデオ・ビットレートおよびビデオ・ビット誤り率プロファイルに分解される。【選択図】図５
2005505160.tif 000002
【特許請求の範囲】
【請求項１】
エラスティック・ソース・コーディング・コンポーネント、エラスティック・チャネル・コーディング・コンポーネント、エラスティック・ネットワーク・コンポーネントおよびエラスティック・バンド幅強化コンポーネントの少なくとも１つをアセンブルすること、
クライアント機器およびネットワークに関する情報を取得すること、
ユーザからのサービス品質に関する要件を受信すること、
ユーザからのサービス品質に関する要件に基づいて、エラスティック・ソース・コーディング・コンポーネント、エラスティック・チャネル・コーディング・コンポーネント、エラスティック・ネットワーク・コンポーネントおよびエラスティック・バンド幅強化コンポーネントの少なくとも１つを調整すること
からなることを特徴とする通信システム・コンポーネント適応方法。
【請求項２】
ブロードバンド・マージンを計算することを備えることを特徴とする請求項１記載の通信システム・コンポーネント適応方法。
【請求項３】
前記ブロードバンド・マージンは、人間により見られるようなデータレートを、与えられたアプリケーションに必要とされるデータレートで除算した比率であることを特徴とする請求項２記載の通信システム・コンポーネント適応方法。
【請求項４】
前記エラスティック・ソース・コンポーネントは、クライアント機器およびサーバ機器の少なくとも１つで、ソース・コーディングをプロセッサに実行させるためのプログラム命令を含むことを特徴とする請求項１記載の通信システム・コンポーネント適応方法。
【請求項５】
前記エラスティック・チャネル・コンポーネントは、クライアント機器およびサーバ機器の少なくとも１つで、チャネル・コーディングをプロセッサに実行させるためのプログラム命令を含むことを特徴とする請求項１記載の通信システム・コンポーネント適応方法。
【請求項６】
前記エラスティック・ネットワーク・コンポーネントは、クライアント機器およびサーバ機器の少なくとも１つで、ネットワーク・コーディングをプロセッサに実行させるためのプログラム命令を含むことを特徴とする請求項１記載の通信システム・コンポーネント適応方法。
【請求項７】
前記ネットワーク・コーディングは、マルチメディア・データのための伝送プロトコルを適用することを特徴とする請求項６記載の通信システム・コンポーネント適応方法。
【請求項８】
前記エラスティック・バンド幅強化コンポーネントは、クライアント機器およびサーバ機器の少なくとも１つで、バンド幅強化をプロセッサに実行させるプログラム命令を含むことを特徴とする請求項１記載の通信システム・コンポーネント適応方法。
【請求項９】
前記エラスティック・バンド幅強化コンポーネントの調整は、モデム効率を調整することを含むことを特徴とする請求項１記載の通信システム・コンポーネント適応方法。
【請求項１０】
前記エラスティック・バンド幅強化コンポーネントの調整は、バンド幅を調整することを含むことを特徴とする請求項１記載の通信システム・コンポーネント適応方法。
【請求項１１】
ユーザからサービス品質のプリミティブを受信すること、
サービス品質のプリミティブをエンジニアリング・パラメータにマッピングすること、
エラスティック・ソース・コーディング・コンポーネント、エラスティック・チャネル・コーディング・コンポーネント、エラスティック・ネットワーク・コンポーネントおよびエラスティック・バンド幅強化コンポーネントの少なくとも１つの前記エンジニアリング・パラメータを変更することにより、前記エラスティック・ソース・コーディング・コンポーネント、前記エラスティック・チャネル・コーディング・コンポーネント、前記エラスティック・ネットワーク・コンポーネントおよび前記エラスティック・バンド幅強化コンポーネントの少なくとも１つを調整することを実行すること
からなることを特徴とする請求項１記載の通信システム・コンポーネント適応方法。
【請求項１２】
前記サービス品質のプリミティブは、ビデオ品質、空間分解能、時間分解能、表示サイズ、オーディオ品質、バンド幅、空間リアリズム、音声制御およびフィードバックの少なくとも１つを含むことを特徴とする請求項１１記載の通信システム・コンポーネント適応方法。
【請求項１３】
前記エンジニアリング・パラメータは、ビデオ・ビットレート、ビデオ・ビット誤り率プロファイル、ビデオ・パケット損失プロファイル、オーディオ・ビットレート、オーディオ・ビット誤り率プロファイル、オーディオ・パケット損失プロファイル、可変ビットレート、固定ビットレート、適応ビットレート、グローバル遅延ジッタ・プロファイル、および差分ジッタ・プロファイルの少なくとも１つを含むことを特徴とする請求項１１記載の通信システム・コンポーネント適応方法。
【請求項１４】
前記サービス品質のプリミティブは、ユーザ、クライアント機器、ソースおよびネットワークの少なくとも１つに対応することを特徴とする請求項１１記載の通信システム・コンポーネント適応方法。
【請求項１５】
前記サービス品質のプリミティブは、Ｎ個のフィールドを有する信号として、エンジニアリング・パラメータにマッピングされ、前記信号は、複数の状態を表すことを特徴とする請求項１１記載の通信システム・コンポーネント適応方法。
【請求項１６】
調整すべき複数のシステム・コンポーネントを判定すること、
ユーザ選択とクライアント機器制約を提供すること、
ネットワーク状態を判定すること、
ユーザ選択とクライアント機器制約をネットワーク設計特性に変換すること、
最適なブロードバンドを決定するために、様々なソース・コーディング・コンポーネントおよびパラメータ値に対して、複数のブロードバンド・マージンを計算すること、
ソース・コーディング・コンポーネントおよびパラメータ値の１組をシステム・コンポーネントに適用すること
からなることを特徴とする通信システム・コンポーネント適応方法。
【請求項１７】
前記ネットワーク設計特性は、ビデオ・ビットレート、ビデオ・ビット誤り率プロファイル、ビデオ・パケット損失プロファイル、オーディオ・ビットレート、オーディオ・ビット誤り率プロファイル、オーディオ・パケット損失プロファイル、可変ビットレート、固定ビットレート、適応ビットレート、グローバル遅延ジッタ・プロファイル、および差分ジッタ・プロファイルの少なくとも１つを含むことを特徴とする請求項１６記載の通信システム・コンポーネント適応方法。
【請求項１８】
ユーザと、
クライアントと、
ソースと、
前記クライアントとソースとの間の通信媒体と、
ネットワークおよびソースのいずれかの制御を実現するために、前記ユーザ、前記クライアント、前記ソースおよび前記通信媒体の少なくとも２つに接続されたエキスパート・システムと、
前記ユーザおよび前記クライアントの少なくとも１つからのプリミティブを、エンジニアリング設計パラメータに変換するための、前記ユーザ、前記クライアント、前記ソースおよび前記通信媒体の少なくとも１つと、前記エキスパート・システムとの間のトランスレータと
を備えることを特徴とする通信システム・コンポーネント適応システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、２００１年９月２７日に出願された米国仮特許出願番号第６０／３２８，１１６号の利益を主張する。
【０００２】
本発明は、クライアントとサーバ機器の間のサービス品質をシグナリングするシステムおよび方法、とりわけ、ユーザ・ステアリングおよびシステム能力に基づくパラメータを調整するシステムに関する。
【背景技術】
【０００３】
マルチメディアの通信は、オーディオ、画像、ビデオ、および、同期させたオーディオおよびビデオデータを含むマルチメディア・データ・ストリームの送信、受信および提示を含む。
【０００４】
マルチメディア・データは、タイムクリティカルな方法でユーザに提示される。例えば、データがあまりに遅く、あるいは間違った順序で提示される場合、ユーザの聴覚体験は妨害される。あまりに遅く提示される場合、ユーザは、スピーカに適しているものより低い周波数の音声を聞く可能性があり、提示の忠実度を減少させる。減少した忠実度は、オーディオデータ、例えば音楽の有用性を減少させる。データがシーケンスから抜け落ちるか、入れ替わる場合、ユーザは、スピーカから出力されている音声を確定することができない可能性があり、これは、通信の有用性を減少させる。他の例として、ビデオデータがシーケンスから外れて、またはオーディオデータの同期から外れて提示される場合、ユーザの視覚体験が妨害される。１つのフレームに対する送信時間より長い時間スケールでシーケンスから外れたビデオデータは、フレームがシーケンスから外れて示されると円滑な動きがジグザグになることを引き起こし、動きが重要なビデオ、例えば、ダンス、スポーツ競技、および科学研究のための有用性が破壊される。より短い時間スケールでシーケンスから外れたビデオデータは、単一のフレームの部分が表示画面上の誤った空間位置で提示されることを引き起こす。このため、映像は、良くてもゆがめられ、最悪の場合、認識できなくなる。
【０００５】
マルチメディア・データは、当該技術で知られている多くの形式をとる。例えば、オーディオデータは、様々なフォーマットを用いるバイナリ・データのファイルとして格納される。いくつかのフォーマットにおいて、データは、ファイルに格納されているときの二進数（ビット）の数が、人間の観察者に提示する間に用いられるビット数より少なくなるように、圧縮される。それらのデータを格納するのに用いられるファイル名に拡張子でしばしば示される画像フォーマットの例には、数ある中で、ＧＩＦ、ＪＰＥＧ、ＴＩＦＦ、ビットマップ（ＢＭＰ）、ＣＧＭ、ＤＸＦ、ＥＰＳ、ＰＣＸ、ＰＤＦ、ＰＩＣが含まれる。それらのデータを格納するのに用いられるファイル名に拡張子でしばしば示されるオーディオフォーマットの例には、数ある中で、ウェーブファイル（ＷＡＶ：wave form audio）、ＭＰ３、アイフ（ＡＩＦＦ：audio interchange file format）、ユニックス・オーディオ（ＡＵ）、ミディ（ＭＩＤＩ：musical instrument digital interface）、およびサウンドファイル（ＳＮＤ）が含まれる。それらのデータを格納するのに用いられるファイル名の拡張子でしばしば示されるビデオフォーマットの例には、数ある中で、クイックタイム、ＡＶＩおよびエムペグ（ＭＰＥＧ：Motion Picture Experts Group format）が含まれる。この主題は更に、「Video Communication, (1) Image and Video Compression Standards, V. Bhaskaran and K. Konstantinides, Kluwer Academic, 1995」なる書籍で扱われている。
【０００６】
図１は、ネットワークを介してコンピュータ・ハードウェアを用いるマルチメディアのデータを配信するためのシステムを示すブロック図である。コンピュータ・ハードウェアの概要については、後述するセクションで更に詳細に説明する。ネットワーク上で、クライアント装置と呼ばれる１つのコンピュータで動作する、クライアント処理（以下では単に「クライアント」とする）と呼ばれる処理は、ネットワークに接続され、サーバ機器と呼ばれるコンピュータで実行する、サーバ処理（以下では単に「サーバ」とする）と呼ばれる他の処理を要求する。サーバは、サービスを実行し、頻繁にクライアントに情報を送り返す。
【０００７】
サーバ機器１４０は、ファイル内のマルチメディア・データと、広域ネットワーク１５０を超えてメディア・サーバ機器１３０へファイルを送信するメディア送信処理１４２とを含んでいる。メディア・サーバ機器１３０は、データを、ローカル・ネットワーク１５０を越えてメディア・クライアント機器１１０上のメディア提示処理１１２に送信するために調整する、メディア・サーバ処理１３２を含んでいる。メディア提示処理１１２は、人間のユーザにマルチメディア・データを提示する。
【０００８】
メディア・サーバ機器１３０、ローカル・ネットワーク１５０およびメディア・クライアント機器１１０は、マルチメディア通信の、時に「ラスト・マイル」、時に「ファースト・マイル」と呼ばれる、アクセス・リンクを構成する。
【０００９】
ネットワークを介してのマルチメディア・データの移送は、ネットワーク・プロトコル処理１７６，１５６によって実行されるネットワーク・プロトコルによって決定される。従来のシステムでは、サーバ機器およびクライアント機器上のネットワーク・プロトコル処理は、同じである。例えば、ネットワーク・プロトコル処理１７６，１５６は同じである。
【００１０】
いくつかの実施形態では、ネットワーク１５０またはネットワーク１５５、あるいは双方は、以下に述べるインターネット・プロトコル（ＩＰ）を用いるネットワークである。ＩＰネットワークでは、例えば、メディア・サーバ機器１３０は、インターネット・サービス・プロバイダ（ＩＳＰ）の設備の一部であり、メディア・クライアント機器１１０は、特定のユーザのためのパーソナルコンピュータである。
【００１１】
他の実施形態では、ネットワーク１５０またはネットワーク１５５、あるいは双方は、例えば、ケーブルテレビ・リンクのネットワークのような非ＩＰネットワークである。ケーブルテレビ・リンクでは、メディア・サーバ機器１３０はケーブルヘッドエンドにあり、メディア・クライアント機器１１０は、テレビ・セットトップ・ボックスである。
【００１２】
ローカル・ネットワーク１５０は、メディア・サーバ機器１３０とメディア・クライアント機器１１０との間の直接接続を備えていてもよい。他の実施形態では、ローカル・ネットワーク１５０は、１つの型の信号から他の型の信号へ変換する１つ以上のトランスコーダ、または、同じ時間間隔で同じライン上の複数のデータ・ストリームをオーバレイする１つ以上のマルチプレクサ、あるいは双方を含んでいる。
【００１３】
開放型システム間相互接続（ＯＳＩ）参照モデルのネットワーク層は、ネットワーク上の１つの機器で作成されたデータ・パケットの、ネットワーク上の他の機器との交換を制御するために、ネットワーク上の複数の機器のネットワーク・アドレスを定義する。インターネット・プロトコル（ＩＰ）は、インターネット上のネットワーク層のための論理ネットワーク・アドレスを定義する。
【００１４】
ＯＳＩモデルの伝送層は、第1の機器上のオペレーティングシステムから他の機器上のオペレーティングシステムへのデータ交換を制御する。伝送層は、各データ・パケットのデータが受信されるために大きすぎず、誤りなしで、かつ適切なシーケンスで配信されることを確実にするための役割を果たす。
【００１５】
様々な伝送プロトコルが、２つの伝送モデル、伝送制御プロトコル（ＴＣＰ）およびユーザ・データグラム・プロトコル（ＵＤＰ）の１つに基づく伝送層のために開発されてきた。ＴＣＰは、そのような処理に内在する遅延を許可し、必要に応じて、パケットに対する多重再送信を可能にすることにより、パケット損失を最小限に抑えようとする。ＵＤＰは、一般に、遅延を最小限に抑えようとし、再送信を許可しない。サーバからのデータ・パケットの送信とクライアントにおけるパケットの受信との間の遅延は、ネットワーク待ち時間と呼ばれている。ＴＣＰは、大きい待ち時間を許容するデータ・トラフィックのためのよいプロトコルである。ＵＤＰは、大きい待ち時間を許容しない通信により適している。
【００１６】
本発明によれば、１つ以上のメディア処理１３２，１１２およびラスト・マイルにおけるネットワーク・プロトコル１７６，１５６は、従来技術のシステムに用いられるそれらから変更される。この変更は、メディア・クライアント機器１１０でマルチメディアの提示の品質を向上させる。
【発明の開示】
【発明が解決しようとする課題】
【００１７】
したがって、本発明は、関連技術の限界および障害による、１つ以上の課題をほぼ取り除く、クライアントとサーバ機器の間のサービス品質をシグナリングするシステムおよび方法を目的とする。
【００１８】
本発明の利点は、ネットワークのユーザ・ステアリングを提供することにある。
【００１９】
本発明の他の利点は、良質なサービスのための最適資源配分を提供することにある。
【課題を解決するための手段】
【００２０】
本発明の更なる特徴および効果は、以下の説明で述べられ、部分的には、説明から明瞭になるか、本発明の実施により学ばれてもよい。本発明の目的と他の利点は、特に記述およびその請求項、および添付された図に示された構成により実現され、達成される。
【００２１】
これらおよび他の利点を達成するために、および本発明の目的によれば、具体化され、広く説明されるように、通信システムのコンポーネントを適応させる方法は、エラスティック・ソース・コーディング・コンポーネント、エラスティック・チャネル・コーディング・コンポーネント、エラスティック・ネットワーク・コンポーネント、およびエラスティック・バンド幅強化コンポーネントのうち少なくとも１つをアセンブルすること；クライアント機器およびネットワークに関する情報を取得すること；ユーザからのサービス品質に関する要件を受け取ること；そして、ユーザからのサービス品質に関する要件に基づいて、エラスティック・ソース・コーディング・コンポーネント、エラスティック・チャネル・コーディング・コンポーネント、エラスティック・ネットワーク・コンポーネント、およびエラスティック・バンド幅強化コンポーネントのうち少なくとも１つを調整することを含む。
【００２２】
本発明の他の態様では、通信システムのコンポーネントを適応させる方法は、調整すべき複数のシステム・コンポーネントを決定することと；ユーザ選択およびクライアント機器制約を設けることと；ネットワーク状態を決定することと；ユーザ選択およびクライアント機器制約をネットワーク設計特性に変換することと；最適のブロードバンドを決定するために、種々のソース・コーディング・コンポーネントおよびパラメータ値に対して、複数のブロードバンド・マージンを計算することと；そして、ソース・コーディング・コンポーネントおよびパラメータ値を、システム・コンポーネントに供給することとを含む。
【００２３】
本発明の他の態様では、通信システムのコンポーネントを適応させるためのシステムは、ユーザ；クライアント；ソース；クライアントとソースとの間の通信媒体；ネットワークおよびソースのいずれかの制御を実現するための、ユーザ、クライアント、ソース、通信媒体のうち少なくとも２つに接続されたエキスパート・システム；および、ユーザおよびクライアントの少なくとも１つから、エンジニアリング設計パラメータへプリミティブを変換するための、ユーザ、クライアント、ソース、通信媒体の少なくとも１つと、エキスパート・システムとの間のトランスレータとを含む。
【００２４】
前述した一般的な説明および以下の詳細な説明の双方は、典型的でかつ説明的であり、請求に記載の本発明を更に説明するためのものであるということを理解されるべきである。
【発明を実施するための最良の形態】
【００２５】
参考文献は、本発明の実施形態に詳細にされ、本発明の例は、添付図面に示される。
【００２６】
本発明によれば、ソース／送信側からクライアント／ユーザへデータを転送することに関係している１つ以上の処理が、ユーザおよびクライアントからのサービス品質に関する要件に基づいて変更される。変更することができる処理は、複数の周知の処理および他の新しい処理を含む。そのような新しい処理のいくつかは、２００２年９月２６日に提出された、出願中の米国特許出願番号第６０／３２５，１１７号、タイトル「ソースから目的への通信システムおよび伝送技術」で説明されている。現システムにより変更することができる処理の例は、ネットワーク伝送プロトコル、メディア・サーバ処理、モデム強化処理、損失検出処理、動的優先順位処理、バッファ管理処理、フロー制御、誤り訂正コーディング、データ・インターリービング、損失回復、速度制御などを含む。
【００２７】
いくつかの実施形態によれば、ローカル・ネットワーク全体にデータを転送するためにマルチメディア・データをパックするか、アンパックするネットワーク転送プロトコルが、パーフォーマンスを最適化するために変更される。
【００２８】
ネットワーク・プロトコル処理における変更は、受信したパケットに適用される、誤りチェック処理に対する変更を含むことが予想される。誤りチェックは、チャネル・コーディングとも呼ばれる、誤り保護コーディングにしばしば基づいている。チャネル・コーディングの一例は、パケット・ヘッダのパリティ・ビットを含み、いずれかのパケットの和が、（偶数パリティのための）偶数または（奇数パリティのための）奇数になることを確実にするために、パリティ・ビットの内容を変更している。本発明の態様によれば、複数の変更は、各々、ネットワーク・プロトコル処理に含まれるチャネル・コーディング処理に考慮されている。
【００２９】
いくつかの実施形態において、ネットワーク・プロトコル処理は、別々の処理として実施される。他の実施形態では、ネットワーク・プロトコル処理は、各々、メディア提示処理およびメディア・サーバ処理のサブプロセスとして実施され、それらに含まれている。
【００３０】
ネットワーク・プロトコル処理の最適なパケットサイズおよび他の特性は、メディア・サーバ処理の符号化処理およびメディア提示処理の補完的な復号化処理によって実行される、マルチメディア・データの符号化および復号化にある程度依存することが期待される。伝送前に発生する符号化は、通常、マルチメディア・データ・プリフィルタリングおよび圧縮（マルチメディア・データにおける重要情報を運ぶために要求されるビット数を削減すること）を含む。伝送後に発生する復号化は、通常、マルチメディア解凍（データを提示処理によって用いられる形式に戻すこと）およびポスト・フィルタリングを含む。例えば、最適なパケットサイズは、ＭＰＥＧ符号化またはＡＶＩ符号化がビデオデータで実行されるか否かに依存してもよい。特に、人間の認識モデリングの使用は、マルチメディア・データにおける情報の異なる部分に対する異なる重要性を決定し、符号化、転送プロトコルおよび誤りチェックは、重要性の様々なレベルを反映するために全て変更できることが期待される。
【００３１】
本発明の実施形態によれば、符号化処理、復号化処理のために、および、ネットワーク・プロトコル処理およびメディア・サーバ機器とメディア・クライアント機器とに対するチャネル・コーディング処理のために、集積化された設計を形成するエキスパート・システムが開発される。結果として生じる処理には、伝送システムを通して有用性が見出される。例えば、エキスパート・システム設計は、広域ネットワークへの伝送のためにサーバ機器で実施される。
【００３２】
図２は、本発明の実施形態によるエキスパート・システム２０１のブロック図である。本発明のエキスパート・システムは、ソースまたは伝送先に属するか、あるいは分散処理システムであってもよい。エキスパート・システムは、後述するように、信号を種々のノードへ、かつ種々のノードから送信できるように、通信リンクが存在する限り、どこに配置されてもよい。
【００３３】
ここで用いられる「エラスティック」は、コンポーネントが、リンクを通して他のコンポーネントで設定できる調整可能なパラメータを用いて設計されることを示している。パラメータは、クライアント側のサービス品質（ＱｏＳ）パラメータおよびネットワーク有効パラメータを含み、様々な要因のいずれかに基づいて調整することができる。パラメータ値の種々のコンポーネントは、コンポーネントをネットワークのサイズおよびユーザの数に対応させることを可能にする。パラメータ値の適当な選択によって、コンポーネントのシステム内の単一のコンポーネントまたは複数のコンポーネントの性能が最適化されうる。
【００３４】
エキスパート・システム２０１は、１つ以上のエラスティック・ソース・コーディング（ＥＳＣ）・コンポーネント２１１，２１２などを格納しているデータ構造２１０を含む。エラスティック・ソース・コンポーネントは、クライアント機器またはサーバ機器、あるいは双方でソース・コーディングを、プロセッサに実行させるプログラム命令を含む。省略記号２１９は、他のＥＳＣコンポーネントがデータ構造２１０に含まれる可能性があることを示す。図２に用いられるように、ソース・コーディングは、マルチメディア・データでありうる、符号化データおよび復号化データを参照する。例えば、ビデオ符号化／復号化は、コンポーネント２１１によって示され、ＡＶＩ符号化／復号化は、コンポーネント２１２によって示される。本発明の実施形態によれば、リンク２２８は、全てのＥＣＣコンポーネント２１１，２１２，２１９ために標準化される。
【００３５】
エキスパート・システム２０１は、１つ以上のエラスティック・チャネル・コーディング（ＥＣＣ）・コンポーネント２２１，２２２などを格納しているデータ構造２２０を含む。エラスティック・チャネル・コンポーネントは、クライアント機器およびサーバ機器の双方でチャネル・コーディングを、プロセッサに実行させるプログラム命令を含む。省略記号２２９は、他のＥＣＣコンポーネントがデータ構造２２０に含まれる可能性があることを示す。例えば、パリティ・ビット・チャネル・コーディングは、コンポーネント２２１によって示される。本発明の実施形態によれば、リンク２２８は、全てのＥＣＣコンポーネント２２１，２２２，２２９のために標準化される。
【００３６】
エキスパート・システム２０１は、１つ以上のエラスティック・ネットワーク・コーディング（ＥＮＣ）・コンポーネント２３１，２３２などを格納しているデータ構造２３０を含む。エラスティック・ネットワーク・コンポーネントは、クライアント機器またはサーバ機器、あるいは双方でネットワーク・コーディングを、プロセッサに実行させるためのプログラム命令を含む。省略記号２３９は、他のＥＮＣコンポーネントがデータ構造２３０に含まれる可能性があることを示す。ネットワーク・コーディングは、ＴＣＰおよびＵＤＰのような、マルチメディア・データのための伝送プロトコルを含み、コンポーネント２３１と２３２によって示される。メディア・サーバ機器からメディア・クライアント機器へ向かうトラヒックのために、反対方向に向かうトラヒックとは異なるパケット長および他のプロトコル特性を可能にする他の伝送プロトコルが、本発明に関連して用いられてもよい。選択された伝送プロトコルは、マルチメディア・データを構成するビット・ストリームから形成される、データ・ストリームまたはパケットを決定する。本発明の実施形態によれば、リンク２３８は、全てのＥＳＣコンポーネント２３１，２３２，２３９のために標準化される。
【００３７】
エキスパート・システム２０１は、１つ以上のエラスティック帯域幅強化（ＥＢＷ）格子要素２４１，２４２などを格納しているデータ構造２４０を含む。エラスティック帯域幅コンポーネントは、クライアント機器またはサーバ機器、あるいは双方で帯域幅強化を、プロセッサに実行させるためのプログラム命令を含む。省略記号２４９は、他のＥＢＷコンポーネントがデータ構造２４０に含まれる可能性があることを示す。帯域幅強化は、モデム効率と帯域幅を調整するための処理を含んでもよい。例えば、コンポーネント２４１は、パケットに優先順位をつけるためのエラスティック・アルゴリズムを実現する。本発明の実施形態によれば、リンク２４８は、全てのＥＳＣコンポーネント２４１，２４２，２４９のために標準化される。
【００３８】
エキスパート・システム２０１は、また、コンポーネント選択処理２０２を含む。コンポーネント選択処理は、ＥＳＣ、ＥＣＣ、ＥＮＣおよびＥＢＷコンポーネントの最良の組合せを決定し、組合せを構成し、影響を受けた、サーバ機器とクライアント機器全体で最良の組合せのコンポーネントを配備する。コンポーネント選択処理２０２によってされる決定は、アプリケーションまたはユーザとの通信セッションの必要性に基づいている。
【００３９】
本発明の一態様によれば、コンポーネント選択処理は、ブロードバンド・マージン（ＢＢＭ）を計算するためのＢＢＭ処理２０３を含む。ＢＢＭは、人間のユーザによって見られるようなデータレートを、与えられたアプリケーションに必要とされるデータレートで除算した比率として計算することができる。ＢＢＭは、コンポーネントの与えられた組合せに対する測定基準として用いられる。コンポーネントを明示する与えられた設計を評価することに用いられ、かつ最適な組合せを選択する際の利益測定（benefit measure）として用いられる。
【００４０】
ＢＢＭの計算およびコンポーネント選択処理２０１によって検討された他の要素に用いられたデータを得るために、エキスパート・システムは、また、ユーザ・クライアント処理２０５、ネットワーク状態処理２０７およびサービス品質（ＱｏＳ）変換処理２０６を含む。一実施形態において、処理２０５，２０６，２０７は、以下により詳細に説明されるエキスパート・システムとして実施される。
【００４１】
ユーザ・クライアント処理２０５は、メディア・クライアント機器により課せられる制約についての、および人間ユーザの選択についての情報を提供するために、メディア・クライアント機器にインストールされている。例えば、ユーザ・クライアント処理２０５は、メディア・クライアント機器がハンドヘルド、ラップトップまたはデスクトップコンピュータ、あるいは、サーバとクライアントとの間で通信ができる、例えば携帯電話、個人データ・アシスタント、電子オーディオ再生機器またはその種の、他の電子機器プラットフォームであるか否かを判定する。
【００４２】
ネットワーク状態処理２０７は、メディア・サーバ機器上で実行されもよく、物理的なチャネルデータ、および利用可能データ速度または帯域幅を含む、ローカルネットワークの状態を判定する。
【００４３】
ＱｏＳ変換処理２０６は、ビデオ品質および表示サイズのような、ユーザ（ＱｏＳプリミティブ）に対して直感的である数量を、ネットワーク設計者によって用いられる、例えばビットレートおよび誤り率のようなエンジニアリング・パラメータ値にマッピングする。ＱｏＳプリミティブは、クライアント能力、ユーザ要求またはネットワーク状態に基づいてもよい。情報は、ＢＢＭ計算に用いられる与えられたアプリケーションに必要とされるデータレートを決定するために、ユーザ・クライアント処理２０５によってユーザから提供される情報とともに用いられる。表１は、ＱｏＳプリミティブおよび結果として生じるネットワーク設計パラメータの例のリストを提供する。
【表１】
2005505160.tif 000003
ＱｏＳトランスレータは、ＱｏＳプリミティブを設計パラメータにマッピングするために、ルックアップテーブルを用いてもよい。ＱｏＳパラメータは、ネットワークで、あるいはソースまたは転送先で、システムまたはサブシステムのいずれかに供給されてもよい。
【００４４】
また、エキスパート・システムは、ＥＳＣコンポーネント、ＥＣＣコンポーネント、ＥＮＣコンポーネントおよびＥＢＷコンポーネントの間で、情報を共有することを可能にするコンポーネント・リンカー処理２０４を含む。コンポーネント・リンカー処理２０４は、選択の間、および機器上の配置のためにコンポーネントを構成するときに再度、ＢＢＭの計算のために、複数のコンポーネントを統合するべく、コンポーネント選択処理２０２によって用いられる。コンポーネント・リンカー処理２０４は、複数のコンポーネントの中で、情報を通過させるために、複数のコンポーネントの各々に対して標準化された複数のリンクを用いる。すなわち、コンポーネント・リンカー２０４は、ＥＳＣコンポーネントへのリンク２５１、ＥＣＣコンポーネントへのリンク２５２、ＥＮＣコンポーネントへのリンク２５３、およびＥＢＷコンポーネントへのリンク２５４を含む。
【００４５】
例えば、コンポーネント選択処理２０２が複数のコンポーネントの各々に対してスループットを２倍にできるならば、ＥＳＣ、ＥＣＣ、ＥＮＣまたはＥＢＷコンポーネントの各々を用いることによって、スループットにおいて１６倍の増加が達成される。エキスパート・システム２０１は、サーバ・クライアント・システムが配備される前に、増加が有利に統合すること、および１つのコンポーネントに形成された変化が、他のコンポーネントに達成された増加と衝突しないまたはそれを否定しないことを判定する。
【００４６】
エキスパート・システム２０１は、コンポーネント選択処理２０２に基づく、構成されたコンポーネントを出力する。また、エキスパート・システムは、表示された画像のサイズのような、ネットワーク設計者に役立つ他の情報を出力する。
【００４７】
図３に示すように、ユーザ３０４、クライアント３０８、ソース／サーバ３１２およびネットワーク３１６の各々に対応する複数のＱｏＳプリミティブがある。ユーザ３０４、クライアント３０８、ソース３１２およびネットワーク３１６のそれぞれには、エキスパート・システム３０１にＱｏＳパラメータを供給するＱｏＳトランスレータ３２０ａ、３２０ｂ、３２０ｃおよび３２０ｄを提供してもよい。エキスパート・システム３０１は、要求されたＱｏＳに対して最適のシステムパラメータを判定し、サーバおよびクライアント３０８でＥＳＣ３２４ａおよび３２４ｂを、サーバおよびクライアントでＥＣＣ３２８ａおよび３２８ｂを、サーバおよびクライアントでＥＮＣ３３２ａおよび３３２ｂを、およびサーバおよびクライアントでＥＢＷ３３６ａおよび３３６ｂを調整するために制御データ３２２を供給する。エキスパート・システム３０１によって供給される制御データ３２２は所定の構文でもよいので、制御データ３２２を、システム内の様々なコンポーネントによって実行される制御または動作言語に変換するために、システム３０１とサーバおよびクライアントとの間に、１つのトランスレータまたは複数のトランスレータ３４０を設けることが必要となってもよい。
【００４８】
ＱｏＳパラメータは、ユーザまたはクライアント毎の１回限りのセットアップとして、セッション毎のリアルタイムシグナリングとして、エキスパート・システムに送信されてもよい。クライアントまたはユーザによって入力されたＱｏＳプリミティブは、半定量的であってもよい。例えば、ユーザは、「ＶＨＳ品質」のように、既知の品質レベルを与えることができ、ＱｏＳトランスレータは、その半定量的な値を、１Ｍｂｐｓデータレートのように、数値のパラメータとして解釈できる。
【００４９】
図４は、ソース・コーディング（ＳＣ）、チャネル・コーディング（ＣＣ）、ネットワーク・コーディング（ＮＣ）およびバンド幅強化（ＢＷ）の共同設計のためのエキスパート・システムを、形成しかつ使用するための典型的な処理を示すフローチャートである。
【００５０】
ステップ４１０では、複数のコンポーネントが、集められ、１つ以上のパラメータを調整可能とすることによりエラスティックにされ、アプリケーション・プログラミング・インターフェース（ＡＰＩ）のような標準化されたリンクに結合される。
【００５１】
ステップ４２０では、クライアント・ユーザ処理２０５が、ユーザ選択およびクライアント機器制約を提供するために、メディア・クライアント機器上にインストールされ、実行される。また、ネットワーク状態処理２０７は、サーバ機器とクライアント機器との間の物理チャネルに関する情報のようなネットワーク状態を判定するために、ローカル・ネットワークに接続された機器にインストールされ、実行される。
【００５２】
ステップ４３０では、ＱｏＳトランスレータ処理２０６が、ユーザからのデータを、ＢＢＭを計算するためかつ複数のコンポーネントおよびそれらのパラメータ値を選択するために用いられるネットワーク設計特性に変換するために、実行される。
【００５３】
ステップ４４０では、アプリケーションに対する入力が、コンポーネント・リンカー処理２０４を用いて、いろいろなソース・コーディング・コンポーネントおよびパラメータ値のために、ＢＢＭを計算するべく、ＱｏＳトランスレータからのユーザ情報に結合される。ＢＢＭを最適化する対応パラメータ値を有するコンポーネントが、構成されたＳＣコンポーネントとして選択される。ソース・コーディング・アルゴリズムだけが選択されるべき場合は、ステップ４４２で、構成されたＳＣコンポーネントが生成され、割り当てられた機器上に配備される。
【００５４】
ステップ４５０では、マルチレート・ビット・ストリームが、構成されたＳＣコンポーネントから利用可能であり、コンポーネント・リンカー処理２０４を用いて、いろいろなチャネル・コーディング・コンポーネントおよびパラメータ値のために、ＢＢＭを計算すべく、ＱｏＳトランスレータ２０６およびネットワーク状態処理２０７からの情報とともに用いられる。いくつかの実施形態では、ＳＣコンポーネントまたはそのパラメータ、あるいは双方は、また、最適化されたＢＢＭを得る努力において様々である。ＢＢＭを最適化する対応パラメータ値を有するコンポーネントが、構成されたＣＣコンポーネントとして選択される。ソース・コーディングおよびチャネル・コーディング・アルゴリズムだけが選択されるべき場合は、ステップ４５２で、構成されたＳＣおよびＣＣコンポーネントが生成され、割り当てられた機器上に配備される。
【００５５】
ステップ４６０では、強いマルチレート・ビット・ストリームが、構成されたＣＣコンポーネントから利用可能であり、コンポーネント・リンカー処理２０４を用いて、いろいろなネットワーク・コーディング・コンポーネントおよびパラメータ値のために、ＢＢＭを計算すべく、ＱｏＳトランスレータ２０６およびネットワーク状態処理２０７からの情報とともに用いられる。いくつかの実施形態では、ＣＣコンポーネントまたはそのパラメータ、またはＳＣコンポーネントまたはそのパラメータ、あるいはいくつかの組合せは、最適化されたＢＢＭを得る努力において様々である。ＢＢＭを最適化する対応パラメータ値を有するコンポーネントが、構成されたＮＣコンポーネントとして選択される。ソース・コーディング、チャネル・コーディングおよびネットワーク・コーディング・アルゴリズムだけが選択されるべき場合は、ステップ４６２で、構成されたＳＣ，ＣＣおよびＮＣコンポーネントが生成され、割り当てられた機器上に配備される。
【００５６】
ステップ４７０では、強いマルチレート・パケット・シーケンスが、構成されたＮＣコンポーネントから利用可能であり、コンポーネント・リンカー処理２０４を用いて、いろいろなバンド幅強化コンポーネントおよびパラメータ値のために、ＢＢＭを計算すべく、ＱｏＳトランスレータ２０６およびネットワーク状態処理２０７からの情報とともに用いられる。いくつかの実施形態では、ＳＣ、ＣＣおよびＮＣコンポーネント、それらのパラメータ、またはいくつかの組合せは、最適化されたＢＢＭを得る努力において様々である。ＢＢＭを最適化する対応パラメータ値を有するコンポーネントが、構成されたＢＷコンポーネントとして選択される。ステップ４７２では、構成されたＳＣ、ＣＣ、ＮＣおよびＢＷコンポーネントが生成され、割り当てられた機器上に配備される。
【００５７】
構成されたＳＣ、ＣＣ、ＮＣおよびＢＷコンポーネントを用いて、優先順位を付けられた強いマルチレート・パケット・シーケンスが生産され、これは、実際のネットワーク上のユーザおよびアプリケーションに対してある意味で最適である。様々な実施形態において、複数のコンポーネントは、ブロードバンド・チャネルまたはマルチユーザ・ネットワーク、あるいは双方に配備される。選択は、実際のネットワーク状態に依存するので、ユーザの数およびネットワーク能力が変わると、構成されたコンポーネントは最適である。すなわち、解決法は、ネットワークの大きさに比例する。
【００５８】
図５に示すように、ＱｏＳプリミティブ５０４は、対応ＱｏＳパラメータ５０８に変換されるか、マッピングされてもよい。そのようなマッピングは、クライアントまたはソースで実行されてもよい。加えて、そのようなマッピングは、所定の数の分野の信号、例えば「Ｎ」ビット５１２を有するデジタル信号に符号化される。Ｎビットの信号により提供されるコードは、エキスパート・システムにより決定された最適化を実施すべく、ユーザ、クライアント、ネットワークまたはソース／サーバの実際のパラメータを調整するために、エキスパート・システムまたは通信ネットワークのコンポーネントのいずれかにシグナリングを供給するために用いることができる。ビット「Ｎ」の数は、ＱｏＳパラメータの各々に対する状態の数、または、エキスパート・システムの制御状態の数、あるいは双方に依存する。例えば、４ビットを有する二進化システムを用いて、１６個の状態をＮビットの信号によって表すことができる。
【００５９】
図６に示すように、ＱｏＳパラメータは、通信システムのいくつかの異なるコンポーネントに影響を与えることができる。例えば、ＱｏＳパラメータは、アプリケーション層レート形成、動的優先順位付け、パケット複写、損失検出および回復、パケット・インターリービング、損失プロファイリングおよび回復、バッファ管理、レート制御に直接影響を及ぼすことができる。例えば、ＱｏＳパラメータにより影響を受けうるクライアント能力は、画面サイズ、解像度、メディア処理技術（誤り隠蔽、後処理、ユーザパラメータなど）を含み；影響を受けうるユーザ要求は、画像サイズ、最小品質要件（例えば速度、色）、コスト、スタートアップ遅延、インタラクティブ性要件を含み；影響を受けうる配信基盤は、ラスト・マイル・アクセス媒体（例えば、ケーブル、ＤＳＬ、モデム、無線）を含む。アプリケーション・サーバでは、レート制御、適応可能な複製、前処理およびプロファイリングが、エキスパート・システムによって影響を受けうる。
【００６０】
図７に示すように、ＱｏＳエキスパート・システムは、アプリケーション層、動的優先順位計算、パケット複製、パケット・インターリービング、損失回復、バッファ管理およびレート制御にＱｏＳシグナリングを供給してもよい。例えば、アプリケーション層は、誤り訂正技術またはスタート・アップ遅延を調整するＱｏＳ情報を受け取り；動的優先順位計算は、表示速度、スタート・アップ遅延またはＥ２Ｅ遅延を調整するＱｏＳ情報を受け取る。パケット複製は、ネットワーク損失レートに関するＱｏＳ情報を含んでもよい。損失回復は、表示速度および表示品質のようなＱｏＳ情報により影響を受ける可能性がある。レート制御は、ユーザおよびラスト・マイル・アクセス媒体によって要求される品質に関するＱｏＳ情報に従って調整されてもよい。
【００６１】
図７は、本発明の実施形態が実施されうる典型的なコンピュータシステム７００を示すブロック図である。本実施例がローカルエリアネットワーク（ＬＡＮ）の背景で検討される一方、本発明の原理は、調整可能なソース・コンポーネント、ネットワーク・コンポーネント、バンド幅コンポーネント、またはコーディング・コンポーネントのいずれかを有するいずれかのサーバ−クライアント・ネットワークにおいて適用可能である。
【００６２】
図７を参照して、コンピュータ・システム７００は、コンピュータ・システム７００の他の内部コンポーネントおよび外部コンポーネントの間で情報を通過させるためのバス７１０のような通信機構を含む。情報は、測定可能な現象の物理的な信号、一般に電気的な電圧として示されるが、他の実施形態では、磁気、電磁気、圧力、化学、分子および原子の相互作用を含んでいる。例えば、南北磁場、またはゼロおよび非ゼロ電気電圧は、二進数（ビット）の２つの状態（０，１）を示す。一連の二進数は、文字のための数値またはコードを示すために用いられるデジタルデータを構成する。バス７１０は、情報がバス７１０に接続された複数の機器の間で迅速に伝送されるように、多くの平行した情報導体を含む。情報を処理するための１つ以上のプロセッサ７０２は、バス７１０に接続されている。プロセッサ７０２は、情報に対して一連の動作を実行する。一連の動作は、バス７１０から情報を取ってくることと、バス７１０へ情報を置くことを含む。また、一連の動作は、一般的に、２つ以上の情報ユニットを比較すること、情報ユニットの位置を移動すること、加算または乗算などにより２つ以上の情報ユニットを結合することを含む。プロセッサ７０２により実行されるべき動作のシーケンスは、コンピュータ命令を構成する。
【００６３】
また、コンピュータシステム７００は、バス７１０に接続されたメモリ７０４を含む。メモリ７０４は、例えば、ランダム・アクセス・メモリ（ＲＡＭ）または他の動的記憶装置であり、コンピュータ命令を含む情報を格納する。動的メモリは、その中に格納された情報が、コンピュータシステム７００によって変更されるのを可能にする。ＲＡＭは、メモリアドレスと呼ばれる場所に格納される情報のユニットが、隣接したアドレスの情報から独立して格納され、かつ読み出されるのを可能にする。また、メモリ７０４は、コンピュータ命令の実行中に、一時的な値を格納するためにプロセッサ７０２により用いられる。また、コンピュータシステム７００は、コンピュータシステム７００で変更されない、命令を含む静的な情報を格納するためにバス７１０に接続された、リード・オンリ・メモリ（ＲＯＭ）７０６または他の静的記憶装置を含む。また、コンピュータシステム７００がオフにされるか、さもなければ電力を失ったときでも保持される、命令を含む情報を格納するための磁気ディスクまたは光学ディスクのような不揮発性（持続性）記憶装置７０８も、バス７１０に接続されている。
【００６４】
命令を含む情報は、プロセッサにより用いるために、人間のユーザにより操作される英数字キーを有するキーボードまたはセンサのような外部入力機器７１２からバス７１０に供給される。センサは、その周辺の状況を検出し、それら検出値を、コンピュータシステム７００で情報を表すために用いられる信号と互換性を持つ信号に変換する。人間とインタラクトするために主に用いられる、バス７１０に接続される他の外部機器は、画像を提示するための、陰極線管（ＣＲＴ）または液晶表示器（ＬＣＤ）のようなディスプレイ機器７１４と、ディスプレイ７１４上に表示される小さなカーソル画像の位置を制御するための、かつディスプレイ７１４上に表示されるグラフィカルな要素に関する命令を発行するための、マウス、トラックボールまたはカーソル方向キーのようなポインティング機器７１６とを含む。
【００６５】
図示された実施形態において、アプリケーションに特化した集積回路（ＩＣ）７２０のような、特別な目的のハードウエアがバス７１０に接続されている。特別な目的のハードウエアは、特別な目的のためにプロセッサ７０２では十分迅速に実行されない動作を実行するように構成されている。アプリケーションに特化したＩＣの例は、ディスプレイ７１４に画像を生成するためのグラフィック・アクセラレータ・カード、ネットワークを介して送信されるメッセージを暗号化および解読するための暗号ボード、音声認識、および、ハードウエアでより効率的に実施される何らかの複雑な動作のシーケンスを繰り返し実行する、ロボットアームや医療スキャニング設備のような特別な外部機器とのインターフェースを含む。
【００６６】
また、コンピュータシステム７００は、バス７１０に接続された通信インターフェース７７０の１つ以上の例を含む。通信インターフェース７７０は、プリンタやスキャナ、外部ディスクのような、それら自身のプロセッサで動作する種々の外部機器に接続されている双方向通信を実現する。一般に、接続はネットワーク・リンク７７８となされ、該リンクはローカル・ネットワーク７８０に接続され、ローカル・ネットワークには、自身のプロセッサを有する種々の外部機器が再接続される。例えば、通信インターフェース７７０は、パーソナルコンピュータ上のパラレル・ポート、シリアル・ポート、またはユニバーサル・シリアル・バス（ＵＳＢ）ポートであってよい。いくつかの実施形態では、通信インターフェース７７０は、対応するタイプの電話回線への情報通信接続を実現する、総合サービス・デジタル網（ＩＳＤＮ）カード、デジタル加入者回線（ＤＳＬ）カード、または電話モデムである。いくつかの実施形態では、通信インターフェース７７０は、バス７１０上の信号を、同軸ケーブルを介した通信接続のための信号に、または光ファイバケーブルを介した通信接続のための光信号に変換するケーブルモデムである。他の実施例として、通信インターフェース７７０は、イーサネットのような互換性を持つローカル・エリア・ネットワーク（ＬＡＮ）へのデータ通信接続を提供するＬＡＮカードであってもよい。また、無線リンクが実装されてもよい。無線リンクのために、通信インターフェース７７０は、デジタルデータのような情報ストリームを伝播する赤外線および光信号を含む、電気的、音響的な電磁気信号を送受信する。このような信号は搬送波の例である。
【００６７】
用語「コンピュータ可読媒体」は、ここでは、実行のためのプロセッサ７０２に命令を提供することに関与する任意の媒体を指して用いられる。そのような媒体は、不揮発性媒体、揮発性媒体および伝送媒体を含むが、これに限定されず、多くの形態をとってよい。不揮発性媒体としては、例えば、記憶機器７０８のような光学または磁気ディスクが含まれる。揮発性媒体としては、例えば、動的メモリ７０４が含まれる。伝送媒体としては、例えば、無線、光学および赤外線を含む、音波および電磁波のような同軸ケーブルが含まれる。ここで、伝送媒体を介して再送信される信号は搬送波と呼ばれる。
【００６８】
コンピュータ可読媒体の共通形態は、例えば、フロッピーディスク、フレキシブル・ディスク、ハードディスク、磁気テープまたはあらゆる他の磁気媒体、コンパクト・ディスクＲＯＭ（ＣＤ−ＲＯＭ）またはあらゆる他の光学媒体、パンチカード、紙テープ、または孔パターンを有するあらゆる他の物理的な媒体、ＲＡＭ、プログラマブルＲＯＭ（ＰＲＯＭ）、消去可能なＰＲＯＭ（ＥＰＲＯＭ）、フラッシュＥＰＲＯＭ、またはあらゆる他のメモリチップまたはカートリッジ、搬送波またはコンピュータ可読のあらゆる他の媒体形態を含む。
【００６９】
ネットワーク・リンク７７８は、一般的に、１つ以上のネットワークを介して、情報通信を、情報を用いるか処理する他の機器へ供給する。例えば、ネットワーク・リンク７７８は、ローカル・ネットワーク７８０を介して、ホストコンピュータ７８２またはインターネット・サービス・プロバイダ（ＩＳＰ）によって動作する設備７８４への接続を提供してもよい。ＩＳＰ設備７８４は、現在一般的にインターネット７９０と称される、公共のネットワークのワールドワイド・パケット・スイッチング通信ネットワークを介して、データ通信サービスを提供する。インターネットに接続されたサーバ７９２と呼ばれるコンピュータは、インターネットを介して受信された情報に応じてサービスを提供する。例えば、サーバ７９２は、ディスプレイ７１４に表示するためのビデオデータに相当する情報を提供する。
【００７０】
本発明は、ここで述べられる技術を実施するためのコンピュータシステム７００の使用に関する。本発明の一実施形態によれば、それらの技術は、メモリ７０４に格納されている１つ以上の命令の１つ以上のシーケンスを実行しているプロセッサ１０２に応じて、コンピュータシステム７００によって実行される。そのような命令は、ソフトウエアおよびプログラムコードと呼ばれており、記憶機器７０８のような他のコンピュータ可読媒体からメモリ７０４に読み込まれてもよい。メモリ７０４に格納されている複数の命令からなるシーケンスの実行は、ここで述べた方法の複数の方法ステップを、プロセッサ７０２に実行させる。他の実施形態では、アプリケーションに特化した集積回路７２０のようなハードウエアを、本発明を実施するために、ソフトウエアの代わりに、あるいはソフトウエアと組み合せて用いてもよい。ゆえに、本発明の実施形態は、ハードウエアおよびソフトウエアのいかなる特定の組合せにも限定されない。
【００７１】
ネットワーク・リンク７７８、およびコンピュータシステム７００と情報を伝送しあう通信インターフェース７７０を介した他のネットワークを介して送信された信号は、搬送波の典型的な形態である。コンピュータシステム７００は、ネットワーク・リンク７７８および通信インターフェース７７０を介して、数ある中でネットワーク７８０，７９０を介してプログラムコードを含む情報を送受信することが可能である。インターネット７９０を用いた例において、サーバ７９２は、インターネット７９０、ＩＳＰ設備７８４、ローカル・ネットワーク７８０および通信インターフェース７７０を介して、コンピュータ７００から送信されたメッセージによって要求されて、特定のアプリケーションに対してプログラムコードを送信する。受信されたコードは、それが受信されると、プロセッサ７０２によって実行されてもよいし、後の実行のために、記憶機器７０８または他の不揮発性記憶装置あるいは双方に格納されてもよい。この方法において、コンピュータシステム７００は、搬送波の形態で、アプリケーション・プログラム・コードを取得してもよい。
【００７２】
コンピュータ可読媒体の種々の形態は、命令またはデータあるいは双方の１つ以上のシーケンスを、実行のためにプロセッサ７０２に運ぶことに関与してもよい。例えば、命令およびデータは、まず最初に、ホスト７８２のようなリモート・コンピュータの磁気ディスク上に運ばれてもよい。リモート・コンピュータは、動的メモリに命令およびデータをロードし、モデムを用いて電話回線上に命令およびデータを送信する。コンピュータシステム７００へのモデム・ローカルは、電話回線上の命令およびデータを受信し、命令およびデータを、ネットワーク・リンク７７８として機能する搬送波である、赤外線信号に変換するために赤外線送信器を用いる。通信インターフェース７７０として機能する赤外線検出器は、赤外線信号で運ばれる命令およびデータを受信し、命令およびデータを表す情報をバス７１０に送出する。バス７１０は、メモリ７０４へ情報を運び、プロセッサ７０２は、メモリ７０４から、命令とともに送られてきたデータの一部を用いて命令を読み出して実行する。メモリ７０４で受け取られた命令およびデータは、記憶機器７０８に随意に格納されてよく、それはプロセッサ７０２による実行の前後のどちらでもよい。
【００７３】
本発明のシステムは、ポイント・ツー・ポイント通信システム、ユニキャスト、マルチキャスト、双方向マルチキャスト、マルチユーザ・マルチキャストなどを含む、様々な環境に適用可能である。マルチユーザ環境では、システムの複数のノードの１つが、フィードバック・メッセージを調整し、かつトランスレータに対応してよく、または、エキスパート・システムが配信されてもよい。処理は、１つ以上の方向に流れるデータ、および１つ以上の方向に流れるシグナリングのシステムに適用可能である。また、本発明のシステムは、あらゆる環境または伝送媒体に適用可能である。
【００７４】
ここに明らかにされる原理は、柔軟性があるシステムを提供する。そのような適応性は、ＱｏＳシグナリングの原理の、幅広いアプリケーションを可能にする。例えば、ＱｏＳ信号を生じる場所は、ユーザ側に配置されてもよいが、複数のユーザ、または、ユーザ要件、ネットワーク能力、受信機能力などのような複数のステアリング入力のため、分散処理システムに存在してもよい。
【００７５】
さらに、サーバは、テレビ技術を有するインターネット（ワールド・ワイド・ウェブ）コンテンツを閲覧しているような、インタラクティブ機能およびオーバレイを提供するメタデータを含んでもよい。本発明の原理は、ゆえに、最終的に消費されるコンテンツを含む、プレゼンテーションおよびコンテンツを含んでいる、様々な機能のステアリングを提供することが可能である。このように、本発明の原理は、双方向ビデオおよび双方向テレビに適用可能である。例えば、セット・トップ・ボックスのようなクライアント機器は、情報を評価するためにユーザ・プロファイルを用いてもよく、サーバからおよび全体に伝達されたメタデータ、あるいはブロードキャスト情報の効率的な利用をするためにフィルタリングを提供してもよい。
【００７６】
本発明の一態様によれば、ＱｏＳシグナリングは、ソースおよび転送先との間のアーキテクチャ内の異なる場所に格納可能であり、フィードフォワードまたはフィードバックとして送信可能であり、ＤＯＣＳＩＳケーブル、ならびに分散コンピューティングおよび通信のような上向きのリンクを利用可能である。
【００７７】
本発明による技術は、受信機／転送先／クライアントで必要とされまたは要求されたサービス品質（ＱｏＳ）に従って、信号伝送を最適化するために用いることができる。そのような最適化は、実際のユーザ要件、人間の認識最小限要件、またはアプリケーションの特化した要件を考慮することができる。スケーリングは、また、ネットワークの大きさ、またはネットワーク上のユーザ数に基づいて提供される。サービス品質に関する要件は、トレードオフまたはバランス品質、複雑さ、遅延、およびデータレートを追求する。言い換えると、本発明のＱｏＳ技術は、遅延を最小限にし、かつスループットを最大化することを追求する。すなわち、制約の範囲内で品質を最大化することである。
【００７８】
エキスパート・システムは、サービス品質のために入力を調整するために提供されてもよい。例えば、サービス品質に関する要件に関する入力は、受信機と送信機との間の通信の４つの異なる「レベル」：ネットワーク、ソース、クライアント・アプリケーションまたは機器、およびユーザにあることができる。そのような入力は、また、リアルタイム・フィードバックを通して、またはセッションごと、市場（顧客）ごと、または市場（ドメイン）ごとに提供される。
【００７９】
サービス品質のプリミティブ（すなわち、送信機、受信機、クライアント・アプリケーション、およびユーザ能力および要件に従って調整可能な通信品質要因）は、例えば、ビデオ品質；空間分解能；時間分解能；表示サイズ、品質および分解能；オーディオ品質；バンド幅；空間リアリズム；音声制御およびフィードバック；スタートアップ遅延許容限度；ミッドストリーム待ち時間；など、あるいはそのような他のものを含む。ＱｏＳプリミティブは、通信システムの様々なコンポーネントによって、実際に実施できるネットワークパラメータまたはシステムパラメータに変換される。そのようなパラメータは、ビデオ・ビットレート、ビデオ・ビット誤り率プロファイル、ビデオ・パケット損失プロファイル、オーディオ・ビットレート、オーディオ・ビット誤り率プロファイル、オーディオ・パケット損失プロファイル、可変／固定／適応ビットレート、グローバル遅延ジッタ・プロファイル、差分ジッタ・プロファイルなど、あるいはそのような他のものを含む。
【００８０】
ＱｏＳプリミティブは、本発明の他の態様、技術またはコンポーネントへの入力を提供するエキスパート・システムに従って、評価され、変換される。
【００８１】
様々な変形例やバリエーションが本発明の精神または範囲から逸脱することなく、本発明において実現されることは当業者にとって明白である。したがって、本発明の変形例やバリエーションは、それらが添付の特許請求の範囲とそれらの等価物の範囲に属する限り、本発明の範囲内であるものとする。
【図面の簡単な説明】
【００８２】
本発明の更なる理解を提供するために含められ、この明細書の一部に組み込まれ、かつ構成する添付の図面は、本発明の原理を説明するために役に立つ説明とともに、本発明の実施形態を示す。
【図１】関連技術によるネットワーク上のコンピュータ・ハードウェアを用いるマルチメディア・データを配信するためのシステムを示すブロック図である。
【図２】本発明の一実施形態によるエキスパート・システム２０１のブロック図である。
【図３】本発明の一実施形態によるＱｏＳシグナリングのフローを表す概念図である。
【図４】ソース・コーディング（ＳＣ）、チャネル・コーディング（ＣＣ）、ネットワーク・コーディング（ＮＣ）およびバンド幅強化（ＢＷ）の共同設計のためのエキスパート・システムを、形成しかつ用いるための典型的な処理を示すフローチャートである。
【図５】ＱｏＳパラメータに対するＱｏＳプリミティブのマッピングを示す図である。
【図６】本発明の１つの態様によるエキスパート・システムがどのようにして統合アーキテクチャの他のコンポーネントに対してＱｏＳシグナリングを実現するかを示す図である。
【図７】本発明の一実施形態を実施できる典型的なコンピュータシステムを示すブロック図である。
【図１】
2005505160.tif 000004
【図２】
2005505160.tif 000005
【図３】
2005505160.tif 000006
【図４】
2005505160.tif 000007
【図５】
2005505160.tif 000008
【図６】
2005505160.tif 000009
【図７】
2005505160.tif 000010
【国際公開パンフレット】
2005505160.tif 000011
2005505160.tif 000012
2005505160.tif 000013
2005505160.tif 000014
2005505160.tif 000015
2005505160.tif 000016
2005505160.tif 000017
2005505160.tif 000018
2005505160.tif 000019
2005505160.tif 000020
2005505160.tif 000021
2005505160.tif 000022
2005505160.tif 000023
2005505160.tif 000024
2005505160.tif 000025
2005505160.tif 000026
2005505160.tif 000027
2005505160.tif 000028
2005505160.tif 000029
2005505160.tif 000030
2005505160.tif 000031
2005505160.tif 000032
2005505160.tif 000033
2005505160.tif 000034
2005505160.tif 000035
2005505160.tif 000036
2005505160.tif 000037
2005505160.tif 000038
2005505160.tif 000039
2005505160.tif 000040
2005505160.tif 000041
2005505160.tif 000042
2005505160.tif 000043
2005505160.tif 000044
2005505160.tif 000045
2005505160.tif 000046
2005505160.tif 000047
2005505160.tif 000048
2005505160.tif 000049
2005505160.tif 000050
2005505160.tif 000051
2005505160.tif 000052
2005505160.tif 000053
2005505160.tif 000054
2005505160.tif 000055
【国際調査報告】
2005505160.tif 000056
2005505160.tif 000057