JP2007502560A - データプロバイダを選択するためのシステム及び方法 - Google Patents

データプロバイダを選択するためのシステム及び方法 Download PDF

Info

Publication number
JP2007502560A
JP2007502560A JP2006523046A JP2006523046A JP2007502560A JP 2007502560 A JP2007502560 A JP 2007502560A JP 2006523046 A JP2006523046 A JP 2006523046A JP 2006523046 A JP2006523046 A JP 2006523046A JP 2007502560 A JP2007502560 A JP 2007502560A
Authority
JP
Japan
Prior art keywords
data
client
data provider
server
signal
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.)
Granted
Application number
JP2006523046A
Other languages
English (en)
Other versions
JP4456113B2 (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.)
British Telecommunications PLC
Original Assignee
British Telecommunications PLC
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 British Telecommunications PLC filed Critical British Telecommunications PLC
Publication of JP2007502560A publication Critical patent/JP2007502560A/ja
Application granted granted Critical
Publication of JP4456113B2 publication Critical patent/JP4456113B2/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
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/50Testing arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • H04L43/0864Round trip delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/101Server selection for load balancing based on network conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1012Server selection for load balancing based on compliance of requirements or conditions with available server resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1023Server selection for load balancing based on a hash applied to IP addresses or costs
    • 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
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0896Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/508Network service management, e.g. ensuring proper service fulfilment according to agreements based on type of value added network service under agreement
    • H04L41/509Network service management, e.g. ensuring proper service fulfilment according to agreements based on type of value added network service under agreement wherein the managed service relates to media content delivery, e.g. audio, video or TV
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/16Threshold monitoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/10015Access to distributed or replicated servers, e.g. using brokers

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Environmental & Geological Engineering (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

クライアント識別データとともにクライアント(10)からデータに対する要求を受け取るステップと、前記クライアント(10)にデータを提供できる複数のデータプロバイダ(30)を識別するステップと、前記クライアント識別データを前記データプロバイダに提供するステップと、前記データプロバイダに対し、信号が前記クライアントに送信される、及び前記クライアントから受信されるための経過時間の値と、データ転送のためのそれらの残りの容量を示す値を確立するために試験を実行し、これらの値をシステム(20)が使用できるようにするように指示するステップとを実行することによって、複数のデータプロバイダ(30)から好ましいデータプロバイダが選択されるシステム(20)及び方法。その結果、1つ以上の好ましいデータプロバイダ(30)が、前記データプロバイダからの前記経過時間信号及び残りの容量信号に基づいて選択することが可能となる。
【選択図】 図1

Description

本発明は、データを転送するための適切な通信チャネルを、データの転送の前、あるいはデータの転送中に識別することに関する。本発明の実施形態は、ユーザが例えばビデオストリーミングを手段として、あるいはxDSL、無線LAN、携帯電話等の種々の手段のどれかでのマルチメディアコンテンツのダウンロードの前、又はダウンロード中にビデオデータなどのデータを受信することを希望する状況で適用可能である。
インターネットなどのようなネットワークの多くの使用方法の内、最近とみに人気を獲得してきた1つのカテゴリの使用分野としてビデオデータ又は音声データあるいは他の媒体コンテンツなどのようなデータの交換のためのネットワーク使用がある。インターネット上では複数のタイプのマルチメディアコンテンツ(例えば、ビデオ、音声)が大量に使用できるようになっている。このマルチメディアコンテンツは広帯域又は狭帯域のどちらかで種々のIPネットワーク上でストリーミングできる。さらに一般的には、データの分散は、データストリーミング、あるいはより一般的な形態のダウンロードを手段として達成されてよい。このような分散はピアツーピア(peer-to-peer)コンテキストで、又は商業的なマルチメディア提供サーバで実行されてよく、xDSL、無線LAN、ケーブル、携帯電話(GPRS又は3G)等のような種々の手段を使用して実行されてよい。xDSLには、ADSL(「非対称」)、HDSL(「高ビットレート」)、及びRADSL(「速度適応」)などの多くの異なるDSL(「デジタル加入者回線」)の種類があることに注意しなければならない。デジタル加入者回線技術は、通常の電話回線上で家庭に又は小企業に高帯域幅の情報をもたらすための周知の技術である。
残念なことに、インターネットからデータを受信することが、パケット損失、パケット遅延、ジッタ、サーバがダウンしているなどの要因、及びビデオストリーミングなどのタイムクリティカルな応用例に大きな影響を及ぼす他の要因のために問題となることがある。多くの場合、ユーザはサーバに接続しようとし、サーバがダウンしている、又はひどくビジーであるかのどちらかであり、したがってビデオコンテンツを拒絶することに気付く。ユーザがなんとかサーバに接続し、ビデオコンテンツが最終的にストリーミングされても、前述されるパケット遅延などの要因のために品質が非常に悪い場合がある。これらの要因はすべて、特にストリーミングされた音声データ又はビデオデータをインターネット上で受信することに関して、エンドユーザの経験に大きく影響を及ぼし、したがってこの種のアプリケーションの処理(take−up)を遅らせてきた。
大きなファイル又は他のアイテムのダウンロード、あるいはおそらくある特定の1つ以上のファイルに関するストリーミングされたデータの受信を希望する個人ユーザにとって、必要とされるデータを提供できる可能性がある営利的なサーバ又はピアなどの多数の異なるデータプロバイダがある可能性がある。ユーザをネットワークに接続してよい種々の手段、データの出元となる場合がある種々のデータプロバイダ、及び他の要因の理由で、個人ユーザが、ビデオサーバなどの使用可能なデータプロバイダの「プール」から、どのデータプロバイダが、ビデオコンテンツ又は他のこのようなデータを確実な接続で供給できるのかが分からないという問題に遭遇することがある。低い信頼性は、そのすべてが高品質のダウンロード又はデータストリーミングを達成する確率を引き下げるパケット損失、ジッタ、パケット遅延、及び他の要因により引き起こされる可能性がある。
その問題を解決することがどれほど重要であるのかに関する考えを示すために、以下にいくつかの「周知の」アプリケーションを挙げる。
1)「ナップスター(登録商標)(Napster)」(最近閉鎖された音楽ファイル共用ウェブサイト)及びカザー「(Kazaa)」(www.kazaa.com)のようなピアツーピアアプリケーション
2)多くのビデオサーバがネットワークのどこかにセットアップされるビデオストリーミングコンテンツプロバイダ
本発明が特に適用可能であるビデオサーバに関連して、この問題に対する従来の手法は、どのサーバが最も信頼できる接続を提供するのかに関する事前の知識を持たずにデフォルトのビデオサーバを選ぶことであり、それはエンドユーザがネットワークのどこに位置しているのかに左右されるが、何らかの点でより高速又はより優れている可能性のあるサーバを選ぶためのいくかの手法はすでに存在している。
(従来の技術)
いくつかの関連する論文のまとめを以下に示す。
「ピアツーピアファイル共用システムの測定研究」、著者、Saroiu S、Gummadi PK、Gribble SD(米国、ワシントン州シアトル)、ワシントン大学コンピュータサイエンス及びエンジニアリング学部、マルチメディアコンピューティング及びネットワーキング2002、2002年1月23日から24日、SPIE−国際光工学学会の議事録−国際光工学学会、第4673巻、156−70ページ
要約:グヌーテラ(Gnutella)及びナップスター(Napster)などのピアツーピアマルチメディアファイル共用アプリケーションの人気に伴い、ピアツーピアアーキテクチャに関する研究活動が最近相次いで行われている。この論文は前記2つの人気があるピアツーピアファイル共用システム、つまりナップスターとグヌーテラの詳細な測定研究を含み、特に、これらの2つのシステムに関与するエンドユーザホストの数を特徴付けようとしている。この特徴付けは、これらのホストとインターネット全体の間のボトルネック帯域幅、パケットをこれらホストに送信するためのIP待ち時間、ホストがどの程度頻繁にシステムに接続、切断されるのか、ホストがどのくらいの数のファイルを共用し、ダウンロードするのか、ホスト間の協力の程度、及びこれらの特性の間のいくつかの相関関係を含む。
「ピアツーピアネットワークにおけるマルチメディアオブジェクトの処理:著者:Kalogeraki V.(HPラボ、米国カリフォルニア州パロアルト、Delis A,Gunopulos D、2002年CCGRID議事録、クラスタコンピューティング及びグリッドに関する第2回IEEE/ACM国際シンポジウム、2002年5月21日から24日、IEEEコンピュータ学会、438−9ページ
要約:本論文は、ピアツーピア(P2P)ネットワーク上でのビデオサービスの提供がどのようにしてビデオサービスの送達のために今日使用されているおもに独自仕様のアーキテクチャに、実行できる代替策を提供できるだけではなく、それが、信頼できるスケラブルな方法で実行できるのかを説明しようとしている。リソースの特別のP2Pネットワークの手法を足場に、映画の及び/又はビデオクリップ記憶及び検索をサポートできる新しいアーキテクチャが提案されている。提案されている構成は、使用可能なサーバ間の完全接続性だけではなく、ネットワークに対する高性能リンクの可用性、ノードにそれ自体の近傍にあるコンテンツを「認識」させるピア内での独占的且つ部分的な索引付けの使用、オブジェクトの複製及び人気のあるアイテムのキャッシュも利用する。アーキテクチャは、マルチメディアオブジェクトの検索に効率的な索引付け機構を使用することを主張し、サーバの故障を考慮に入れ継続的な動作を保証し、ユーザの混乱を最小限に留めて、提供されたサービス及び/又はネットワークリソースの進展だけではなく新しいサーバのトランスペアレントな装着(population)も可能にする。このようなP2Pインフラストラクチャを実現するための1つの重要な条件は、コアピア(又はサーバ)が膨大なマルチメディアデータを効果的に、処理、送達できる低待ち時間且つ高帯域幅のネットワークを介してリンクされると考えられているという点である。エンドユーザがオブジェクトサーバに対する十分な接続を有する必要があることも見込まれている。
「ピアツーピアストリーミングメディア送達」:著者:Stolarz D、議事録、第1回ピアツーピアコンピューティングに関する国際会議、2001年8月27日から29日、IEEEコンピュータ学会、48から52ページ
要約:それに関してどのような定義がなされたのかに関係なく、ピアツーピアは物事を行う新しい方法を求める効果的なときの声であると言われている。ストリーミングメディア送達は特にピアツーピアアーキテクチャ手法の影響を受けやすい。ピアツーピアシステムは帯域幅コストを削減し、インターネット上のオンデマンドコンテンツ及びストリーミングコンテンツのスケラビリティを高めることが示されている。類似した技法は、ネットワーク層マルチキャスティングの効率的なサブネット放送機能のアプリケーション層の実現である「仮想マルチキャスト」を作成するために使用できる。
「ピアツーピアメディアストリーミングに関して」:著者:Dongyan Xu、Hefeeda M、Hambrusch S、Bhargava B(米国インディアナ州ウェストラファイエット、パデュー大学コンピュータサイエンス学部)、議事録、分散コンピューティングシステムに関する第22回国際会議、2002年7月2日から5日、IEEEコンピュータ学会363−71ページ
要約:
本論文では、ピエアツーピアメディアストリーミングシステムは、以下の特性に関して研究されている。(1)そのストリーミング容量は動的に増加する。(2)ピアはサーバのような動作を示さない。(3)ピアはその帯域幅貢献において異質である。及び(4)各ストリーミングセッションは複数の供給側ピアを含む可能性がある。これらの特性に基づき、2つの問題が調査される。つまり(1)1回のストリーミングセッションで複数の供給側ピアにどのようにしてメディアデータを割り当てるのか、及び(2)システムの総合的なストリーミング能力をどのようにして迅速に増幅するかである。第1の問題に提案された解決策とは、結果として生じるストリーミングセッションにおいて最小のバッファ遅延を生じさせる最適メディアデータ割り当てアルゴリズムOTSp2pである。第2の問題に対する解決策は分散分化型許可制御プロトコルDACp2pである。異なるアウトバウンド帯域幅で要求側ピア間を区別することにより、DACp2pは高速システム容量拡大を達成すると言われ、許可率、待機時間、及びバッファ遅延においてすべての要求側ピアのベネフィットとなり、ピアがそれらの真に使用可能なアウトバウンド帯域幅を提供するためのインセンティブを付与する。
ここで背景の特許参考文献を参照すると、データ送達のサーバ側最適化のためのシステムは、米国第6,112,239号(Kennerら)に開示されている。類似したシステムは米国第6,502,125号及び米国第2003/0145007号(ともにやはりKennerら)に開示されている。これらのシステムでは、ユーザは最適化を実行するためにユーザ自身のマシンで実行しなければならないソフトウェアを与えられる。同様に、米国第6,477,522号(Young)では、アプレットがファイルに対する要求をインターセプトし、ファイルを提供するために最善のサーバを決定するインターネットからのファイルのダウンロードを最適化するためのシステムが開示されている。やはり、ソフトウェアがユーザのマシンにインストールされ、ユーザのマシンから実行されることが必要である。
インターネットを介して接続されるユーザ間でのデジタル電子ゲームプレイの分野に関して、米国第6,304,902号(Blackら)は、複数のゲームをプレイするユーザと任意の必要な1台以上のサーバの間のデータ通信リンクの品質がこのようなゲームプレイに十分であることを確実にするための方法を開示している。ゲームプレイは、通常、複数のプレーヤと、複数の考えられるサーバから選択されてよい1台の共通サーバの間での2方向の情報の交換を必要とする。1台のサーバは仲介役の役を務め、複数の考えられるサーバから数台のサーバを選択し、これらから要求されたゲームのためのサーバとして1台を選択する。このようなゲームプレイシステムの性質のため、目的は複数のユーザが同じサーバに同時に接続できるようにすることであり、したがってサーバは、同時にあるいは次々とサーバに接続を試みることがある複数のユーザによるその使用を容易にするように選ばれることに留意されたい。
前記とは対照的に、本発明の実施形態は、マルチメディアコンテンツのダウンロード又はそのユーザによって要求される他のこのようなデータ交換に適切であるだけではなく、それがまた多数の他のユーザにデータを提供するための低速化又は過負荷に最も被りそうにないサーバに対する接続がその個人ユーザによって確立できるように、個人ユーザにとって「最も速い」、「最も近い」、又はそうでなければ最も適切なサーバ、又は最速で最善あるいは最も信頼できる接続を特定することを目的とする。本発明の好ましい実施形態によれば、この特定プロセスは、ユーザが自身のマシンに特殊なソフトウェアをインストールする、あるいは実行する必要なく実施することが可能である。
本発明によれば、複数のデータプロバイダから好ましいデータプロバイダを選択するためのシステムが提供され、前記システムは、
クライアントからデータに対する要求を受け取るための手段と、
前記クライアントからクライアント識別データを受け取るための手段と、
前記クライアントにデータを提供することができる複数のデータプロバイダを特定するための手段と、
前記データプロバイダに前記クライアント識別データを提供するための手段と、
前記データプロバイダに対し、
(i)前記クライアントに試験信号を送信するステップと、
(ii)前記クライアントから帰還信号を受信するステップと、
(iii)試験信号の送信と帰還信号の受信の間の経過時間の値を取得するステップと、
(iv)システムが経過時間を示す信号を入手できるようにするステップと、
(v)システムがそれらの残り容量を示す信号を入手できるようにするステップと、
を実行するように指示するための手段と、
前記データプロバイダから経過時間信号及び残り容量信号を受信するための手段と、
前記信号に基づいて好ましいデータプロバイダを選択するための手段と、
前記クライアントに前記好ましいデータプロバイダのアイデンティティに関する情報を提供するための手段と、
を含む。
本発明によれば、複数のデータプロバイダから好ましいデータプロバイダを選択するための方法も提供され、前記方法は、
クライアントからデータに対する要求を受け取るステップと、
前記クライアントからクライアント識別データを受信するステップと、
前記クライアントにデータを提供することができる複数のデータプロバイダを特定するステップと、
前記データプロバイダに前記クライアント識別データを提供するステップと、
前記データプロバイダに対し、
(i)前記クライアントに試験信号を送信するステップと、
(ii)前記クライアントから帰還信号を受信するステップと、
(iii)試験信号の送信と帰還信号の受信の間の経過時間の値を取得するステップと、
(iv)システムが前記経過時間を示す信号を入手できるようにするステップと、
(v)システムがそれらの残り容量を示す信号を入手できるようにするステップと、
を実行するように指示するステップと、
前記データプロバイダから経過時間信号及び残り容量信号を受信するステップと、
前記信号に基づいて好ましいデータプロバイダを選択するステップと、
前記クライアントに前記好ましいデータプロバイダのアイデンティティに関する情報を提供するステップと、
を含む。
本発明の実施形態によるシステム及び方法を使用することによって、ユーザがビデオコンテンツ又は他のデータへのアクセスの試行を望むときに、エンドユーザに完全に不可視とすることが可能となり、ユーザのマシン上での特殊なソフトウェアのインストール又は実行を必要としない小さい試験プロセスを実行し、このようにして、多くの使用可能なビデオサーバ又は他のデータプロバイダから前記特定のユーザにとって最も信頼性があり、最速で、最も輻輳していない、あるいはそれ以外の場合は最も適切なプロバイダを決定することによって前記に概略された問題を解決することが可能である。このようにして、ユーザは最も「信頼できる」プロバイダに接続することにより最良のデータダウンロード又はデータストリームの受信が可能となり、このようにしてマルチメディアアプリケーション及び他のこのようなアプリケーションに関するユーザの経験を改善することができる。
好ましい実施形態によれば、システムは、特定のビデオファイルなどの特定のアイテムに対する要求をユーザから受け取るように構成されてよい。それは、次に、事前に選択さるか、あるいはシステムに対する加入者であってもよく、おそらくはデータプロバイダのグループの、あるいはインターネット全体又は他のこのようなネットワークの、要求される特定のアイテムを提供できるデータプロバイダを特定するためにサーチを実行できる。このようなサーチに続き、システムは、これらの潜在的なデータプロバイダだけから選択を行うために選択プロセスを実行できる。代わりに、ユーザは「好ましい」データプロバイダが選択されるためにある特定のアイテムを指定することを求められる必要はない。しかしながら、このようなケースでは、ユーザは自身が、ユーザが要求することを希望する特定のアイテムを含むこともあれば、含まないこともある、いったん選択されたならば、好ましいデータプロバイダが提供できるアイテムの「カタログ」に限定されているのに気付く可能性がある。
本発明の好ましい実施形態によるシステムでは、前記データプロバイダに指示するための手段は、集中型サーバなどの、クライアントから遠隔の手段である。用語「遠隔の」は、指示手段とクライアントが地理的に離れていることを暗示する必要はなく、クライアントと指示手段のそれぞれの機能がクライアントマシン上の1つの共通した処理手段によって実行されないことを暗示するにすぎない。クライアントとサーバのそれぞれの物理的な場所に関係なく、クライアント以外の何かが「指示すること」を実行し、したがってソフトウェアがクライアントマシンにダウンロードされる必要がないことが明らかとなるであろう。
本発明の実施形態によるシステムは、所定の閾値を超えた残りの容量を有するデータプロバイダだけから好ましいデータプロバイダを選択し、事実上、その残りの容量がその所定の閾値以下であるあらゆるデータプロバイダを不適格とするように構成されてもよい。代わりに、決定が特定の閾値によって制約されるのではなく、2種類の信号(つまり経過時間及び残り容量)により表されるそれぞれの要因の間の最善のバランスを取得するために最終的な選択が行われてもよい。
好ましい実施形態によれば、データプロバイダが提供するように指示される可能性のある残りの容量を示す信号は、その残りの帯域幅を示す信号であってよい。
好ましい実施形態によるシステムでは、好ましいデータプロバイダのアイデンティティに関する情報を提供するために、システムはウェブサイト上で情報を提供するように構成されてもよく、それは選択プロセスが実行され、新しい「好ましい」データプロバイダが確立されるたびに更新されてもよい。情報は、好ましいデータプロバイダのユニフォームリソースロケータ(URL)の形で提供されてよい。しかしながら、情報はユーザへのeメール又は必要な情報を含む他のこのようなメッセージの送信などの他の方法で提供されてよい。
本発明の実施形態によるシステムは、複数の「好ましい」データプロバイダを選択できる。このケースでは、それらは、おそらく、それらがそれぞれの試験で発揮した性能の順(つまり、最高、2番目に最高等)に基づいて順位付けを示すリストの形式でユーザに複数の好ましいデータプロバイダに関する情報を提供でき、あるいは代わりに所定の品質閾値を超えた性能を発揮したものがユーザに特定されてもよい。
本発明の好ましい実施形態の説明において、以下に示す技術、つまりRMI、JAVA(登録商標)、サーブレット(Servlets)、HTMLを説明する。これらの技術についての情報は公に入手できるが、ここでは専門用語、及びそれに関連付けられる略語及び頭字語に関する不明瞭さの可能性を回避する目的で概要を示す。
RMI(「リモートメソッド呼び出し(Invocation)」)は、Java開発キット(JDK)1.1で提供される、たとえそれらがネットワークによって分離されていたとしても異なるJava仮想マシン(JVM)の間のメッセージングを可能にする、新しいアプリケーションプログラミングインタフェース(API)である。
「JAVA」はインターネットの分散環境で使用するために明示的に設計されたプログラミング言語である。それは、単一のコンピュータ上で実行可能であり、あるいはネットワーク内のサーバとクライアントの間で分散されてよい完全なアプリケーションを作成するために使用できる。それは、ウェブページの一部として使用するための小さいアプリケーションモジュール、または「アプレット」を構築するために使用できる。アプレットは、ウェブページユーザがページと対話できるようにする。
「サーブレット」は、サーバ上で実行する小さいプログラムと定義できる。前記用語は、通常、ウェブサーバ環境の中で実行するJavaアプレットを指す。これは、ウェブブラウザ環境の中で実行するJavaアプレットに類似している。
HTML(「ハイパーテキスト・マークアップ言語」)は、ワールドワイドウェブのブラウザページでの表示を目的としたファイルに挿入される記号又は符号の集合である。「マークアップ」は、ウェブページのワード及び画像をユーザのためにどのように表示するのかをウェブブラウザに教える。
本発明の更なる特徴及び利点は、一例としてのみ、及び類似した参照番号が類似したパーツを指す添付図面を参照することにより提示されるその実施形態の以下の説明から明らかになるであろう。
本発明の実施形態によるシステムを含むネットワークが図1に示されている。この図は、好ましい、または「最高の」ビデオサーバを決定するプロセスで発生する可能性があるネットワークの構成要素の間の対話を明らかにする。この一部が、ビデオストリーミングのために使用される典型的なアーキテクチャ(クライアント、ウェブサーバ、ビデオサーバ)であるが、それはある特定のエンドユーザのためのビデオストリーミングにどの「ビデオサーバ」が最も適しているのかを決定するために試験を実行できるようにするJAVA RMI実行も含む。前記プロセスは詳細に後述される。図中のステップは、イベントの好ましい順序を示す。システムの構成要素は以下のように要約できる。
クライアント:「クライアント」10は、一般的には、ウェブブラウザ及び「ビデオプレーヤ」を実行する「エンドユーザの」パーソナルコンピュータ(PC)又は類似したプラグイン又はアプリケーションを指す。しかしながら、クライアントが、インターネットと対話するためにWAP(ワイヤレスアプリケーションプロトコル)又は類似するウェブブラウジングプロトコルを使用する3G(「第三世代」)携帯電話などのデバイスである場合があることに留意する。
集中型サーバ:「集中型」サーバ20は、一般的には、ウェブサーバソフトウェアを実行するウェブサーバ22を含むPCなどのようなコンピュータ端末を指す。集中型サーバ20は、このようにして、ユーザがそこから例えばビデオクリップの選択を行うことができるウェブページの形でユーザに情報を提供又は提示でき、前記ウェブページはビデオストリーミングサーバサイトへのリンクを含む。集中型サーバは、ダイナミックウェブページを作成し、RMIサーバと通信し、最終的には、複数の「ビデオストリーミングサーバ」のどれかにインストールされる「RMIサーバ」と通信するためにJAVA RMIクライアントを動作することに関与する「サーブレット」(JAVA)ソフトウェア24又は「ASP」(マイクロソフト(登録商標))ソフトウェアを実行できる。
集中型サーバ20は、このようにしてユーザにダイナミックウェブページを最初に提示できる。集中型サーバが、それが「最高の」(つまり、最も速い、最も近い、あるいはそれ以外の場合最も適切な)1以上のサーバを見つけることを目的とする任意の「サーチ」モードで動作する前に、それは1以上の「デフォルト」サーバへのリンクを含んでもよい。任意の時点で、ユーザは1つのコンテンツを選択でき、あるいは1つのコンテンツに対する要求を送信できる−これがサーチが完了する前に発生する場合には、デフォルトのストリーミングサーバがコンテンツを送達するために選ばれる、あるいは1つ以上のデフォルトサーバへのリンクが提供されてもよい。
ビデオストリーミングサーバ:それぞれが圧縮されている、又は圧縮されていない「ビデオコンテンツ」、集中型サーバ20において「RMIクライアント」26と通信する「RMIサーバ」36、及びクライアント10などのエンドユーザに「ビデオストリーミングコンテンツ」を供給できる適切なソフトウェアなどの記憶されている「マルチメディアコンテンツ」35を含む、又は「マルチメディアコンテンツ」35にアクセスする、複数の「マルチメディアサーバ」又は「ビデオストリーミングサーバ」30が示されている(この例では「C1」、「C2」、及び「Cn」として特定されるこのような3つのサーバが示されている)。それらは、また後述されるような「ピング試験」を実行するため、及び詳細に後述されるような「往復応答時間」のための値を設定し、この値は平均値であってもよく、これを集中型サーバに提供するための手段も備える。
これらの構成要素のすべては、後述されるように、ビデオストリーミングコンテンツをエンドユーザに送達するために対話してもよい。
「最高の」(又は少なくとも「好ましい」)サーバを決定するプロセスが後述される。「最高の」が主観的な用語である一方、データ転送において非常に重要である2つの要因は速度と信頼性であることが理解されるであろう。これらの要因のどちらかに関するいかなる改善もダウンロードの全体的な品質の改善と見なすことができる。このプロセスでは、以下に挙げる2つの主要な観点がある。
(a)「待ち時間」試験及び
(b)「残りの帯域幅」試験
これらの試験は、どちらかの順で次々に、あるいは同時に実行できる。それらは以下の段落に説明される。
a)待ち時間試験
ステップ1(図1に示される):「クライアント」又は「ユーザ」10は、マルチメディアサーバのための全体的な「サーチ」プロセスの調整に責任を有する「集中型」サーバ20を介して「マルチメディアサーバ」への接続の要求を提出する。この集中型サーバ20は、「クライアント」又は「ユーザ」マシン10のIPアドレスを検索できる「サーブレット(Servlet)」24を、それがこのIPアドレスを例えば「JAVA RMI」技術を使用して多くのマルチメディアサーバ30に伝搬できるように含む。ユーザは特定のデータ、又は、例えば特定のビデオファイルなどのような特定のアイテムに対する要求を行うことができ、その場合集中型サーバは、そのデータ、アイテム又はファイルを提供することができると判明しているサーバから「最高の」のサーバを決定するプロセスを続行する前に、それらを提供できるビデオサーバのサーチを実行できる。代わりに、ユーザの要求は一般的にデータに対してであってもよく、その場合、集中型サーバはサーバの集合、所定のサーバ、あるいは別の代替となるサーバから「最高の」サーバを決定するプロセスを実行でき、その場合にはユーザは、例えばそのサーバがいったんユーザに入手可能なアイテムの「ライブラリ」を提供したら、好ましいサーバのアイデンティティがいったん確立されたら、好ましいサーバからどの1つ以上のアイテムを受け取るのかを選択できる。
ステップ2(図1に示される):前記に言及されたように、「クライアント」又は「ユーザ」マシン10から検索されるIPアドレスは、集中型サーバ20の「RMIクライアント」26からマルチメディアサーバ30の「RMIサーバ」36に伝搬される。
ステップ3(図1に示される):「ビデオストリーミングサーバ」30に位置する各「RMIサーバ」36はそのIPアドレスを検索し、それぞれのサーバはそのIPアドレスを使用して「ユーザ」マシン10を「ピングする(PING−ing)」ことによって試験信号を送信する。「ピング」とは、インターネットコントロールメッセージプロトコル(ICMP)パケットを「ビデオストリーミングサーバ」マシンから「クライアント」マシンに送信するプロセスを動作するために使用されてよいアプリケーションソフトウェア「パケットインターネットゴーファー(Gophers)」を指し、このようにしてパケットがその「ビデオストリーミングサーバ」マシン30から「クライアント」マシン10に移動し、ビデオストリーミングサーバに戻るのに要する時間を測定できる。一般的には、(複数が送信される場合に)無事に受信され、戻されるパケットが多く、パケットがある特定の「ビデオストリーミングサーバ」マシンからクライアントマシンまで移動し、戻ってくるのに要する時間(通常はミリ秒単位で測定される)が少ないほど、その「ビデオストリーミングサーバ」に接続される場合にエンドユーザが取得するであろうビデオストリーミング性能はよくなる。この時点で、数パケットの「ピング」プロセスの後に「要求タイムアウト応答」メッセージが受信される場合、パケットが「不成功」と見なされる場合があることが言及されなければならない。この場合、パケットは「失われた」と見なされ、デフォルト値(通常1000ms)が与えられ、このようにして最後に計算される「平均値」に影響を及ぼす。
前記のように「ピング」試験を活用することは、特にそれがユーザマシン上で特別なソフトウェアをインストールすることを必要としないため特に有利である一方、待ち時間を測定するための代替策が存在する。これらの代替策は、「トレースルート(Traceroute)」などの既知のネットワークツール、及びUDP(「ユーザデータグラムプロトコル」)などのICMP以外のプロトコルに適切な「ピング」同等物を含む。
ステップ4(図1に示される):各マシンで「ピングする(Pinging)」プロセスが完了した後、平均値が計算され、この値は再びRMIを使用して「集中型」サーバに返される。このようにして表1に示されるような「平均」応答値時間を有する「表」が「RMIクライアント」で形成される。これらのすべての値から、最小の値(つまり、この場合にはサーバC1)が好ましい、又は最も適切な「ビデオストリーミングサーバ」(又は「最高の」サーバ)として選ばれてもよい。
Figure 2007502560
表1:これは、RMI技術を用いてすべての「ビデオストリーミングサーバ」から取り出される平均値を示す。「RMIクライアント」は最小値(つまりサーバC1)を選んでよい。
ステップ5(図1に示される):次に「サーブレット(Servlet)」は、最小の「平均応答時間」の「ビデオストリーミングサーバ」のIPアドレスを「RMIクライアント」から取り出す。前記の例では、これがIPアドレス「132.146.107.61」を有する「C1」である。それは、その新しいIPアドレスでビデオリンクを含むウェブページを更新できる。このようにして、「集中型」サーバはJAVA「サーブレット」技術を介して「マルチメディア」サーバにクライアントをリダイレクトする。
以上で待ち時間試験は終わりである。前記に述べられたような全体的なプロセスがエンドユーザにとっては不可視であり、完了するには2〜3秒しか要さない可能性があり、この試験だけに基づいて選択することによって、ユーザがビデオストリーミングコンテンツを取得可能なサーバが、「好ましい」「ビデオストリーミングサーバ」から選択されてよい。
前記プロセスは、例えば「ビデオサーバ」管理者によって設定される特定の期間の後に繰り返すことができ、毎回ウェブページは、新しい好ましい「ビデオストリーミングサーバ」IPアドレスで動的にリフレッシュすることができる。
b)残りの帯域幅試験
前述されたようなシステムは「待ち時間試験」だけの結果に基づいて好ましいサーバを設定できるが、本発明の実施形態によるシステムは「残り帯域幅試験」と呼ばれる追加試験を実行することもできる。これにより、サーバを、相当数の他のユーザによって使用されているため、あるいはその帯域幅の高い割合がすでに他のタスクに割り当てられているため、それが現在「輻輳している」場合には好ましいサーバとして選ばれることから「不適格とする」ことを可能にする。図2は特定の期間での「サーバ」内の残りの「アップリンク」容量の計算を図解する。
ステップ3a(図1に図示されていない):必ずしもでなくても好ましくは、「待ち時間試験」のステップ3と同時に、マルチメディアサーバ30のそれぞれの「RMIサーバ」36は、「ビデオストリーミングソフトウェア」からそのマルチメディアサーバにすでに接続されている他のユーザの数のための値U、及びそれぞれのものごとに要求されるクリップの「ビットレート」Bを得ることが可能である。図2を参照して、既存のユーザのビットレートは同じである必要はないが、U人の既存のユーザのそれぞれのビットレートが、簡単にするために毎秒220キロビットであるとして示されている。このような情報は、「マイクロソフト」の「ウィンドウズ(登録商標)メディアSDK」のような「プラグイン」ライブラリを、あるいは他社の類似したツール(RealVideo、QuickTime他)を使用してプログラムで取り出すことができるであろう。
以下の式から、「RMIサーバ」からの要求時に消費される総帯域幅が与えられるであろう。
Figure 2007502560
式中、
totalは「RMIサーバ」からの要求が発生した時点で要求された「ビデオストリーム」によって消費される総帯域幅である。
は、i番目のユーザのために要求された「ビデオクリップ」の符号化「ビットレート」である。
Uは、「ビデオストリーミングサーバ」に接続された「ユーザ」の数である。
同時に、「RMIサーバ」は、ネットワーク接続により制限される「ビデオストリーミングサーバ」の最大使用可能「アップストリーム」帯域幅を確立してよい。これは、「管理者」が全体的なソフトウェアをインストールするときに管理者によって手動で設定できるか、あるいはそれは最大「アップリンク」接続帯域幅を決定するマシンで局所的に実行しているプロセスから自動的に取り出すことができるであろう。
このようにして、Xmaxは、最大入手可能「アップストリーム」帯域幅である。
最後に、以下の式により使用可能な「アップリンク」帯域幅の「パーセンテージ」が得られる。
Figure 2007502560
式中、Aは残りの「アップストリーム」帯域幅のパーセンテージである。
このようにして、例えば10%から20%の「閾値」を設定でき、その結果Aが閾値を下回ると、この「ビデオストリーミングサーバ」がほぼ輻輳していると仮定することができ、したがってそれは最終的な「最高のビデオストリーミングサーバ」決定(ステップ4)に含まれない。
以下に、前記の数式を説明するために例が示されている。
例えば、「ビデオストリーミングサーバ」に符号化された2つのクリップがある状況を取り上げてみよう。第1のファイルは「videofile1」と呼ばれ、220kbpsという符号化ビットレートを有する。第2は「videofile2」と呼ばれ、140kbpsという符号化ビットレートを有する。他の10人の「ユーザ」は、すでに「ビデオストリーミングサーバ」に接続されており、その内の7人は「videofile1」を、その内の3人は「videofile2」を見ている。最大使用可能帯域幅は、X=10Mbps=10000Kbpsである。閾値を20%と設定する。
式(F.1)から、以下が得られる。
ユーザ数:U=10
「videofile1」を見ている7人のユーザ:B1=220、B2=220、B3=220、B4=220、B5=220、B6=220、B7=220
「videofile2」を見ている3人のユーザ:B8=140、B9=140、B10=140
したがって、総消費帯域幅は、以下のようになる。
N=B1+B2+B3+B4+B5+B6+B7+B8+B9+B10
=220+220+220+220+220+220+220+140+140+140=1960
TOTAL=1960kbps
前記に述べられたように、最大使用可能帯域幅X=10000kbpsである。
式(F.2)から、以下が得られる。
Figure 2007502560
したがってA=80.4%
結論:残りの使用可能な「アップリンク」帯域幅は、20%という閾値を超える80.4%である。したがって、このサーバはさらに多くの「ビデオストリーム」に対する要求を受け入れることができ、ステップ3からのその「使用可能応答時間」は、最終的な「最高のビデオストリーミングサーバ」決定に含まれる。
以下のような「残りの容量」を計算する代替の方法が存在することに注意する必要がある。プログラムは、サーバ又はある期間に渡って送信されるパケット(TCP/UDP)を測定することができる他のこのようなデータプロバイダで連続して実行することにより「平均アップリンク容量」を測定できる。このようなプログラムは広く入手可能であり、データプロバイダへの及びデータプロバイダからのトラフィックの推定値を与えるであろう。このようなプロセスは前述されたプロセスよりさらに複雑な場合があるが、瞬間的な平均残り帯域幅のより正確な測定値を提供することができ、あらゆる「マルチメディアパケット」だけではなく、他のトラフィック(TCP受領確認メッセージ、オーバヘッドパケット、他のネットワークアプリケーションからのトラフィック等)も測定できる。前記に詳細に説明されたものは「帯域幅測定」が必要とされるときにだけ起動する必要があるが、このような方法は一般的には「データプロバイダ」上で持続的に実行するであろう。
ステップ4a(図1に図示されていない):いったん前記値が設定されると、使用可能な「アップリンク」帯域幅のパーセンテージは、各ビデオストリーミングサーバ30によって集中型サーバ20のRMIクライアント26に返されてよい。いったん「ピング(Pinging)」プロセス(「待ち時間試験」のステップ3)が各マシンに関して完了されると、平均応答時間値及びパーセンテージ値を有する表が「RMIクライアント」に形成されてよい(以下の表2を参照すること)。任意のビデオストリーミングサーバの使用可能な「アップリンク」帯域幅のパーセンテージが所定の「閾値」を下回る場合、そのサーバはその応答時間値に関係なく不適格と見なされてよい。不適格とされていないものから、最小の平均応答時間を有するもの(つまりこの例では「C1」)が、最も適した(又は「最高の」)ビデオストリーミングサーバとして選ばれてよい。
Figure 2007502560
表2:これは、使用可能なアップリンク帯域幅値のパーセンテージとともに、RMI技術ですべての「ビデオストリーミングサーバ」から取り出された「平均応答時間」値を示している。「RMIクライアント」は20%という所定の閾値以下のパーセンテージ値を有するために不適格とされない最小応答時間値を有するサーバを選んでよい。n番目のサーバ(Cn)は「輻輳している」と考えられるため、その「平均応答時間」値は、非常に低いけれども最終的な決定から拒絶されることに留意されたい。
ステップ5(図1に図示される):「サーブレット」は「RMIクライアント」から好ましいビデオストリーミングサーバのIPアドレスを取り出し、それはその新しいIPアドレスとのビデオリンクを含むウェブページを更新する。このようにして、「集中型」サーバは、JAVA「サーブレット」技術を介してその「マルチメディア」サーバにクライアントをリダイレクトしてよい。
以上で試験の終わりであり、これによりユーザは「最高の」ビデオストリーミングサーバからビデオストリームコンテンツを受信できるであろう。
プロセスは、「ビデオサーバ」管理者によって設定される固定期間について繰り返すことができ、毎回、ウェブページは新しい「ビデオストリーミングサーバIPアドレス」で動的にリフレッシュできる。
特殊ケースの検討:
以下に簡略に、前記プロセスを崩壊させる可能性があるいくつかの特定の状況をレビューする。
RMIサーバが「ダウン」している:この場合、RMIクライアントがある特定のビデオストリーミングサーバのRMIサーバとの通信を確立できない可能性がある。したがって、この「サーバ」が現在動作していないと仮定されてよい。したがって、この「サーバ」は、どの「ビデオストリーミングサーバ」が「最高」であるのかの決定で考慮されない。
ユーザ/クライアントがファイアウォールの後ろにある:この特別なケースでは、クライアントのマシンがすべての「ピング」パケットをブロックし、その結果すべてのサーバは「要求タイムアウト応答」を受信する場合がある。この場合、エンドユーザはデフォルトの「ビデオストリーミングサーバ」を提供され、このイベントについて(つまり、ユーザがファイアウォールの後ろにあって、ICMPパケットのブロックを非活性化するべきである旨)知らされてよい。代わりに、このケースに対処するために他のプロセスが自動的に開始されてよい。
「ビデオストリーミングサーバ」が「ダウン」している:この場合、RMIサーバはビデオストリーミングソフトウェアが実行しているかどうかをチェックし、その「ビデオストリーミングサーバ」が接続を受け入れる準備が完了している場合、あるいは完了しているとき「RMIクライアント」に知らせてよい。代わりに、ステップ4では、この「サーバ」はどの「ビデオストリーミングサーバ」が「最高」であるのかを確立するプロセスから除外されてよい。
本発明の一実施形態によるシステムを含むネットワークの構成要素パーツを示す図である。 「データプロバイダ」の残りの「アップリンク」容量の計算を示す図である。

Claims (18)

  1. 複数のデータプロバイダから好ましいデータプロバイダを選択するためのシステムであって、
    クライアントからデータに対する要求を受け取るための手段と、
    前記クライアントからクライアント識別データを受け取るための手段と、
    前記クライアントにデータを提供できる複数のデータプロバイダを特定するための手段と、
    前記クライアント識別データを前記データプロバイダに提供する手段と、
    前記データプロバイダに対し、
    (i)前記クライアントに試験信号を送信するステップと、
    (ii)前記クライアントから帰還信号を受信するステップと、
    (iii)前記試験信号の送信と前記帰還信号の受信の間の経過時間の値を取得するステップと、
    (iv)前記システムが経過時間を示す信号を使用できるようにするステップと、
    (v)前記システムがその残り容量を示す信号を入手できるようにするステップと、
    を実行するように指示するための手段と、
    前記データプロバイダから経過時間信号と残り容量信号を受信するための手段と、
    前記信号に基づいて好ましいデータプロバイダを選択するための手段と、
    前記好ましいデータプロバイダのアイデンティティに関する情報を前記クライアントに提供するための手段と、
    を含む、システム。
  2. 前記データに対する要求を受信するための手段は、1つ以上の特定のアイテムに対する要求を受信するための手段を含む、請求項1に記載のシステム。
  3. 前記データプロバイダを特定するための手段は、要求される前記特定の1以上のアイテムを提供することができるデータプロバイダをサーチするための手段を含む、請求項2に記載のシステム。
  4. 前記選択する手段は、所定の閾値を超える残り容量を有するデータプロバイダから好ましいデータプロバイダを選択するように構成される、請求項1乃至請求項3のいずれか1項に記載のシステム。
  5. 前記データプロバイダに対し指示するための手段は、前記データプロバイダに、それらの残り帯域幅を示す信号を前記システムが入手できるようにするよう指示するための手段を含む、請求項1乃至請求項4のいずれか1項に記載のシステム。
  6. 前記データプロバイダに指示するための手段は、クライアントから遠隔の手段である、請求項1乃至請求項5のいずれか1項に記載のシステム。
  7. 前記好ましいデータプロバイダのアイデンティティに関する情報を提供するための手段は、前記情報をウェブサイトで提供するように構成される、請求項1乃至請求項6のいずれか1項に記載のシステム。
  8. 前記好ましいデータプロバイダのアイデンティティに関する情報を提供するための手段は、前記好ましいデータプロバイダのユニフォームリソースロケータ(URL)を提供するように構成される、請求項1乃至請求項7のいずれか1項に記載のシステム。
  9. 所定の基準に従って複数の好ましいデータプロバイダを選択できる手段と、それぞれの好ましいデータプロバイダのアイデンティティに関する情報を前記クライアントに提供するための手段とを含む、請求項1乃至請求項8のいずれか1項に記載のシステム。
  10. 複数のデータプロバイダから好ましいデータプロバイダを選択するための方法であって、
    クライアントからデータに対する要求を受け取るステップと、
    前記クライアントからクライアント識別データを受信するステップと、
    前記クライアントにデータを提供できる複数のデータプロバイダを特定するステップと、
    前記データプロバイダに前記クライアント識別データを提供するステップと、
    前記データプロバイダに対し、
    (i)前記クライアントに試験信号を送信するステップと、
    (ii)前記クライアントから帰還信号を受信するステップと、
    (iii)前記試験信号の送信と前記帰還信号の受信の間の経過時間の値を取得するステップと、
    (iv)前記システムが前記経過時間を示す信号を入手できるようにするステップと、
    (v)前記システムがその残り容量を示す信号を入手できるようにするステップと、
    を実行するように指示するステップと、
    前記データプロバイダから経過時間信号及び残り容量信号を受信するステップと、
    前記信号に基づき好ましいデータプロバイダを選択するステップと、
    前記クライアントに前記好ましいデータプロバイダのアイデンティティに関する情報を提供するステップと、
    を含む、方法。
  11. データに対する要求を受け取る前記ステップは、1つ以上の特定のアイテムに対する要求を受け取ることを含む、請求項10に記載の方法。
  12. データプロバイダを特定する前記ステップは、要求される前記特定の1つ以上のアイテムを提供できるデータプロバイダをサーチすることを含む、請求項11に記載の方法。
  13. 好ましいデータプロバイダを選択する前記ステップは、所定の閾値を超える残り容量を有するデータプロバイダから選択することを含む、請求項10乃至請求項12のいずれか1項に記載の方法。
  14. 前記データプロバイダに対し指示する前記ステップは、前記データプロバイダに前記システムがその残り帯域幅を示す信号を入手できるように指示することを含む、請求項10乃至請求項13のいずれか1項に記載の方法。
  15. 前記データプロバイダに指示する前記ステップは、前記クライアントから遠隔の手段により実行される、請求項10乃至請求項14のいずれか1項に記載の方法。
  16. 前記好ましいデータプロバイダの前記アイデンティティに関する情報を提供する前記ステップは、ウェブサイトで前記情報を提供することを含む、請求項10乃至請求項15のいずれか1項に記載の方法。
  17. 前記好ましいデータプロバイダの前記アイデンティティに関する情報を提供する前記ステップは、前記好ましいデータプロバイダのユニフォームリソースロケータ(URL)を提供することを含む、請求項10乃至請求項16のいずれか1項に記載の方法。
  18. 複数の好ましいデータプロバイダが所定の基準に従って選択されてよく、それぞれの好適データプロバイダの前記アイデンティティに関する情報が前記クライアントに提供されてよい、請求項10乃至請求項17のいずれか1項に記載の方法。
JP2006523046A 2003-08-15 2004-07-30 データプロバイダを選択するためのシステム及び方法 Expired - Lifetime JP4456113B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GBGB0319251.5A GB0319251D0 (en) 2003-08-15 2003-08-15 System and method for selecting data providers
PCT/GB2004/003331 WO2005018158A1 (en) 2003-08-15 2004-07-30 System and method for selecting data providers

Publications (2)

Publication Number Publication Date
JP2007502560A true JP2007502560A (ja) 2007-02-08
JP4456113B2 JP4456113B2 (ja) 2010-04-28

Family

ID=28052608

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006523046A Expired - Lifetime JP4456113B2 (ja) 2003-08-15 2004-07-30 データプロバイダを選択するためのシステム及び方法

Country Status (8)

Country Link
US (1) US7616582B2 (ja)
EP (1) EP1654838B1 (ja)
JP (1) JP4456113B2 (ja)
KR (1) KR101037020B1 (ja)
CN (1) CN100477614C (ja)
CA (1) CA2517356C (ja)
GB (1) GB0319251D0 (ja)
WO (1) WO2005018158A1 (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4830025B2 (ja) * 2006-11-29 2011-12-07 トムソン ライセンシング 貢献認識(contributionaware)ピアツーピアライブストリーミングサービス
US9094416B2 (en) 2006-11-29 2015-07-28 Thomson Licensing Contribution aware peer-to-peer live streaming service
JP2016527596A (ja) * 2013-05-31 2016-09-08 アイトロン インコーポレイテッド プラットフォームを通じた分散アプリケーション
US10198254B2 (en) 2013-05-31 2019-02-05 Itron, Inc. Surfacing cross platform applications
JP2019522386A (ja) * 2016-05-16 2019-08-08 ロヴィ ガイズ, インコーポレイテッド ユーザデバイスにおけるサービス品質に基づいてメディア一覧を提示するための方法およびシステム
US11328344B2 (en) 2013-05-31 2022-05-10 Itron, Inc. Utility application delivery platform
US11962864B2 (en) 2016-05-16 2024-04-16 Rovi Guides, Inc. Methods and systems for recommending providers of media content to users viewing over-the-top content based on quality of service

Families Citing this family (69)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100757892B1 (ko) 2005-12-07 2007-09-11 한국전자통신연구원 소프트웨어 스트리밍 서비스 제공 장치 및 그 방법
KR100813972B1 (ko) 2006-03-08 2008-03-14 삼성전자주식회사 컨텐츠 스트리밍 클라이언트 장치 및 방법, 그 방법을수행하는 프로그램을 기록한 컴퓨터 판독 가능한 기록매체
KR100844742B1 (ko) * 2006-08-30 2008-07-07 (주)컴스타 피어투피어 서비스의 신뢰성을 위한 사용자 평판관리 방법
KR20090000281A (ko) * 2007-02-13 2009-01-07 삼성전자주식회사 Ce 기기의 데이터 수신 장치 및 방법, 데이터 재생 방법및 ce 기기
US20110019662A1 (en) 2007-06-28 2011-01-27 Rebelvox Llc Method for downloading and using a communication application through a web browser
US8180029B2 (en) 2007-06-28 2012-05-15 Voxer Ip Llc Telecommunication and multimedia management method and apparatus
US8533611B2 (en) 2009-08-10 2013-09-10 Voxer Ip Llc Browser enabled communication device for conducting conversations in either a real-time mode, a time-shifted mode, and with the ability to seamlessly shift the conversation between the two modes
US8825772B2 (en) 2007-06-28 2014-09-02 Voxer Ip Llc System and method for operating a server for real-time communication of time-based media
US8645477B2 (en) 2009-01-30 2014-02-04 Voxer Ip Llc Progressive messaging apparatus and method capable of supporting near real-time communication
US9178916B2 (en) 2007-06-28 2015-11-03 Voxer Ip Llc Real-time messaging method and apparatus
US20100198988A1 (en) 2009-01-30 2010-08-05 Rebelvox Llc Methods for using the addressing, protocols and the infrastructure of email to support near real-time communication
US8688789B2 (en) 2009-01-30 2014-04-01 Voxer Ip Llc Progressive messaging apparatus and method capable of supporting near real-time communication
US11095583B2 (en) 2007-06-28 2021-08-17 Voxer Ip Llc Real-time messaging method and apparatus
US7978670B2 (en) * 2007-08-07 2011-07-12 Motorola Solutions, Inc. Method and apparatus to facilitate bandwidth allocation management in integral combination with memory capacity information
US8090867B2 (en) 2007-10-19 2012-01-03 Voxer Ip Llc Telecommunication and multimedia management method and apparatus
US8233598B2 (en) 2007-10-19 2012-07-31 Voxer Ip Llc Telecommunication and multimedia management method and apparatus
US8145780B2 (en) 2007-10-19 2012-03-27 Voxer Ip Llc Telecommunication and multimedia management method and apparatus
US8250181B2 (en) 2007-10-19 2012-08-21 Voxer Ip Llc Method and apparatus for near real-time synchronization of voice communications
US8706907B2 (en) 2007-10-19 2014-04-22 Voxer Ip Llc Telecommunication and multimedia management method and apparatus
US8699383B2 (en) 2007-10-19 2014-04-15 Voxer Ip Llc Method and apparatus for real-time synchronization of voice communications
US8699678B2 (en) 2007-10-19 2014-04-15 Voxer Ip Llc Telecommunication and multimedia management method and apparatus
US8001261B2 (en) 2007-10-19 2011-08-16 Voxer Ip Llc Telecommunication and multimedia management method and apparatus
US8391312B2 (en) 2007-10-19 2013-03-05 Voxer Ip Llc Telecommunication and multimedia management method and apparatus
US8380874B2 (en) 2007-10-19 2013-02-19 Voxer Ip Llc Telecommunication and multimedia management method and apparatus
US8111713B2 (en) 2007-10-19 2012-02-07 Voxer Ip Llc Telecommunication and multimedia management method and apparatus
US8682336B2 (en) 2007-10-19 2014-03-25 Voxer Ip Llc Telecommunication and multimedia management method and apparatus
US8099512B2 (en) 2007-10-19 2012-01-17 Voxer Ip Llc Method and system for real-time synchronization across a distributed services communication network
US8559319B2 (en) 2007-10-19 2013-10-15 Voxer Ip Llc Method and system for real-time synchronization across a distributed services communication network
US7751361B2 (en) 2007-10-19 2010-07-06 Rebelvox Llc Graceful degradation for voice communication services over wired and wireless networks
US8782274B2 (en) 2007-10-19 2014-07-15 Voxer Ip Llc Method and system for progressively transmitting a voice message from sender to recipients across a distributed services communication network
US8321581B2 (en) 2007-10-19 2012-11-27 Voxer Ip Llc Telecommunication and multimedia management method and apparatus
US7751362B2 (en) 2007-10-19 2010-07-06 Rebelvox Llc Graceful degradation for voice communication services over wired and wireless networks
US9054912B2 (en) 2008-02-08 2015-06-09 Voxer Ip Llc Communication application for conducting conversations including multiple media types in either a real-time mode or a time-shifted mode
US8321582B2 (en) 2008-02-08 2012-11-27 Voxer Ip Llc Communication application for conducting conversations including multiple media types in either a real-time mode or a time-shifted mode
US8542804B2 (en) 2008-02-08 2013-09-24 Voxer Ip Llc Voice and text mail application for communication devices
US8401582B2 (en) 2008-04-11 2013-03-19 Voxer Ip Llc Time-shifting for push to talk voice communication systems
US8285811B2 (en) * 2008-04-17 2012-10-09 Eloy Technology, Llc Aggregating media collections to provide a primary list and sorted sub-lists
US8224899B2 (en) 2008-04-17 2012-07-17 Eloy Technology, Llc Method and system for aggregating media collections between participants of a sharing network
US8285810B2 (en) * 2008-04-17 2012-10-09 Eloy Technology, Llc Aggregating media collections between participants of a sharing network utilizing bridging
US8484311B2 (en) * 2008-04-17 2013-07-09 Eloy Technology, Llc Pruning an aggregate media collection
US8296398B2 (en) * 2008-04-29 2012-10-23 Overland Storage, Inc. Peer-to-peer redundant file server system and methods
US20100070490A1 (en) * 2008-09-17 2010-03-18 Eloy Technology, Llc System and method for enhanced smart playlists with aggregated media collections
US8325662B2 (en) 2008-09-17 2012-12-04 Voxer Ip Llc Apparatus and method for enabling communication when network connectivity is reduced or lost during a conversation and for resuming the conversation when connectivity improves
WO2010037128A1 (en) * 2008-09-29 2010-04-01 Kabushiki Kaisha Toshiba Pre-evaluation of multiple network access points
US8484227B2 (en) * 2008-10-15 2013-07-09 Eloy Technology, Llc Caching and synching process for a media sharing system
US8880599B2 (en) 2008-10-15 2014-11-04 Eloy Technology, Llc Collection digest for a media sharing system
US20100114979A1 (en) * 2008-10-28 2010-05-06 Concert Technology Corporation System and method for correlating similar playlists in a media sharing network
US20100138517A1 (en) * 2008-12-02 2010-06-03 At&T Intellectual Property I, L.P. System and method for multimedia content brokering
US8270950B2 (en) 2008-12-05 2012-09-18 Voxer Ip Llc Mobile communication device, method, and system for reducing exposure to radio frequency energy during transmissions by transmitting media in/out while the mobile communication device is safe distance away from user
US8849927B2 (en) 2009-01-30 2014-09-30 Voxer Ip Llc Method for implementing real-time voice messaging on a server node
US9014832B2 (en) 2009-02-02 2015-04-21 Eloy Technology, Llc Augmenting media content in a media sharing group
US8909806B2 (en) * 2009-03-16 2014-12-09 Microsoft Corporation Delivering cacheable streaming media presentations
CN101909283B (zh) * 2009-06-04 2013-06-12 中兴通讯股份有限公司 一种m2m平台及大容量下载的负荷分担实现方法
US9237387B2 (en) 2009-10-06 2016-01-12 Microsoft Technology Licensing, Llc Low latency cacheable media streaming
US8972346B2 (en) * 2009-12-11 2015-03-03 International Business Machines Corporation Method and system for minimizing synchronization efforts of parallel database systems
US9401813B2 (en) * 2009-12-29 2016-07-26 Iheartmedia Management Services, Inc. Media stream monitor
US9208239B2 (en) 2010-09-29 2015-12-08 Eloy Technology, Llc Method and system for aggregating music in the cloud
CN102148752B (zh) * 2010-12-22 2014-03-12 华为技术有限公司 基于内容分发网络的路由实现方法及相关设备、系统
KR20120096314A (ko) * 2011-02-22 2012-08-30 한국전자통신연구원 가상 네트워크 구성장치 및 그 방법
US9219761B2 (en) 2011-10-07 2015-12-22 Karl-Erik Ståhl Device, software module or system for global real-time telecommunication
CN103123640A (zh) * 2012-02-22 2013-05-29 深圳市谷古科技有限公司 一种小说的搜索方法和装置
CN103379167A (zh) * 2012-04-28 2013-10-30 鸿富锦精密工业(深圳)有限公司 多点同步存储的文件下载异常处理系统及方法
CN103974136B (zh) * 2013-02-04 2017-06-06 周成 Web服务器和浏览器协同管理远端视频服务器的方法
US20150213465A1 (en) * 2013-03-15 2015-07-30 Commerce Signals, Inc. Systems and Methods for Identity Management
CN103686447B (zh) * 2013-12-20 2017-12-08 广东威创视讯科技股份有限公司 视频传输方法和系统
WO2015192209A1 (en) * 2014-06-17 2015-12-23 Maluuba Inc. Server and method for ranking data sources
CN112586040A (zh) * 2018-08-23 2021-03-30 英国电讯有限公司 移动网络运营商选择
KR102521830B1 (ko) * 2018-09-19 2023-04-17 현대자동차주식회사 모바일 데이터 공유를 위한 제어방법 및 그 제어방법을 제공하는 차량
CN113810220B (zh) * 2021-08-02 2024-06-07 华翔翔能科技股份有限公司 一种通过网络远程维护客户机的方法及系统

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5953350A (en) * 1995-03-13 1999-09-14 Selsius Systems, Inc. Multimedia client for multimedia/hybrid network
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
US5918013A (en) * 1996-06-03 1999-06-29 Webtv Networks, Inc. Method of transcoding documents in a network environment using a proxy server
JP2947181B2 (ja) * 1996-09-10 1999-09-13 日本電気株式会社 ループバックセル制御システム
US6016307A (en) * 1996-10-31 2000-01-18 Connect One, Inc. Multi-protocol telecommunications routing optimization
US6038599A (en) 1997-04-23 2000-03-14 Mpath Interactive, Inc. Latency server and matchmaker
US6028928A (en) * 1997-09-26 2000-02-22 Mullaney; Julian Sean Telephone subscriber line module
US6452922B1 (en) 1998-06-19 2002-09-17 Nortel Networks Limited Method and apparatus for fallback routing of voice over internet protocol call
US6600725B1 (en) * 1998-12-16 2003-07-29 At&T Corp. Apparatus and method for providing multimedia conferencing services with selective information services
US6590869B1 (en) * 1999-03-11 2003-07-08 Siemens Information & Communication Networks, Inc. Method and apparatus for selecting whether to place a call over the internet or the PSTN using a two tiered process
US6477522B1 (en) 1999-06-10 2002-11-05 Gateway, Inc. Dynamic performance based server selection
US6704288B1 (en) * 1999-10-07 2004-03-09 General Instrument Corporation Arrangement for discovering the topology of an HFC access network
US6711135B1 (en) * 1999-10-07 2004-03-23 General Instrument Corporation HFC access network management system
GB0028113D0 (en) 2000-05-15 2001-01-03 Band X Ltd Communication system and method
JP4690628B2 (ja) * 2000-05-26 2011-06-01 アカマイ テクノロジーズ インコーポレイテッド エンドユーザのコンテント要求を何れのミラーサイトが受信すべきかを決定する方法
JP2002007749A (ja) * 2000-06-27 2002-01-11 Hitachi Ltd サーバ振り分け装置、サービス提供システム及びサービス提供方法
JP2002232573A (ja) * 2001-01-31 2002-08-16 Nec Corp 移動通信端末、移動通信システム及びサービス提供装置
US7340505B2 (en) * 2001-04-02 2008-03-04 Akamai Technologies, Inc. Content storage and replication in a managed internet content storage environment
DE10125017A1 (de) 2001-05-22 2002-12-05 Siemens Ag Verfahren zum Erbringen von Diensten in einem Datenübertragungsnetz und zugehörige Komponenten

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4830025B2 (ja) * 2006-11-29 2011-12-07 トムソン ライセンシング 貢献認識(contributionaware)ピアツーピアライブストリーミングサービス
US8898232B2 (en) 2006-11-29 2014-11-25 Thomson Licensing Contribution aware peer-to-peer live streaming service
US9094416B2 (en) 2006-11-29 2015-07-28 Thomson Licensing Contribution aware peer-to-peer live streaming service
JP2016527596A (ja) * 2013-05-31 2016-09-08 アイトロン インコーポレイテッド プラットフォームを通じた分散アプリケーション
US10198254B2 (en) 2013-05-31 2019-02-05 Itron, Inc. Surfacing cross platform applications
US10205769B2 (en) 2013-05-31 2019-02-12 Itron, Inc. Distributed applications across platforms
US11328344B2 (en) 2013-05-31 2022-05-10 Itron, Inc. Utility application delivery platform
JP2019522386A (ja) * 2016-05-16 2019-08-08 ロヴィ ガイズ, インコーポレイテッド ユーザデバイスにおけるサービス品質に基づいてメディア一覧を提示するための方法およびシステム
US11962864B2 (en) 2016-05-16 2024-04-16 Rovi Guides, Inc. Methods and systems for recommending providers of media content to users viewing over-the-top content based on quality of service

Also Published As

Publication number Publication date
US20060245367A1 (en) 2006-11-02
CN1795641A (zh) 2006-06-28
JP4456113B2 (ja) 2010-04-28
EP1654838A1 (en) 2006-05-10
US7616582B2 (en) 2009-11-10
EP1654838B1 (en) 2012-10-24
KR20060057525A (ko) 2006-05-26
GB0319251D0 (en) 2003-09-17
KR101037020B1 (ko) 2011-05-25
WO2005018158A1 (en) 2005-02-24
CA2517356C (en) 2012-04-10
CN100477614C (zh) 2009-04-08
CA2517356A1 (en) 2005-02-24

Similar Documents

Publication Publication Date Title
JP4456113B2 (ja) データプロバイダを選択するためのシステム及び方法
US10097645B2 (en) Method and apparatus of performing peer-to-peer communication establishment and connection change-over
JP4002584B2 (ja) ストリーミング・データの送信及びダウンロード方法
JP4409788B2 (ja) 無線データ通信網切替装置と無線データ通信網切替処理用プログラム
US7299291B1 (en) Client-side method for identifying an optimum server
Liu et al. Rate adaptation for dynamic adaptive streaming over HTTP in content distribution network
US7761585B2 (en) Techniques for automatically detecting protocols in a computer network
US7321925B2 (en) Load balancing and fault tolerance for server-based software applications
EP1444592B1 (en) Method and apparatus for a distributed server tree
US8559460B2 (en) Dynamic bandwidth manager
US20040243715A1 (en) Content delivery server and terminal apparatus
KR102110421B1 (ko) 클라이언트 장치에 시청각 컨텐츠를 전달하는 시스템 및 방법
EP2069955A1 (en) Handoff and optimization of a network protocol stack
Davern et al. HTTPEP: A HTTP performance enhancing proxy for satellite systems
US20060002425A1 (en) Determining available bandwidth in a network
WO2012034414A1 (zh) 一种处理p2p业务的方法及系统
US20040028062A1 (en) Controlling service stream
JP2005011267A (ja) リアルタイムデータ通信システム、リアルタイムデータ通信装置およびリアルタイムデータ通信方法
Lien Performance issues of P2P file sharing over asymmetric and wireless networks
Nemati et al. A multi-source streaming model for mobile peer-to-peer (P2P) overlay networks
KR20080046900A (ko) 통합 보안 모듈을 탑재한 부하 분산 장치를 이용한 부하 분산 시스템 및 방법
CN114500487B (zh) 一种端到端超文本传输协议转换方法
Roccetti et al. Bringing the wireless Internet to UMTS devices: A case study with music distribution
Wang et al. Multipath live streaming via tcp: Performance and benefits
Roccetti et al. The structuring of a wireless internet application for a music-on-demand service on UMST devices

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070727

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090929

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091204

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100105

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: 20100204

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

Free format text: PAYMENT UNTIL: 20130212

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4456113

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20140212

Year of fee payment: 4

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

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

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term