JP4972409B2 - ノード及びネットワークの特性を考慮したサービスロケーション管理を行うためのシステム - Google Patents

ノード及びネットワークの特性を考慮したサービスロケーション管理を行うためのシステム Download PDF

Info

Publication number
JP4972409B2
JP4972409B2 JP2006533158A JP2006533158A JP4972409B2 JP 4972409 B2 JP4972409 B2 JP 4972409B2 JP 2006533158 A JP2006533158 A JP 2006533158A JP 2006533158 A JP2006533158 A JP 2006533158A JP 4972409 B2 JP4972409 B2 JP 4972409B2
Authority
JP
Japan
Prior art keywords
service
service provider
information
session
client device
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.)
Expired - Lifetime
Application number
JP2006533158A
Other languages
English (en)
Other versions
JP2007516500A (ja
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 JP2007516500A publication Critical patent/JP2007516500A/ja
Application granted granted Critical
Publication of JP4972409B2 publication Critical patent/JP4972409B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime 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
    • 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
    • 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/56Provisioning of proxy services
    • H04L67/564Enhancement of application control based on intercepted application data
    • 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
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/2895Intermediate processing functionally located close to the data provider application, e.g. reverse proxies
    • 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/563Data redirection of data network streams
    • 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/18Selecting a network or a communication service

Landscapes

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

Description

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

Claims (6)

  1. クライアントデバイスとのセッション中に特定されるコンテンツアイテムに対して実行されるサービスのタイプを、前記クライアントデバイスの属性に基づいて特定することと、
    静的なサービスプロバイダ情報及び静的なネットワーク情報に基づいて、複数のサービスプロバイダの中から前記特定されたサービスを実行できるサービスプロバイダを選択することであって、前記セッションとは異なる他のセッションで使用された前記サービスプロバイダの計算資源の状態に関する情報であって当該サービスプロバイダが他のサービスプロバイダよりも忙しいか否かを評価するための情報を提供するサービスセッション開始情報及びサービスセッション終了情報を含むサービスセッション情報が前記サービスプロバイダから受信されている場合には、該サービスセッション情報にさらに基づいてサービスプロバイダを選択することと、
    前記選択されたサービスプロバイダに対して、当該サービスプロバイダが前記クライアントデバイスからメッセージを受信する前に、予め、サービスのセットアップ及び起動の少なくとも一方を開始することができるようにするためのメッセージを送信することと、
    前記コンテンツアイテムに対して前記サービスを実行する前記サービスプロバイダへ前記セッションを転送するための情報を提供することと
    を含む
    メディアサービスプロバイダを選択する方法。
  2. クライアントデバイスへコンテンツを提供するためのシステムであって、
    静的なサービスプロバイダ情報及び静的なネットワーク情報に基づいて、複数のサービスプロバイダの中から、コンテンツアイテムに対して、前記クライアントデバイスの属性に基づいて特定されるサービスを実行することができるサービスプロバイダを選択する(306)サービスマネージャであって、前記セッションとは異なる他のセッションで使用された前記サービスプロバイダの計算資源の状態に関する情報であって当該サービスプロバイダが他のサービスプロバイダよりも忙しいか否かを評価するための情報を提供するサービスセッション開始情報及びサービスセッション終了情報を含むサービスセッション情報が前記サービスプロバイダから受信されている場合に、該サービスセッション情報に基づいて前記サービスプロバイダをさらに選択し、前記選択されたサービスプロバイダに対して、当該サービスプロバイダが前記クライアントデバイスからメッセージを受信する前に、予め、サービスのセットアップ及び起動の少なくとも一方を開始することができるようにするためのメッセージを送信するサービスマネージャ
    を備えるシステム。
  3. プロセッサと、
    メディアサービスプロバイダを選択するための方法を実行するための、記憶されたコンピュータ実行可能命令を含むメモリデバイスと
    を備えるコンピュータシステムであって、
    前記方法は、
    クライアントデバイスとのセッション中に特定されるコンテンツアイテムに対して実行されるサービスのタイプを、前記クライアントデバイスの属性に基づいて特定すること(304)と、
    静的なサービスプロバイダ情報及び静的なネットワーク情報に基づいて、複数のサービスプロバイダの中から前記特定されたサービスを実行できるサービスプロバイダを選択すること(306)であって、前記セッションとは異なる他のセッションで使用された前記サービスプロバイダの計算資源の状態に関する情報であって当該サービスプロバイダが他のサービスプロバイダよりも忙しいか否かを評価するための情報を提供するサービスセッション開始情報及びサービスセッション終了情報を含むサービスセッション情報が前記サービスプロバイダから受信されている場合には、該サービスセッション情報にさらに基づいてサービスプロバイダを選択することと、
    前記選択されたサービスプロバイダに対して、当該サービスプロバイダが前記クライアントデバイスからメッセージを受信する前に、予め、サービスのセットアップ及び起動の少なくとも一方を開始することができるようにするためのメッセージを送信することと、
    前記コンテンツアイテムに対して前記サービスを実行する前記サービスプロバイダへ前記セッションを転送するための情報を提供することと
    を含む
    コンピュータシステム。
  4. クライアントデバイスとのセッション中に特定されるコンテンツアイテムに対して実行されるサービスのタイプを、前記クライアントデバイスの属性に基づいて特定すること(304)と、
    静的なサービスプロバイダ情報及び静的なネットワーク情報に基づいて、複数のサービスプロバイダの中から前記特定されたサービスを実行できるサービスプロバイダを選択すること(306)であって、前記セッションとは異なる他のセッションで使用された前記サービスプロバイダの計算資源の状態に関する情報であって当該サービスプロバイダが他のサービスプロバイダよりも忙しいか否かを評価するための情報を提供するサービスセッション開始情報及びサービスセッション終了情報を含むサービスセッション情報が前記サービスプロバイダから受信されている場合には、該サービスセッション情報にさらに基づいてサービスプロバイダを選択することと、
    前記選択されたサービスプロバイダに対して、当該サービスプロバイダが前記クライアントデバイスからメッセージを受信する前に、予め、サービスのセットアップ及び起動の少なくとも一方を開始することができるようにするためのメッセージを送信することと、
    前記コンテンツアイテムに対して前記サービスを実行する前記サービスプロバイダへ前記セッションを転送するための情報を提供することと
    を含む
    コンピュータに動作を実行させるように具現されるコンピュータ使用可能コードを有するコンピュータ使用可能媒体。
  5. クライアントデバイスとのセッション中に特定されるストリーミングコンテンツアイテムに対して実行されるサービスのタイプを、前記クライアントデバイスの属性に基づいて特定すること(304)と、
    静的なサービスプロバイダ情報及び静的なネットワーク情報に基づいて、複数のサービスプロバイダの中から前記特定されたサービスを実行できるサービスプロバイダを選択すること(306)であって、前記セッションとは異なる他のセッションで使用された前記サービスプロバイダの計算資源の状態に関する情報であって当該サービスプロバイダが他のサービスプロバイダよりも忙しいか否かを評価するための情報を提供するサービスセッション開始情報及びサービスセッション終了情報を含むサービスセッション情報が前記サービスプロバイダから受信されている場合には、該サービスセッション情報にさらに基づいてサービスプロバイダを選択することと、
    前記選択されたサービスプロバイダに対して、当該サービスプロバイダが前記クライアントデバイスからメッセージを受信する前に、予め、サービスのセットアップ及び起動の少なくとも一方を開始することができるようにするためのメッセージを送信することと、
    前記ストリーミングコンテンツアイテムに対して前記サービスを実行する(314)前記サービスプロバイダへ前記セッションを転送するための情報を提供することと
    を含む
    メディアをストリーミングするためのメディアサービスプロバイダを選択する方法。
  6. 前記静的なサービスプロバイダ情報及び前記静的なネットワーク情報は、サービスロケーションマネージャによってアクセス可能である
    請求項5に記載の方法。
JP2006533158A 2003-05-19 2004-05-15 ノード及びネットワークの特性を考慮したサービスロケーション管理を行うためのシステム Expired - Lifetime JP4972409B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US47185103P 2003-05-19 2003-05-19
US60/471,851 2003-05-19
US10/698,812 US20050015765A1 (en) 2003-05-19 2003-10-30 System for doing service location management taking into account the node and network characteristics
US10/698,812 2003-10-30
PCT/US2004/015458 WO2004104867A2 (en) 2003-05-19 2004-05-15 System for doing service location management taking into account the node and network characteristics

Publications (2)

Publication Number Publication Date
JP2007516500A JP2007516500A (ja) 2007-06-21
JP4972409B2 true JP4972409B2 (ja) 2012-07-11

Family

ID=33479301

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006533158A Expired - Lifetime JP4972409B2 (ja) 2003-05-19 2004-05-15 ノード及びネットワークの特性を考慮したサービスロケーション管理を行うためのシステム

Country Status (4)

Country Link
US (1) US20050015765A1 (ja)
EP (1) EP1625706A2 (ja)
JP (1) JP4972409B2 (ja)
WO (1) WO2004104867A2 (ja)

Families Citing this family (59)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9406068B2 (en) 2003-04-25 2016-08-02 Apple Inc. Method and system for submitting media for network-based purchase and distribution
CN101699505B (zh) 2003-04-25 2016-02-17 苹果公司 一种基于网络的媒体系统
WO2004100470A1 (en) 2003-05-06 2004-11-18 Massone Mobile Advertising Systems Limited Messaging system and service
NL1023423C2 (nl) 2003-05-14 2004-11-16 Nicolaas Theunis Rudie Van As Systeem en methode voor onderbreking van, en koppeling van een boodschap aan, alle vormen van digitaal berichtenverkeer (zoals SMS en MMS), met toestemming van de verzender.
US7660877B2 (en) * 2003-05-19 2010-02-09 Hewlett-Packard Development Company, L.P. Systems and methods in which a provider is selected to service content requested by a client device
US7844548B2 (en) * 2003-10-15 2010-11-30 Apple Inc. Techniques and systems for electronic submission of media for network-based distribution
US8024483B1 (en) 2004-10-01 2011-09-20 F5 Networks, Inc. Selective compression for network connections
US7673050B2 (en) * 2004-12-17 2010-03-02 Microsoft Corporation System and method for optimizing server resources while providing interaction with documents accessible through the server
JP4591097B2 (ja) * 2005-01-28 2010-12-01 日本電気株式会社 メディア・ポータル装置、並びに、メディア・サービス処理システム、方法、及びプログラム
US7565506B2 (en) * 2005-09-08 2009-07-21 Qualcomm Incorporated Method and apparatus for delivering content based on receivers characteristics
US20070055629A1 (en) * 2005-09-08 2007-03-08 Qualcomm Incorporated Methods and apparatus for distributing content to support multiple customer service entities and content packagers
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
US20070078944A1 (en) * 2005-09-12 2007-04-05 Mark Charlebois Apparatus and methods for delivering and presenting auxiliary services for customizing a channel
US7877387B2 (en) 2005-09-30 2011-01-25 Strands, Inc. Systems and methods for promotional media item selection and promotional program unit generation
US8571570B2 (en) * 2005-11-08 2013-10-29 Qualcomm Incorporated Methods and apparatus for delivering regional parameters
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
US7873065B1 (en) 2006-02-01 2011-01-18 F5 Networks, Inc. Selectively enabling network packet concatenation based on metrics
US7962634B2 (en) 2006-05-15 2011-06-14 Apple Inc. Submission of metadata content and media content to a media distribution system
US7827162B2 (en) * 2006-05-15 2010-11-02 Apple Inc. Media package format for submission to a media distribution system
US8015237B2 (en) 2006-05-15 2011-09-06 Apple Inc. Processing of metadata content and media content received by a media distribution system
US20070265969A1 (en) * 2006-05-15 2007-11-15 Apple Computer, Inc. Computerized management of media distribution agreements
GB2435565B (en) 2006-08-09 2008-02-20 Cvon Services Oy Messaging system
EP2095313A4 (en) 2006-10-27 2011-11-02 Cvon Innovations Ltd PROCESS AND DEVICE FOR SUBSCRIBER MANAGEMENT
GB2436412A (en) 2006-11-27 2007-09-26 Cvon Innovations Ltd Authentication of network usage for use with message modifying apparatus
GB2438475A (en) 2007-03-07 2007-11-28 Cvon Innovations Ltd A method for ranking search results
GB2445630B (en) 2007-03-12 2008-11-12 Cvon Innovations Ltd Dynamic message allocation system and method
GB2441399B (en) 2007-04-03 2009-02-18 Cvon Innovations Ltd Network invitation arrangement and method
US8671000B2 (en) 2007-04-24 2014-03-11 Apple Inc. Method and arrangement for providing content to multimedia devices
US8935718B2 (en) 2007-05-22 2015-01-13 Apple Inc. Advertising management method and system
GB2452789A (en) 2007-09-05 2009-03-18 Cvon Innovations Ltd Selecting information content for transmission by identifying a keyword in a previous message
GB2453810A (en) 2007-10-15 2009-04-22 Cvon Innovations Ltd System, Method and Computer Program for Modifying Communications by Insertion of a Targeted Media Content or Advertisement
US20090125393A1 (en) * 2007-11-13 2009-05-14 Sony Corporation System and method for utilizing account tiers in an electronic network
GB2455763A (en) 2007-12-21 2009-06-24 Blyk Services Oy Method and arrangement for adding targeted advertising data to messages
US8386629B2 (en) * 2007-12-27 2013-02-26 At&T Intellectual Property I, L.P. Network optimized content delivery for high demand non-live contents
US9076176B2 (en) 2008-05-05 2015-07-07 Apple Inc. Electronic submission of application programs for network-based distribution
US20090276333A1 (en) * 2008-05-05 2009-11-05 Cortes Ricardo D Electronic submission and management of digital products for network-based distribution
US9342287B2 (en) 2008-05-05 2016-05-17 Apple Inc. Software program ratings
US20090307683A1 (en) * 2008-06-08 2009-12-10 Sam Gharabally Network-Based Update of Application Programs
KR101596955B1 (ko) * 2009-02-20 2016-02-23 삼성전자주식회사 통합 인터넷 프로토콜 메시징 시스템에서 세션 트랜스퍼 방법
US20100235889A1 (en) * 2009-03-16 2010-09-16 Michael Kuohao Chu Application products with in-application subsequent feature access using network-based distribution system
US20100299219A1 (en) * 2009-05-25 2010-11-25 Cortes Ricardo D Configuration and Management of Add-ons to Digital Application Programs for Network-Based Distribution
US9729609B2 (en) * 2009-08-07 2017-08-08 Apple Inc. Automatic transport discovery for media submission
US8935217B2 (en) * 2009-09-08 2015-01-13 Apple Inc. Digital asset validation prior to submission for network-based distribution
US8898217B2 (en) 2010-05-06 2014-11-25 Apple Inc. Content delivery based on user terminal events
US8504419B2 (en) 2010-05-28 2013-08-06 Apple Inc. Network-based targeted content delivery based on queue adjustment factors calculated using the weighted combination of overall rank, context, and covariance scores for an invitational content item
US9367847B2 (en) 2010-05-28 2016-06-14 Apple Inc. Presenting content packages based on audience retargeting
US8510658B2 (en) 2010-08-11 2013-08-13 Apple Inc. Population segmentation
US8751513B2 (en) 2010-08-31 2014-06-10 Apple Inc. Indexing and tag generation of content for optimal delivery of invitational content
US8510309B2 (en) 2010-08-31 2013-08-13 Apple Inc. Selection and delivery of invitational content based on prediction of user interest
US8640032B2 (en) 2010-08-31 2014-01-28 Apple Inc. Selection and delivery of invitational content based on prediction of user intent
US8983978B2 (en) 2010-08-31 2015-03-17 Apple Inc. Location-intention context for content delivery
US9203624B2 (en) 2012-06-04 2015-12-01 Apple Inc. Authentication and notification heuristics
US9141504B2 (en) 2012-06-28 2015-09-22 Apple Inc. Presenting status data received from multiple devices
US8990188B2 (en) 2012-11-30 2015-03-24 Apple Inc. Managed assessment of submitted digital content
US9087341B2 (en) 2013-01-11 2015-07-21 Apple Inc. Migration of feedback data to equivalent digital assets
US9825954B2 (en) * 2015-05-26 2017-11-21 Holonet Security, Inc. Stateful user device identification and binding for cloud application security
CN115314424B (zh) * 2022-08-08 2024-03-26 湖南三湘银行股份有限公司 一种快速检测网络信号方法及装置

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
US6959318B1 (en) * 1998-03-06 2005-10-25 Intel Corporation Method of proxy-assisted predictive pre-fetching with transcoding
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
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
US6633560B1 (en) * 1999-07-02 2003-10-14 Cisco Technology, Inc. Distribution of network services among multiple service managers without client involvement
US6891825B1 (en) * 1999-12-22 2005-05-10 Mci, Inc. Method and system of providing multi-user access to a packet switched network
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
US6950407B1 (en) * 2000-09-26 2005-09-27 Mci, Inc. Method and system for providing settlement of interconnected packet-switched networks
TW532040B (en) * 2000-10-20 2003-05-11 Koninkl Philips Electronics Nv Method and system for transferring a communication session
US20040015405A1 (en) * 2001-02-16 2004-01-22 Gemini Networks, Inc. System, method, and computer program product for end-user service provider selection
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
US6981029B1 (en) * 2001-07-17 2005-12-27 Cisco Technology, Inc. System and method for processing a request for information in a network
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

Also Published As

Publication number Publication date
WO2004104867A2 (en) 2004-12-02
WO2004104867A3 (en) 2005-02-03
US20050015765A1 (en) 2005-01-20
JP2007516500A (ja) 2007-06-21
EP1625706A2 (en) 2006-02-15

Similar Documents

Publication Publication Date Title
JP4972409B2 (ja) ノード及びネットワークの特性を考慮したサービスロケーション管理を行うためのシステム
US7613768B2 (en) Method and system for managing a streaming media service
US7293085B2 (en) Data processing system, information processing apparatus, data processing method, and computer program
JP2006520039A (ja) メディアデータストリームを処理するための方法、データ構造、及びシステム
WO2011088725A1 (zh) 基于http的同步方法和装置
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
EP1625724B1 (en) System and method for selecting a service provider
EP1625708B1 (en) Managing handoffs of media sessions among service providers
US20040236847A1 (en) Systems and methods for performing a service on content requested by a client device
KR102050736B1 (ko) 클라우드 스트리밍 시스템 및 그 시스템에서의 데이터 캐싱을 위한 장치
JP2003242018A (ja) キャッシュ方法およびキャッシュサーバ
KR20240134428A (ko) 스트리밍 미디어 서비스 관리 방법

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080902

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080904

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20081201

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20081208

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090225

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090318

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090610

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

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20090715

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

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20090807

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120207

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120222

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120409

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150413

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250