JP2007516499A - クライアントデバイスによって要求されたコンテンツにサービスを提供するプロバイダが選択されるシステム及び方法 - Google Patents

クライアントデバイスによって要求されたコンテンツにサービスを提供するプロバイダが選択されるシステム及び方法 Download PDF

Info

Publication number
JP2007516499A
JP2007516499A JP2006533038A JP2006533038A JP2007516499A JP 2007516499 A JP2007516499 A JP 2007516499A JP 2006533038 A JP2006533038 A JP 2006533038A JP 2006533038 A JP2006533038 A JP 2006533038A JP 2007516499 A JP2007516499 A JP 2007516499A
Authority
JP
Japan
Prior art keywords
service
provider
client device
content
content item
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2006533038A
Other languages
English (en)
Inventor
ロイ・サミット
シェン・ボー
アンクコーン・ジョン
アポストロポーロス・ジョン・ジー
コベル・マイケル
ハービル・マイケル
タン・ワイ−ティアン
ウィー・スーズィー・ジェイ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Development Co LP
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Publication of JP2007516499A publication Critical patent/JP2007516499A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • H04L65/401Support for services or applications wherein the services involve a main real-time session and one or more additional parallel real-time or time sensitive sessions, e.g. white board sharing or spawning of a subconference
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/765Media network packet handling intermediate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/567Integrating service provisioning from a plurality of service providers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/10Flow control between communication endpoints
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W48/00Access restriction; Network selection; Access point selection
    • H04W48/08Access restriction or access information delivery, e.g. discovery data delivery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W48/00Access restriction; Network selection; Access point selection
    • H04W48/18Selecting a network or a communication service

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)

Abstract

【課題】クライアントデバイスによって要求されたコンテンツにサービスを提供するためのシステム及び方法を提供する。
【解決手段】コンテンツアイテムが、クライアントデバイスとのセッション中に特定される。このコンテンツアイテムに対して実行されるサービスのタイプが特定される。プロバイダ(130)が、このサービスを実行できる複数のプロバイダの中から選択される。セッションが、選択されたプロバイダへ転送され、このプロバイダは、コンテンツアイテムに対してサービスを実行する。
【選択図】図1

Description

[技術分野]
本発明の実施の形態は、ネットワーク上でのコンテンツへのサービスの提供(servicing)及びコンテンツの配信に関する。
[関連した米国出願]
本出願は、「Architecture for Distributing and Managing Streaming Media Services」と題する同時係属中の代理人整理番号第200312253−1.PRO号である仮特許出願第60/471,851号の優先権を主張する。この仮特許出願は、2003年5月19日の出願日を有し、本出願の譲受人に譲渡され、その全内容が参照により本明細書に援用される。
通常、人々は、自身のデスクトップマシン又はラップトップマシンを使用して、自身のウェブブラウジングの経験に基づきコンテンツサイト(たとえば、ビデオに基づく映画のウェブページ)を知る。その理由は、これらのデバイスが、ウェブブラウジングに関連した入力(たとえば、ユニフォームリソースロケータ又は検索照会)要件及び出力(たとえば、信頼性のある高帯域幅接続)要件によく適合しているからである。このようなサイトの位置が一旦突き止められると、ウェブユーザは、その後、ビデオ使用可能携帯情報端末(PDA)や携帯電話等の移動デバイスを使用してそれらのサイトへの接続を試みる。
ユーザ(クライアント)デバイスの多様性に対応するために、コンテンツプロバイダは、(接続の帯域幅に従った)広範囲の異なるビットレート、(それ自体、クライアントデバイスによって使用される能力管理ストラテジーに従って動的に変化する、クライアントデバイスで利用可能な処理能力に従った)ビデオフレームレート、(クライアントデバイスで利用可能な表示サイズに従った)ビデオフレームサイズ等をサポートできなければならない。
これらの問題に対処するための1つの方法は、メディアデータがストリーミングされる時に、そのメディアデータをトランスコードして、メディアデータが、クライアントデバイスに対して調整されたフォーマットで当該クライアントデバイスに到着するようにする機能を有するネットワークを与えることである。換言すると、出力コンテンツストリームが、異なるビットレート、異なるビデオフレームレート、異なるビデオフレームサイズ、又は異なる他のパラメータで生成されるように、出力コンテンツストリームをクライアントデバイスでの消費により適したものにする処理が、ネットワークにより、入力メディアコンテンツストリームに対して実行される。このトランスコードオペレーションは、ネットワークによって提供されたサービスと考えることができる。より一般的には、変更されたコンテンツ、又は、ネットワークを通じて利用可能なコンテンツから得られたデータをクライアントデバイスへ配信できるように、他のタイプのメディア処理及びメディア解析もネットワーク内で実行できることを想定することができる。ネットワークにおいてこの種の機能を提供できることによって、メディアコンテンツ入力に基づく多種多様の有用なサービスの構築が可能になり、ネットワークにアクセスするエンドユーザによる消費のためにこれらのサービスを提供することができる。
したがって、ネットワーク輻輳及びその結果生じる配信コンテンツの品質の劣化なく、コンテンツ、及び、他のコンテンツの処理又は解析の結果生じたコンテンツを多数のクライアントへ配信できる方法及びシステム又はこれらのいずれか(方法及び/又はシステム)が有益である。また、多様なクライアントに対してこれを達成できる方法及び/又はシステムも有益である。
[発明の開示]
本発明の実施の形態は、クライアントデバイスへ配信するためのコンテンツにサービスを提供するための方法及びシステムに関する。コンテンツアイテムが、クライアントデバイスとのセッション中に特定される。このコンテンツアイテムに対して実行されるサービスのタイプが特定される。プロバイダが、このサービスを実行できる複数のプロバイダの中から選択される。セッションが、選択されたプロバイダへ転送され、このプロバイダは、コンテンツアイテムに対してサービスを実行する。
添付図面は、本明細書に援用されて、本明細書の一部を成す。これらの添付図面は、本発明の実施の形態を示し、本明細書本文と共に、本発明の原理を説明するのに役立つものである。
本明細書本文で参照される図面は、特に注釈がある場合を除き、一律の縮尺で描かれていると理解されるべきではない。
次に、本発明のさまざまな実施の形態を詳細に参照する。さまざまな実施の形態の例は添付図面に示されている。本発明は、これらの実施の形態と共に説明されるが、これらの実施の形態は、それら実施の形態に本発明を限定することを目的としているものではないことを理解されたい。逆に、本発明は、代替形態、変更形態、及び等価物を網羅することを目的としている。これら代替形態、変更形態、及び等価物は、添付の特許請求の範囲によって定義された本発明の精神及び範囲内に含めることができる。さらに、本発明の以下の説明では、本発明の十分な理解を提供するために、多数の具体的な詳細が述べられる。それ以外の場合には、本発明の態様を不必要に分かりにくくしないように、既知の方法、手順、コンポーネント、及び回路は詳細に説明されていない。
本発明の態様は、コンピュータシステム等の知的デバイス(intelligent device:インテリジェントデバイス)で実施することができる。この知的デバイスは、一般に、情報及び命令を処理するためのプロセッサ、情報及び命令を記憶するためのランダムアクセス(揮発性)メモリ(RAM)、静的な情報及び命令を記憶するための読み出し専用(不揮発性)メモリ(ROM)、情報及び命令を記憶するための磁気ディスク又は光ディスクやディスクドライブ等のデータ記憶デバイス、コンピュータのユーザに情報を表示するための表示デバイス(たとえば、モニタ)等のオプションのユーザ出力デバイス、情報及びコマンド選択をプロセッサに通信するための英数字キー及びファンクションキー(たとえば、キーボード)を含むオプションのユーザ入力デバイス、並びに、ユーザ入力情報及びコマンド選択をプロセッサに通信するためのカーソル制御デバイス(たとえば、マウス)等のオプションのユーザ入力デバイスを含む。
図1は、本発明の一実施の形態による、コンテンツソース110からのコンテンツへのサービスの提供、及び、クライアントデバイス150へのサービス結果コンテンツの配信を行うためのシステム100のブロック図である。概観すると、サービスを求めるクライアントデバイス150は、システム100(たとえば、ポータル140)と接触する。クライアントデバイス150は、そのサービスのプロバイダ(たとえば、サービスプロバイダ130)への宛先の書き換えを受ける。コンテンツソース(たとえば、コンテンツソース110)からのコンテンツは、サービスプロバイダを介してクライアントデバイスへ送信(たとえば、ストリーミング)される。このように、一実施の形態では、システム100は、コンテンツソースからクライアントデバイスへメディアをストリーミングするためのものである。
本出願では、本明細書で使用されるようなストリーミングメディアは、連続的な方法でネットワークノード間を通信されるデータを意味する。例としては、ストリーミング音響及びストリーミングビデオが含まれる。これらは、配信時について厳密な時間制約を有する場合がある。これらの例では、これらストリームの一部があまりにも遅れて配信されると、それらの一部は、遅れたことにより無視されることになる(それらの一部は、あまりにも遅れているので、クライアントアプリケーションによって再生されているものの効果がなく、したがって、大部分は役立たない)。或いは、これらのストリームの一部があまりにも早く配信されると、それらの一部は、サービス又はクライアントアプリケーション内のバッファ制約のために失われることになる。連続的な方法で送信されるデータの他の例には、測定値のストリーム又は実験結果のストリームが含まれる。これらのタイプのストリームには、リモートセンサからの天候の読み取り値及び冷却システムからの温度の読み取り値が含まれる。これらの例では、配信時について厳密な時間制約はない。しかしながら、データの送信は、シームレスに進行する送信によって最もよく満たされる時間成分を有する。
したがって、ストリーミングメディアを使用することによって、サービスを配置する効果は、ネットワーク及びサーバノードの双方に資源に対して永続した効果を有する。たとえば、ストリーミング条件下で鑑賞される映画をトランスコードする際に、そのデータは、2時間程度の長さにわたり、したがって、トランスコードセッションは、2時間程度のサーバ時間にわたる場合がある。他のタイプのストリーミング(たとえば、計器の読み取り)の場合、ストリームの継続時間、及び、ストリームに対して行われるサービスの継続期間は、終わることのないものとなる可能性がある。サーバノードの計算資源は、不確実な継続時間による長い時間の間、実行される。同様に、サーバノードのネットワーク資源、サーバとコンテンツプロバイダとの間のすべてのリンクのネットワーク資源、及びサーバとクライアントマシンとの間のネットワーク資源も、不確実な継続時間による長い時間の間、実行されることになる。これは、データ転送が、多くの場合、数秒又は数分のより少ない期間のブロックで行われ、且つ、そのデータに対して実行されるサービスが、制約された継続期間を有する、より古典的なネットワークトランザクションとは大いに異なる。
ストリーミングメディアを取り扱う一実施の形態において、検討する必要がある問題のいくつかは以下の通りである。すなわち、ウェブに基づく配布、並びに、ウェブに基づくビジネス取引及び/又はダウンロードと比較して、ストリーミングメディアは、取り組む必要のある以下の特性を有する。
データが大量であること。データの終了ポイントが判明していない場合があり、多数のコンテンツアイテムのキャッシュには、かなりのメモリ資源が消費される可能性がある。
データが時間で順序付けされていること。データが受信される時間順序が重要となる可能性がある。
アクセスを完了まで遂行できないこと。たとえば、コンテンツアイテムの或る部分(たとえば、全映画の最初の数分)にしかアクセスすることができない。
対象メディアの或る程度の理解なしでは、必要な帯域幅を決定できないこと。たとえば、或るビデオファイルは高い空間解像度の場合があり、別のビデオファイルはそうでない場合があり、そこで、共にビデオファイルであるそれらファイルは、同じものとして見える場合があるが、それらファイルの各帯域幅は、まったく異なる場合がある。
待ち時間又は帯域幅のジッタが問題となる可能性があること。一貫した待ち時間は許容できる場合があるが、セッション中にかなり変化する待ち時間は、バッファのオーバーフロー又はアンダーフローのために問題となる可能性がある。
不十分な計算資源又は帯域幅資源が、時間制約のために役立たない結果となる可能性があること。
データは、通常、符号化(圧縮)され、そこで、データの或る部分の損失又は遅れが、その後のデータ復号(伸張)に影響を与える可能性があること。
失われたデータは、通常、時間制約のため再送されないこと。及び、
すべてのクライアントデバイスについての状態の記録が保持されるべきであること。ストリーミングメディアの場合、ストリーミングノードは、ストリーミングデータを継続する必要があり、クライアントからの状態情報の受信を待つことができない。
これらの相違の結果、ストリーミングメディアに対して実行されるサービスの管理及び監視の必要性が大幅に増加する。
本実施の形態では、システム100は、サービスロケーションマネージャ120、サービスプロバイダ130及びサービスプロバイダ132によって例示される複数のサービスプロバイダ、並びにポータル140を含む。サービスロケーションマネージャ120、サービスプロバイダ130及び132、並びにポータル140は、単一のデバイスで実施できる論理エンティティ又は複数のデバイスを使用して実施できる論理エンティティである。したがって、システム100は、たとえば、サービスロケーションマネージャ120、サービスプロバイダ130及び132、並びにポータル140の機能を実施する単一のコンピュータシステムを表すことができる。或いは、システム100は、コンピュータシステムネットワークの異なるノード又はデバイスを包含することもできる。これらのノードは、本明細書で説明されるさまざまな機能を実行するのに十分な処理能力及び記憶能力を有するサーバコンピュータシステム、スイッチ、ルータ等とすることができる。一般的に言えば、システム100によって提供される機能は、1つ又は複数のデバイスを使用して実施することができる。さらに、単一のサービスロケーションマネージャ120及びポータル140についてシステム100を説明するが、それら要素のいずれも2つ以上存在することができる。これに加えて、3つ以上のサービスプロバイダが存在することもできる。
システム100は、サービスロケーションマネージャ120、サービスプロバイダ130及び132、並びにポータル140又はこれらのいずれか(サービスロケーションマネージャ120、サービスプロバイダ130及び132、並びに/又はポータル140)の機能を既存のネットワークに重ね合わせることによって、既存のコンピュータシステムネットワークにおいて実施することができる。すなわち、システム100によって提供される機能のすべて又は一部は、既存のネットワークノードに組み込むことができる。或いは、システム100のすべて又は一部は、既存のネットワークにノードを追加することによって実施することもできる。たとえば、コンテンツへのサービスの提供及びサービスプロバイダの管理のために追加されたノードと共に、既存のコンテンツソース及びポータルを使用してもよい。
本実施の形態では、システム100は、コンテンツソース110及びクライアントデバイス150と通信することができる。単一のコンテンツソース110及びクライアントデバイス150について説明するが、それら要素のそれぞれは2つ以上存在することができる。システム100、コンテンツソース110、及びクライアントデバイス150の間の通信、並びに、システム100内の通信は無線とすることができる。
クライアントデバイス150は、実質的には、あらゆる種類のユーザデバイスとすることができる。このユーザデバイスは、デスクトップコンピュータシステム若しくはラップトップコンピュータシステム、又はビデオ使用可能ハンドヘルドコンピュータシステム(たとえば、携帯情報端末)若しくは携帯電話等であるが、これらに限定されるものではない。一般に、クライアントデバイス150は、コンテンツアイテムを要求し、その後、それを受信するのに使用される。
コンテンツアイテムは、ライブの場合もあるし、記録されている場合もあるメディアデータ又は非メディアデータを指す。コンテンツアイテムには、ビデオに基づくデータ、音響に基づくデータ、画像に基づくデータ、ウェブページに基づくデータ、グラフィックデータ、テキストに基づくデータ、又はそれらの或る組み合わせが含まれ得るが、これらに限定されるものではない。たとえば、コンテンツアイテムは、デジタルビデオディスク(DVD)品質の映画とすることができる。
コンテンツがクライアントデバイス150に提供される前に、コンテンツアイテムに対して或るタイプのサービスを実行することが必要な場合がある。サービスのタイプには、コンテンツアイテムの処理及び/又はコンテンツアイテムの解析が含まれ得る。たとえば、サービスのタイプには、ビデオ処理が含まれ得る。このビデオ処理は、トランスコード、ジッタ除去、顔認識に基づくダイナミッククリッピング、ビデオ解析、ビデオのサイズ変更、ビデオからの光学文字の読み取り、背景除去等であり得るが、これらに限定されるものではない。これに加えて、サービスのタイプには、音響処理も含まれ得る。この音響処理は、背景除去、音響強調(audio enhancement)、音響速度の増減、音響強調、雑音低減、発話認識、音響解析等であり得るが、これらに限定されるものではない。コンテンツアイテムの解析には、たとえば、テキストの写しを生成する発話認識、又は、ビデオストリームの1つ又は複数のビデオ画像に適用されてテキスト出力を生成する光学文字認識が含まれ得る。人のロケーション及び時刻の記録のストリームを出力する、ビデオに基づく人追跡サービスは、コンテンツアイテムの解析を示すのに使用できる別の例である。ロケーションは、画像の座標の点から表現することができるが、物理的なワールド座標(たとえば、部屋の階を基準とした「x,y」座標)の点から表現されると、より便利な場合がある。コンテンツアイテムの解析を示すのに使用できる別の例は、顔検出器サービスに関するものである。この顔検出器サービスは、ビデオストリームから抽出された顔のスナップショット、それらスナップショットが検出された時刻及び画像のロケーション、それら顔の同一性、及び/又は顔の分類を出力する。この情報の或る部分は、テキストデータとして表すことができる。
本明細書では、コンテンツアイテムは、すでにサービスが提供されている場合もあるし、サービスの提供を受けている最中の場合もあるし、サービスが提供されていない場合もあるし、いまだサービスが提供されたことがない場合もある。換言すると、コンテンツアイテムは、サービスが提供されていようといまいと、それでもコンテンツアイテムと呼ぶことができる。コンテンツアイテムへのサービスの提供には、コンテンツアイテムの解析又は処理が含まれ得る。考察を明確にする必要がある場合、コンテンツアイテムへのサービスの提供の結果を、本明細書では、「サービス結果」や「サービス結果コンテンツ」又は「サービス結果データ」等の用語を使用して呼ぶ。サービス結果コンテンツは、サービスの提供を受けた元のコンテンツアイテムの変更版(たとえば、背景除去がビデオストリームに適用される場合)、元のコンテンツアイテムから得られたコンテンツアイテム(たとえば光学文字認識が使用されてテキスト出力が生成される場合)、サービスプロバイダを通じて渡され、変更されずに単に転送されるだけのコンテンツアイテム(たとえば、トランスコードサービスプロバイダによって受信された場合にトランスコードを必要としないコンテンツ)、又は、事前にサービスプロバイダに送信されており、且つ現在、そのサービスプロバイダにキャッシュ/記憶されているコンテンツアイテム(たとえば、事前にサービスが提供されて、且つ現在、サービスプロバイダのメモリに記憶されているコンテンツ)から構成することができる。これに加えて、サービス結果コンテンツは、上記例の任意の組み合わせから構成し得る。
図1の参照を続けて、サービスプロバイダ130及び132は、それぞれ、1つ又は複数のタイプのサービスを提供するように機能する。すなわち、サービスプロバイダ130及び132は、それぞれ、複数の異なるタイプのサービスを提供することができる。たとえば、サービスプロバイダ130は、或るコンテンツアイテムをトランスコードするのに使用でき、且つ、別のコンテンツアイテムの背景除去に使用できる。異なるタイプのサービスは、異なるコンテンツアイテムに対して並列に実行することができる。すなわち、サービスプロバイダ130及び132は、異なるが同時発生したコンテンツストリームに対してサービスを実行することができる。また、サービスプロバイダ130及び132は、キャッシュサービスも提供することができる。たとえば、コンテンツアイテムがサービスプロバイダ130又は132によってサービスの提供を受ける前に、サービスプロバイダ130又は132は、そのコンテンツアイテムをすべて又は部分的にキャッシュすることができる。同様に、サービス結果コンテンツがクライアントデバイス150へ転送される前に、サービスプロバイダ130又は132は、そのサービス結果もすべて又は部分的にキャッシュすることができる。
ポータル140は、クライアントデバイス150とシステム100との間の最初の接点としての機能を果たす広く公開されたポータルサイトである。コンテンツソース110は、コンテンツアイテムのソースである。
サービスロケーションマネージャ120は、サービス結果がクライアントデバイス150に提供される前にコンテンツアイテムに対して実行することが必要な場合があるタイプのサービスを実行できるサービスプロバイダ(たとえば、サービスプロバイダ130又は132)を選択する。サービスプロバイダ130及び132、並びに他のあらゆる利用可能なサービスプロバイダは、サービスロケーションマネージャ120に知られている。各サービスプロバイダが実行できるそのタイプ(複数可)のサービス、又は、実行するように各サービスプロバイダを構成できるタイプ(複数可)のサービスも、サービスロケーションマネージャ120に知られている。サービスロケーションマネージャ120がサービスプロバイダを選択する方法は、以下でより十分に説明する。
セッション開始時に、クライアントデバイス150は、メッセージ1をポータル140へ送信する。メッセージ1は、特定のコンテンツアイテム(たとえば、映画の名前)を特定する。
また、一実施の形態では、メッセージ1は、サービス結果がクライアントデバイス150に配信される前にコンテンツアイテムに対して実行されるべきサービスのタイプを特定するのに十分な情報を含む。その情報は多くの形態を取ることができる。或る形態では、メッセージ1は、サービスのタイプ(たとえば、背景除去又は発話認識)を具体的に特定する。別の形態では、メッセージ1は、クライアントデバイス150のメモリ容量、スクリーンサイズ、処理能力等のクライアントデバイス150の属性を特定する。これらの属性に基づいて、システム100(たとえば、ポータル140)は、実行されるべきサービスのタイプ(たとえば、トランスコード)を導き出すことができる。さらに別の形態では、メッセージ1は、クライアントデバイス150のタイプを特定し、そのタイプのデバイスの記憶された知識に基づいて、システム100(たとえば、ポータル140)は、実行されるべきサービスのタイプ(たとえば、トランスコード)を導き出すことができる。
メッセージ1は他の情報を含むことができる。コンテンツアイテムのソースがクライアントデバイス150によって知られている場合、メッセージ1において、コンテンツソースも特定することができる。たとえば、メッセージ1は、コンテンツソース110のユニフォームリソースロケータ(URL)を含むことができる。コンテンツアイテムのソースがクライアントデバイス150に知られていない場合において、その情報がシステム100にまだ知られていないときは、システム100(たとえば、ポータル140)がコンテンツソースの位置を突き止めることができる。
ポータル140は、メッセージ1を受信した後、メッセージ2をサービスロケーションマネージャ120へ送信する。一実施の形態では、メッセージ2は、サービス結果がクライアントデバイス150へ配信される前にコンテンツアイテムに対して実行されるべきサービスのタイプを特定するのに十分な情報を含む。先ほど説明したように、その情報は多くの形態を取ることができる。或る形態では、メッセージ2は、サービスのタイプ(たとえば、背景除去又は発話認識)を具体的に特定する。別の形態では、メッセージ2は、クライアントデバイス150のメモリ容量、スクリーンサイズ、処理能力等のクライアントデバイス150の属性を特定する。これらの属性に基づいて、システム100(たとえば、サービスロケーションマネージャ120)は、実行されるべきサービスのタイプ(たとえば、トランスコード)を導き出すことができる。さらに別の形態では、メッセージ2は、クライアントデバイス150のタイプを特定し、そのタイプのデバイスの記憶された知識に基づいて、システム100(たとえば、サービスロケーションマネージャ120)は、実行されるべきサービスのタイプ(たとえば、トランスコード)を導き出すことができる。メッセージ2により提供された情報に基づいて、サービスロケーションマネージャ120は、実行されるサービスのタイプを特定する。
メッセージ2は他の情報を含むことができる。たとえば、メッセージ2はコンテンツアイテム及び/又はコンテンツソースを特定することもできる。
サービスプロバイダ130及び132、並びに、それらサービスプロバイダが提供することができるサービスは、サービスロケーションマネージャ120に知られている。サービスロケーションマネージャ120は、サービスプロバイダ130又は132のいずれかを選択して、メッセージ2から特定されたサービスを実行する。
一実施の形態では、サービスロケーションマネージャ120は、サービスプロバイダ130又は132のいずれかをランダムに選択する。別の実施の形態では、サービスロケーションマネージャ120は、ラウンドロビン方式等の方式を使用してサービスプロバイダ130又は132のいずれかを選択する。
さらに別の実施の形態では、サービスロケーションマネージャ120は、すでに進行中の他のセッションにサービスを提供しているサービスプロバイダの履歴又は記録を保持する。すなわち、前述したように、各クライアントデバイスがセッションに参加する(たとえば、各クライアントデバイスがコンテンツアイテムを要求する)複数のクライアントデバイスが存在することができる。コンテンツアイテムがサービスの提供を受けているそれら他のセッションでは、サービスロケーションマネージャ120は、そのサービスを実行するためのサービスプロバイダを選択していたことになる。本実施の形態では、サービスロケーションマネージャ120は、それら他のセッションのサービスを提供するために選択されたサービスプロバイダの記録を保持する。その記録の情報に基づいて、サービスロケーションマネージャ120は、クライアントデバイス150との新たなセッション用のサービスプロバイダを選択することができる。たとえば、その記録の情報に基づいて、サービスロケーションマネージャ120は、どのサービスプロバイダが、他のサービスプロバイダに比べて最も忙しいかを評価することができる。記録は、サービスを完了するのに必要な予測された時間の長さ、又はセッションが継続する予測された時間の長さ等の情報を含むことができる。記録は、サービスロケーションマネージャ120が、以下でさらに説明するさまざまな手法を使用して更新することができる。
図1の例では、サービスロケーションマネージャ120はサービスプロバイダ130を選択する。次に、サービスロケーションマネージャ120は、メッセージ3をポータル140へ送信する。メッセージ3は、サービスプロバイダ130の位置を突き止めてサービスプロバイダ130と接触するのに十分な情報を含む。たとえば、メッセージ3は、サービスプロバイダ130のURLを含むことができる。
メッセージ3は他の情報を含むことができる。たとえば、メッセージ3は、コンテンツアイテム及び/又はコンテンツソースを特定することもできる。
ポータル140は、メッセージ3を受信した後、メッセージ4をクライアントデバイス150へ送信する。メッセージ4は、メッセージ3によって提供された、サービスプロバイダ130の位置を突き止めてサービスプロバイダ130と接触するための情報を含む。メッセージ4は、メッセージ3と同一のものとすることができる(メッセージ4は、メッセージ3の単なる転送であってもよい)。一方、メッセージ4は、ポータル140によって追加された他の(追加)情報を含むこともできる。たとえば、メッセージ4は、その情報がサービスロケーションマネージャ120の代わりにポータル140によって決定される場合、コンテンツアイテム及び/又はコンテンツソースも特定することができる。
代替的な一実施の形態では、メッセージ3及び4の代わりに、サービスロケーションマネージャ120は、クライアントデバイス150に直接メッセージを送信する。このサービスロケーションマネージャ120からクライアントデバイス150へのメッセージは、サービスプロバイダ130の位置を突き止めてサービスプロバイダ130と接触するための情報を含む。このメッセージは、コンテンツアイテム及び/又はコンテンツソースの識別情報等の他の情報を含むことができる。
いずれの場合も、クライアントデバイス150は、サービスプロバイダ130の位置を突き止めてサービスプロバイダ130と接触するのに十分な情報を含むメッセージを受信する。その情報に基づいて、クライアントデバイス150とサービスプロバイダ130との間の通信が確立される。換言すると、クライアントデバイス150によって開始されたセッションは、ポータル140からサービスプロバイダ130へ自動的に転送される。重要なことは、ポータル140からサービスプロバイダ130への転送が、シームレスであり、且つ、クライアントデバイス150のエンドユーザにトランスペアレントであることである。
一実施の形態では、クライアントデバイス150によって受信されたメッセージ(たとえば、メッセージ4)は、同期マルチメディア統合言語(SMIL(Synchronized Multimedia Integration Language))を使用するか、又は、この言語に基づいている。ポータル140からサービスプロバイダ130へのクライアントデバイス150の宛先の書き換えは、動的なSMILの書き換えを使用して行うことができる。
図1の図面の例をさらに続けて、クライアントデバイス150は、ポータル140からメッセージ4(又は、サービスロケーションマネージャ120から等価なメッセージ)を受信した後、メッセージ5をサービスプロバイダ130へ送信する。メッセージ5は、コンテンツアイテム、及び、サービスプロバイダ130によって実行されるサービスのタイプを特定する。メッセージ5は他の情報を含むことができる。たとえば、コンテンツソースがこの時点でクライアントデバイス150に知られている場合、その情報はメッセージ5に含めることができる。
サービスプロバイダ130は、メッセージ5を受信すると、コンテンツソース110へメッセージ6を送信する。上述したように、メッセージ5において、サービスプロバイダ130に対しコンテンツソース110を特定することができる。それ以外に、サービスプロバイダ130は、コンテンツソース110の位置を突き止めることができる。メッセージ6では、サービスプロバイダ130は、コンテンツアイテムの提供を受けることを要求する。
メッセージ6に応答して、コンテンツソース110は、サービスを提供するためにサービスプロバイダ130へコンテンツアイテムを送信する(図1の矢印7によって示す)。一実施の形態では、コンテンツアイテムは、サービスプロバイダ130へストリーミングされる。
一実施の形態では、サービスプロバイダ130は、常にセットアップされており、指定されたサービスを実行する準備ができている。すなわち、指定されたサービスは、サービスプロバイダ130で絶えず実行し続けることができ、処理されるデータを待機する。別の実施の形態では、指定されたサービスは、メッセージ5又はコンテンツアイテムのいずれかがサービスプロバイダ130によって受信されるまで動作していない。すなわち、サービスプロバイダ130は、指定されたサービスをセットアップ又は起動することが必要な場合があり、サービスの潜在的な必要性が特定されるまで、又は、サービスを実行する実際の必要性が存在するようになるまでそれを行わない。
いずれの場合も、サービスプロバイダ130は、指定されたサービスをコンテンツアイテムに対して実行することができる。コンテンツアイテムは、サービスを提供する前に、すべて又は部分的に、サービスプロバイダ130がキャッシュすることもできるし、サービスプロバイダ130によって受信された時にサービスの提供を受けることもできる。
次に、サービス結果コンテンツが、サービスプロバイダ130によってクライアントデバイス150へ送信される(図1に矢印8によって示す)。一実施の形態では、サービス結果コンテンツは、クライアントデバイス150へストリーミングされる。サービス結果コンテンツは、サービス提供後(ストリーミング前)、すべて又は部分的にサービスプロバイダ130がキャッシュすることもでき、又はサービスプロバイダ130によってサービスが提供された時にストリーミングすることもできる。
サービス結果コンテンツが、選択されたサービスプロバイダ(たとえば、サービスプロバイダ130)によって配信され、クライアントデバイス150によって受信されるとすぐに、継続中のセッションを終了することができる。履歴又は記録がサービスロケーションマネージャ120によって保持される一実施の形態では、サービスプロバイダ130が自身のサービス提供タスクを完了したこと、又は、セッションが終了したことを反映するようにその履歴又は記録を更新することができる。記録の更新を促すのに、異なる手法を使用することもできる。一手法では、サービスロケーションマネージャ120がサービスプロバイダの選択を行っている時又はその前後の時に、サービスロケーションマネージャ120は、コンテンツアイテムに対して実行されるサービスを完了するのに必要とされる時間を見積もる。その時間が経過した時にサービスが完了していることを反映するように記録を更新することができる。代替的に、選択されたサービスプロバイダ(たとえば、サービスプロバイダ130)は、サービスを完了した時をサービスロケーションマネージャ120に示すことができ、それに応じて記録を更新することができる。これらの手法は、クライアントデバイス150へのサービス結果コンテンツの配信を考慮するように拡張することができる。たとえば、サービスロケーションマネージャ120によって見積もられた、サービスプロバイダ130がサービスを実行する時間を増加させて、サービスプロバイダ130がサービス結果コンテンツをクライアントデバイス150へ送信するのに必要なあらゆる追加時間を考慮することができる。同様に、サービスロケーションマネージャ120は、セッションが継続すると予想される時間の長さを見積もることもできる(たとえば、コンテンツアイテムが2時間継続する映画である場合、セッションは約2時間継続すると予想することができる)。代替的に、サービスプロバイダ130は、サービス結果コンテンツのクライアントデバイス150への送信を完了した時をサービスロケーションマネージャ120へ示すことができる。
上記考察では、コンテンツアイテムは、メッセージ6に応答してサービスプロバイダ130へ送信される。本明細書で前述したように、サービスプロバイダ130は、その代わりに、前に受信され且つ/又はサービスの提供を受けたコンテンツを記憶又はキャッシュすることができ、メッセージ6の使用及びメッセージ6の応答を不要にすることができる(たとえば、図1の矢印7によって示すデータフローを不要にすることができる)。
図2Aは、本発明の別の実施の形態によるシステム100の内外の情報フローを示すブロック図である。図1と図2Aとの相違は、サービスロケーションマネージャ120から、選択されたサービスプロバイダ(たとえば、サービスプロバイダ130)へのメッセージAが追加されたことである。このメッセージAは、メッセージ2の後でメッセージ5の前の任意の時刻に、サービスロケーションマネージャ120からサービスプロバイダ130へ送信することができる。
メッセージAは、任意の個数の異なる目的で使用することができる。たとえば、指定されたコンテンツアイテムに対して実行されるサービスのタイプが、サービスプロバイダ130で連続的に実行されない状況では、メッセージAは、サービスの必要性が迫っていることをサービスプロバイダ130に警告するのに使用することができる。その結果、メッセージ5がクライアントデバイス150から受信される前に、サービスのセットアップ及び/又は起動を開始することができ、また、おそらく完了することもでき、これによって、全体の待ち時間が削減される。
また、メッセージAは、コンテンツアイテムの識別情報をサービスプロバイダ130に提供するのに使用することもでき、おそらく、コンテンツソース110の識別情報をサービスプロバイダ130に提供するのに使用することもできる。この情報によって、サービスプロバイダ130は、メッセージ5が受信される前にコンテンツアイテムを提供する(たとえば、ストリーミングを開始する)ようにコンテンツソース110に要求することができ、これは、待ち時間の削減にさらに貢献する。これに加えて、メッセージAをこのようにして使用する結果、たとえば、コンテンツソース110はクライアントデバイス150に対して特定される必要はないので、セキュリティを改善することができる。
さらに、メッセージAは、図2Bによって示すようなメッセージ3、4、及び5の代わりに使用することもできる。たとえば、コンテンツアイテム、及び、おそらくコンテンツソースを特定することに加えて、メッセージAは、クライアントデバイス150との通信の確立をサービスプロバイダ130に可能にする情報も含むことができる。換言すると、ポータル140からサービスプロバイダ130への通信の転送をクライアントデバイス150に開始させる代わりに、サービスプロバイダ130が、シームレスで且つクライアントデバイス150のユーザにトランスペアレントを維持する方法で、その通信の転送を開始することができる。
図3は、本発明の一実施の形態による、サービスの提供及びサービス結果コンテンツの配信のための方法のフローチャート300である。具体的なステップがフローチャート300に開示されるが、このようなステップは例示である。すなわち、本発明の実施の形態は、さまざまな他のステップ又はフローチャート300で列挙されたステップを変形したものの実行にもよく適合する。フローチャート300のステップは、提示したものとは異なる順序で実行し得ること、及び、フローチャート300のステップのすべてが実行されるとは限らない場合があることが理解されよう。
フローチャート300によって説明される方法のすべて又は一部は、たとえば、コンピュータシステム又は同様のデバイスのコンピュータ使用可能媒体に存在するコンピュータ可読で且つコンピュータ実行可能な命令を使用して実施することができる。本実施の形態では、フローチャート300は、図1、図2A及び図2Bのシステム100によって実施される。すなわち、フローチャート300に列挙されたステップのいくつかはポータル140によって実行され、他のものはサービスロケーションマネージャ120によって実行され、さらに他のものは図1、図2A及び図2Bのサービスプロバイダ130によって実行される。
図3のステップ302において、クライアントデバイスとのセッション中に、ポータルが、クライアントデバイスからコンテンツアイテムを特定する要求を受信する。この要求は他の情報を含むことができる。図1、図2A及び図2Bに関する一実施の形態では、ポータル140が、クライアントデバイス150からメッセージ1を受信する。
図3のステップ304において、コンテンツアイテムに対して実行されるサービスのタイプが特定される。このサービスのタイプは、ステップ302の要求で特定することもでき、又はその要求で提供された情報に基づいて導き出すこともできる。図1、図2A及び図2Bを参照して、このサービスのタイプは、クライアントデバイス150、ポータル140、又はサービスロケーションマネージャ120が特定することができる。
図3のステップ306において、そのサービスのタイプのプロバイダが、そのサービスを実行できる多数のプロバイダの中から選択される。一実施の形態では、図1、図2A、及び図2Bも参照して、サービスプロバイダ(たとえば、サービスプロバイダ130)がサービスロケーションマネージャ120によって選択される。前述したように、サービスロケーションマネージャ120は、サービスプロバイダをランダムに選択することもでき、又はラウンドロビン方式等の方式を使用して選択することもできる。或いは、サービスロケーションマネージャ120は、他のセッションがサービスプロバイダのいずれに転送されたかを反映する記録を保持することもできる。この後者の手法では、サービスロケーションマネージャ120は、その記録の情報に基づいてサービスプロバイダを選択する。
図3のステップ308において、クライアントデバイスとの通信が、ポータルから、選択されたサービスプロバイダへ転送される。換言すると、セッションが、ポータルから、選択されたサービスプロバイダへ転送される。
ステップ310において、コンテンツアイテムのソースが特定される。図1、図2A及び図2Bを参照して、コンテンツアイテムのソースは、クライアントデバイス150、ポータル140、サービスロケーションマネージャ120、又は選択されたサービスプロバイダ(たとえば、サービスプロバイダ130)が特定することができる。次に、選択されたサービスプロバイダへのコンテンツアイテムのデータの配信を開始するために、コンテンツソースとの接触が行われる。
図3のステップ312において、コンテンツアイテムが、選択されたサービスプロバイダによって受信される(たとえば、選択されたサービスプロバイダへストリーミングされる)。
ステップ314において、コンテンツアイテムは、指定されたサービスのタイプに従ってサービスの提供を受ける。コンテンツアイテムを構成するデータは、そのデータがサービスプロバイダにおいて受信されると、サービスを提供することもでき、又はサービスを提供する前にキャッシュすることもできる。上述したように、コンテンツアイテムは、すでにサービスの提供を受けている場合もあり、サービスの提供を受けている最中の場合もあり、サービスが提供されていない場合もあり、又はいまだサービスが提供されたことがない場合もある。コンテンツアイテムへのサービスの提供には、コンテンツアイテムの解析又は処理が含まれ得る。サービス結果コンテンツは、サービスの提供を受けた元のコンテンツアイテムの変更版(たとえば、背景除去がビデオストリームに適用される場合)、元のコンテンツアイテムから得られたコンテンツアイテム(たとえば光学文字認識が使用されてテキスト出力が生成される場合)、サービスプロバイダを通じて渡され、変更されずに単に転送されるだけのコンテンツアイテム(たとえば、トランスコードサービスプロバイダによって受信された場合にトランスコードを必要としないコンテンツ)、又は、事前にサービスプロバイダに送信されており、現在、そのサービスプロバイダにキャッシュ/記憶されているコンテンツアイテム(たとえば、事前にサービスの提供を受けており、現在、サービスプロバイダのメモリに記憶されているコンテンツ)から構成することができる。これに加えて、サービス結果コンテンツは、上記例の任意の組み合わせから構成されてもよい。
一実施の形態では、サービスは、サービスプロバイダによって連続的に実行される。別の実施の形態では、サービスは、クライアントデバイスがサービスプロバイダとの通信を確立するまで、セットアップされないか、又は、処理を開始しない。さらに別の実施の形態では、サービスは、サービスプロバイダがサービスロケーションマネージャによって特定された後であって、クライアントデバイスがサービスプロバイダとの通信を確立する前にセットアップされ、且つ/又は、起動する。たとえば、図2A及び図2Bに関しては、サービスロケーションマネージャ120が、指定されたサービスのタイプのプロバイダとしてサービスプロバイダ130を選択した後、メッセージAがサービスプロバイダ130へ送信され、それによって、サービスプロバイダ130にそのサービスのセットアップ及び/又は起動を行わせる。
図3のステップ316において、サービス結果コンテンツがクライアントデバイスへ送信される(たとえば、ストリーミングされる)。サービス結果を構成するデータは、入力データがサービスの提供を受けた時に送信することもできるし、サービス結果データは、当該データが送信される前にキャッシュすることもできる。
ステップ312、314、及び316は、同時に実行することができる。すなわち、選択されたサービスプロバイダ(たとえば、図1、図2A及び図2Bのサービスプロバイダ130)は、コンテンツアイテム全体がサービスプロバイダ130において受信される前に、コンテンツアイテムへのサービスの提供を開始することができ、サービス結果データは、コンテンツアイテム全体へのサービスの提供が完了する前に、サービスプロバイダ130からフローを開始することができる。同様に、コンテンツアイテムの別の部分へのサービスの提供の結果がクライアントデバイスによって受信されている間、コンテンツアイテムの或る部分へのサービスの提供は進行中であることも可能である。
サービス結果コンテンツがクライアントデバイス150に配信されると、セッションを終了することができる。サービスロケーションマネージャ120が、セッションを割り当てられたプロバイダの或る種の記録を保持する実施の形態では、セッションが終了すると、又は、サービスプロバイダがコンテンツアイテムにサービスを提供すると、その記録を更新することができる。記録を更新する手法については上述した。
図4は、本発明の一実施の形態によるコンテンツへのサービスの提供を管理するための方法のフローチャート400である。具体的なステップがフローチャート400に開示されるが、このようなステップは例示である。すなわち、本発明の実施の形態は、さまざまな他のステップ又はフローチャート400で列挙されたステップを変形したものの実行にもよく適合する。フローチャート400のステップは、提示したものとは異なる順序で実行してもよいこと、及び、フローチャート400のステップのすべてが実行されるとは限らない場合があることが理解されよう。
フローチャート400によって説明される方法のすべて又は一部は、たとえば、コンピュータシステム又は同様のデバイスのコンピュータ使用可能媒体に存在するコンピュータ可読で且つコンピュータ実行可能な命令を使用して実施することができる。本実施の形態では、フローチャート400は、図1、図2A及び図2Bのシステム100によって実施される。具体的には、フローチャート400は、図1、図2A及び図2Bのサービスロケーションマネージャ120によって実施される。
図4のステップ402において、図1、図2A及び図2Bも参照して、コンテンツアイテムを特定する第1のメッセージ(たとえば、メッセージ2)がポータル140から受信される。ポータル140はクライアントデバイス150と通信する。
図4のステップ404において、図1、図2A、及び図2Bも参照して、コンテンツアイテムに対して実行されるサービスのタイプのプロバイダが選択される(たとえば、サービスプロバイダ130が選択される)。サービスプロバイダを選択するための手法は本明細書の上記で説明した。
図4のステップ406において、一実施の形態では、第2のメッセージ(たとえば、図1、図2A及び図2Bのメッセージ3)がポータルへ送信される。別の実施の形態では、この第2のメッセージは、ポータルを迂回してクライアントデバイスへ送信される。第2のメッセージは、選択されたサービスプロバイダを特定する情報を含み、ポータルからサービスプロバイダへ(たとえば、図1、図2A及び図2Bのポータル140からサービスプロバイダ130へ)転送されるクライアントデバイス間の通信を可能にする。
図4のステップ408において、一実施の形態では、第3のメッセージ(たとえば、図2A及び図2BのメッセージA)が、選択されたサービスプロバイダへ送信される。この第3のメッセージは、コンテンツアイテムの識別情報及び/又はコンテンツソースの識別情報を含むことができる。また、第3のメッセージは、サービスプロバイダに警告するのに使用することもでき、(サービスがまだ実行されていない場合)サービスプロバイダがサービスのセットアップ及び/又は実行を開始することを可能にする。第3のメッセージに応答して、サービスプロバイダは、コンテンツソースと接触して、コンテンツソースからサービスプロバイダへのコンテンツアイテムの配信(たとえば、ストリーミング)を開始することもできる。ちょうど説明したアクティビティは、第3のメッセージの代わりに、クライアントデバイス及びサービスプロバイダが通信を確立したことに応答して開始することもできる。次に、サービス結果コンテンツが、サービスプロバイダからクライアントデバイスへ送信される(たとえば、ストリーミングされる)。
要約すれば、本発明の実施の形態は、多数の多様なクライアントデバイスにサービスを提供できる方法及びシステムを提供する。さまざまなサービスが、それら多様なクライアントの好み及び要件に対応するように提供される。輻輳を回避するために、サービスは、サービスロケーションマネージャによって管理されたいくつかのサービスプロバイダによって提供される。クライアントデバイスによって要求されたコンテンツアイテムは、サービスプロバイダへ送られ、サービスの提供を受ける。しかしながら、クライアントデバイスは、セッションの開始及びコンテンツアイテムの要求を行うのに、広く公開されたポータルサイトとしか接触する必要がない。クライアントデバイスは、セッション中、適切なサービスプロバイダへ自動的に且つトランスペアレントに転送される。クライアントデバイスの見地からは、単一の接触ポイントがあるだけである。システムによって選択されたサービスプロバイダを介したクライアントデバイスへのサービス結果コンテンツの配信をもたらす、コンテンツ配信システムを通るメッセージ及びデータのフローは、クライアントデバイスにトランスペアレントである。最初の接触ポイントから、選択されたサービスプロバイダへのセッションのシームレスな転送は、クライアントデバイスのエンドユーザにトランスペアレントである。
本発明の具体的な実施の形態の上記説明は、図示及び説明の目的で提示されたものである。それら説明は、網羅的であることを目的とするものでもなければ、開示した正確な形態に本発明を限定することを目的とするものでもなく、多くの変更及び変形が、上記教示に鑑みて可能であることは明らかである。実施の形態は、本発明の原理及びその実用化を最もよく説明し、それによって、他の当業者が、本発明、及び、検討した特定の使用に適するようなさまざまな変更を有するさまざまな実施の形態を最もよく利用することを可能にするために選ばれて説明されたものである。本発明の範囲は、本明細書に添付した特許請求の範囲及びその等価物によって画定されることが意図されている。
本発明の一実施の形態による、コンテンツへのサービスの提供及びクライアントデバイスへのコンテンツの配信を行うためのシステムの内外の情報フローを示すブロック図。 本発明の別の実施の形態による、コンテンツへのサービスの提供及びクライアントデバイスへのコンテンツの配信を行うためのシステムの内外の情報フローを示すブロック図。 本発明のさらに別の実施の形態による、コンテンツへのサービスの提供及びクライアントデバイスへのコンテンツの配信を行うためのシステムの内外の情報フローを示すブロック図。 本発明の一実施の形態による、コンテンツへのサービスの提供及びコンテンツの配信を行うための方法。 本発明の一実施の形態による、コンテンツへのサービスの提供を管理するための方法。
符号の説明
110・・・コンテンツソース
120・・・サービスロケーションマネージャ
130,132・・・サービスプロバイダ
140・・・ポータル
150・・・クライアントデバイス

Claims (10)

  1. クライアントデバイスへ配信するためのコンテンツにサービスを提供するための方法(300)であって、
    前記クライアントデバイスを伴うセッション中に特定されるコンテンツアイテムに対して実行されるサービスのタイプを特定すること(304)と、
    前記サービスを実行できる複数のプロバイダの中からプロバイダを選択すること(306)と、
    前記コンテンツアイテムに対して前記サービスを実行する前記プロバイダへ前記セッションを転送するための情報を提供すること(308)と
    を含む方法。
  2. 前記選択することは、
    セッションが転送されたプロバイダの記録を保持することと、
    前記記録に従って前記プロバイダを選択することと
    を含む
    請求項1に記載の方法。
  3. 前記プロバイダは、ラウンドロビン方式に従って選択される
    請求項1に記載の方法。
  4. 前記プロバイダは、ランダムに選択される
    請求項1に記載の方法。
  5. 前記転送することは、
    前記プロバイダの位置を突き止めるための情報を前記クライアントデバイスへ送信すること
    を含み、
    前記クライアントデバイス及び前記プロバイダは、通信をトランスペアレントに確立する
    請求項1に記載の方法。
  6. 前記コンテンツアイテムのソースを特定すること(310)
    をさらに含み、
    前記コンテンツアイテムのデータは、前記ソースから前記プロバイダへストリーミングされ、サービス結果データが、前記プロバイダから前記クライアントデバイスへストリーミングされる
    請求項1に記載の方法。
  7. クライアントデバイス(150)へコンテンツを提供するためのシステム(100)であって、
    ポータル(140)からコンテンツアイテムの要求を受信するためのサービスマネージャ(120)を備え、前記ポータルは、前記クライアントデバイスから前記要求を受信し、前記サービスマネージャは、各プロバイダが前記コンテンツアイテムに対してサービスを実行できる複数のプロバイダの中からプロバイダ(130)の選択も行い、前記クライアントデバイスとのセッションは、該セッションが前記プロバイダを介して継続するように、前記ポータルから前記プロバイダへ宛先を書き換えられ、前記プロバイダは、前記コンテンツアイテムに対して前記サービスを実行し、サービス結果コンテンツを前記クライアントデバイスへ転送する
    システム。
  8. 前記サービスマネージャは、前記セッションが前記プロバイダと存続すると見積もられる時間を特定し、前記履歴は、前記時間が満了したことに応答して更新される
    請求項7に記載のシステム。
  9. 前記サービスマネージャは、前記サービスが実行されたことを示す表示を受信し、前記履歴は、それに応答して更新される
    請求項7に記載のシステム。
  10. クライアントデバイスへ配信するためのコンテンツにサービスを提供するための方法(300)をコンピュータシステムに実行させるためのコンピュータ可読プログラムコードが実施されたコンピュータ使用可能媒体であって、
    前記方法は、
    前記クライアントデバイスを伴うセッション中に特定されるコンテンツアイテムに対して実行されるサービスのタイプを特定すること(304)と、
    前記サービスを実行できる複数のプロバイダの中からプロバイダを選択すること(306)と、
    前記コンテンツアイテムに対して前記サービスを実行する前記プロバイダへ前記セッションを転送するための情報を提供すること(308)と
    を含む
    コンピュータ使用可能媒体。
JP2006533038A 2003-05-19 2004-05-13 クライアントデバイスによって要求されたコンテンツにサービスを提供するプロバイダが選択されるシステム及び方法 Pending JP2007516499A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US47185103P 2003-05-19 2003-05-19
US10/698,810 US7660877B2 (en) 2003-05-19 2003-10-30 Systems and methods in which a provider is selected to service content requested by a client device
PCT/US2004/015027 WO2004105348A2 (en) 2003-05-19 2004-05-13 System and method in which a provider is selected to service content requested by a client device

Publications (1)

Publication Number Publication Date
JP2007516499A true JP2007516499A (ja) 2007-06-21

Family

ID=33457271

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006533038A Pending JP2007516499A (ja) 2003-05-19 2004-05-13 クライアントデバイスによって要求されたコンテンツにサービスを提供するプロバイダが選択されるシステム及び方法

Country Status (4)

Country Link
US (1) US7660877B2 (ja)
EP (1) EP1627497B1 (ja)
JP (1) JP2007516499A (ja)
WO (1) WO2004105348A2 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050114642A1 (en) * 2003-11-26 2005-05-26 Brett Watson-Luke System and method for managing OSS component configuration
US20050114240A1 (en) * 2003-11-26 2005-05-26 Brett Watson-Luke Bidirectional interfaces for configuring OSS components
US7565506B2 (en) 2005-09-08 2009-07-21 Qualcomm Incorporated Method and apparatus for delivering content based on receivers characteristics
US8528029B2 (en) 2005-09-12 2013-09-03 Qualcomm Incorporated Apparatus and methods of open and closed package subscription
US8893179B2 (en) 2005-09-12 2014-11-18 Qualcomm Incorporated Apparatus and methods for providing and presenting customized channel information
US8533358B2 (en) 2005-11-08 2013-09-10 Qualcomm Incorporated Methods and apparatus for fragmenting system information messages in wireless networks
US8600836B2 (en) 2005-11-08 2013-12-03 Qualcomm Incorporated System for distributing packages and channels to a device
US8571570B2 (en) 2005-11-08 2013-10-29 Qualcomm Incorporated Methods and apparatus for delivering regional parameters
US20070115929A1 (en) * 2005-11-08 2007-05-24 Bruce Collins Flexible system for distributing content to a device
US20070280463A1 (en) * 2006-05-31 2007-12-06 Farrokh Mohammadzadeh Kouchri Systems, devices, and methods for managing call requests
WO2009016544A2 (en) * 2007-07-30 2009-02-05 Nds Limited Providing information about video content

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001117809A (ja) * 1999-10-14 2001-04-27 Fujitsu Ltd メディア変換方法及び記憶媒体
JP2002091843A (ja) * 2000-09-11 2002-03-29 Nippon Telegr & Teleph Corp <Ntt> サーバ選択装置、サーバ選択方法、及びサーバ選択プログラムを記録した記録媒体
WO2002052730A1 (en) * 2000-12-22 2002-07-04 Generic Media, Inc. Distributed on-demand media transcoding system and method
JP2004512771A (ja) * 2000-10-20 2004-04-22 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 移動通信セッションを転送する方法

Family Cites Families (64)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US46396A (en) * 1865-02-14 Photographic-camera stand
US152305A (en) * 1874-06-23 Improvement in refining sugar
US6003030A (en) * 1995-06-07 1999-12-14 Intervu, Inc. System and method for optimized storage and retrieval of data on a distributed computer network
US5694537A (en) * 1995-07-31 1997-12-02 Canon Information Systems, Inc. Network device which selects a time service provider
US6055433A (en) * 1996-09-20 2000-04-25 Northern Telecom Limited Data processing system and method for balancing a load in a communications network
US5937388A (en) * 1996-12-05 1999-08-10 Hewlett-Packard Company System and method for performing scalable distribution of process flow activities in a distributed workflow management system
US5928325A (en) * 1997-02-24 1999-07-27 Motorola, Inc. Method of dynamically establishing communication of incoming messages to one or more user devices presently available to an intended recipient
US6421733B1 (en) * 1997-03-25 2002-07-16 Intel Corporation System for dynamically transcoding data transmitted between computers
US6247050B1 (en) * 1997-09-12 2001-06-12 Intel Corporation System for collecting and displaying performance improvement information for a computer
JPH11164275A (ja) * 1997-11-28 1999-06-18 Nec Corp テレビ会議制御装置、テレビ会議制御方法及びテレビ会議制御システム
US6959318B1 (en) * 1998-03-06 2005-10-25 Intel Corporation Method of proxy-assisted predictive pre-fetching with transcoding
US6101547A (en) * 1998-07-14 2000-08-08 Panasonic Technologies, Inc. Inexpensive, scalable and open-architecture media server
US6970602B1 (en) * 1998-10-06 2005-11-29 International Business Machines Corporation Method and apparatus for transcoding multimedia using content analysis
US6442165B1 (en) * 1998-12-02 2002-08-27 Cisco Technology, Inc. Load balancing between service component instances
US20020013852A1 (en) * 2000-03-03 2002-01-31 Craig Janik System for providing content, management, and interactivity for thin client devices
US7130616B2 (en) * 2000-04-25 2006-10-31 Simple Devices System and method for providing content, management, and interactivity for client devices
US6744877B1 (en) 1999-03-08 2004-06-01 Avaya Technology Corp. Method and system for enterprise service balancing
US6484212B1 (en) * 1999-04-20 2002-11-19 At&T Corp. Proxy apparatus and method for streaming media information
US6263371B1 (en) * 1999-06-10 2001-07-17 Cacheflow, Inc. Method and apparatus for seaming of streaming content
US6463454B1 (en) * 1999-06-17 2002-10-08 International Business Machines Corporation System and method for integrated load distribution and resource management on internet environment
US6516350B1 (en) * 1999-06-17 2003-02-04 International Business Machines Corporation Self-regulated resource management of distributed computer resources
US6529950B1 (en) * 1999-06-17 2003-03-04 International Business Machines Corporation Policy-based multivariate application-level QoS negotiation for multimedia services
US6633560B1 (en) * 1999-07-02 2003-10-14 Cisco Technology, Inc. Distribution of network services among multiple service managers without client involvement
US7523181B2 (en) * 1999-11-22 2009-04-21 Akamai Technologies, Inc. Method for determining metrics of a content delivery and global traffic management network
US6891825B1 (en) * 1999-12-22 2005-05-10 Mci, Inc. Method and system of providing multi-user access to a packet switched network
US6938256B2 (en) * 2000-01-18 2005-08-30 Galactic Computing Corporation System for balance distribution of requests across multiple servers using dynamic metrics
US20020152305A1 (en) 2000-03-03 2002-10-17 Jackson Gregory J. Systems and methods for resource utilization analysis in information management environments
US20030046396A1 (en) * 2000-03-03 2003-03-06 Richter Roger K. Systems and methods for managing resource utilization in information management environments
US20020056123A1 (en) * 2000-03-09 2002-05-09 Gad Liwerant Sharing a streaming video
US6658000B1 (en) 2000-06-01 2003-12-02 Aerocast.Com, Inc. Selective routing
JP4265087B2 (ja) * 2000-06-29 2009-05-20 ソニー株式会社 データ変換装置及び方法、データ送受信装置及び方法、ネットワークシステム
RU2160130C1 (ru) * 2000-07-10 2000-12-10 Закрытое акционерное общество "ЭКОИНВЕНТ" Способ нормализации биологических функций живых тканей и устройство для электромагнитного воздействия на живые ткани
US6674453B1 (en) * 2000-07-10 2004-01-06 Fuji Xerox Co., Ltd. Service portal for links separated from Web content
US6954641B2 (en) * 2000-08-14 2005-10-11 Vesivius, Inc. Communique wireless subscriber device for a cellular communication network
JP2002091936A (ja) * 2000-09-11 2002-03-29 Hitachi Ltd 負荷分散装置及び負荷見積もり方法
US6950407B1 (en) * 2000-09-26 2005-09-27 Mci, Inc. Method and system for providing settlement of interconnected packet-switched networks
WO2002058396A2 (en) 2001-01-19 2002-07-25 Streamworks Technologies, Inc. System and method for routing media
US20030088686A1 (en) * 2001-01-19 2003-05-08 Jennings Charles A. System and method for streaming media
US20040015405A1 (en) * 2001-02-16 2004-01-22 Gemini Networks, Inc. System, method, and computer program product for end-user service provider selection
US20020133597A1 (en) * 2001-03-14 2002-09-19 Nikhil Jhingan Global storage system
US20040117427A1 (en) * 2001-03-16 2004-06-17 Anystream, Inc. System and method for distributing streaming media
EP1248431B1 (en) * 2001-03-27 2007-10-31 Sony Deutschland GmbH Method for achieving end-to-end quality of service negotiation for distributed multimedia applications
US20020174247A1 (en) * 2001-04-02 2002-11-21 Bo Shen System and method for dynamic routing to service providers
US6804492B2 (en) * 2001-04-04 2004-10-12 Hughes Electronics Corporation High volume uplink in a broadband satellite communications system
US7747781B2 (en) * 2001-04-20 2010-06-29 Palmsource Inc. Content access from a communications network using a handheld computer system and method
US7457265B2 (en) * 2001-06-13 2008-11-25 Telefonaktiebolaget Lm Ericsson (Publ) Mobility management entity for high data rate wireless communication networks
JP4578727B2 (ja) * 2001-06-19 2010-11-10 パナソニック株式会社 回動機能付きカメラを備えた情報端末装置
US20030005078A1 (en) * 2001-06-28 2003-01-02 Turicchi Thomas Edwin Apparatus and method for providing user-requested content through an alternate network service
US6996618B2 (en) * 2001-07-03 2006-02-07 Hewlett-Packard Development Company, L.P. Method for handling off multiple description streaming media sessions between servers in fixed and mobile streaming media systems
US6941378B2 (en) * 2001-07-03 2005-09-06 Hewlett-Packard Development Company, L.P. Method for assigning a streaming media session to a server in fixed and mobile streaming media systems
US7200402B2 (en) * 2001-07-03 2007-04-03 Hewlett-Packard Development Company, L.P. Method for handing off streaming media sessions between wireless base stations in a mobile streaming media system
US6981029B1 (en) * 2001-07-17 2005-12-27 Cisco Technology, Inc. System and method for processing a request for information in a network
US7274659B2 (en) * 2001-07-27 2007-09-25 Western Digital Ventures, Inc. Providing streaming media data
US20030046420A1 (en) 2001-08-28 2003-03-06 International Business Machines Corporation Media service e-utility
US6604827B2 (en) * 2001-09-07 2003-08-12 Koninklijke Philips Electronics N.V. Efficient arc lamp illuminator for projection system
US20030105806A1 (en) * 2001-12-04 2003-06-05 Gayle David G. Service facilitator for automating object conversions and communication connections in client-server systems
JP2003230117A (ja) 2002-01-31 2003-08-15 Nec Commun Syst Ltd 動画像データの送信システム、同送信装置、同送信方式および同送信方法
US7155475B2 (en) * 2002-02-15 2006-12-26 Sony Corporation System, method, and computer program product for media publishing request processing
US20030163513A1 (en) * 2002-02-22 2003-08-28 International Business Machines Corporation Providing role-based views from business web portals
US7720023B2 (en) 2002-05-07 2010-05-18 Nokia Corporation Telecommunication system and method for transmitting video data between a mobile terminal and internet
US7277431B2 (en) * 2002-10-31 2007-10-02 Brocade Communications Systems, Inc. Method and apparatus for encryption or compression devices inside a storage area network fabric
US7269623B2 (en) * 2003-01-09 2007-09-11 Raytheon Company System and method for distributed multimodal collaboration using a tuple-space
US20050015765A1 (en) * 2003-05-19 2005-01-20 Michele Covell System for doing service location management taking into account the node and network characteristics
US20040236847A1 (en) * 2003-05-19 2004-11-25 Sumit Roy Systems and methods for performing a service on content requested by a client device

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001117809A (ja) * 1999-10-14 2001-04-27 Fujitsu Ltd メディア変換方法及び記憶媒体
JP2002091843A (ja) * 2000-09-11 2002-03-29 Nippon Telegr & Teleph Corp <Ntt> サーバ選択装置、サーバ選択方法、及びサーバ選択プログラムを記録した記録媒体
JP2004512771A (ja) * 2000-10-20 2004-04-22 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 移動通信セッションを転送する方法
WO2002052730A1 (en) * 2000-12-22 2002-07-04 Generic Media, Inc. Distributed on-demand media transcoding system and method

Also Published As

Publication number Publication date
US7660877B2 (en) 2010-02-09
WO2004105348A3 (en) 2005-03-17
WO2004105348A2 (en) 2004-12-02
EP1627497A2 (en) 2006-02-22
EP1627497B1 (en) 2017-11-15
US20040236854A1 (en) 2004-11-25

Similar Documents

Publication Publication Date Title
JP4972409B2 (ja) ノード及びネットワークの特性を考慮したサービスロケーション管理を行うためのシステム
TW444167B (en) Internet convolution audio/video server
JP2006506738A (ja) トランスコード可能なキャッシングプロキシおよびその方法
US20140244727A1 (en) Method and apparatus for streaming multimedia content of server by using cache
JP2006520039A (ja) メディアデータストリームを処理するための方法、データ構造、及びシステム
US20090319681A1 (en) Dynamic Throttling Based on Network Conditions
EP1627500B1 (en) Service management using multiple service location managers
EP1627497B1 (en) System and method in which a provider is selected to service content requested by a client device
EP1625725B1 (en) Method for adapting service location placement based on recent data received from service nodes and actions of the service location manger
KR100733247B1 (ko) 클라이언트 디바이스로의 전송을 위한 콘텐츠를 서비스하는 방법, 클라이언트 디바이스에 콘텐츠를 제공하는 시스템 및 컴퓨터 판독가능한 기록 매체
KR100727738B1 (ko) 서비스 제공자 간의 미디어 서비스 세션의 핸드오프 관리방법과 장치 및 네트워크 시스템
US20040236847A1 (en) Systems and methods for performing a service on content requested by a client device
JP2001101060A (ja) 通信データ先読み装置及び記録媒体
KR102050736B1 (ko) 클라우드 스트리밍 시스템 및 그 시스템에서의 데이터 캐싱을 위한 장치
KR20130134911A (ko) 적응형 컨텐츠 제공을 위한 컨텐츠 캐싱 서비스 제공 방법 및 이를 위한 로컬 캐싱 장치
KR20080041155A (ko) 가상 디스크드라이브 파일 전송 시스템 및 그 방법

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080411

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080417

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20080715

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20080723

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081014

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090804

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091130

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20091211

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20100402